<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="FeedCreator 1.8" -->
<?xml-stylesheet href="https://miguelangel.torresegea.es/wiki/lib/exe/css.php?s=feed" type="text/css"?>
<rdf:RDF
    xmlns="http://purl.org/rss/1.0/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
    xmlns:dc="http://purl.org/dc/elements/1.1/">
    <channel rdf:about="https://miguelangel.torresegea.es/wiki/feed.php">
        <title>miguel angel torres egea</title>
        <description></description>
        <link>https://miguelangel.torresegea.es/wiki/</link>
        <image rdf:resource="https://miguelangel.torresegea.es/wiki/_media/wiki:dokuwiki-128.png" />
       <dc:date>2026-05-23T16:39:10+00:00</dc:date>
        <items>
            <rdf:Seq>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:ethical-hacker:sesion4?rev=1740066882&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m5:1.1?rev=1709556888&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m2:4.1?rev=1702980148&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m2:3.1?rev=1702505981&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m4:1.7?rev=1705663347&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m5:2.1?rev=1709548650&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m5:4.1?rev=1709555079&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:netacad:python:pe1m3?rev=1655230041&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:netacad:python:pe2m4:generadores?rev=1657203147&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m2:2.1?rev=1699219278&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m1:2.4?rev=1699216387&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m5:3.1?rev=1709549519&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m1:4.1?rev=1699216475&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m1:5.1?rev=1699261386&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m1:2.9?rev=1699216453&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m1:4.2?rev=1699216496&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m4:1.3?rev=1705056974&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m1:3.1?rev=1699216465&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:ethical-hacker:sesion5:lab18?rev=1740138780&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m4:1.5?rev=1705601125&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m5:5.1?rev=1709555915&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:netacad:python:pe2m2:cadenas?rev=1656616085&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m4:1.2?rev=1709626190&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m3:1.3?rev=1703357345&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m1:2.2?rev=1699216358&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m3:1.1?rev=1703244026&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m4:1.1?rev=1704741328&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m1:2.1?rev=1699216341&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:vim:comandos?rev=1604787919&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m4:1.6?rev=1705660623&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:ethical-hacker:sesion5:lab19?rev=1740138058&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:udemy:python-mega-course?rev=1729249956&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/wiki:syntax?rev=1528018666&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m3:1.2?rev=1703245770&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m3:2.4?rev=1703794616&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:python:codigofacilito?rev=1654853301&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:netacad:python:pe2m4:archivos?rev=1657392170&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m1:1.1?rev=1699216302&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m1:2.3?rev=1699216373&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m1:2.7?rev=1699216429&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m3:1.6?rev=1703762970&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m1:1.2?rev=1699216324&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m1:2.5?rev=1699216406&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m3:1.7?rev=1703765167&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:bash:braceexpansion?rev=1590273451&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:netacad:python:pe1m4:diccionarios?rev=1662631393&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:ethical-hacker:sesion5:lab20?rev=1740141555&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:debian:seedbos:rutorrent?rev=1580595855&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:lpic2-2021:s9?rev=1614718217&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m1:2.8?rev=1699216442&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/web:security:openssl?rev=1638598409&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:python:openpyxl?rev=1654853319&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/development:python:iterables?rev=1759134237&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m1:2.6?rev=1699216418&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m3:1.4?rev=1703358335&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:bash:ficherosinicio?rev=1675155487&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:netacad:python:pe1m4:tuplas?rev=1655832393&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m3:1.5?rev=1703359986&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m3:2.3?rev=1703793078&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m3:2.5?rev=1703795730&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:bash:arrays?rev=1539085719&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/development:python:thinkpython?rev=1654853278&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:zsh:zmv?rev=1585000143&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m2:1.1?rev=1699217111&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m4:1.4?rev=1705059240&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:bash:estructurasdecontrol?rev=1685525137&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:certificados:cayotros?rev=1638598737&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:libros:terraform-upandrunning:cap3?rev=1589544364&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:netacad:python:pe2m1:paquetes?rev=1655983096&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/software:games:minecraft:start?rev=1586618902&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:netacad:python:pe2m3:excepcionesoop?rev=1657050801&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:ethical-hacker:extras:sincara-systemd?rev=1740743512&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:ethical-hacker:sesion2:sincara?rev=1740558607&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m3:1.9?rev=1703789305&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m3:2.1?rev=1703790579&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/wiki:plugins?rev=1528577721&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/wiki:primeros_pasos?rev=1321351182&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1?rev=1709549553&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:mongodbuniversity:m001:cap3?rev=1544897816&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:devops2022:s13?rev=1648069358&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:debiean:seebox:rtorrent_rutorrent:old1?rev=1608802462&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:netacad:python:pe1m4:funciones?rev=1655832134&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:netacad:python:pe2m2:excepciones?rev=1656618866&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:netacad:python:pe2m3:viajeprocedimentaloop?rev=1657048741&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m4:2.1?rev=1705687171&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/wiki:dokuwiki?rev=1321351182&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/development:python:strings?rev=1728546797&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:bash:locales?rev=1594132941&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:seguridad:sadservers?rev=1716904318&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:ufw:start?rev=1756889908&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:singularity:start?rev=1697184224&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/windows:account:migraralocal?rev=1722081750&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:debian:seedbox:rtorrent?rev=1580595836&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:zsh:oh-my-zsh:autoenv?rev=1732706445&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:lpic2:scripts:backup?rev=1534331203&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:netacad:python:pe2m1:modulos?rev=1655976060&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m1:4.3?rev=1699216505&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m3:1.8?rev=1703788552&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m3:2.2?rev=1703791448&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:netacad:python:pe2m4:biblioteca:calendar?rev=1657227190&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/development:python:start?rev=1771488008&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:bash:comandos?rev=1757052655&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:bash:ps1?rev=1536065962&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:bash:shellvariables?rev=1727780019&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:dns:127?rev=1751957332&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:scripts:backup1?rev=1321351182&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:scripts:backupgpg?rev=1584903148&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:scripts:getopts?rev=1547928366&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:scripts:home?rev=1654849975&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:ssh:clientconfig?rev=1777967022&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/development:php:codeigniter:core?rev=1580244618&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:ingles:basico:start?rev=1522232137&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:lpic2-2021:s7?rev=1663570072&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:docker:dockerfile:examples:mariadbssl?rev=1637048170&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:netacad:python:pe2m3:herencia?rev=1657049370&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:ethical-hacker:extras:sincara-xss?rev=1740565887&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:ethical-hacker:sesion3:lab9?rev=1740124796&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:aptget:apt?rev=1741600997&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:bash:heredoc?rev=1511442654&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:bash:start?rev=1777033277&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:scripts:1st-last?rev=1321351182&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:scripts:protocolobackup?rev=1330366804&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/software:backup:borg?rev=1655284776&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:google:operadores-busqueda?rev=1758784529&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/web:apache:certificados?rev=1640261109&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/windows:cmd:start?rev=1744706346&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/windows:utils:everything?rev=1750069295&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/development:php:item-lista:start?rev=1738838353&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/web:security:letsencrypt:seedbox.torresegea.es?rev=1551221929&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:mongodbuniversity:m001:cap2?rev=1544811667&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:devops2022:s6?rev=1646840614&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:docker:dockerfile:examples:runscript?rev=1637048457&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:netacad:python:pe1m4:excepciones?rev=1655834352&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:ethical-hacker:extras:sincara?rev=1740564797&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/development:angular:start?rev=1583776642&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/development:python:aberraciones?rev=1728466008&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:bash:debug?rev=1516612329&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:bash:grep?rev=1576251056&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:bash:parallel?rev=1778239769&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:debian:install-6?rev=1580596040&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:filesystem:permisos?rev=1727956812&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:filesystem:udisks?rev=1649070557&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:paquetes:pihole?rev=1751908394&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:scripts:arrayloop?rev=1589545895&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:seedbox:start?rev=1588519723&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:seguridad:start?rev=1715770310&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:tcpip:nfs?rev=1628965242&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:zsh:globbing?rev=1585000649&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:zsh:start?rev=1758555368&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:docker:security?rev=1638131099&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:docker:volumes?rev=1585355244&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:terraform:poc-ad?rev=1554360852&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:vagrant:start?rev=1644860937&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/video:shotcut:start?rev=1678959916&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/web:security:wordpress?rev=1760533181&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/wiki:plugins:toc?rev=1541243333&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/development:java:lib:jaxb?rev=1529401827&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:libros:devops-kubernetes:cap3-2?rev=1586961043&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:libros:terraform-upandrunning:cap5?rev=1590271587&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:debian:seedbox:nginx-letsencrypt?rev=1580595323&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:debian:seedbox:screen?rev=1685079106&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:systemd:journalctl:remote?rev=1640200562&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:docker:dockerd:remote-tls?rev=1586591719&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:k8s:cli:namespace?rev=1589185087&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:openwebinars:vagrant:cli?rev=1530718064&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:devops2022:s1?rev=1646848628&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:lpic2-2021:s2?rev=1663569839&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:lpic2-2021:s11?rev=1615323357&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:udemy:ansible:playbooks?rev=1537343658&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:netacad:python:pe2m3:metodos?rev=1657048521&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:ethical-hacker:sesion1:lab0?rev=1740123934&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:ethical-hacker:sesion1:sincara?rev=1740555602&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:ethical-hacker:sesion4:sincara?rev=1740563507&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/criptografia:ecryptfs?rev=1686748181&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/criptografia:pass?rev=1749543935&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/pentesting:docker?rev=1538636953&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/raspi:start?rev=1717667162&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/development:angular:formularios?rev=1581356727&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/development:encoding:start?rev=1600156269&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/development:jquery:start?rev=1779357605&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/development:json:start?rev=1585124609&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/development:markdown:start?rev=1731848297&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:git?rev=1777976515&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:fonts:start?rev=1586329502&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:libros:swarm?rev=1639043923&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:locuciones:start?rev=1749701093&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:alsa:start?rev=1431102491&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:background:start?rev=1579346279&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:bash:alias?rev=1536305720&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:bash:find?rev=1725268231&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:bash:ifs?rev=1610384027&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:bash:indirectreferences?rev=1543427202&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:bash:locale?rev=1763374899&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:bash:tar?rev=1682592622&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:bash:zonahoraria?rev=1777966604&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:cron:anacron?rev=1605886810&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:debian:start?rev=1725466043&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:filesystem:ddrescue?rev=1755680310&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:filesystem:glusterfs?rev=1607254746&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:fsh:sys?rev=1613057041&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:nagios:start?rev=1539079953&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:paquetes:fdupes?rev=1529917303&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:paquetes:findimagedupes?rev=1535013969&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:paquetes:proftpd?rev=1321351182&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:remote-desktop:start?rev=1657278756&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:scripts:10minutos?rev=1476137592&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:scripts:backup2?rev=1321351182&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:scripts:forfolders?rev=1613915129&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:scripts:mysqldump?rev=1326822530&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:scripts:random?rev=1351193089&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:scripts:select?rev=1536148142&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:scripts:utils?rev=1605886849&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:seguridad:fcrackzip?rev=1714029821&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:ssh:rdpconn?rev=1604492281&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:ssh:varios?rev=1777967135&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:tcpip:dns?rev=1767009585&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:tcpip:netplan?rev=1639738671&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:tcpip:rutas?rev=1478863072&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:utils:find-fd?rev=1763539345&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:utils:lftp?rev=1761933283&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:utils:ls?rev=1749128028&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:utils:lsusb?rev=1668164344&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:zsh:expansion-flags?rev=1584880427&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:zsh:install?rev=1764921530&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:zsh:modifiers?rev=1584881444&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/macintosh:boot:start?rev=1478435748&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/macintosh:filesystem:ntfs?rev=1678440172&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/software:dokuwiki:search?rev=1765439010&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/software:utils:rhash?rev=1584951650&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/software:vsc:start?rev=1587711130&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tcpip:dns:bind9?rev=1578901282&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:docker:start?rev=1750151077&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:elasticsearch:start?rev=1639058594&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:git:server?rev=1615279052&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:terraform:variables?rev=1749563456&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/web:apache:cli?rev=1675931719&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/wiki:plugins:bootstrapwrapper?rev=1585477400&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/windows:activacion:start?rev=1752739212&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/windows:prog:vbasic?rev=1509272124&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/windows:w10:start?rev=1744704773&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/windows:w11:start?rev=1765796916&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/bbdd:mysql:match:start?rev=1527187996&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/development:java:frameworks:collections?rev=1526807614&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/development:java:lib:csv?rev=1526807837&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/development:java:tomcat:start?rev=1527241217&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/development:php:codeigniter:api-rest?rev=1580245126&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:edx:uc3m_ciberseguridad?rev=1607382461&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:hashicorp:vault?rev=1590505947&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:mongodbuniversity:start?rev=1547470402&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:libros:swarm:chap3?rev=1638914051&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:debian:seedbox:rtorrent_rutorrent?rev=1608803427&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/linux:install:server:ubuntu20043?rev=1705413007&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:k8s:cli:azure?rev=1586417444&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/tech:vagrant:vagrantfile:3vagrantloop?rev=1637060500&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/web:security:letsencrypt:multidominio?rev=1583137311&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/web:security:wordpress:securizar?rev=1760533105&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:altran:docker:dockerfile?rev=1546512279&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:idfo:vmware:s3?rev=1634673427&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:itformacion:awsdeveloper:cloudformation?rev=1543863486&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:lpic2:scripts:busca-nfs?rev=1534331242&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:lpic2:scripts:copia-remotos?rev=1534331267&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:mate:seguretat-informatica:ciberseguretat?rev=1741766358&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:devops:sesion6?rev=1551531889&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:devops:sesion7?rev=1559662594&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:devops:sesion15?rev=1554490348&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:devops:sesion16?rev=1554617923&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:devops2022:s3?rev=1646847691&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:devops2022:s14?rev=1648497231&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:ethical-hacker:sesion1?rev=1740124059&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:ethical-hacker:sesion2?rev=1740124310&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:ethical-hacker:shellgpt?rev=1739812833&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:lpic1:103.2?rev=1534332813&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:lpic2-2021:s1?rev=1663569788&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:lpic2-2021:s8?rev=1614285381&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:lpic2-2021:s10?rev=1615309386&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:lpic2-2021:s13?rev=1615927023&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:netacad:python:pe2m1:pip?rev=1656606177&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:netacad:python:pe2m3:propiedades?rev=1657048430&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:openwebinars:elk:logstash:process?rev=1638561381&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:ethical-hacker:sesion1:lab2?rev=1740123998&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:pue:ethical-hacker:sesion2:lab8?rev=1740124361&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:udemy:ansible:modulos:sistema?rev=1560416925&amp;do=diff"/>
                <rdf:li rdf:resource="https://miguelangel.torresegea.es/wiki/info:cursos:udemy:ansible:modulos:utilidades?rev=1537865996&amp;do=diff"/>
            </rdf:Seq>
        </items>
    </channel>
    <image rdf:about="https://miguelangel.torresegea.es/wiki/_media/wiki:dokuwiki-128.png">
        <title>miguel angel torres egea</title>
        <link>https://miguelangel.torresegea.es/wiki/</link>
        <url>https://miguelangel.torresegea.es/wiki/_media/wiki:dokuwiki-128.png</url>
    </image>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:ethical-hacker:sesion4?rev=1740066882&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-02-20T15:54:42+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Ethical Hacker : sesión 4</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:ethical-hacker:sesion4?rev=1740066882&amp;do=diff</link>
        <description>Ethical Hacker : sesión 4

	*  Ethical Hacker : sesión 4

clase

	*  Modulo 14
	*  Modulo 15
	*  Modulo 16
	*  Modulo 17

Modulo 14: Hacking Web Applications

	*  Amenazas
	*  OWASP - &lt;https://owasp.org&gt;
		*  asociación sin ánimo de lucro
		*  proyectos relacionados con seguridad
		*  Coraza - ModSecurity - set reglas programables</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m5:1.1?rev=1709556888&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-03-04T12:54:48+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>1.1 SQLite</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m5:1.1?rev=1709556888&amp;do=diff</link>
        <description>1.1 SQLite

What is a database?

Nowadays, social applications such as Facebook, Twitter, and Instagram are very popular. Every day many people create new accounts, and existing users add or share different content. You’ve surely noticed that the data sent to those applications are still available after a few days, or even years. Do you know how that’s possible?</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m2:4.1?rev=1702980148&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-12-19T10:02:28+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>4.1 PEP 257 – Docstring Conventions</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m2:4.1?rev=1702980148&amp;do=diff</link>
        <description>4.1 PEP 257 – Docstring Conventions

What is PEP 257?

PEP 257 is a document created as part of the Python Developer&#039;s Guide, which makes an attempt to standardize the high-level structure of docstrings. It outlines the conventions, best practices, and semantics (not laws or regulations!) associated with documenting Python code using docstrings. In short, it tries to answer the following two questions:</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m2:3.1?rev=1702505981&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-12-13T22:19:41+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>3.1 PEP 8 – Introduction</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m2:3.1?rev=1702505981&amp;do=diff</link>
        <description>3.1 PEP 8 – Introduction

As mentioned earlier, PEP 8 is a document that provides coding conventions (code style guide) for Python code.

PEP 8 is considered one of the most important PEPs and a must-read for every professional Python programmer, as it helps to make the code more consistent, more readable, and more efficient.</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m4:1.7?rev=1705663347&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-01-19T11:22:27+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>1.7 Four magic letters: CRUD</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m4:1.7?rev=1705663347&amp;do=diff</link>
        <description>1.7 Four magic letters: CRUD

Entering a non-existing/malformed address

We’ve reached the point in which we are ready to gather all new facts and tools and glue all these pieces into one functional block. You already know how HTTP works, how it’ is mounted on top of the TCP stack and how the</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m5:2.1?rev=1709548650&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-03-04T10:37:30+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>2.1 File processing - XML files</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m5:2.1?rev=1709548650&amp;do=diff</link>
        <description>2.1 File processing - XML files

XML processing in Python

Python is commonly used to process various types of data. Perhaps, while working as a programmer, you&#039;ll have to read or create a data file in the XML format. Soon, doing that will be a piece of cake.</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m5:4.1?rev=1709555079&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-03-04T12:24:39+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>4.1 Logging in Python</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m5:4.1?rev=1709555079&amp;do=diff</link>
        <description>4.1 Logging in Python

Logging in Python

The Python Standard Library provides a useful module called logging to log events occurring in the application. Logs are most often used to find the cause of an error. By default, Python and its modules provide many logs informing you of the causes of errors. However, it&#039;s good practice to create your own logs that may be useful to you or other programmers.</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:netacad:python:pe1m3?rev=1655230041&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-06-14T18:07:21+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Módulo 3 - Valores booleanos, ejecución condicional, bucles, listas y su procesamiento, operaciones lógicas y de bit a bit</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:netacad:python:pe1m3?rev=1655230041&amp;do=diff</link>
        <description>Módulo 3 - Valores booleanos, ejecución condicional, bucles, listas y su procesamiento, operaciones lógicas y de bit a bit

Tomando decisiones

	*  = asignación
	*  == comparación, es igual
	*  != no es igual
	*  &gt;,&lt;,&gt;=,&lt;=

if

if &lt;exp&gt;:
    linea1
    linea2
  elif &lt;exp&gt;:
    linea5
    linea6
  else:
    linea3
    linea4</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:netacad:python:pe2m4:generadores?rev=1657203147&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-07-07T14:12:27+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Módulo 4 (Intermedio): Generadores</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:netacad:python:pe2m4:generadores?rev=1657203147&amp;do=diff</link>
        <description>Módulo 4 (Intermedio): Generadores

Generadores, donde encontrarlos

Generador - ¿Con qué asocias esta palabra? Quizás se refiere a algún dispositivo electrónico. O tal vez se refiere a una máquina pesada diseñada para producir energía eléctrica u otra cosa.</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m2:2.1?rev=1699219278&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-11-05T21:21:18+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>2.1 PEP 20 – The Zen of Python</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m2:2.1?rev=1699219278&amp;do=diff</link>
        <description>2.1 PEP 20 – The Zen of Python

The Zen of Python is a collection of 19 aphorisms, which reflect the philosophy behind Python, its guiding principles, and design.

Tim Peters, a long time major contributor to the Python programming language and Python community, wrote this 19-line poem on the Python mailing list in 1999, and it became entry #20 in the Python Enhancement Proposals in 2004.</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m1:2.4?rev=1699216387&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-11-05T20:33:07+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>2.4 Decorators</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m1:2.4?rev=1699216387&amp;do=diff</link>
        <description>2.4 Decorators

A decorator is one of the design patterns that describes the structure of related objects. Python is able to decorate functions, methods, and classes.

The decorator&#039;s operation is based on wrapping the original function with a new «</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m5:3.1?rev=1709549519&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-03-04T10:51:59+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>3.1 The CSV module in Python</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m5:3.1?rev=1709549519&amp;do=diff</link>
        <description>3.1 The CSV module in Python

The CSV module in Python

The CSV (Comma Separated Values) format is one of the most popular file formats used to store and transfer data between different programs. Currently, many database management tools and the popular Excel offer data import and export in this format.</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m1:4.1?rev=1699216475&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-11-05T20:34:35+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>4.1 Shallow and deep copy operations</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m1:4.1?rev=1699216475&amp;do=diff</link>
        <description>4.1 Shallow and deep copy operations

Copying objects using shallow and deep operations

In this module, you’ll learn how to copy Python objects. Specifically, you&#039;ll learn about:

	*  object: label vs. identity vs. value;
	*  the id() function and the is operand;</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m1:5.1?rev=1699261386&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-11-06T09:03:06+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>5.1 Metaprogramming</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m1:5.1?rev=1699261386&amp;do=diff</link>
        <description>5.1 Metaprogramming

Introduction to metaclasses

Metaprogramming is a programming technique in which computer programs have the ability to modify their own or other programs’ codes. It may sound like an idea from a science fiction story, but the idea was born and implemented in the early 1960s.</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m1:2.9?rev=1699216453&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-11-05T20:34:13+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>2.9 Inheriting properties from built-in classes</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m1:2.9?rev=1699216453&amp;do=diff</link>
        <description>2.9 Inheriting properties from built-in classes

Python gives you the ability to create a class that inherits properties from any Python built-in class in order to get a new class that can enrich the parent&#039;s attributes or methods. As a result, your newly-created class has the advantage of all of the well-known functionalities inherited from its parent or even parents and you can still access those attributes and methods.</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m1:4.2?rev=1699216496&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-11-05T20:34:56+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>4.2 Serialization of Python objects using the pickle module</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m1:4.2?rev=1699216496&amp;do=diff</link>
        <description>4.2 Serialization of Python objects using the pickle module

In this section, you will learn how to persist Python objects for later use.

Pickling is the process of preserving or extending the lifespan of food. The resulting food is called a pickle, and to prevent ambiguity, prefaced with the &#039;pickled&#039; adjective.</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m4:1.3?rev=1705056974&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-01-12T10:56:14+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>1.3 JSON – our new friend</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m4:1.3?rev=1705056974&amp;do=diff</link>
        <description>1.3 JSON – our new friend

Do you sometimes feel that coping with IT issues is a continuous struggle with acronyms? Well, you’re not alone. We share this opinion. An old anecdote says that computer technology development is in fact based on TLA. What is TLA? It&#039;s simple – it&#039;s a Three-Letter Acronym. Close your eyes, strain your mind and try to recall five acronyms commonly used in the IT world.</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m1:3.1?rev=1699216465&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-11-05T20:34:25+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>3.1 Advanced techniques of creating and serving exceptions</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m1:3.1?rev=1699216465&amp;do=diff</link>
        <description>3.1 Advanced techniques of creating and serving exceptions

In this module, we&#039;ll talk about Python exceptions – objects that represent errors which occur during the execution of a program that disrupts the normal flow of the program&#039;s instructions.</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:ethical-hacker:sesion5:lab18?rev=1740138780&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-02-21T11:53:00+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Lab Module 18 IoT and OT Hacking</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:ethical-hacker:sesion5:lab18?rev=1740138780&amp;do=diff</link>
        <description>Lab Module 18 IoT and OT Hacking

Lab 1: Perform Footprinting using Various Footprinting Techniques

Task 1: Gather Information using Online Footprinting Tools

	*  Launch any web browser, go to &lt;https://www.whois.com/whois&gt; (here, we are using Mozilla Firefox).
	*  The Whois Domain Lookup page appears; type</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m4:1.5?rev=1705601125&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-01-18T18:05:25+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>1.5 What is XML and why do we prefer to use JSON?</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m4:1.5?rev=1705601125&amp;do=diff</link>
        <description>1.5 What is XML and why do we prefer to use JSON?

XML is a language. Anyway, this is what it thinks about itself. Note – it isn&#039;t a programming language, and although it is possible to build a real programming language on top of XML, it wasn&#039;t (and still isn&#039;t) its native niche.</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m5:5.1?rev=1709555915&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-03-04T12:38:35+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>5.1 The configparser module</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m5:5.1?rev=1709555915&amp;do=diff</link>
        <description>5.1 The configparser module

Introduction to the configparser module

Currently, many popular services provide an API that we can use in our applications. Integration with these services requires authentication using data such as a login and password, or simply an access token.</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:netacad:python:pe2m2:cadenas?rev=1656616085&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-06-30T19:08:05+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Modulo 2 (intermedio): Cadenas</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:netacad:python:pe2m2:cadenas?rev=1656616085&amp;do=diff</link>
        <description>Modulo 2 (intermedio): Cadenas

Cómo las computadoras entienden los caracteres individuales

Has escrito algunos programas interesantes desde que comenzó este curso, pero todos ellos han procesado solo un tipo de datos: los numéricos. Como sabes (puedes ver esto en todas partes), muchos datos de la computadora no son números: nombres, apellidos, direcciones, títulos, poemas, documentos científicos, correos electrónicos, sentencias judiciales, confesiones de amor y mucho, mucho más.</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m4:1.2?rev=1709626190&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-03-05T08:09:50+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>1.2 How to use sockets in Python</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m4:1.2?rev=1709626190&amp;do=diff</link>
        <description>1.2 How to use sockets in Python

How to fetch a document from a server using Python

We are going to write our first program making use of network sockets. Of course, we&#039;ll harness Python for this purpose.

Here are our goals:

	*  we want to write</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m3:1.3?rev=1703357345&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-12-23T18:49:05+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>1.3 Settling widgets in the window&#039;s interior</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m3:1.3?rev=1703357345&amp;do=diff</link>
        <description>1.3 Settling widgets in the window&#039;s interior

Settling widgets

A familiarity with the Button widget allows us to show you some ways of putting the widgets (not only the buttons) inside windows. There are more of them than just place(), which you learned about in the previous section. To be precise, there are</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m1:2.2?rev=1699216358&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-11-05T20:32:38+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>2.2 Inheritance and polymorphism — Inheritance as a pillar of OOP</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m1:2.2?rev=1699216358&amp;do=diff</link>
        <description>2.2 Inheritance and polymorphism — Inheritance as a pillar of OOP

Inheritance is one of the fundamental concepts of object oriented programming, and expresses the fundamental relationships between classes: superclasses (parents) and their subclasses (descendants). Inheritance creates a class hierarchy. Any object bound to a specific level of class hierarchy inherits all the traits (methods and attributes) defined inside any of the superclasses.</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m3:1.1?rev=1703244026&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-12-22T11:20:26+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Python Professional Course Series: GUI Programming</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m3:1.1?rev=1703244026&amp;do=diff</link>
        <description>Python Professional Course Series: GUI Programming

What is GUI?

GUI is an acronym. Moreover, it’s a three-letter acronym, a representative of a well-known class of acronyms which plays a very important role in the IT industry. Okay, that’s enough jokes about TLA’s for one course, all the more that</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m4:1.1?rev=1704741328&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-01-08T19:15:28+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>1.1 Python Professional Course Series: RESTful APIs</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m4:1.1?rev=1704741328&amp;do=diff</link>
        <description>1.1 Python Professional Course Series: RESTful APIs

Some words about REST

The word you see below may look a little enigmatic: REST

Are we going to convince you to take a rest? Not at all. On the contrary, we want to encourage you to start the next part of our adventure - very demanding and completely new. We&#039;ll show you not Python itself, but a very specific kind of machinery (do not take this literally) which drives lots of contemporary computer systems, especially those which work on the In…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m1:2.1?rev=1699216341&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-11-05T20:32:21+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>2.1 Python core syntax</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m1:2.1?rev=1699216341&amp;do=diff</link>
        <description>2.1 Python core syntax

So far we have been using Python core operations that allow us to operate on strings, lists, integers, and floats. It’s natural for us to formulate expressions using algebraic symbols representing operators, or to get a number of elements in a sequence or dictionary.</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:vim:comandos?rev=1604787919&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-11-07T22:25:19+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>vim</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:vim:comandos?rev=1604787919&amp;do=diff</link>
        <description>vim



linux

/vía: &lt;https://www.catswhocode.com/blog/vim-cheat-sheet-for-2016&gt;

/vía:&lt;http://www.catswhocode.com/blog/130-essential-vim-commands&gt;

info

	*  .vimrc
	*  1 al día por mlechon

Plugins/extensiones/personalización
&lt;https://kadekillary.work/post/statusline/&gt;&lt;https://gist.github.com/millermedeiros/1262085&gt;
	*  gestión/instalación plugins en sus propios directorios (runtimepath): &lt;https://github.com/tpope/vim-pathogen&gt;
		*  crear dos directorios: ~/.vim/autoload (ubicación vim-pathogen…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m4:1.6?rev=1705660623&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-01-19T10:37:03+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>1.6 Making life easier with the requests module</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m4:1.6?rev=1705660623&amp;do=diff</link>
        <description>1.6 Making life easier with the requests module

We have reached the point where we can start the final stage of our journey – we know enough to communicate with the web service using JSON as an information carrier. Unfortunately, our knowledge needs to be supplemented – we need a</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:ethical-hacker:sesion5:lab19?rev=1740138058&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-02-21T11:40:58+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Lab Module 19 Cloud Computing</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:ethical-hacker:sesion5:lab19?rev=1740138058&amp;do=diff</link>
        <description>Lab Module 19 Cloud Computing

Lab 1: Perform Reconnaissance on Azure

As an ethical hacker, you need to know how to utilize PowerShell command-based scripting tools for conducting reconnaissance and gathering information. This information can then be used to assess the security posture of other systems within the network.</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:udemy:python-mega-course?rev=1729249956&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-10-18T11:12:36+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Curso python udemy</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:udemy:python-mega-course?rev=1729249956&amp;do=diff</link>
        <description>Curso python udemy

	*  &lt;https://www.udemy.com/course/former-python-mega-course-build-10-real-world-applications/learn/lecture/34362798#overview&gt;

interesante

	*  Numpy: manejo de matrices
	*  Web Mapping: creación mapas interactivos HTML
	*  Manejo Webcam
	*  Bokeh: libreria representación gráficos -&gt; Python Bokeh
	*  Pandas: libreria de analisis de datos -&gt; Python Pandas
	*  Flask: web development</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/wiki:syntax?rev=1528018666&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-06-03T09:37:46+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Formatting Syntax</title>
        <link>https://miguelangel.torresegea.es/wiki/wiki:syntax?rev=1528018666&amp;do=diff</link>
        <description>Formatting Syntax

DokuWiki supports some simple markup language, which tries to make the datafiles to be as readable as possible. This page contains all possible syntax you may use when editing the pages. Simply have a look at the source of this page by pressing the</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m3:1.2?rev=1703245770&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-12-22T11:49:30+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>1.2 Let TkInter speak!</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m3:1.2?rev=1703245770&amp;do=diff</link>
        <description>1.2 Let TkInter speak!

Importing TkInter

As you already know, from Python&#039;s point of view TkInter is a package named tkinter. The package contains a bunch of functions, constants, classes, objects, and modules used to build GUI applications.

The GUI</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m3:2.4?rev=1703794616&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-12-28T20:16:56+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>2.4 Shaping the main window and conversing with the user</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m3:2.4?rev=1703794616&amp;do=diff</link>
        <description>2.4 Shaping the main window and conversing with the user

The main window is a very specific construct, as its fate is shared among two masters: you (supported by tkinter) and your operating system. This means than you cannot manage the window like any other widget, as the</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:python:codigofacilito?rev=1654853301&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-06-10T09:28:21+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>curso python (código facilito)</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:python:codigofacilito?rev=1654853301&amp;do=diff</link>
        <description>curso python (código facilito)

python

&lt;https://codigofacilito.com/videos/tutorial_python_28_-_clases_decoradoras&gt;

que es python

	*  reminiscencias perl, pero más natual (pseudocódigo)
	*  interpretado
	*  tipado dinámico
	*  fuertemente tipado (no convinadar diferentes tipos de variables)
	*  multiplataforma
	*  OOP

hello world</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:netacad:python:pe2m4:archivos?rev=1657392170&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-07-09T18:42:50+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Módulo 4 (Intermedio): Archivos</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:netacad:python:pe2m4:archivos?rev=1657392170&amp;do=diff</link>
        <description>Módulo 4 (Intermedio): Archivos

Accediendo archivos desde código en Python

Uno de los problemas más comunes en el trabajo del desarrollador es procesar datos almacenados en archivos que generalmente se almacenan físicamente utilizando dispositivos de almacenamiento: discos duros, ópticos, de red o de estado sólido.</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m1:1.1?rev=1699216302&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-11-05T20:31:42+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>1.1 Classes, Instances, Attributes, Methods — introduction</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m1:1.1?rev=1699216302&amp;do=diff</link>
        <description>1.1 Classes, Instances, Attributes, Methods — introduction

Introduction to Object-Oriented Programming

This module addresses the advanced Object Oriented Programming (OOP) issues that are at the heart of Python programming.

The object-oriented approach is an evolution of good design practices that go back to the very beginning of computer programming.</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m1:2.3?rev=1699216373&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-11-05T20:32:53+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>2.3 Extended function argument syntax</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m1:2.3?rev=1699216373&amp;do=diff</link>
        <description>2.3 Extended function argument syntax

When we talk about function arguments, we should recall the following facts:

	*  some functions can be invoked without arguments;
	*  functions may require a specific number of arguments with no exclusions; we have to pass a required number of arguments in an imposed order to follow function definition;</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m1:2.7?rev=1699216429&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-11-05T20:33:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>2.7 Encapsulation</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m1:2.7?rev=1699216429&amp;do=diff</link>
        <description>2.7 Encapsulation

Attribute encapsulation

Encapsulation is one of the fundamental concepts in object-oriented programming (amongst inheritance, polymorphism, and abstraction). It describes the idea of bundling attributes and methods that work on those attributes within a class.</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m3:1.6?rev=1703762970&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-12-28T11:29:30+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>1.6 Events and how to handle them</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m3:1.6?rev=1703762970&amp;do=diff</link>
        <description>1.6 Events and how to handle them

Event handling

As you already know, events are the fuel which propel the application’s movements. All events come to the event manager, which is responsible for dispatching them to all the application components. This also means that some of the events may launch some of your callbacks, which makes you responsible for preparing the proper reactions to the user’s actions.</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m1:1.2?rev=1699216324&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-11-05T20:32:04+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>1.2 Working with class and instance data – instance variables</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m1:1.2?rev=1699216324&amp;do=diff</link>
        <description>1.2 Working with class and instance data – instance variables

Instance variables

This kind of variable exists when and only when it is explicitly created and added to an object. This can be done during the object&#039;s initialization, performed by the</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m1:2.5?rev=1699216406&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-11-05T20:33:26+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>2.5 Different faces of Python methods</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m1:2.5?rev=1699216406&amp;do=diff</link>
        <description>2.5 Different faces of Python methods

Until now, we’ve been implementing methods that have performed operations on the instances (objects), and in particular the attributes of the instance, so we’ve called them instance methods.

The instance methods, as the first parameter, take the</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m3:1.7?rev=1703765167&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-12-28T12:06:07+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>1.7 Visiting widgets’ properties</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m3:1.7?rev=1703765167&amp;do=diff</link>
        <description>1.7 Visiting widgets’ properties

Widget properties

As you already know, every widget has a set of properties, and the widget’s user is able to change them by modifying the widget’s appearance and behavior. We’ll show you how to manipulate properties and present a basic set of the most usable widget properties.</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:bash:braceexpansion?rev=1590273451&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-05-23T22:37:31+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>brace expansion</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:bash:braceexpansion?rev=1590273451&amp;do=diff</link>
        <description>brace expansion
&lt;http://wiki.bash-hackers.org/syntax/expansion/brace&gt;

{string1,string2,...,stringN}
{&lt;START&gt;..&lt;END&gt;}

{&lt;START&gt;..&lt;END&gt;..&lt;INCR&gt;} (Bash 4)

&lt;PREAMBLE&gt;{........}

{........}&lt;POSTSCRIPT&gt;

&lt;PREAMBLE&gt;{........}&lt;POSTSCRIPT&gt;


Brace expansion is used to generate arbitrary strings. The specified strings are used to generate</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:netacad:python:pe1m4:diccionarios?rev=1662631393&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-09-08T10:03:13+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Modulo 4: Diccionarios</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:netacad:python:pe1m4:diccionarios?rev=1662631393&amp;do=diff</link>
        <description>Modulo 4: Diccionarios

¿Qué es un diccionario?

El diccionario es otro tipo de estructura de datos de Python. No es una secuencia (pero puede adaptarse fácilmente a un procesamiento secuencial) y además es mutable.

Para explicar lo que es un diccionario en Python, es importante comprender de manera literal lo que es un diccionario.</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:ethical-hacker:sesion5:lab20?rev=1740141555&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-02-21T12:39:15+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Lab Module 20 Cryptography</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:ethical-hacker:sesion5:lab20?rev=1740141555&amp;do=diff</link>
        <description>Lab Module 20 Cryptography

With the increasing adoption of the Internet for business and personal communication, securing sensitive information such as credit-card and personal identification numbers (PINs), bank account numbers, and private messages is becoming increasingly important, and yet, more difficult to achieve. Today’s information-based organizations extensively use the Internet for e-commerce, market research, customer support, and a variety of other activities. Thus, data security i…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:debian:seedbos:rutorrent?rev=1580595855&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-02-01T22:24:15+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>instalación / configuración rutorrent (on premise)</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:debian:seedbos:rutorrent?rev=1580595855&amp;do=diff</link>
        <description>instalación / configuración rutorrent (on premise)

	*  descargar en directorio temporal:
		*  svn checkout &lt;http://rutorrent.googlecode.com/svn/trunk/rutorrent&gt;
		*  svn checkout &lt;http://rutorrent.googlecode.com/svn/trunk/plugins&gt;
		*  sustituimos la carpeta plugins dentro del rutorrent por la descargada
		*  copiamos/movemos la carpeta a la raiz del webserver, cambiando permisos y propietario</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:lpic2-2021:s9?rev=1614718217&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-03-02T20:50:17+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>LPIC2 2021 Sesión 9 (2021-03-02)</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:lpic2-2021:s9?rev=1614718217&amp;do=diff</link>
        <description>LPIC2 2021 Sesión 9 (2021-03-02)

Documentación relacionada:

	*  Manual Certificacion LPIC-2.pdf, pag XX
	*  Material Practicas LPIC-2/LPIC-202/
	*  Presentaciones/2020/202/
	*  gdrive://

Clase

DNS

DNS: Laboratorio

continuación de dnslaboratorio

	*  ficheros de configuración para el master del servidor</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m1:2.8?rev=1699216442&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-11-05T20:34:02+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>2.8 Composition vs Inheritance - two ways to the same destination</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m1:2.8?rev=1699216442&amp;do=diff</link>
        <description>2.8 Composition vs Inheritance - two ways to the same destination

So far we&#039;ve been using and following the inheritance concept when modeling our classes to represent real-life issues. Inheritance is a great concept, one of the most important foundations of object-oriented programming that models a tight relation between two classes: the base class and the derived class, called a subclass.</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/web:security:openssl?rev=1638598409&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-12-04T06:13:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>openssl</title>
        <link>https://miguelangel.torresegea.es/wiki/web:security:openssl?rev=1638598409&amp;do=diff</link>
        <description>openssl

	*  Certificados, certificaciones, Entidades de Certificación
	*  &lt;https://www.sslshopper.com/article-most-common-openssl-commands.html&gt;

utils

	*  Remove a passphrase from a private key:
openssl rsa -in privateKey.pem -out newPrivateKey.pem



check

	*  Check a Certificate Signing Request (CSR):
openssl req -text -noout -verify -in CSR.csr


	*  Check a private key:</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:python:openpyxl?rev=1654853319&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-06-10T09:28:39+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Curso python + openpyxl (excel)</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:python:openpyxl?rev=1654853319&amp;do=diff</link>
        <description>Curso python + openpyxl (excel)

python

	*  udemy
	*  &lt;https://www.udemy.com/course/python-learn-how-to-read-write-and-manipulate-excel-files/learn/lecture/8080232#overview&gt;

2.Python - Working with Sheet


import openpyxl
import os

os.getcwd()
os.chdir(path)

wb=openpyxl.load_workbook(&#039;...xlsx&#039;)
type(wb)
wb.get_sheet_names()



sheet=wb.get_sheet_by_name(&#039;pestanya&#039;)
type(sheet)
sheet.title
sheet.max_row
sheet.max_column
sheet.title=&#039;nou nom&#039;
wb.save(&#039;file.xlsx&#039;)</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/development:python:iterables?rev=1759134237&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-09-29T08:23:57+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Python iterables</title>
        <link>https://miguelangel.torresegea.es/wiki/development:python:iterables?rev=1759134237&amp;do=diff</link>
        <description>Python iterables

python

	*  &lt;https://kinsta.com/es/blog/iterables-de-python/&gt;
	*  &lt;https://ellibrodepython.com/iterator-python&gt;

iterables

even_list = [2, 4, 6, 8, 10]
my_iterator = iter(even_list)
print(next(my_iterator)) # Prints 2
print(next(my_iterator)) # Prints 4
print(next(my_iterator)) # Prints 6


funciones sobre iterables

	*  sum — Devuelve la suma de un iterable dado, siempre que la colección sea de tipos numéricos (enteros, valores de coma flotante y números complejos)</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m1:2.6?rev=1699216418&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-11-05T20:33:38+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>2.6 Abstract classes</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m1:2.6?rev=1699216418&amp;do=diff</link>
        <description>2.6 Abstract classes

Python is considered to be a very flexible programming language, but that doesn’t mean that there are no controls to impose a set of functionalities or an order in a class hierarchy. When you develop a system in a group of programmers, it would be useful to have some means of establishing requirements for classes in matters of interfaces (methods) exposed by each class.</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m3:1.4?rev=1703358335&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-12-23T19:05:35+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>1.4 Coloring your widgets</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m3:1.4?rev=1703358335&amp;do=diff</link>
        <description>1.4 Coloring your widgets

Adding colors

Nearly everything you put inside your windows may be colored. Most widgets have dedicated properties to handle their colors and we will tell you about them while discussing the widgets themselves. Currently, the most important thing is getting to know how the colors are described in</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:bash:ficherosinicio?rev=1675155487&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-01-31T08:58:07+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Los ficheros de inicio de Bash</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:bash:ficherosinicio?rev=1675155487&amp;do=diff</link>
        <description>Los ficheros de inicio de Bash

tipos de shell

	*  Interactivo: permite interactuar, ejecutando comandos introducidos desde el teclado.
	*  No Interactivo: ejecuta los comandos desde un script
	*  De Inicio: los shells que se ejecutan justo después de haberse identificado. Son los que solicitan usuario y contraseña (versus los interactivos que no la solicitan, que no serían de inicio)</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:netacad:python:pe1m4:tuplas?rev=1655832393&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-06-21T17:26:33+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Modulo 4: Tuplas</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:netacad:python:pe1m4:tuplas?rev=1655832393&amp;do=diff</link>
        <description>Modulo 4: Tuplas

Tipos de secuencias y mutabilidad

Antes de comenzar a hablar acerca de tuplas y diccionarios, se deben introducir dos conceptos importantes: tipos de secuencia y mutabilidad.

Un tipo de secuencia es un tipo de dato en Python el cual es capaz de almacenar más de un valor (o ninguno si la secuencia esta vacía), los cuales pueden ser secuencialmente (de ahí el nombre) examinados</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m3:1.5?rev=1703359986&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-12-23T19:33:06+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>1.5 A simple GUI application</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m3:1.5?rev=1703359986&amp;do=diff</link>
        <description>1.5 A simple GUI application

Building a GUI application from scratch

Now we&#039;re going to build a very simple and rather useless GUI application. Does that sound weird? Maybe, but the application, when ready, will make you more accustomed to some tkinter</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m3:2.3?rev=1703793078&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-12-28T19:51:18+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>2.3 A small lexicon of widgets - Part 3</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m3:2.3?rev=1703793078&amp;do=diff</link>
        <description>2.3 A small lexicon of widgets - Part 3

There are two remaining widgets we want to tell you about – the first one is just a widget, while the second is, in fact, a set of cooperating widgets.

The Entry widget not only presents a line of text, but is also able to</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m3:2.5?rev=1703795730&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-12-28T20:35:30+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>2.5 Working with the Canvas</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m3:2.5?rev=1703795730&amp;do=diff</link>
        <description>2.5 Working with the Canvas

Canvas

Our last meeting is devoted to the Canvas – a widget that behaves like a... canvas. It’s a flat, rectangular surface that you can cover with drawings, text, frames, and other widgets. Please treat this story as a basic introduction to the</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:bash:arrays?rev=1539085719&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-10-09T11:48:39+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>arrays bash</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:bash:arrays?rev=1539085719&amp;do=diff</link>
        <description>arrays bash



linux bash pendiente wiki

/via: &lt;http://www.thegeekstuff.com/2010/06/bash-array-tutorial/&gt;
&lt;http://wiki.bash&gt;-hackers.org/syntax/arrays?rev=1534920675&lt;https://www.artificialworlds.net/blog/2012/10/17/bash-associative-array-examples/&gt;
declaración e inicialización


declare -a array=(valor0 &#039;valor uno&#039; &#039;valor dos&#039;)



declare -A array=( [indice1]=valor0 [indice2]=&#039;valor uno&#039; [indice3]=&#039;valor dos&#039;)
# es necesario una versión 4+ de BASH para disponer de Arrays asociativos</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/development:python:thinkpython?rev=1654853278&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-06-10T09:27:58+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>think python</title>
        <link>https://miguelangel.torresegea.es/wiki/development:python:thinkpython?rev=1654853278&amp;do=diff</link>
        <description>think python

python

cadenas

	*  inmutables
	*  &lt;string&gt;[char]
		*  -1 : last
		*  -2 : pre-last

	*  &lt;string&gt;[pos1:pos2]
	*  &lt;string&gt;[:pos2], &lt;string&gt;[pos2:],&lt;string&gt;[-pos2:]
	*  &lt;string&gt;.capitalize()
	*  &lt;string&gt;.isupper()
	*  list(cadena) : separa en caracteres</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:zsh:zmv?rev=1585000143&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-03-23T21:49:03+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>ZSH zmv</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:zsh:zmv?rev=1585000143&amp;do=diff</link>
        <description>ZSH zmv

mv/rename mejorado

uso

	*  si no lo hacemos en el .zshrc, cargar con autoload zmv
	*  parámetros:
		*  -n: test, o hace los cambios
		*  C: copy
		*  L: ln
		*  M: move
		*  -w: añade paréntesis en los *
		*  -i: interactivo


ejemplo

usage</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m2:1.1?rev=1699217111&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-11-05T20:45:11+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>1.1 What is PEP?</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m2:1.1?rev=1699217111&amp;do=diff</link>
        <description>1.1 What is PEP?

PEP may refer to several things:

	*  football (soccer) fans will definitely associate it with the famous ex-footballer and football manager, Josep Guardiola, whose nickname is (guess what) Pep;
	*  those who have medical jobs will surely think of post-exposure prophylaxis, which in turn has to do with taking preventive medical measures after contact with pathogens;</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m4:1.4?rev=1705059240&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-01-12T11:34:00+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>1.4 Talking to JSON in Python</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m4:1.4?rev=1705059240&amp;do=diff</link>
        <description>1.4 Talking to JSON in Python

Working with the JSON module in Python

Now that we&#039;re familiar with JSON essentials, it&#039;s time to learn how to use it with Python. We&#039;re a little worried you may think that we want you to laboriously build JSON messages, fretting over all these brackets, parentheses and colons, and to break down complex JSON lines into prime factors. Nothing could be further from the truth! We’re not in the habit of coming up with such crazy ideas, although, to be honest, it&#039;s not…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:bash:estructurasdecontrol?rev=1685525137&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-05-31T09:25:37+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Estructuras de control y bucles</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:bash:estructurasdecontrol?rev=1685525137&amp;do=diff</link>
        <description>Estructuras de control y bucles



comparaciones de cadenas alfanuméricas (Test Operators, Binary Comparison)

	*  cadena1 = cadena2 (también cadena1 == cadena2)
	*  cadena1 != cadena2
	*  cadena1 &lt; cadena2
	*  cadena1 &gt; cadena2
	*  -n cadena1 -&gt; longitud mayor que 0</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:certificados:cayotros?rev=1638598737&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-12-04T06:18:57+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Certificados, certificaciones, Entidades de Certificación</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:certificados:cayotros?rev=1638598737&amp;do=diff</link>
        <description>Certificados, certificaciones, Entidades de Certificación

/vía: &lt;http://www.rinconastur.com/php/php21.php&gt;

	*  openssl

todo

	*  si no es https, redirección a https
	*  si no tiene certificado de CA ficticea, llevar a página donde descargar

Creación entidad certificadora

	*  Creación de clave privada:</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:libros:terraform-upandrunning:cap3?rev=1589544364&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-05-15T12:06:04+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Chapter 3: How to Manage Terraform State</title>
        <link>https://miguelangel.torresegea.es/wiki/info:libros:terraform-upandrunning:cap3?rev=1589544364&amp;do=diff</link>
        <description>Chapter 3: How to Manage Terraform State

what is?

	*  terraform.tfsate JSON file
	*  output terraform plan is a «diff» with terraform.tfstate
	*  state file is a private API, for internal use of terraform and can change in any moment
		*  to modify,</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:netacad:python:pe2m1:paquetes?rev=1655983096&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-06-23T11:18:16+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Modulo 1 (intermedio): Paquetes</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:netacad:python:pe2m1:paquetes?rev=1655983096&amp;do=diff</link>
        <description>Modulo 1 (intermedio): Paquetes

Escribir tus propios módulos no difiere mucho de escribir scripts comunes.

Existen algunos aspectos específicos que se deben tomar en cuenta, pero definitivamente no es algo complicado. Lo verás pronto.



Resumamos algunos aspectos importantes:</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/software:games:minecraft:start?rev=1586618902&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-04-11T15:28:22+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>minecraft</title>
        <link>https://miguelangel.torresegea.es/wiki/software:games:minecraft:start?rev=1586618902&amp;do=diff</link>
        <description>minecraft

standalone

	*  &lt;https://vandal.elespanol.com/guias/guia-minecraft-los-mejores-trucos-y-consejos-2018/los-mejores-trucos-y-comandos-de-minecraft-2018&gt;

server

	*  &lt;https://minecraft-es.gamepedia.com/Server.properties&gt;
	*  &lt;https://www.beastnode.com/portal/knowledgebase/118/Make-Yourself-An-OporOwnerorAdmin.html&gt;
	*  &lt;https://minecraft-es.gamepedia.com/Administrador&gt;
	*  name -&gt; uuid: &lt;https://api.mojang.com/users/profiles/minecraft/&lt;username&gt;&gt;
	*  uuid -&gt; name: &lt;https://api.mojang.co…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:netacad:python:pe2m3:excepcionesoop?rev=1657050801&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-07-05T19:53:21+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Módulo 3 (Intermedio): Programación Orientada a Objetos - Excepciones</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:netacad:python:pe2m3:excepcionesoop?rev=1657050801&amp;do=diff</link>
        <description>Módulo 3 (Intermedio): Programación Orientada a Objetos - Excepciones

Más acerca de excepciones

El discutir sobre la programación orientada a objetos ofrece una muy buena oportunidad para volver a las excepciones. La naturaleza orientada a objetos de las excepciones de Python las convierte en una herramienta muy flexible, capaz de adaptarse a necesidades específicas, incluso aquellas que aún no conoces.</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:ethical-hacker:extras:sincara-systemd?rev=1740743512&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-02-28T11:51:52+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Apuntes SinCara Extras systemd</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:ethical-hacker:extras:sincara-systemd?rev=1740743512&amp;do=diff</link>
        <description>Apuntes SinCara Extras systemd

Consideraciones iniciales

	*  Se presenta el 30 de abril de 2010, por Lennart Poetterig
	*  SystemD es un sistema de inicio y administración de servicios.
	*  Reemplaza los sistemas de inicio tradicionales como SysV init o Upstart (de Canonical / Ubuntu)</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:ethical-hacker:sesion2:sincara?rev=1740558607&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-02-26T08:30:07+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Apuntes SinCara sesión 2</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:ethical-hacker:sesion2:sincara?rev=1740558607&amp;do=diff</link>
        <description>Apuntes SinCara sesión 2

Modulo 06

	*  Kerberos:
		*  &lt;https://www.tarlogic.com/es/blog/como-funciona-kerberos/&gt; - Cómo funciona Kerberos
		*  &lt;https://www.tarlogic.com/es/blog/como-atacar-kerberos/&gt; - Ataques a Kerberos
		*  Kerberos se divide principalmente en 5 pasos:
			*  KRB_AS_REQ: El cliente requiere que el AS (Authentication Service) le proporcione un TGT (Ticket Granting Ticket), válido durante unas horas</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m3:1.9?rev=1703789305&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-12-28T18:48:25+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>1.9 Looking at variables</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m3:1.9?rev=1703789305&amp;do=diff</link>
        <description>1.9 Looking at variables

Variables

To implement some of its functions, Tkinter uses a very special kind of variable called an observable variable. This variable works like a regular variable (i.e., it’s able to store values which are accessible to the outside world) but there is something more – any change of the variable’s state can be</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m3:2.1?rev=1703790579&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-12-28T19:09:39+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>2.1 A small lexicon of widgets - Part 1</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m3:2.1?rev=1703790579&amp;do=diff</link>
        <description>2.1 A small lexicon of widgets - Part 1

A small lexicon of widgets

Now we’re ready to present a systematized set of some of the tkinter widgets. We aren’t able to describe all of them, however – it would bloat our course to an unmanageable size. We’re convinced that our collection is large enough to make you familiar with</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/wiki:plugins?rev=1528577721&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-06-09T20:55:21+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>plugins</title>
        <link>https://miguelangel.torresegea.es/wiki/wiki:plugins?rev=1528577721&amp;do=diff</link>
        <description>plugins

	*  export to TXT : &lt;https://www.dokuwiki.org/plugin:text&gt; -&gt; ?do=export_text
	*  qrcodes
	*  &lt;http://wikidesign.ch/en/plugins&gt;
	*  estadísticas de usuarios: &lt;https://www.dokuwiki.org/plugin:authorstats&gt;
	*  editor ACE : &lt;https://www.dokuwiki.org/plugin:aceeditor&gt;
	*  añade botón para introducir &lt;file&gt;code&lt;/file&gt;: &lt;https://www.dokuwiki.org/plugin:codebutton&gt;
	*  crear botones en el editor «a medida»: &lt;https://www.dokuwiki.org/plugin:codebutton2&gt; &lt;- no instalado
	*  necesario para el ope…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/wiki:primeros_pasos?rev=1321351182&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2011-11-15T09:59:42+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>primeros pasos</title>
        <link>https://miguelangel.torresegea.es/wiki/wiki:primeros_pasos?rev=1321351182&amp;do=diff</link>
        <description>primeros pasos

&lt;note important&gt;A la hora de hacer un buen seguimiento de control de cambios, los arreglos de texto o composición (poner negritas, corregir un error tipográfico, arreglar una lista que no sale bien) tendrían que marcarse como Minor Chages</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1?rev=1709549553&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-03-04T10:52:33+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Curso python (PCPP1) PUE 2023</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1?rev=1709549553&amp;do=diff</link>
        <description>Curso python (PCPP1) PUE 2023

python

	*  Jordi Ariño
		*  jordi.arino@pue.es
		*  jordiAS2K@gmail.com

	*  Plataforma: EDUBE
	*  Recursos
		*  Referencia:&lt;https://docs.python.org/3/reference/index.html&gt;
		*  Librerías: &lt;https://docs.python.org/3/library/index.html&gt;
		*  funciones built-in: &lt;https://docs.python.org/3/library/functions.html&gt;
		*  PEP8: &lt;https://peps.python.org/pep-0008/&gt;
		*  Paquetes: &lt;https://pypi.org/&gt;


PCPP1 / M1 | Advanced Perspective of Classes and Object-Oriented Program…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:mongodbuniversity:m001:cap3?rev=1544897816&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-12-15T18:16:56+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Chapter 3: Deeper Dive on the MongoDB Query Language</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:mongodbuniversity:m001:cap3?rev=1544897816&amp;do=diff</link>
        <description>Chapter 3: Deeper Dive on the MongoDB Query Language

comparison query operators

extras

	*  &lt;https://docs.mongodb.com/manual/reference/operator/query/&gt;
	*  &lt;https://docs.mongodb.com/manual/reference/operator/query-comparison/&gt;
	*  

operators

	*  $eq, $ne : igual y no-igual
	*  $gt, $gte : mayor y mayor-igual
	*  $lt, $lte : menor y menor-igual
	*  $in, $nin : en array y no-en array</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:devops2022:s13?rev=1648069358&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-03-23T21:02:38+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>DevOps Sesión 13 (2022-03-23) Ansible</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:devops2022:s13?rev=1648069358&amp;do=diff</link>
        <description>DevOps Sesión 13 (2022-03-23) Ansible

Documentación relacionada

	*  ./4-Topic 704 Configuration Management
	*  ./Material Curso Ansible/Curso Ansible 2020.pdf

variables

	*  ./Material Curso Ansible/Curso Ansible 2020.pdf pag 71
	*  ./Material Curso Ansible/Clase Ansible variables basicas .txt</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:debiean:seebox:rtorrent_rutorrent:old1?rev=1608802462&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-12-24T09:34:22+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>rtorrent+rutorrent en contenedor (OLD1)</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:debiean:seebox:rtorrent_rutorrent:old1?rev=1608802462&amp;do=diff</link>
        <description>rtorrent+rutorrent en contenedor (OLD1)

pasos básicos

	*  montar estructura de carpetas
		*  downloads : ubicación descargas
		*  root : ubicación archivos configuración NGINX/RTORRENT/RUTORRENT modificados

	*  ejecutar docker según script


STORAGE_PATH=/home/user/storage/rtorrent+rutorrent

docker run \
	-dt \
	--name rtorrent-rutorrent \
	--restart unless-stopped \
	-p 80:80 \
	-p 443:443 \
	-p 49160:49160/udp \
	-p 49161:49161 \
	-v ${STORAGE_PATH}/downloads:/downloads \
	-v ${STORAGE_PAT…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:netacad:python:pe1m4:funciones?rev=1655832134&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-06-21T17:22:14+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Modulo 4: Funciones</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:netacad:python:pe1m4:funciones?rev=1655832134&amp;do=diff</link>
        <description>Modulo 4: Funciones

¿Por qué necesitamos funciones?

Hasta ahorita has implementado varias veces el uso de funciones, pero solo se han visto algunas de sus ventajas. Solo se han invocado funciones para utilizarlas como herramientas, con el fin de hacer la vida más fácil, y para simplificar tareas tediosas y repetitivas.</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:netacad:python:pe2m2:excepciones?rev=1656618866&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-06-30T19:54:26+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Módulo 2 (Intermedio): Excepciones</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:netacad:python:pe2m2:excepciones?rev=1656618866&amp;do=diff</link>
        <description>Módulo 2 (Intermedio): Excepciones

Errores, fallas y otras plagas

Cualquier cosa que pueda salir mal, saldrá mal.

Esta es la ley de Murphy, y funciona en todo y siempre. Si la ejecución del código puede salir mal, lo hará.

import math

x = float(input(&quot;Ingresa x: &quot;))
y = math.sqrt(x)

print(&quot;La raíz cuadrada de&quot;, x, &quot;es igual a&quot;, y)</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:netacad:python:pe2m3:viajeprocedimentaloop?rev=1657048741&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-07-05T19:19:01+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Módulo 3 (Intermedio): Programación Orientada a Objetos - Un viaje por la OOP</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:netacad:python:pe2m3:viajeprocedimentaloop?rev=1657048741&amp;do=diff</link>
        <description>Módulo 3 (Intermedio): Programación Orientada a Objetos - Un viaje por la OOP

¿Qué es una pila?

Una pila es una estructura desarrollada para almacenar datos de una manera muy específica. Imagina una pila de monedas. No puedes poner una moneda en ningún otro lugar sino en la parte superior de la pila.</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m4:2.1?rev=1705687171&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-01-19T17:59:31+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>2.1 Python Professional Course Series: Lab &amp; Assessment</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m4:2.1?rev=1705687171&amp;do=diff</link>
        <description>2.1 Python Professional Course Series: Lab &amp; Assessment

Working with RESTful APIs: Lab &amp; Assessment

Well done, you&#039;ve reached the end of the course!

In this section, it&#039;s time to translate your Python skills and everything you&#039;ve learned about RESTful APIs into some real-world projects. Specifically, we&#039;ll ask you to create:</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/wiki:dokuwiki?rev=1321351182&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2011-11-15T09:59:42+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>DokuWiki</title>
        <link>https://miguelangel.torresegea.es/wiki/wiki:dokuwiki?rev=1321351182&amp;do=diff</link>
        <description>DokuWiki

wiki:dokuwiki DokuWiki is a standards compliant, simple to use Wiki, mainly aimed at creating documentation of any kind. It is targeted at developer teams, workgroups and small companies. It has a simple but powerful Formatting Syntax which makes sure the datafiles remain readable outside the Wiki and eases the creation of structured texts. All data is stored in plain text files</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/development:python:strings?rev=1728546797&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-10-10T07:53:17+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Python strings</title>
        <link>https://miguelangel.torresegea.es/wiki/development:python:strings?rev=1728546797&amp;do=diff</link>
        <description>Python strings

python

comp

	*  Exact match (equality comparison): ==, !=
	*  Partial match: in, not in
	*  Forward/backward match: startswith(), endswith()
	*  Order comparison: &lt;, &lt;=, &gt;, &gt;=
	*  Case-insensitive comparison: upper(), lower()
	*  Regex: re.search(), re.fullmatch()</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:bash:locales?rev=1594132941&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-07-07T14:42:21+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Locales</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:bash:locales?rev=1594132941&amp;do=diff</link>
        <description>Locales

linux bash

variables

	*  LANG : establece el valor del lenguaje (y de LC_*) usado en el sistema
	*  LC_ALL : establece el valor de todas las categorias y tiene prefereencia
	*  definidos por POSIX
		*  LC_COLLATE : funciones de cadena
		*  LC_CTYPE : establece el comportamiento de funciones que tengan que ver con la convención de mayúsculas/minúsculas</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:seguridad:sadservers?rev=1716904318&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-05-28T13:51:58+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Linux sadservers</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:seguridad:sadservers?rev=1716904318&amp;do=diff</link>
        <description>Linux sadservers

&quot;Saint John&quot;: what is writing to this log file?

	*  ps auxf
	*  lsof /path/to/file
	*  fuser /path/to/file
	*  pwdx PID: pwd del fichero PID


1. You can use ps to list all processes and see if you see something related, for example with: ps auxf. Ignore system processes [in brackets].

A better way is to use the command to list open files: lsof.

2. Find the name (first column) and Process ID (PID, second column) of the process related to /var/log/bad.log by running lsof and …</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:ufw:start?rev=1756889908&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-09-03T08:58:28+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Uncomplicated Firewall</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:ufw:start?rev=1756889908&amp;do=diff</link>
        <description>Uncomplicated Firewall

manera alternativa de montar reglas de acceso con una sintáxis más sencilla, monta tablas y cadenas a su antojo

sintaxis y argumentos

ufw [--dry-run] [options] [rule syntax]

	*  options:
		*  allow
		*  deny
		*  reject
		*</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:singularity:start?rev=1697184224&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-10-13T08:03:44+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Singularity</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:singularity:start?rev=1697184224&amp;do=diff</link>
        <description>Singularity

.sif i cache

singularity pull hello-world.sif shub://vsoch/hello-world

singularity cache list [-v]

containers

singularity exec hello-world.sif /bin/echo Hello World!

singularity shell hello-world.sif

singularity shell hello-world.sif
Singularity&gt; whoami</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/windows:account:migraralocal?rev=1722081750&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-07-27T12:02:30+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Windows: migrar cuenta microsoft a cuenta local</title>
        <link>https://miguelangel.torresegea.es/wiki/windows:account:migraralocal?rev=1722081750&amp;do=diff</link>
        <description>Windows: migrar cuenta microsoft a cuenta local

	*  Crear disco para restablecer contraseña: &lt;https://support.microsoft.com/es-es/windows/crear-un-disco-para-restablecer-la-contrase%C3%B1a-para-una-cuenta-local-en-windows-9a54a5ca-27bc-de72-244a-27b7d62951de&gt;

original

You can use the Settings app to switch your Microsoft account to a local account.

Important: Microsoft recommends using a Microsoft account, not a local account, when signing in to Windows. Using a Microsoft account in Windows …</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:debian:seedbox:rtorrent?rev=1580595836&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-02-01T22:23:56+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>configuración rtorrent(on premise)</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:debian:seedbox:rtorrent?rev=1580595836&amp;do=diff</link>
        <description>configuración rtorrent(on premise)

	*  instalar subversion: apt-get install subversion
	*  instalar compilador: apt-get instsall make
	*  crear carpeta &#039;source&#039; en &#039;user&#039;
	*  descargar:
		*  svn co &lt;https://xmlrpc-c.svn.sourceforge.net/svnroot/xmlrpc-c/stable&gt; xmlrpc
			*  svn co &lt;http://svn.code.sf.net/p/xmlrpc-c/code/advanced&gt; xmlrpc-c
			*  svn co &lt;http://svn.code.sf.net/p/xmlrpc-c/code/stable&gt; xmlrpc-c</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:zsh:oh-my-zsh:autoenv?rev=1732706445&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-11-27T11:20:45+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>zsh-autoenv</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:zsh:oh-my-zsh:autoenv?rev=1732706445&amp;do=diff</link>
        <description>zsh-autoenv

/via: &lt;https://github.com/Tarrasch/zsh-autoenv&gt;

configuration

	*  AUTOENV_FILE_ENTER: Name of the file to look for when entering directories. Default: .autoenv.zsh
	*  AUTOENV_FILE_LEAVE: Name of the file to look for when leaving directories. Requires AUTOENV_HANDLE_LEAVE=1.Default: .autoenv_leave.zsh</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:lpic2:scripts:backup?rev=1534331203&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-08-15T11:06:43+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title></title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:lpic2:scripts:backup?rev=1534331203&amp;do=diff</link>
        <description>#!/bin/bash -x

# mejoras a realizar:
#	- comprobar la existencia del directorio destino con 	[ -d ];
#	- utilizar /etc/mysql/debian.cnf para el usuario/password de mysql

# ubicaciones
path_backup_principal=/home/backups
path_backup=$path_backup_principal/d4
fecha=`date +%Y%m%d%H%M%S`
path_correo=/home/vmail/
path_mysql_trans=/var/log/mysql/
path_virtual_apache=/var/www/virtuals
niveles_virtuales=1


# backup /etc
tar zcpf $path_backup/etc.tar.gz /etc/*

# backup /home (no el vmail, no el backu…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:netacad:python:pe2m1:modulos?rev=1655976060&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-06-23T09:21:00+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Modulo 1 (intermedio): Módulos</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:netacad:python:pe2m1:modulos?rev=1655976060&amp;do=diff</link>
        <description>Modulo 1 (intermedio): Módulos

El código de computadora tiene una tendencia a crecer. Podemos decir que el código que no crece probablemente sea completamente inutilizable o esté abandonado. Un código real, deseado y ampliamente utilizado se desarrolla continuamente, ya que tanto las demandas de los usuarios como sus expectativas se desarrollan de manera diferente.</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m1:4.3?rev=1699216505&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-11-05T20:35:05+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>4.3 Making Python objects persistent using the shelve module</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m1:4.3?rev=1699216505&amp;do=diff</link>
        <description>4.3 Making Python objects persistent using the shelve module

Serialization of Python objects using the shelve module

As you remember, the pickle module is used for serializing objects as a single byte stream. Both serializing and deserializing parties must abide by the order of all the elements placed into a file or database, or sent via a network.</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m3:1.8?rev=1703788552&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-12-28T18:35:52+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>1.8 Interacting with widget methods</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m3:1.8?rev=1703788552&amp;do=diff</link>
        <description>1.8 Interacting with widget methods

Widget methods

Widgets have methods – you’ve met some of them already. Now we’re going to show you a few more of them, and we’ll start with two which seem to be very specific. We can even say that the sense of their existence is very closely bound to the unique features of</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m3:2.2?rev=1703791448&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-12-28T19:24:08+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>2.2 A small lexicon of widgets - Part 2</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:python-pcpp1:m3:2.2?rev=1703791448&amp;do=diff</link>
        <description>2.2 A small lexicon of widgets - Part 2

Non-clickable widgets

The next four widgets fall into the non-clickable category. They’re designed to present textual information and don’t have a command property, although you can use bind() to simulate similar behavior.</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:netacad:python:pe2m4:biblioteca:calendar?rev=1657227190&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-07-07T20:53:10+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Módulo 4 (Intermedio): Biblioteca calendar</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:netacad:python:pe2m4:biblioteca:calendar?rev=1657227190&amp;do=diff</link>
        <description>Módulo 4 (Intermedio): Biblioteca calendar

Introducción al módulo calendar

Además de los módulos datetime y time, la biblioteca estándar de Python proporciona un módulo llamado calendar que, como su nombre indica, ofrece funciones relacionadas con el calendario</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/development:python:start?rev=1771488008&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-02-19T08:00:08+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>PYTHON</title>
        <link>https://miguelangel.torresegea.es/wiki/development:python:start?rev=1771488008&amp;do=diff</link>
        <description>PYTHON

development python

doc

	*  Curso python (PCPP1) PUE 2023
	*  Curso python PUE 2022
	*  Curso python udemy

install

best practices

	*  entornos virtuales: Python: Entornos virtuales
	*  paquetes: Python pip
	*  instalar varias versiones python: &lt;https://medium.com/@julgq/instalando-m%C3%BAltiples-versiones-de-python-en-linux-ubuntu-20-04-2-lts-9f163c046cc5&gt;
	*  How to use Python’s py launcher for Windows: &lt;https://www.infoworld.com/article/3617292/how-to-use-pythons-py-launcher-for-wi…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:bash:comandos?rev=1757052655&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-09-05T06:10:55+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>comandos bash</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:bash:comandos?rev=1757052655&amp;do=diff</link>
        <description>comandos bash

linux bash

comandos al detalle

	*  uptime
	*  tail [-n &lt;nn&gt;]
	*  head [-n &lt;nn&gt;]
	*  sort
	*  watch
	*  wc : wordcount
		*  -c : caracteres
		*  -l : líneas
		*  -w : palabras

	*  tr : translate characters (sustitución cadenas sobre la entrada estandard. Uso com filtro en scripts)</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:bash:ps1?rev=1536065962&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-09-04T12:59:22+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>PS1</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:bash:ps1?rev=1536065962&amp;do=diff</link>
        <description>PS1

simples




export PS1=&quot;\[\e]0;\u@\h \w\a\]\[\e[00;33m\]\u\[\e[0m\]\[\e[00;37m\]@\[\e[0m\]\[\e[00;33m\]\h\[\e[0m\]\[\e[00;37m\]:\[\e[0m\]\[\e[00;34m\]\w\[\e[0m\]\[\e[00;37m\]\n\$ \[\e[0m\]&quot;





export PS1=&quot;\[$(tput sgr0)\]\033[38;5;15m\033[38;5;11m\u\[$(tput sgr0)\]\033[38;5;15m\033[38;5;15m@\[$(tput sgr0)\]\033[38;5;15m\033[38;5;11m\h\[$(tput sgr0)\]\033[38;5;15m\033[38;5;15m:\[$(tput sgr0)\]\033[38;5;15m\033[38;5;2m\w\[$(tput sgr0)\]\033[38;5;15m\033[38;5;15m\n\[$(tput sgr0)\]\\$\[$(tput…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:bash:shellvariables?rev=1727780019&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-10-01T10:53:39+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Special Shell Variables &amp; Parameter Substitution and Expansion</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:bash:shellvariables?rev=1727780019&amp;do=diff</link>
        <description>Special Shell Variables &amp; Parameter Substitution and Expansion

linux

bash

$ es utilizado para expansión de parámetros y sustitución de comandos

File descriptors

Special Shell Variables
 variable  Significado  $0        Nombre del script que se está ejecutando</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:dns:127?rev=1751957332&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-07-08T06:48:52+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>127.0.0.1 VS 127.0.1.1</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:dns:127?rev=1751957332&amp;do=diff</link>
        <description>127.0.0.1 VS 127.0.1.1

/via: &lt;https://askubuntu.com/questions/754213/what-is-difference-between-localhost-address-127-0-0-1-and-127-0-1-1&gt;

As your machine gets started, it will need to know the mapping of some hostnames to IP addresses before DNS can be referenced. This mapping is kept in the /etc/hosts file. In the absence of a name server, any network program on your system consults this file to determine the IP address that corresponds to a host name.</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:scripts:backup1?rev=1321351182&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2011-11-15T09:59:42+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>backup sistema</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:scripts:backup1?rev=1321351182&amp;do=diff</link>
        <description>backup sistema

Crea TARs de varios directorios del sistema, para realizar un backup «completo»

	*  buzones de correo
	*  BBDD del servidor MySQL
	*  directorio de configuración /etc
	*  directorios /home


#!/bin/bash -x

# mejoras a realizar:
#       - comprobar la existencia del directorio destino con    [ -d ];
#       - utilizar /etc/mysql/debian.cnf para el usuario/password de mysql

# ubicaciones
path_backup=/root/bck
path_correo=/home/vmail/
path_mysql_trans=/var/log/mysql/

# backup bu…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:scripts:backupgpg?rev=1584903148&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-03-22T18:52:28+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>backup, encriptado y copia a remoto</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:scripts:backupgpg?rev=1584903148&amp;do=diff</link>
        <description>backup, encriptado y copia a remoto

2.2

	*  disociar parámetros de script en 2 ficheros
		*  usar source para incluir las variables necesarias
		*  o volver a mirar opciones de usar otro tipo de fichero (INI,JSON)


v2.1

	*  sustitución GPG por</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:scripts:getopts?rev=1547928366&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2019-01-19T20:06:06+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>getopts</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:scripts:getopts?rev=1547928366&amp;do=diff</link>
        <description>getopts

buen tutorial: &lt;https://wiki.bash-hackers.org/howto/getopts_tutorial&gt;

uso

	*  la cadena que acompaña a la instrucción getopts indica las opciones disponibles
	*  getopts OPTSTRING VARNAME [ARGS...]
		*  OPTSTRING:
			*  h: comprueba la opción -h sin parámetros. Da error en opciones no soportadas</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:scripts:home?rev=1654849975&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-06-10T08:32:55+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>mis ficheros $HOME</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:scripts:home?rev=1654849975&amp;do=diff</link>
        <description>mis ficheros $HOME

.bash_profile


# ~/.bash_profile: executed by bash(1) for login shells.

# quita el permiso de excritura al others
umask 002

#prompt por defecto
PS1=&#039;[\h]$ &#039;

# prompt de color en 2 lineas
if [ -f &quot;.prompt&quot; ]; then
  export PS1=`cat .prompt`
fi

if [ -f &quot;.bashrc&quot; ]; then
  source ~/.bashrc
fi

# variables de entorno
export EDITOR=&quot;vim&quot;
export LANG=en_US.ISO-8859-15

# echo &quot;&gt; .bash_profile&quot;</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:ssh:clientconfig?rev=1777967022&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-05-05T07:43:42+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>fichero .ssh/config</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:ssh:clientconfig?rev=1777967022&amp;do=diff</link>
        <description>fichero .ssh/config

linux ssh

man page

fichero configuración conexión

para simplificar la conexión vía SSH con diferentes servidores, y en alternativa a crear alias de conexiones:

alias ssh-local-dns=&#039;ssh -v -i /home/mate/.ssh/pi@raspberry pi@192.168.1.60&#039;

se puede optar por crear el fichero de configuración de conexión (</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/development:php:codeigniter:core?rev=1580244618&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-01-28T20:50:18+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>core</title>
        <link>https://miguelangel.torresegea.es/wiki/development:php:codeigniter:core?rev=1580244618&amp;do=diff</link>
        <description>core

	*  db
		*  &lt;http://codeigniter.com/user_guide/database/active_record.html&gt;
		*  se pueden concatenar: $query = $this-&gt;db-&gt;order_by(campo)-&gt;get(tabla)
		*  $this-&gt;db-&gt;select(&#039;&lt;campo&gt;,&lt;campo&gt;,&lt;campo&gt;&#039;);
		*  $this-&gt;db-&gt;select_max(&#039;&lt;campo&gt;&#039;,&#039;&lt;alias&gt;&#039;);
		*  $this-&gt;db-&gt;select_min(&#039;&lt;campo&gt;&#039;,&#039;&lt;alias&gt;&#039;);
		*  $this</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:ingles:basico:start?rev=1522232137&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-03-28T10:15:37+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>básico</title>
        <link>https://miguelangel.torresegea.es/wiki/info:ingles:basico:start?rev=1522232137&amp;do=diff</link>
        <description>básico

	*  pronombres personales: I, you, he/she/it, we, you, they
	*  artículos determinados: the (tanto singular como plural, tanto masculino como femenino)
	*  artícules indeterminados: a/an (se utiliza segunda forma cuando palabra que precede empieza por vocal)</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:lpic2-2021:s7?rev=1663570072&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-09-19T06:47:52+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>LPIC2 2021 Sesión 7 (2021-02-23) - raid, networking</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:lpic2-2021:s7?rev=1663570072&amp;do=diff</link>
        <description>LPIC2 2021 Sesión 7 (2021-02-23) - raid, networking

Documentación relacionada:

	*  Manual Certificacion LPIC-2.pdf, pag 72
	*  Material Practicas LPIC-2/LPIC-201/4-Filesystem and Devices/1-Gestión Avanzada de Discos.pdf
	*  Material Practicas LPIC-2/LPIC-201/4-Filesystem and Devices/3-</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:docker:dockerfile:examples:mariadbssl?rev=1637048170&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-11-16T07:36:10+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Dockerfile mariadb + SSL</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:docker:dockerfile:examples:mariadbssl?rev=1637048170&amp;do=diff</link>
        <description>Dockerfile mariadb + SSL

dockerfile

Dockerfile


FROM mariadb:latest

ADD --chown=mysql:root ./data/certs/server-key.pem /etc/mysql/certs/server.key
ADD ./data/certs/server-cert.pem /etc/mysql/certs/server.crt
ADD ./data/certs/ca-cert.pem /etc/mysql/certs/CA.crt
ADD ./data/certs/ssl.cnf /etc/mysql/conf.d/ssl.cnf</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:netacad:python:pe2m3:herencia?rev=1657049370&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-07-05T19:29:30+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Módulo 3: Programación Orientada a Objetos - Herencia</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:netacad:python:pe2m3:herencia?rev=1657049370&amp;do=diff</link>
        <description>Módulo 3: Programación Orientada a Objetos - Herencia

Herencia: ¿por qué y cómo?

Antes de comenzar a hablar sobre la herencia, queremos presentar un nuevo y práctico mecanismo utilizado por las clases y los objetos de Python: es la forma en que el objeto puede presentarse a si mismo</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:ethical-hacker:extras:sincara-xss?rev=1740565887&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-02-26T10:31:27+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Apuntes SinCara Extras XSS, CSRF y SSRF</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:ethical-hacker:extras:sincara-xss?rev=1740565887&amp;do=diff</link>
        <description>Apuntes SinCara Extras XSS, CSRF y SSRF

XSS - Cross-Site Scripting - Secuencia de Comandos en Sitios Cruzados

	*  &lt;https://cwe.mitre.org/data/definitions/79.html&gt; - CWE-79: Improper Neutralization of Input During Web Page Generation (&#039;Cross-site Scripting&#039;). Número 1 del top 25:
		*  &lt;https://cwe.mitre.org/top25/index.html&gt;

	*  A una</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:ethical-hacker:sesion3:lab9?rev=1740124796&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-02-21T07:59:56+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Lab Module 09: Social Engineering</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:ethical-hacker:sesion3:lab9?rev=1740124796&amp;do=diff</link>
        <description>Lab Module 09: Social Engineering

Lab 1: Perform Social Engineering using Various Techniques

Task 1: Sniff Credentials using the Social-Engineer Toolkit (SET)

	*   setoolkit to launch Social-Engineer Toolkit.
	*  
	*  
	*  
	*  
	*  IP máquina host</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:aptget:apt?rev=1741600997&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-03-10T10:03:17+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>apt-get</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:aptget:apt?rev=1741600997&amp;do=diff</link>
        <description>apt-get

apt VS apt-get

	*  &lt;https://itsfoss.com/apt-vs-apt-get-difference/&gt;
	*  &lt;https://itsfoss.com/apt-get-linux-guide/&gt;
	*  &lt;https://itsfoss.com/apt-command-guide/&gt;

sources.list

	*  copia: /usr/share/doc/apt/examples/sources.list
	*  añadir universe y multiverse:
sudo add-apt-repository universe
sudo add-apt-repository multiverse


ignore certificate

Cuando estamos en una versión vieja de algún linux (debian 9 strech en este caso), podemos intentar encontrar la manera de actualizar los c…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:bash:heredoc?rev=1511442654&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-11-23T13:10:54+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>heredoc (docs emblebed)</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:bash:heredoc?rev=1511442654&amp;do=diff</link>
        <description>heredoc (docs emblebed)

un heredoc es la manera de «embutir» un documento de texto dentro de un script para volcar a nuestro criterio.

ejemplos

el EOF usado en los ejemplos no deja de ser una etiqueta, no es mandatory... podríamos usar MITEXTO, la cuestión es definir principio y fin con la misma etiqueta</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:bash:start?rev=1777033277&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-24T12:21:17+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>BASH</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:bash:start?rev=1777033277&amp;do=diff</link>
        <description>BASH

linux pendiente wiki

doc

	*  &lt;https://github.com/dylanaraps/pure-bash-bible&gt;

related

cheatsheet

	*  

shell

	*  /etc/shells
	*  history expansion
	*  Special Shell Variables &amp; Parameter Substitution and Expansion
	*  Los ficheros de inicio de Bash
	*  update-alternatives
&lt;https://devhints.io/bash&gt;&lt;https://wiki.bash-hackers.org/start&gt;&lt;http://www.compciv.org/topics/bash/variables-and-substitution/&gt;&lt;http://wiki.bash-hackers.org/syntax/pe?rev=1529675381&gt;&lt;https://en.m.wikipedia.org/wiki/G…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:scripts:1st-last?rev=1321351182&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2011-11-15T09:59:42+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>ejecutar el primer o último día del mes</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:scripts:1st-last?rev=1321351182&amp;do=diff</link>
        <description>ejecutar el primer o último día del mes


#! /usr/bin/ksh
alias datecalc=/usr/local/bin/datecalc

#  weekselector ---  script to assist in scheduling cron jobs
#  Perderabo  Oct 11, 2003
#
#  example:
#  You want to run command1 on the first monday of each month and
#  you want to run command2 on the last monday of each month.
#  Just use this syntax:
#
#    0 0 * * 1 /usr/local/bin/weekselector 1st &amp;&amp; command1
#    0 0 * * 1 /usr/local/bin/weekselector last &amp;&amp; command2
#
#  Version 2.0  March 2…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:scripts:protocolobackup?rev=1330366804&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2012-02-27T18:20:04+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Protocolo de Backup</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:scripts:protocolobackup?rev=1330366804&amp;do=diff</link>
        <description>Protocolo de Backup

	*  master -&gt; servidor que hace las copias de seguridad
	*  esclavo(s) -&gt; servidor que se deja hacer las copias de seguridad

esclavo

	*  (1) crear cuenta específica para backups: $ useradd -c «Usuario de backup» -m -d /home/bck bck</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/software:backup:borg?rev=1655284776&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-06-15T09:19:36+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>borgbackup</title>
        <link>https://miguelangel.torresegea.es/wiki/software:backup:borg?rev=1655284776&amp;do=diff</link>
        <description>borgbackup

	*  &lt;https://borgbackup.readthedocs.io/en/stable/index.html&gt;
	*  &lt;https://www.atareao.es/podcast/hice-un-rm-rf-salvado-por-borg/&gt;
	*  alternativa?: &lt;https://restic.readthedocs.io/en/stable/index.html&gt;

quick


sudo mount /media/mate/3TB-EXT4_BACKUP2
sudo borg list /media/mate/3TB-EXT4_BACKUP2/borgbackup/home
sudo borg list /media/mate/3TB-EXT4_BACKUP2/borgbackup/entireDisk

tail -f /media/mate/3TB-EXT4_BACKUP2/borgbackup/entireDisk.last_exec.txt
sudo myscripts/backups/borg-create_ent…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:google:operadores-busqueda?rev=1758784529&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-09-25T07:15:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Google: operadores de búsqueda</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:google:operadores-busqueda?rev=1758784529&amp;do=diff</link>
        <description>Google: operadores de búsqueda

google

	*  Operadores de búsqueda que puedes usar con Gmail: &lt;https://support.google.com/mail/answer/7190?hl=en&gt;

	*  /via: &lt;https://en.wikipedia.org/wiki/Google_hacking&gt;
	*  /via: &lt;https://www.welivesecurity.com/la-es/2021/07/29/google-hacking-averigua-que-informacion-sobre-ti-o-empresa-aparece-resultados/&gt;
	*  GHDB: &lt;https://www.exploit-db.com/google-hacking-database&gt;
		*  intitle:”webcamXP 5″
		*  intext:”index of” inurl:ftp
		*  “Index of” inurl:phpmyadmin
		…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/web:apache:certificados?rev=1640261109&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-12-23T12:05:09+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>certificados de seguridad (apache)</title>
        <link>https://miguelangel.torresegea.es/wiki/web:apache:certificados?rev=1640261109&amp;do=diff</link>
        <description>certificados de seguridad (apache)

conceptos

	*  .key -&gt; fichero conteniendo clave privada de un certificado
	*  .csr -&gt; fichero de petición para certificar por una entidad certificadora -&gt; Certificate Signing Request
	*  .crt -&gt; fichero firmado por la entidad certificadora, para instalar en el webserver</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/windows:cmd:start?rev=1744706346&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-04-15T08:39:06+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Windows: CMD</title>
        <link>https://miguelangel.torresegea.es/wiki/windows:cmd:start?rev=1744706346&amp;do=diff</link>
        <description>Windows: CMD

windows

	*  Windows: comandos básicos desde cmd

shutdown

	*  restart: /r
	*  shutdown: /s
	*  force: /f
	*  temporizador: /t &lt;secs&gt; (incluye /f)
	*  cancelar: /a
	*  /via: &lt;https://www.howtogeek.com/512012/how-to-shut-down-your-windows-10-pc-using-command-prompt/&gt;

parámetros .bat

&lt;https://ss64.com/nt/syntax-args.html&gt;

	*  %1..%9 : parámetros por orden (solo se pueden referenciar 9 parámetros directamente)</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/windows:utils:everything?rev=1750069295&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-06-16T10:21:35+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>everything</title>
        <link>https://miguelangel.torresegea.es/wiki/windows:utils:everything?rev=1750069295&amp;do=diff</link>
        <description>everything

	*  propiedades: &lt;https://www.voidtools.com/forum/viewtopic.php?f=12&amp;t=10176#dupe&gt;

dupes

/via: &lt;https://www.voidtools.com/forum/viewtopic.php?t=12733&gt;

	*  Right click the size column header and click Find size duplicates.
	*  search bar: dupe:size, dupe:size,sha256
	*  in a search:
		*  Right click a column header and click Find &lt;property&gt; duplicates.</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/development:php:item-lista:start?rev=1738838353&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-02-06T10:39:13+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Item / Lista</title>
        <link>https://miguelangel.torresegea.es/wiki/development:php:item-lista:start?rev=1738838353&amp;do=diff</link>
        <description>Item / Lista

ejemplos

delete + log


$oL = new Log(&quot;treballadors_menjador_logs&quot;);
$oL-&gt;seccio=&quot;menjador-delete&quot;;
$oL-&gt;treballador_id=$idU;
		
$oP = new Item(&quot;treballadors_menjador&quot;,&quot;id&quot;,$id);
$oP-&gt;setFields(array(&#039;id&#039;,&#039;id_treballador&#039;,&#039;jornada&#039;,&#039;__CREATESTAMP&#039;));
$oP-&gt;load();
$oP-&gt;setObjLog($oL);
$oL-&gt;txt=sprintf(  &#039;(%s) as (%s)&#039;,implode( &quot;,&quot;,array_keys($oP-&gt;getData()) ),implode( &quot;,&quot;,$oP-&gt;getData() )  );
$oL-&gt;save();
$oP-&gt;delete();</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/web:security:letsencrypt:seedbox.torresegea.es?rev=1551221929&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2019-02-26T22:58:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>let&#039;s encrypt seedbox.torresegea.es</title>
        <link>https://miguelangel.torresegea.es/wiki/web:security:letsencrypt:seedbox.torresegea.es?rev=1551221929&amp;do=diff</link>
        <description>let&#039;s encrypt seedbox.torresegea.es

para próximas

	*  probar método automático: certbot-auto renew
		*  OK, renueva certificados (pero no los actualiza en los directorios correspondientes) -&gt; está en CRON
		*  añadida entrada en sudo visudo para que no solicite password de sudo al ejecutarse</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:mongodbuniversity:m001:cap2?rev=1544811667&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-12-14T18:21:07+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Chapter 2 : The MongoDB Query Language + Atlas</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:mongodbuniversity:m001:cap2?rev=1544811667&amp;do=diff</link>
        <description>Chapter 2 : The MongoDB Query Language + Atlas

CRUD

	*  Create
	*  Read
	*  Update
	*  Delete

Installing the mongo Shell

Compass no cobre toda las opciones que da MongoDB

windows

	*  download center
	*  instalar MongoDB Server versión enterprise (soporte</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:devops2022:s6?rev=1646840614&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-03-09T15:43:34+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>DevOps Sesión 6 (2022-02-28) k8s</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:devops2022:s6?rev=1646840614&amp;do=diff</link>
        <description>DevOps Sesión 6 (2022-02-28) k8s

Documentación relacionada

lab1

	*  2-Despliegue de Aplicaciones Kubernetes/1-Laboratorio kubernetes Curso-DevOps.txt
	*  2-Despliegue de Aplicaciones Kubernetes/1-Laboratorios  Kubernetes 2020.pdf, pág 20
	*  2-Despliegue de Aplicaciones Kubernetes/2-Laboratorios basicos kubernetes .pdf</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:docker:dockerfile:examples:runscript?rev=1637048457&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-11-16T07:40:57+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Dockerfile run script</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:docker:dockerfile:examples:runscript?rev=1637048457&amp;do=diff</link>
        <description>Dockerfile run script

dockerfile

/via:&lt;https://github.com/chio-nzgft/docker-MariaDB-with-SSL/blob/master/run.sh&gt;

destacable



completo


#!/bin/sh
# execute any pre-init scripts
for i in /scripts/pre-init.d/*sh
do
        if [ -e &quot;${i}&quot; ]; then
                echo &quot;[i] pre-init.d - processing $i&quot;
                . &quot;${i}&quot;
        fi
done

if [ -d &quot;/run/mysqld&quot; ]; then
        echo &quot;[i] mysqld already present, skipping creation&quot;
        chown -R mysql:mysql /run/mysqld
else
        echo &quot;[i] …</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:netacad:python:pe1m4:excepciones?rev=1655834352&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-06-21T17:59:12+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Modulo 4: Excepciones</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:netacad:python:pe1m4:excepciones?rev=1655834352&amp;do=diff</link>
        <description>Modulo 4: Excepciones

Excepciones

El lidiar con errores de programación tiene (al menos) dos partes. La primera es cuando te metes en problemas porque tu código, aparentemente correcto, se alimenta con datos incorrectos. Por ejemplo, esperas que se ingrese al código un valor entero, pero tu usuario descuidado ingresa algunas letras al azar.</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:ethical-hacker:extras:sincara?rev=1740564797&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-02-26T10:13:17+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Apuntes SinCara Extras</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:ethical-hacker:extras:sincara?rev=1740564797&amp;do=diff</link>
        <description>Apuntes SinCara Extras

Titulares/Resumen del curso

	*  Logística del curso
		*  Este curso trata de tener una visión 360º de la ciberseguridad. Si quereis profundizar en algún tema, lo leeis con más calma, una vez sacada la certificación
		*</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/development:angular:start?rev=1583776642&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-03-09T17:57:22+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>ANGULAR</title>
        <link>https://miguelangel.torresegea.es/wiki/development:angular:start?rev=1583776642&amp;do=diff</link>
        <description>ANGULAR

development

+ info

	*  re-introducción a javascript
	*  introducción a los objetos JavaScript
	*  let
	*  const

curso PUE

temario

	*  ANGULAR
	*  introducción e instalación
	*  introducción a TypeScript y ECMAScript 6 (ES6)
	*  angular: entorno
	*  angular: estructura proyecto
	*  angular: elementos básicos app
	*  angular: componentes
	*  angular: directivas y personalización
	*  angular: directivas estructurales
	*  angular: directivas de atributos
	*  angular: módulos &lt;-PPT 6.3,…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/development:python:aberraciones?rev=1728466008&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-10-09T09:26:48+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Python aberraciones</title>
        <link>https://miguelangel.torresegea.es/wiki/development:python:aberraciones?rev=1728466008&amp;do=diff</link>
        <description>Python aberraciones

	*  operador ternario:

variable = &quot;valor&quot; if condicion_cierta() else &quot;otro_valor&quot;


	*  reducciones:
my_numbers = [11, 12, 13, 14, 15, 16, 17, 18, 19, 20]
even_number_list = [num for num in my_numbers if num%2 == 0]


		*  List Comprehensions

	*</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:bash:debug?rev=1516612329&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-01-22T09:12:09+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>debug en bash</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:bash:debug?rev=1516612329&amp;do=diff</link>
        <description>debug en bash

&lt;https://www.cyberciti.biz/tips/debugging-shell-script.html&gt;

variables de entorno

	*  en el script, modificando el SheBang:
#!/bin/bash -x

	*  desde linea de comando: $ bash -x &lt;script&gt;
	*  activar modos:
		*  set (+/-)x : muestra comandos y argumentos a medida que son ejecutados
		*  set (+/-)v</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:bash:grep?rev=1576251056&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2019-12-13T15:30:56+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>grep</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:bash:grep?rev=1576251056&amp;do=diff</link>
        <description>grep

uso

es una utilidad de línea de comando para buscar expresiones regulares dentro de cadenas.

	*  $ grep
		*  -n : muestra número de línea
		*  -v : inverso, muestra las líneas que NO tienen la cadena
		*  -w : palabras completas
		*  -x : lineas completas, no fragmentos</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:bash:parallel?rev=1778239769&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-05-08T11:29:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>parallel (bash)</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:bash:parallel?rev=1778239769&amp;do=diff</link>
        <description>parallel (bash)

	*  GNU Parallel actúa como un director de orquesta. No solo lanza los procesos, sino que los gestiona para que no colapsen el sistema:
		*  Gestión de carga: Si un proceso termina, lanza el siguiente inmediatamente.
		*  Orden de salida: Evita que los mensajes de error o logs de diferentes sujetos se mezclen de forma caótica en la terminal.</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:debian:install-6?rev=1580596040&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-02-01T22:27:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>instalación rápida debian 6 como seedbox</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:debian:install-6?rev=1580596040&amp;do=diff</link>
        <description>instalación rápida debian 6 como seedbox

	*  /vía: &lt;http://pastebin.com/Kx8sLk46&gt;
	*  /vía: &lt;http://www.linuxquestions.org/questions/linux-general-1/problem-using-screen-cannot-open-your-terminal-dev-pts-0-please-check-338313/&gt;: problemas con screen
	*  configuración rtorrent+rutorrent+screen: /vía: &lt;https://ks358174.kimsufi.com/download.CFF9640E/&gt;
	*  reiniciar rtorrent (&lt;https://www.feralhosting.com/faq/view?question=158&gt;)

instalación básica


apt-get update &amp;&amp; apt-get upgrade
apt-get instal…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:filesystem:permisos?rev=1727956812&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-10-03T12:00:12+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>permisos</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:filesystem:permisos?rev=1727956812&amp;do=diff</link>
        <description>permisos

cada archivo tiene 3 grupos de permisos, el del autor (owner), el del grupo (group) y el del resto.

en un listado (ls -la) los permisos se muestran en el mismo orden (primero owner, después grupo, después resto) representado por 3 letras:</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:filesystem:udisks?rev=1649070557&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-04-04T11:09:17+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>linux udisks</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:filesystem:udisks?rev=1649070557&amp;do=diff</link>
        <description>linux udisks

	*  lsblk: dispositivos conectados
		*  -a: más información (incluido major:minor)
		*  -d: no muestra información de los «esclavos» o holder devices (particiones)
		*  -i: usa caracteres ASCII para las representaciones de árbol (mejor copy&amp;paste)</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:paquetes:pihole?rev=1751908394&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-07-07T17:13:14+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>pi-hole</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:paquetes:pihole?rev=1751908394&amp;do=diff</link>
        <description>pi-hole

setup

	*  &lt;https://pi-hole.net/&gt;
	*  
curl -sSL https://install.pi-hole.net | bash

	*  install log: /etc/pihole
	*  web-admin: &lt;http://&lt;ip&gt;/admin&gt;

tutorial instalación

	*  &lt;https://blog.cryptoaustralia.org.au/2018/08/06/instructions-for-setting-up-pi-hole/&gt;

comandos

	*  actualizar: 
sudo pihole -up

	*  reconfigurar: 
pihole -r

	*  cambiar password webadmin:</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:scripts:arrayloop?rev=1589545895&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-05-15T12:31:35+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>array loop</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:scripts:arrayloop?rev=1589545895&amp;do=diff</link>
        <description>array loop


#!/bin/bash

INDEX=1

Code[$INDEX]=code1
Name[$INDEX]=name1
Tenant1[$INDEX]=tenant1
Tenant2[$INDEX]=tenant21

INDEX=$(($INDEX + 1))

Code[$INDEX]=code2
Name[$INDEX]=name2
Tenant1[$INDEX]=tenant2
Tenant2[$INDEX]=tenant22

for i in &quot;${Code[@]}&quot;; do
  printf &#039;%s\n&#039; &quot;$i&quot;
done

for i in &quot;${!Code[@]}&quot;; do 
  printf &quot;%s\t%s\t%s\t%s\t%s\n&quot; &quot;$i&quot; &quot;${Code[$i]}&quot; &quot;${Name[$i]}&quot; &quot;${Tenant1[$i]}&quot; &quot;${Tenant2[$i]}&quot;
done</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:seedbox:start?rev=1588519723&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-05-03T15:28:43+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>seedbox</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:seedbox:start?rev=1588519723&amp;do=diff</link>
        <description>seedbox

rtorrent

	*  &lt;https://wiki.gentoo.org/wiki/RTorrent&gt;
	*  &lt;https://wiki.archlinux.org/index.php/RTorrent#Manage_completed_files&gt;
	*  &lt;https://github.com/rakshasa/rtorrent/wiki/Common-Tasks-in-rTorrent#move-completed-torrents-to-a-fixed-location&gt;
	*  &lt;https://www.reddit.com/r/archlinux/comments/8s5zb9/rtorrent_move_on_complete/&gt;
	*  
	*  &lt;https://github.com/rakshasa/rtorrent/wiki/Common-Tasks-in-rTorrent#create-symbolic-links-to-indicate-the-download-state&gt;

rutorrent

	*  &lt;https://githu…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:seguridad:start?rev=1715770310&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-05-15T10:51:50+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>linux seguridad</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:seguridad:start?rev=1715770310&amp;do=diff</link>
        <description>linux seguridad

	*  Linux sadservers

setup

	*  PAM
		*  su: crear un grupo tipo permitsu y añadir a los usuarios que pueden usar su
		*  passwd: crear reglas fuertes de contraseña

	*  sudo:
		*  restringido per grups usuaris
		*  noexec

	*  sudoreplay
	*  sshd</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:tcpip:nfs?rev=1628965242&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-08-14T18:20:42+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>NFS</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:tcpip:nfs?rev=1628965242&amp;do=diff</link>
        <description>NFS

información

	*  &lt;http://es.tldp.org/Manuales-LuCAS/GARL2/garl2/x-087-2-nfs.html&gt;
	*  mount -t nfs nfs_volume local_dir options (se puede omitir -t nfs pq el formato de montaje es exclusivo de este protocolo)
		*  mount -t nfs vlager:/home /users

	*  cat /proc/filesystems -&gt; ha de aparecer «nfs»

puesta en marcha de server/client</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:zsh:globbing?rev=1585000649&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-03-23T21:57:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>ZSH Globbing (extended)</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:zsh:globbing?rev=1585000649&amp;do=diff</link>
        <description>ZSH Globbing (extended)

glob expression

	*  ls &lt;path&gt;/*/* : lista todos los ficheros a 2 niveles del actual
	*  ls &lt;path&gt;/**/* : lista todos los ficheros en cualquier directorio
	*  ls &lt;path&gt;/**/*.txt : lista todos los ficheros .txt en cualquier directorio por debajo</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:zsh:start?rev=1758555368&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-09-22T15:36:08+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>ZSH</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:zsh:start?rev=1758555368&amp;do=diff</link>
        <description>ZSH

	*  ZSH install
	*  &lt;http://zsh.sourceforge.net/&gt;
	*  introducción:
		*  &lt;https://linuxconfig.org/learn-the-basics-of-the-zsh-shell&gt;
		*  &lt;http://reasoniamhere.com/2014/01/11/outrageously-useful-tips-to-master-your-z-shell/&gt;


+ características

	*  ZSH features
	*  oh-my-zsh
	*  ZSH TAB Expansion
	*  ZSH Globbing (extended)
	*  ZSH expansion modifiers
	*  ZSH Parameter Expansion Flags
	*  ZSH zmv
	*  ZSH modules
	*  ZSH prompt

curiosidades

	*  src: recarga entorno (plugin)
	*  take : fun…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:docker:security?rev=1638131099&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-11-28T20:24:59+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>docker TLS (OLD)</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:docker:security?rev=1638131099&amp;do=diff</link>
        <description>docker TLS (OLD)

	*  SSL, TLS: &lt;https://docs.docker.com/engine/security/protect-access/&gt;
	*  &lt;https://www.labkey.org/Documentation/wiki-page.view?name=dockerTLS&gt;
	*  &lt;https://docs.docker.com/engine/security/apparmor/&gt;
	*  docker context -&gt; &lt;https://docs.docker.com/engine/context/working-with-contexts/&gt;

	*  &lt;https://tech.paulcz.net/2016/01/secure-docker-with-tls/&gt;
	*  docker run --rm -v $(pwd)/.docker:/certs paulczar/omgwtfssl
	*  &lt;https://www.youtube.com/watch?v=70QOBVwLyC0&gt;

creación certific…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:docker:volumes?rev=1585355244&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-03-28T00:27:24+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>docker volumes</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:docker:volumes?rev=1585355244&amp;do=diff</link>
        <description>docker volumes

/via: &lt;https://docs.docker.com/storage/volumes/&gt;


	*  bind mount: montaje clásico con -v sobre una estructura de directorios
	*  tmpfs mount: almacenar data no persistente
	*  volume:
		*  gestionado desde cli docker
		*  trasversal al OS


--volume o --mount

	*  desde la versión 17.06</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:terraform:poc-ad?rev=1554360852&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2019-04-04T06:54:12+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>POC estructura AD</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:terraform:poc-ad?rev=1554360852&amp;do=diff</link>
        <description>POC estructura AD

intro

	*  basado en &lt;https://github.com/tonyprawiro/aws-msad-terraform.git&gt;

ficheros


#
# VPC
#

resource &quot;aws_vpc&quot; &quot;vpc_myapp&quot; {
  cidr_block           = &quot;${var.vpc_cidr}&quot;
  instance_tenancy     = &quot;default&quot;
  enable_dns_support   = true
  enable_dns_hostnames = true

  tags {
    Name = &quot;VPC-MYAPP&quot;
  }
}

#
# Internet Gateway - VPC wide
#

resource &quot;aws_internet_gateway&quot; &quot;igw_main&quot; {
  vpc_id = &quot;${aws_vpc.vpc_myapp.id}&quot;

  tags {
    Name = &quot;IGW-MYAPP&quot;
  }

  depends_on = …</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:vagrant:start?rev=1644860937&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-02-14T17:48:57+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>VAGRANT</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:vagrant:start?rev=1644860937&amp;do=diff</link>
        <description>VAGRANT

devops info



	*  vagrantfile
	*  vagrantfile examples

related

help

	*  &lt;https://www.vagrantup.com/docs/vagrantfile/machine_settings&gt;
	*  vagrant_hosts -&gt; sync_hosts: &lt;https://www.rubydoc.info/gems/vagrant-hosts/2.6.2&gt;

config files

	*  config.vm : &lt;https://www.vagrantup.com/docs/vagrantfile/machine_settings.html&gt;
	*  provision docker : &lt;https://www.vagrantup.com/docs/provisioning/docker.html&gt;

resumen comandos

imágenes (box)

	*  vagrant box add &lt;imagen&gt;: descargar
		*  alternati…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/video:shotcut:start?rev=1678959916&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-03-16T09:45:16+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Shotcut</title>
        <link>https://miguelangel.torresegea.es/wiki/video:shotcut:start?rev=1678959916&amp;do=diff</link>
        <description>Shotcut

install

trucos

	*  Ripple Delete (X): Elimina el fragmento seleccionado, incluso espacio en blanco y mueve el resto de fragmentos para ocupar su lugar
		*  si marcamos Ripple All Tracks afectará a todos los tracks que tengamos.

	*  TRIM clip in (I)</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/web:security:wordpress?rev=1760533181&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-10-15T12:59:41+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>WORDPRESS</title>
        <link>https://miguelangel.torresegea.es/wiki/web:security:wordpress?rev=1760533181&amp;do=diff</link>
        <description>WORDPRESS

	*  /vía: &lt;http://wpzine.com/wordpress-security-hacks-and-tricks/&gt;
	*  /vía: &lt;http://www.katharsix.com/la-seguridad-en-wordpress-algunos-consejos/&gt;
	*  /vía: &lt;http://www.katharsix.com/la-seguridad-en-wordpress-algunos-consejos-ii/&gt;

	*  WordPress multisite
	*  Wordpress securizar
	*  WordPress, webinar seguridad

trucos

	*  obligar método https VS ftp al actualizar:
define(&#039;FS_METHOD&#039;, &#039;direct&#039;);


recover &amp; debugging

	*  desactivar plugins:&lt;https://www.ostraining.com/blog/wordpress…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/wiki:plugins:toc?rev=1541243333&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-03T11:08:53+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>TOC</title>
        <link>https://miguelangel.torresegea.es/wiki/wiki:plugins:toc?rev=1541243333&amp;do=diff</link>
        <description>TOC

pendiente wiki

/vía:&lt;https://www.dokuwiki.org/plugin:toctweak&gt;

crea su porpio TOC (independiente del propio del tema, y estas opciones afectan a estos y no ese)

uso


~~CLOSETOC~~         Let the TOC box initially closed
~~TOC 2-3~~          Headlines within level 2 to 3 will appear in the TOC box
~~NOTEC 2-3~~        No TOC box on the page, but set headline level parameter
~~TOC 2-3 wide~~     Widen the TOC box by assigning &quot;wide&quot; css class
~~TOC_HERE 2-3~~     Locate the TOC box where …</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/development:java:lib:jaxb?rev=1529401827&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-06-19T09:50:27+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Jaxb</title>
        <link>https://miguelangel.torresegea.es/wiki/development:java:lib:jaxb?rev=1529401827&amp;do=diff</link>
        <description>Jaxb

java lib

Java XML BindConversión de objetos Java a XML y viceversa usando anotaciones

funcionamiento

trucos

ficheros



enlaces

	*  &lt;https://www.mkyong.com/java/jaxb-hello-world-example/&gt;
	*  &lt;http://blog.bdoughan.com/2010/10/jaxb-and-shared-references-xmlid-and.html&gt;
	*  &lt;http://www.vogella.com/tutorials/JAXB/article.html&gt;
	*  &lt;http://www.vogella.com/tutorials/JavaXML/article.html&gt;
	*  &lt;https://docs.oracle.com/javase/8/docs/api/javax/xml/bind/annotation/package-summary.html&gt;
	*  &lt;htt…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:libros:devops-kubernetes:cap3-2?rev=1586961043&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-04-15T14:30:43+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Getting started with Kubernetes: objects</title>
        <link>https://miguelangel.torresegea.es/wiki/info:libros:devops-kubernetes:cap3-2?rev=1586961043&amp;do=diff</link>
        <description>Getting started with Kubernetes: objects

kubectl

	*  
kubectl version

	*  
kubectl logs --help


objects

Namespaces

	*  permite implementar el aislamiento entre múltiples clusters virtuales
	*  objetos de diferentes namespaces no se ven entre ellos</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:libros:terraform-upandrunning:cap5?rev=1590271587&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-05-23T22:06:27+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Chapter 5: Terraform tips and tricks</title>
        <link>https://miguelangel.torresegea.es/wiki/info:libros:terraform-upandrunning:cap5?rev=1590271587&amp;do=diff</link>
        <description>Chapter 5: Terraform tips and tricks

loops

count

	*  usage:
resource &quot;blablabla&quot; &quot;blablabla_name&quot; {
count = 3
name  = &quot;bla${count.index}&quot;
}

		*  result: 3 elements ([0],[1],[2]) -&gt; resources array
		*  with length():

variable &quot;bla_names&quot; {
  type    = list(string)
  default = [&quot;bla_green&quot;,&quot;bla_yellow&quot;,&quot;bla_red&quot;] 
}
resource &quot;blablabla&quot; &quot;blablabla_name&quot; {
  count = length(var.bla_names)
  name  = bla_names[count.index]
}</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:debian:seedbox:nginx-letsencrypt?rev=1580595323&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-02-01T22:15:23+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>nginx+certbot en contenedor</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:debian:seedbox:nginx-letsencrypt?rev=1580595323&amp;do=diff</link>
        <description>nginx+certbot en contenedor

	*  crear estructura de directorios:

mkdir -p data/nginx/conf.d
mkdir -p data/nginx/www
mkdir -p data/certbot/www
mkdir -p data/certbot/conf


	*  crear fichero configuración nginx:

server {
    listen 80;
    server_name &lt;SERVER_NAME&gt;;
#    location / {
#        return 301 https://$host$request_uri;
#    }
    root /var/www/html;
    index index.html;
    
    location /.well-known/acme-challenge/ {
        root /var/www/certbot;
    }
}
#server {
#    listen 443 …</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:debian:seedbox:screen?rev=1685079106&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-05-26T05:31:46+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>configuración/uso screen</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:debian:seedbox:screen?rev=1685079106&amp;do=diff</link>
        <description>configuración/uso screen

install &amp; help

	*  
sudo apt install screen

	*  &lt;https://linuxize.com/post/how-to-use-linux-screen/&gt;
	*  &lt;https://www.gnu.org/software/screen/manual/screen.html&gt;
	*  versión moderna TMUX: &lt;https://www.howtogeek.com/671422/how-to-use-tmux-on-linux-and-why-its-better-than-screen/&gt;

comando

	*  screeen -ls: lista sesiones
	*  screen -r [&lt;sesion&gt;] : retornar a última sesión o a sesión específica
	*  screen -S &lt;nombre&gt;</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:systemd:journalctl:remote?rev=1640200562&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-12-22T19:16:02+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>journalctl-remote</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:systemd:journalctl:remote?rev=1640200562&amp;do=diff</link>
        <description>journalctl-remote

/via: &lt;https://www.digitalocean.com/community/tutorials/how-to-centralize-logs-with-journald-on-ubuntu-20-04-es&gt;

/via: &lt;https://serverfault.com/questions/758244/how-to-configure-systemd-journal-remote&gt;


basico


sudo apt update -y &amp;&amp; sudo apt upgrade -y
sudo apt install systemd-journal-remote


servidor

	*  instalar servicios:

sudo systemctl enable --now systemd-journal-remote.socket
sudo systemctl enable systemd-journal-remote.service

# si ufw
sudo ufw allow in 19532/tcp…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:docker:dockerd:remote-tls?rev=1586591719&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-04-11T07:55:19+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dockerd remote tls access</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:docker:dockerd:remote-tls?rev=1586591719&amp;do=diff</link>
        <description>dockerd remote tls access

via

	*  &lt;https://docs.docker.com/engine/security/https/&gt;
	*  &lt;https://nickjanetakis.com/blog/docker-tip-73-connecting-to-a-remote-docker-daemon&gt;
	*  &lt;https://success.docker.com/article/how-do-i-enable-the-remote-api-for-dockerd&gt;
	*  &lt;https://medium.com/@ssmak/how-to-enable-docker-remote-api-on-docker-host-7b73bd3278c6&gt;

setup

	*  pretendemos «asegurar» la conexión con el dockerd de manera que solo los clientes con certificado firmado por la misma CA que el servidor p…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:k8s:cli:namespace?rev=1589185087&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-05-11T08:18:07+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>kubernetes namespace</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:k8s:cli:namespace?rev=1589185087&amp;do=diff</link>
        <description>kubernetes namespace

kubectl get namespace

kubectl get pods --namespace=&lt;insert-namespace-name-here&gt;

kubectl config set-context --current --namespace=&lt;insert-namespace-name-here&gt;
kubectl config view --minify | grep namespace:

# In a namespace
kubectl api-resources --namespaced=true
# Not in a namespace
kubectl api-resources --namespaced=false</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:openwebinars:vagrant:cli?rev=1530718064&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-07-04T15:27:44+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Introducción a la línea de comandos</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:openwebinars:vagrant:cli?rev=1530718064&amp;do=diff</link>
        <description>Introducción a la línea de comandos

	*  vagrant list-commands (los más interesantes)
		*  box: manages boxes: installation, removal, etc.
		*  connect: conexión a entorno Vagrant remoto
		*  destroy: stops and deletes all traces of the vagrant machine</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:devops2022:s1?rev=1646848628&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-03-09T17:57:08+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>DevOps Sesión 1 (2022-02-09) Docker</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:devops2022:s1?rev=1646848628&amp;do=diff</link>
        <description>DevOps Sesión 1 (2022-02-09) Docker

Documentación relacionada

	*  montar entorno docker con Vagrant:
		*  Entorno docker en PUE.txt
			*  git clone &lt;https://github.com/agarciafer/lab-docker.git&gt;

		*  Entorno de mv de docker-local.txt


1-Despliegue de Aplicaciones Docker

	*  Seminario Herramientas Devops entornos de desarrollo en local, para programadores con Docker y Vagrant .pdf</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:lpic2-2021:s2?rev=1663569839&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-09-19T06:43:59+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>LPIC2 2021 Sesión 2 (2021-02-04) - info, procesos, logs, hard</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:lpic2-2021:s2?rev=1663569839&amp;do=diff</link>
        <description>LPIC2 2021 Sesión 2 (2021-02-04) - info, procesos, logs, hard

Documentación relacionada

	*  Presentaciones/2020/201/200-Capacity Planning.pdf
		*  Material Practicas LPIC-2/LPIC-201/1-Capacity Planning/1-Resumen Análisis de Rendimiento en Linux.pdf</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:lpic2-2021:s11?rev=1615323357&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-03-09T20:55:57+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>LPIC2 2021 Sesión 11 (2021-03-09)</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:lpic2-2021:s11?rev=1615323357&amp;do=diff</link>
        <description>LPIC2 2021 Sesión 11 (2021-03-09)

Documentación relacionada:

	*  Manual Certificacion LPIC-2.pdf, pag XX
	*  Material Practicas LPIC-2/LPIC-202/
	*  Presentaciones/2020/202/
	*  gdrive://

Clase

proxy squid

	*  DOC: Material Practicas LPIC-2/LPIC-202/2-Web Services/Squid/Laboratorio Squid.pdf</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:udemy:ansible:playbooks?rev=1537343658&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-09-19T07:54:18+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>playbooks</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:udemy:ansible:playbooks?rev=1537343658&amp;do=diff</link>
        <description>playbooks

2.11 introducción Playbooks

	*  lista de jugadas (tareas) en una lista de servidores
	*  configuraciones y variables
	*  formato YAML:
---
- name: Mi primer playbook
  hosts: all
  remote_user: &lt;usuario&gt;
  become: true # a nivel de playbook, se podría hacer a nivel de tarea
  tasks:
    - name: copiar ficheros hosts
      copy: src=/etc/hosts dest=/etc/host
    - name: ...
      service: ...</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:netacad:python:pe2m3:metodos?rev=1657048521&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-07-05T19:15:21+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Módulo 3 - Programación Orientada a Objetos - Métodos</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:netacad:python:pe2m3:metodos?rev=1657048521&amp;do=diff</link>
        <description>Módulo 3 - Programación Orientada a Objetos - Métodos

Métodos a detalle

Resumamos todos los hechos relacionados con el uso de métodos en las clases de Python.

Como ya sabes, un método es una función que está dentro de una clase.

Existe un requisito fundamental: un</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:ethical-hacker:sesion1:lab0?rev=1740123934&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-02-21T07:45:34+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Lab Module 0 : Integrate ShellGPT in Parrot Security Machine</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:ethical-hacker:sesion1:lab0?rev=1740123934&amp;do=diff</link>
        <description>Lab Module 0 : Integrate ShellGPT in Parrot Security Machine

Integrate ShellGPT in Parrot Security Machine

Instalación API key para instalar shell GPT

export OPENAI_API_KEY=&#039;&lt;KEY&gt;&#039;</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:ethical-hacker:sesion1:sincara?rev=1740555602&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-02-26T07:40:02+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Apuntes SinCara sesión 1</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:ethical-hacker:sesion1:sincara?rev=1740555602&amp;do=diff</link>
        <description>Apuntes SinCara sesión 1

Modulo 01

	*  El CIO (Director de Información), es el gerente de sistemas o director de tecnologías de la información (responsable de TI). Reporta directamente al CEO, y se encarga directamente de las estrategias de la organización que están alineadas con la tecnología de la información para lograr los objetivos planificados.</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:ethical-hacker:sesion4:sincara?rev=1740563507&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-02-26T09:51:47+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Apuntes SinCara sesión 4</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:ethical-hacker:sesion4:sincara?rev=1740563507&amp;do=diff</link>
        <description>Apuntes SinCara sesión 4

Modulo 14 : Hacking Web Applications

	*  OWASP
		*  OWASP Top 10
			*  &lt;https://owasp.org/Top10/es&gt; - OWASP Top 10 2021
			*  &lt;https://www.incibe.es/empresas/blog/top-10-vulnerabilidades-web-2021&gt; - Resumen

		*  OWASP Web Security Testing Guide (WSTG)
			*  &lt;https://thehackerway.com/2021/03/22/conoce-el-owasp-web-security-testing-guide-wstg/&gt; - WSTG
			*  &lt;https://owasp.org/www-project-web-security-testing-guide/&gt; - guía de 465 páginas.
				*  &lt;https://github.com/OWAS…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/criptografia:ecryptfs?rev=1686748181&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-06-14T13:09:41+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>ecryptfs</title>
        <link>https://miguelangel.torresegea.es/wiki/criptografia:ecryptfs?rev=1686748181&amp;do=diff</link>
        <description>ecryptfs

related

	*  
apt install ecryptfs-utils

		*  &lt;https://ostechnix.com/how-to-encrypt-directories-with-ecryptfs-in-linux/&gt; Práctico!!
		*  &lt;https://www.howtoforge.com/how-to-encrypt-directories-partitions-with-ecryptfs-on-debian-squeeze&gt;
		*  &lt;https://wiki.debian.org/TransparentEncryptionForHomeFolder&gt;
		*  &lt;https://linux.die.net/man/7/ecryptfs&gt;
		*  &lt;https://wiki.archlinux.org/index.php/ECryptfs&gt;

cli

	*  setup:
sudo mount -t ecryptfs ~/SECRET/ ~/SECRET/

	*  mount:
sudo mount -t ecry…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/criptografia:pass?rev=1749543935&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-06-10T08:25:35+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>pass</title>
        <link>https://miguelangel.torresegea.es/wiki/criptografia:pass?rev=1749543935&amp;do=diff</link>
        <description>pass

	*  gestión de contaseñas desde CLI multiplataforma (no-win)
	*  &lt;https://www.passwordstore.org/&gt;

dudas

	*  clientes GUI
	*  plugin ZSH

init

	*  crear clave GPG pública-privada
		*  
gpg --gen-key


	*  inicializar repositorio (con el nombre o fingerprint usado en la clave GPG)</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/pentesting:docker?rev=1538636953&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-10-04T07:09:13+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Taller pentesting en Docker</title>
        <link>https://miguelangel.torresegea.es/wiki/pentesting:docker?rev=1538636953&amp;do=diff</link>
        <description>Taller pentesting en Docker

docker

/via: &lt;http://www.elladodelmal.com/2018/09/como-montar-un-entorno-de-pentesting.html&gt;

/via: &lt;http://www.elladodelmal.com/2018/09/como-montar-un-entorno-de-pentesting_14.html&gt;

previos

	*  uso red bridge : 
docker network ls
docker network inspect bridge

	*  descarga imagen Kali Linux : 
docker pull kalilinux/kali-linux-docker
docker run -it --name Kali kalilinux/kali-linux-docker /bin/bash</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/raspi:start?rev=1717667162&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-06-06T09:46:02+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>raspberry pi</title>
        <link>https://miguelangel.torresegea.es/wiki/raspi:start?rev=1717667162&amp;do=diff</link>
        <description>raspberry pi

lan

inactives

información

	*  &lt;https://www.raspberrypi.org/documentation/&gt;
	*  &lt;https://www.raspberrypi.org/documentation/configuration/&gt;
	*  &lt;http://www.vichaunter.org/como-se-hace/como-conectar-montar-discos-duros-usb-la-raspberry-pi&gt;
	*  
cat /proc/cpuinfo | grep Model
cat /proc/device-tree/model
sudo lshw -short


tutoriales

	*  raspi-zero USB minicomputer : &lt;https://lifehacker.com/turn-a-raspberry-pi-zero-into-a-miniature-dongle-comput-1786996571&gt;
	*  firewall : &lt;https://o…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/development:angular:formularios?rev=1581356727&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-02-10T17:45:27+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>formularios</title>
        <link>https://miguelangel.torresegea.es/wiki/development:angular:formularios?rev=1581356727&amp;do=diff</link>
        <description>formularios

template-driven forms

	*  la plantilla es la responsable de crear los controles, formularios y reglas de validación
	*  sincronización entre la vista y el modelo con el doble enlace (two-way databinding)
		*  si la vista cambia, se actualiza el modelo, y viceversa</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/development:encoding:start?rev=1600156269&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-09-15T07:51:09+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>encoding</title>
        <link>https://miguelangel.torresegea.es/wiki/development:encoding:start?rev=1600156269&amp;do=diff</link>
        <description>encoding

development addendum

beginners

	*  character_set ≡ repertoire: agrupación de caracteres para un propósito
	*  code point ≡ coded character set : representación única de un carácter en un character_set
	*  unicode: agrupación de «todos» los caracteres necesarios para usar en un ordenador, bajo un standard</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/development:jquery:start?rev=1779357605&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-05-21T10:00:05+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>jquery</title>
        <link>https://miguelangel.torresegea.es/wiki/development:jquery:start?rev=1779357605&amp;do=diff</link>
        <description>jquery

&lt;https://releases.jquery.com/&gt;

datepicker

fuentes

	*  &lt;https://bootstrap-datepicker.readthedocs.io/en/latest/options.html&gt;
	*  &lt;https://uxsolutions.github.io/bootstrap-datepicker/?#sandbox&gt;
	*  &lt;https://gijgo.com/datepicker/example/bootstrap-4&gt;
	*  &lt;https://stackoverflow.com/questions/25874375/multiple-dates-in-bootstrap-date-picker&gt;

ejemplo


&lt;script&gt;
        $(&#039;#date&#039;).datepicker({
            uiLibrary: &#039;bootstrap4&#039;,
            minDate: &#039;01/01/2020&#039;,
            maxDate: &#039;31/12/2…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/development:json:start?rev=1585124609&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-03-25T08:23:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>json</title>
        <link>https://miguelangel.torresegea.es/wiki/development:json:start?rev=1585124609&amp;do=diff</link>
        <description>json

development addendum

install (raspberry)


cd /tmp
wget https://github.com/stedolan/jq/releases/download/jq-1.5/jq-1.5.tar.gz
tar xfvz jq-1.5.tar.gz
cd jq-1.5
./configure &amp;&amp; make &amp;&amp; sudo make install


tutorials

	*  &lt;https://linuxhint.com/bash_jq_command/&gt;

jq (shell)

selección


{
  &quot;ACTION&quot;: &quot;domain.list&quot;,
  &quot;DATA&quot;: [
    {
      &quot;TYPE&quot;: &quot;slave&quot;,
      &quot;AXFR_IPS&quot;: &quot;none&quot;,
      &quot;DOMAIN&quot;: &quot;domain1.com&quot;,
      &quot;TTL_SEC&quot;: 0,
      &quot;SOA_EMAIL&quot;: &quot;&quot;,
      &quot;DOMAINID&quot;: 11111,
      &quot;DESCRIPT…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/development:markdown:start?rev=1731848297&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-11-17T12:58:17+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>markdown</title>
        <link>https://miguelangel.torresegea.es/wiki/development:markdown:start?rev=1731848297&amp;do=diff</link>
        <description>markdown

development addendum

	*  tutorial: &lt;https://www.markdowntutorial.com&gt;
	*  tutorial: &lt;https://www.markdownguide.org/&gt;
		*  &lt;https://www.markdownguide.org/cheat-sheet/&gt;

	*  cheat-sheet: &lt;https://github.com/adam-p/markdown-here/wiki/Markdown-Cheatsheet&gt;
	*  online: &lt;https://dillinger.io/&gt;
	*  docker: &lt;https://hub.docker.com/r/joemccann/dillinger&gt;



/vía: &lt;https://daringfireball.net/projects/markdown/syntax&gt;

/vía: &lt;http://desarrollandowebsdinamicas.blogspot.com/2013/03/escribir-archivo…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:git?rev=1777976515&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-05-05T10:21:55+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>git (git-book)</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:git?rev=1777976515&amp;do=diff</link>
        <description>git (git-book)

devops cursos git



info

	*  &lt;https://git-scm.com/book/es/v2&gt;
	*  puntero: &lt;https://git-scm.com/book/es/v2/Fundamentos-de-Git-Trabajar-con-Remotos&gt;
	*  &lt;https://www.codecademy.com/learn/learn-git&gt;

metodología de trabajo en Git

áreas

	*  Working directory: nuestro directorio de trabajo, que puede ser cualquiera de los diferentes commits que hemos ido realizando a lo largo del tiempo, aunque se suele trabajar con el</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:fonts:start?rev=1586329502&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-04-08T07:05:02+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>fuentes</title>
        <link>https://miguelangel.torresegea.es/wiki/info:fonts:start?rev=1586329502&amp;do=diff</link>
        <description>fuentes

	*  &lt;https://www.dafont.com/es/throw-my-hands-up-in-the-air.font&gt; 
	*  &lt;https://www.dafont.com/talking-to-the-moon.font&gt;  
	*  &lt;https://www.dafont.com/claire-hand.font&gt;</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:libros:swarm?rev=1639043923&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-12-09T09:58:43+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Native Docker clustering with Swarm</title>
        <link>https://miguelangel.torresegea.es/wiki/info:libros:swarm?rev=1639043923&amp;do=diff</link>
        <description>Native Docker clustering with Swarm

libros tech docker swarm

	*  Autores:
		*  Fabrizio Soppelsa (Autor)
		*  Chanwit Kaewkasi (Autor)

	*  Editorial: Packt
	*  ISBN: 1786469758

capítulos

	*  [native docker clustering with swarm] Welcome
	*  [native docker clustering with swarm] Discover the Discovery Services
	*  [native docker clustering with swarm] Meeting docker swarm mode
	*  [native docker clustering with swarm] Creating a Production-Grade Swarm
	*  [native docker clustering with swarm…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:locuciones:start?rev=1749701093&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-06-12T04:04:53+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>locuciones &amp; aforismos</title>
        <link>https://miguelangel.torresegea.es/wiki/info:locuciones:start?rev=1749701093&amp;do=diff</link>
        <description>locuciones &amp; aforismos

	*  aforismo: Frase o sentencia breve y doctrinal que se propone como regla en alguna ciencia o arte
	*  locuciones: La locución es una combinación fija de palabras que funciona como una sola y se integra dentro de una oración</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:alsa:start?rev=1431102491&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2015-05-08T16:28:11+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>audio (ALSA)</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:alsa:start?rev=1431102491&amp;do=diff</link>
        <description>audio (ALSA)

	*  &lt;https://wiki.archlinux.org/index.php/Advanced_Linux_Sound_Architecture_&gt;(Espa%C3%B1ol)
	*  &lt;https://bugs.launchpad.net/ubuntu/+source/alsa-driver/+bug/996245&gt;
	*  &lt;http://askubuntu.com/questions/456579/how-to-install-hda-jack-retask-in-14-04&gt;</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:background:start?rev=1579346279&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-01-18T11:17:59+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>comandos &quot;background&quot;</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:background:start?rev=1579346279&amp;do=diff</link>
        <description>comandos &quot;background&quot;



Trabajos en segundo plano

	*  &lt;comando&gt;&lt;param&gt; &amp;
	*  &lt;comando&gt;&lt;param&gt; y a posterior, ^Z y entonces $ bg
	*  bg
	*  jobs -&gt; lista de trabajos en segundo plano
		*  jobs -l -&gt; lista de trabajos con PID
		*  jobs -p -&gt; lista de trabajos con ID solo</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:bash:alias?rev=1536305720&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-09-07T07:35:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>alias</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:bash:alias?rev=1536305720&amp;do=diff</link>
        <description>alias

linux bash
&lt;https://www.cyberciti.biz/tips/bash-aliases-mac-centos-linux-unix.html&gt;
creación


alias name=value
alias name=&#039;command&#039;
alias name=&#039;command arg1 arg2&#039;
alias name=&#039;/path/to/script&#039;
alias name=&#039;/path/to/script.pl arg1&#039;


desactivación (temporal)


## path/to/full/command
/usr/bin/clear
## call alias with a backslash ##
\c
## use /bin/ls command and avoid ls alias ##
command ls</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:bash:find?rev=1725268231&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-09-02T09:10:31+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>find</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:bash:find?rev=1725268231&amp;do=diff</link>
        <description>find

opciones

	*  -name : busca ficheros por nombre
	*  -iname : busca ficheros por nombre sin tener en cuenta mayúsculas o minúsculas
	*  -path : busca en el path completo (directorio+nombre)
	*  -ipath : busca en el path completo (directorio+nombre) no Case Sensitive</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:bash:ifs?rev=1610384027&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-01-11T16:53:47+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>linux ifs</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:bash:ifs?rev=1610384027&amp;do=diff</link>
        <description>linux ifs

	*   Internal Field Separator

enlaces

	*  &lt;https://bash.cyberciti.biz/guide/$IFS&gt;
	*  &lt;https://unix.stackexchange.com/questions/9496/looping-through-files-with-spaces-in-the-names&gt;</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:bash:indirectreferences?rev=1543427202&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-11-28T17:46:42+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Referencias indirectas</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:bash:indirectreferences?rev=1543427202&amp;do=diff</link>
        <description>Referencias indirectas

indirection, indirect references

usar el valor de una variable para acceder al contenido de otra


# declaramos 2 variables
export xyzzy=plugh ; export plugh=cave

echo ${xyzzy}  # normal, xyzzy to plugh -&gt; plugh

echo ${!xyzzy} # indirection, xyzzy to plugh to cave -&gt; cave</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:bash:locale?rev=1763374899&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-11-17T10:21:39+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>locale</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:bash:locale?rev=1763374899&amp;do=diff</link>
        <description>locale

	*  lista de los códigos locale
	*  para lanzar una aplicación en un idioma determinado (y si la aplicación lo soporta): $ export LANG=&lt;codigo&gt;; &lt;aplicacion&gt;

el comando

	*  locale -&gt; permite ver todos los valores en el sistema
	*  locale -a -&gt; permite ver los locales del sistema</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:bash:tar?rev=1682592622&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-04-27T10:50:22+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>tar</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:bash:tar?rev=1682592622&amp;do=diff</link>
        <description>tar

comprimir

	*  tar -czvf &lt;file&gt;.tgz &lt;dir&gt;
	*  dónde:
		*  c : indica comprimir
		*  z : usar gzip como formato de compresión
		*  v : verbose, mostrar información mientras trabaja
		*  f : fichero TAR a crear


descomprimir

	*  tar -xzvf &lt;file&gt;.tgz [fichero o directorio a extraer]</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:bash:zonahoraria?rev=1777966604&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-05-05T07:36:44+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Zona Horaria (TZ)</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:bash:zonahoraria?rev=1777966604&amp;do=diff</link>
        <description>Zona Horaria (TZ)

linux bash ssh

modificación temporal

establecer la variable TZ a la zona horaria de interés: export TZ=Europe/Andorra

	*  &lt;https://superuser.com/questions/188224/temporarily-change-timezone-to-display-date-time-shown-during-an-ssh-session&gt;
	*  &lt;https://en.wikipedia.org/wiki/List_of_tz_database_time_zones&gt;
	*  timedatectl set-timezone “Europe/Andorra”: cambio de zona en caliente

consideraciones crontab

	*  el uso de la variable</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:cron:anacron?rev=1605886810&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-11-20T15:40:10+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>anacron</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:cron:anacron?rev=1605886810&amp;do=diff</link>
        <description>anacron

este programa sirve para ejecutar tareas de CRON en sistemas que no están encendidos 24h horas al díase ejecuta al arrancar el sistema y comprueba /etc/anacrontab, donde están las tareas especificadas a realizar como «importantes»

un ejemplo:</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:debian:start?rev=1725466043&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-09-04T16:07:23+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>debian installs</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:debian:start?rev=1725466043&amp;do=diff</link>
        <description>debian installs



pendiente wiki
pendiente mirar y documentar webmin
info general

	*  Releases: &lt;https://wiki.debian.org/DebianReleases&gt;
	*  Repositorios: &lt;https://www.debian.org/mirror/list&gt;
	*  apt mirrors: &lt;https://debiansupport.com/mirrors/&gt;
		*  &lt;https://www.debian.org/distrib/archive.es.html&gt;


distros

	*  instalación rápida debian 6 como seedbox

Configuración de red

	*  ip
	*  DNS

Actualización del sistema

Actualizamos el sistema: $ apt-get dist-upgrade</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:filesystem:ddrescue?rev=1755680310&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-08-20T08:58:30+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Recuperación disco, clonación en imagen</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:filesystem:ddrescue?rev=1755680310&amp;do=diff</link>
        <description>Recuperación disco, clonación en imagen

crear imagen con dd

dd if=/dev/sdX of=file.img

crear imagem con ddrescue

	*  en caso de problemas de lectura con dd
	*  instalación: 
sudo apt install gddrescue

	*  uso: 
ddrescue /dev/sdX imagen.img log-file</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:filesystem:glusterfs?rev=1607254746&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-12-06T11:39:06+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>glusterfs</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:filesystem:glusterfs?rev=1607254746&amp;do=diff</link>
        <description>glusterfs

	*  glusterfs vagrant POC

links

	*  &lt;https://docs.gluster.org/en/latest/Quick-Start-Guide/Quickstart/&gt;
	*  &lt;https://kifarunix.com/install-and-setup-glusterfs-on-ubuntu-18-04/&gt;
	*  &lt;https://www.cyberciti.biz/faq/howto-add-new-brick-to-existing-glusterfs-replicated-volume/&gt;

	*  &lt;https://www.osradar.com/install-and-configure-glusterfs-debian-10/&gt;
	*  &lt;https://www.server-world.info/en/note?os=Debian_10&amp;p=glusterfs&amp;f=1&gt;
	*  &lt;https://www.server-world.info/en/note?os=Debian_10&amp;p=glusterfs…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:fsh:sys?rev=1613057041&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-11T15:24:01+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>sysfs</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:fsh:sys?rev=1613057041&amp;do=diff</link>
        <description>sysfs

Ya que procfs se encuentra saturado con una gran cantidad de información no relacionada con los procesos, se diseñó sysfs con el fin de exportar desde el espacio del kernel (Anillo 0) al espacio del usuario (Anillo 3) información sobre los dispositivos y sus controladores.</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:nagios:start?rev=1539079953&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-10-09T10:12:33+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>nagios</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:nagios:start?rev=1539079953&amp;do=diff</link>
        <description>nagios

related

	*  &lt;https://assets.nagios.com/downloads/nagioscore/docs/nagioscore/4/en/monitoring-windows.html&gt;
	*  &lt;https://hub.docker.com/r/jasonrivers/nagios/&gt;
	*  &lt;https://www.nsclient.org/&gt;

install

	*  &lt;https://community.spiceworks.com/how_to/68159-install-nagios-on-a-raspberry-pi&gt;


sudo apt-get update
sudo apt-get upgrade
sudo apt-get install


configure

inicio

acceso al webadmin: &lt;http://ip_maquina_nagios_server/nagios3&gt;, usuario nagiosadmin, password según instalaciónficheros imp…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:paquetes:fdupes?rev=1529917303&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-06-25T09:01:43+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>fdupes, ficheros repetidos</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:paquetes:fdupes?rev=1529917303&amp;do=diff</link>
        <description>fdupes, ficheros repetidos

busca ficheros repetidos en diferentes ubicaciones, recursivamente, con posibilidad de ir eliminando

usa hash MD5 y después una comparación byte a byte

funcionamiento

	*  opciones:
		*  -r : recursivo dirs
		*  -S : muestra tamaño</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:paquetes:findimagedupes?rev=1535013969&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-08-23T08:46:09+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>findimagedupes</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:paquetes:findimagedupes?rev=1535013969&amp;do=diff</link>
        <description>findimagedupes

funcionamiento

	*  &lt;http://www.jhnc.org/findimagedupes/manpage.html&gt;

ejemplos

	*  muestra los fingerprints de las imágenes, ordenados para que los idénticos se muestren uno al lado de otro:
$ findimagedupes -R --verbosity=fingerprint --no-compare . | sort

	*  ejemplo utilización funciones y parámetro -i:</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:paquetes:proftpd?rev=1321351182&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2011-11-15T09:59:42+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Configuración ProFTPd</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:paquetes:proftpd?rev=1321351182&amp;do=diff</link>
        <description>Configuración ProFTPd

Antes de configurar el servidor de FTP, hemos de tener claro cual de los diferentes métodos de implementación que soporta vamos a utilizar:

	*  sistema de usuarios: usuarios de sistema, usuarios virtuales,
	*  sistema de validación: passwd(sistema),  pam (Pluggable Authentication Modules), ftpusers (proftpd passwd propio), usuarios anónimos.</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:remote-desktop:start?rev=1657278756&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-07-08T11:12:36+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Linux remote desktops</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:remote-desktop:start?rev=1657278756&amp;do=diff</link>
        <description>Linux remote desktops

GUACAMOLE

	*  &lt;https://guacamole.apache.org/releases/&gt;
	*  &lt;https://guacamole.apache.org/doc/gug/installing-guacamole.html&gt;

XRDP
OBSOLETO?
	*  &lt;https://www.tweaking4all.com/software/linux-software/use-xrdp-remote-access-ubuntu-14-04/&gt;
	*  &lt;https://c-nergy.be/blog/?p=16637&gt;
	*  &lt;https://help.clouding.io/hc/es/articles/360010657540-C%C3%B3mo-instalar-y-configurar-XRDP-en-Ubuntu&gt;
	*  &lt;https://forums.fedoraforum.org/showthread.php?314544-xrdp-quot-Listening-socket-is-in-wron…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:scripts:10minutos?rev=1476137592&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2016-10-10T22:13:12+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>backup 10 minutos al día</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:scripts:10minutos?rev=1476137592&amp;do=diff</link>
        <description>backup 10 minutos al día

explicación

Mira en los directorioes asignados si ha habído cambios desde la última vez, si hay algún cambio, haceel backup completo, lo encripta y lo envía a un SFTP

Si no hay cambios, envía al SFTP un archivo SINCAMBIOS vacío.</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:scripts:backup2?rev=1321351182&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2011-11-15T09:59:42+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>backup de archivos</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:scripts:backup2?rev=1321351182&amp;do=diff</link>
        <description>backup de archivos

backup varias carpetas de una lista



#!/bin/bash
#
# file system backup
#

# directorios de los que hacer backup, separado por espacio, sin / final
LISTA=&quot;/etc /var&quot;

# RUTAS
# Local Directory for Dump Files
LOCALDIR=/home/backups/tmp/
# Prefix for offsite .tar file backup
HOSTNAME=pandora
MAIL=root@$HOSTNAME
LOG_DATE=&quot;$(date +%y)$(date +%m)$(date +%d)&quot;
SUFFIX=`eval date +%y%m%d`


# APP
# crea un tar de los directorios especificados en LISTA
for directorio in $LISTA
do
   …</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:scripts:forfolders?rev=1613915129&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-21T13:45:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>linux for-folders</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:scripts:forfolders?rev=1613915129&amp;do=diff</link>
        <description>linux for-folders


OIFS=&quot;$IFS&quot;
IFS=$&#039;\n&#039;
for f in `ls -d Gan*`; do unrar e &quot;${f}/${f}.part1.rar&quot;; done
IFS=$OIFS


linux ifs</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:scripts:mysqldump?rev=1326822530&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2012-01-17T17:48:50+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>mysqldump</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:scripts:mysqldump?rev=1326822530&amp;do=diff</link>
        <description>mysqldump


#!/bin/bash

#
# BD
#

# MySQL Hostname
DBHOST=&#039;localhost&#039;

# MySQL Username
DBUSER=&#039;root&#039;

# MySQL Password
DBPASSWD=&#039;xxx&#039;

#
# RUTAS
#

# Local Directory for Dump Files
LOCALDIR=/home/www/mysqldump/

# Prefix for offsite .tar file backup
TARPREFIX=backup_mysql_&lt;server&gt;

#
# APP
#

cd $LOCALDIR
SUFFIX=`eval date +%y%m%d`

# DBS=`mysql -u$DBUSER -h$DBHOST -e&quot;show databases&quot;`
DBS=`mysql -u$DBUSER -p&quot;$DBPASSWD&quot; -h&quot;$DBHOST&quot; -e&quot;show databases&quot;`
# existe versión con SED para eliminar /Dat…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:scripts:random?rev=1351193089&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2012-10-25T19:24:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Crear ficheros de contenido aleatorio</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:scripts:random?rev=1351193089&amp;do=diff</link>
        <description>Crear ficheros de contenido aleatorio

útil para sobreescribir un disco... creará 10000 ficheros con datos aleatorios cogidos de /dev/sda, saltándose bloques aleatoriamente y leyendo bloques aleatoriamente


no_of_files=10000;
counter=1;
while [[ $counter -le $no_of_files ]]; 
 do echo Creating file no $counter;
  dd bs=65535 count=$RANDOM skip=$RANDOM if=/dev/sda of=random-file.$counter;
  let &quot;counter += 1&quot;;
done</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:scripts:select?rev=1536148142&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-09-05T11:49:02+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>select</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:scripts:select?rev=1536148142&amp;do=diff</link>
        <description>select


#!/bin/bash
OPCIONES=&quot;Hola Salir&quot;
select opt in $OPCIONES; do
	if [ &quot;$opt&quot; = &quot;Salir&quot; ]; then
        	echo done
                exit
	elif [ &quot;$opt&quot; = &quot;Hola&quot; ]; then
        	echo Hola Mundo
        else
                clear
                echo opción errónea
        fi
done</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:scripts:utils?rev=1605886849&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-11-20T15:40:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>control de flujo / testing</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:scripts:utils?rev=1605886849&amp;do=diff</link>
        <description>control de flujo / testing

	*  más información: &lt;http://www.ibm.com/developerworks/library/l-bash-test/index.html&gt;
	*  test y || &amp;&amp;
		*  se pueden concatenar comandos con || (OR) o con &amp;&amp; (AND)
		*  test es equivalente al if, pero no permite bloques de comandos
		*  ejemplos:
			*  test -x /usr/sbin/anacron || exit 0</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:seguridad:fcrackzip?rev=1714029821&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-04-25T07:23:41+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>fcrackzip</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:seguridad:fcrackzip?rev=1714029821&amp;do=diff</link>
        <description>fcrackzip

	*  &lt;https://www.hackingarticles.in/comprehensive-guide-on-fcrackzip-tool/&gt;
	*  &lt;http://manpages.ubuntu.com/manpages/trusty/man1/fcrackzip.1.html&gt;

install

sudo apt install fcrackzip

use

	*  
fcrackzip -vbu -l 1-7 test.zip | tee passwords

		*  v: verbose
		*  b: brute-force
		*  u: usar unzip para eliminar falsos positivos
		*  l: longitud mínima y máxima de la contraseña</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:ssh:rdpconn?rev=1604492281&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-11-04T12:18:01+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Conexión RDP con tunneling (y VPN)</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:ssh:rdpconn?rev=1604492281&amp;do=diff</link>
        <description>Conexión RDP con tunneling (y VPN)

	*  usando Remmina como programa para la conexión RDP
	*  usando una VPN existente (y en marcha)
	*  usamos un servidor Linux (accesible a través de la VPN) para conectarnos a una máquina Windows (no accesible a través de la VPN)</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:ssh:varios?rev=1777967135&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-05-05T07:45:35+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>ssh varios</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:ssh:varios?rev=1777967135&amp;do=diff</link>
        <description>ssh varios

linux ssh

ssh forzando password

no sé pq razón, ssh ha empezado a probar todas las claves de mi directorio .ssh para intentar logarse en un sistema remoto. (habrá que averiguar pq lo ha hecho)

para evitar que haga esto, hay que hacer:

ssh -v -o PubkeyAuthentication=no user@machine</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:tcpip:dns?rev=1767009585&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-12-29T11:59:45+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>DNS</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:tcpip:dns?rev=1767009585&amp;do=diff</link>
        <description>DNS

linux tcpip dns

related

	*  DNS y funcionamiento
	*  DNS: Resolución, progagación, limpieza
	*  dnsmasq
	*  bind9
	*  127.0.0.1 VS 127.0.1.1
	*  &lt;https://www.dns0.eu/&gt;
	*  &lt;https://one.one.one.one/&gt;

direct

	*  esbrinar qui gestiona les dades de xarxa (netplan)
	*  aplicar els canvis (networkmanager en desktops)

DNS populars

	*  Cloudflare DNS (1.1.1.1, 1.0.0.1)
	*  OpenDNS (208.67.222.222, 208.67.220.220)</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:tcpip:netplan?rev=1639738671&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-12-17T10:57:51+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>netplan (ubunut network)</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:tcpip:netplan?rev=1639738671&amp;do=diff</link>
        <description>netplan (ubunut network)

Ubuntu 18.04 LTS has switched to Netplan for configuring network interfaces. Netplan is based on YAML based configuration system that makes configuration process very simple. Netplan has replaced the old configuration file /etc/network/interfaces that we previously used for configuring network interfaces in Ubuntu.</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:tcpip:rutas?rev=1478863072&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2016-11-11T11:17:52+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>rutas</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:tcpip:rutas?rev=1478863072&amp;do=diff</link>
        <description>rutas

manual temporal

$ ip route show

# ip route add 10.8.0.0/24 via 192.168.1.50 dev eth0

manual fijo


allow-hotplug eth0
iface eth0 inet static
  address 192.168.1.4        # este es mi caso
  netmask 255.255.255.0
  network 192.168.1.0
  broadcast 192.168.1.255
  gateway 192.168.1.1

### static routing ###
# añade una ruta a la red 10.0.0.0/8 a través del Gateway 10.9.38.65
  post-up route add -net 10.0.0.0 netmask 255.0.0.0 gw 10.9.38.65
  pre-down route del -net 10.0.0.0 netmask 255.0.…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:utils:find-fd?rev=1763539345&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-11-19T08:02:25+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>find - fd</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:utils:find-fd?rev=1763539345&amp;do=diff</link>
        <description>find - fd

&lt;https://github.com/sharkdp/fd&gt;

install


sudo apt install fd-find
sudo ln -s /usr/lib/cargo/bin/fd /usr/local/bin/fd


regexp

&lt;https://docs.rs/regex/latest/regex/#syntax&gt;

	*  por defecto
	*  ^: empieza
	*  $: acaba
	*  buscar -:
fd -- &#039;-pattern&#039;
fd &#039;[-]pattern&#039;


parámetros

	*  --ignore-case
		*  por defecto: todo minúsculas, no distingue. Si alguna mayúscula, distingue.</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:utils:lftp?rev=1761933283&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-10-31T17:54:43+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>lftp</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:utils:lftp?rev=1761933283&amp;do=diff</link>
        <description>lftp

info

	*  &lt;https://lftp.yar.ru/&gt;
	*  &lt;https://linux.overshoot.tv/wiki/lftp&gt;
	*  &lt;https://serverfault.com/questions/135618/is-it-possible-to-use-rsync-over-sftp-without-an-ssh-shell&gt;
	*  &lt;https://stackoverflow.com/questions/27635292/transfer-files-using-lftp-in-a-bash-script&gt;

conn

lftp -u &lt;user&gt;,&lt;pass&gt; ftp://&lt;site&gt; &lt;&lt; EOF
mirror [OPS] &lt;REMOTE_DIR&gt; &lt;LOCAL_DIR&gt;
bye
EOF


lftp -p XXXXX -u &lt;user&gt;,&lt;pass&gt; sftp://&lt;site&gt; &lt;&lt; EOF
mirror [OPS] &lt;REMOTE_DIR&gt; &lt;LOCAL_DIR&gt;
bye
EOF


OPS:

	*  -e : elimin…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:utils:ls?rev=1749128028&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-06-05T12:53:48+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Linux ls</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:utils:ls?rev=1749128028&amp;do=diff</link>
        <description>Linux ls

último acceso

Cuando estás copiando y el fichero guarda la fecha original de creación, pero quieres ver la fecha de último acceso

ls -lu --time=ctime

	*  --time=atime : updated when the file is read
	*  --time=birth : updated when the file contents change. This is the</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:utils:lsusb?rev=1668164344&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-11-11T10:59:04+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>lsusb</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:utils:lsusb?rev=1668164344&amp;do=diff</link>
        <description>lsusb

listar path de dispositivos:


#!/bin/bash

for sysdevpath in $(find /sys/bus/usb/devices/usb*/ -name dev); do
    (
        syspath=&quot;${sysdevpath%/dev}&quot;
        devname=&quot;$(udevadm info -q name -p $syspath)&quot;
        
        [[ &quot;$devname&quot; == &quot;bus/&quot;* ]] || [[ &quot;$devname&quot; == &quot;input/&quot;* ]] || [[ &quot;$devname&quot; == &quot;video0&quot;* ]] || exit
        
        eval &quot;$(udevadm info -q property --export -p $syspath)&quot;
        [[ -z &quot;$ID_SERIAL&quot; ]] &amp;&amp; exit
        
        busnum=&quot;$(udevadm info -a -p  $(udevad…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:zsh:expansion-flags?rev=1584880427&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-03-22T12:33:47+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>ZSH Parameter Expansion Flags</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:zsh:expansion-flags?rev=1584880427&amp;do=diff</link>
        <description>ZSH Parameter Expansion Flags

de manera similar a ZSH expansion modifiers, si dentro de una variable en el formato ${ } hay una apertura de paréntesis, se toma como una lista de flags ${(&lt;FLAGS&gt;)&lt;VAR&gt;}

	*  (q%q%q)  ≡ (%%qqq)
	*  lista de flags:
		*  #: evalua expresión numérica</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:zsh:install?rev=1764921530&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-12-05T07:58:50+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>ZSH install</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:zsh:install?rev=1764921530&amp;do=diff</link>
        <description>ZSH install

	*  &lt;https://geekytheory.com/como-instalar-oh-my-zsh-en-ubuntu&gt;
	*  &lt;https://blog.armesto.net/sacale-el-maximo-partido-a-tu-terminal-con-zsh/&gt;
	*  MAC: &lt;https://sourabhbajaj.com/mac-setup/iTerm/zsh.html&gt;

install

	*  
sudo apt install -y fonts-powerline fonts-font-awesome zsh

	*  instalación Oh My ZSH: 
sh -c &quot;$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)&quot;

	*  establece por defecto:</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:zsh:modifiers?rev=1584881444&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-03-22T12:50:44+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>ZSH expansion modifiers</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:zsh:modifiers?rev=1584881444&amp;do=diff</link>
        <description>ZSH expansion modifiers

	*  Variable transformations
	*  permite modificar una variable usando : en el formato ${VAR}
		*  u: uppercase
		*  l: lowercase
		*  q: quote
		*  Q: quita un nivel de comillas
		*  P: absolute path of file
		*  h: basename</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/macintosh:boot:start?rev=1478435748&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2016-11-06T12:35:48+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>mac boot</title>
        <link>https://miguelangel.torresegea.es/wiki/macintosh:boot:start?rev=1478435748&amp;do=diff</link>
        <description>mac boot

magical boot key secuences
 Key Combination  Effect mouse down  Eject removable media ( I think Boot ROMs prior to 2.4f1 excluded the CD drive )⌥  Bring up OF system picker on New World machines⌘-⌥  Hold down until 2nd chime, will boot into Mac</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/macintosh:filesystem:ntfs?rev=1678440172&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-03-10T09:22:52+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Leer y escribir NTFS en MACOSX</title>
        <link>https://miguelangel.torresegea.es/wiki/macintosh:filesystem:ntfs?rev=1678440172&amp;do=diff</link>
        <description>Leer y escribir NTFS en MACOSX

/via: &lt;http://www.applesfera.com/aplicaciones-os-x-1/leer-y-escribir-discos-en-formato-ntfs-en-os-x-lion-tres-opciones&gt;

opción gratuita

&lt;https://medium.com/macoclock/enabling-ntfs-write-in-macos-10-15-catalina-the-open-source-way-a5fd0d1cb32e&gt;

opción gratuita (OLD)

instalar en este orden:

	*  NTFS-3G
	*  OSXFUSE

opción de pago

	*  Paragon for NTFS: &lt;https://www.paragon-software.com/es/home/ntfs-mac/&gt;</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/software:dokuwiki:search?rev=1765439010&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-12-11T07:43:30+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dokuwiki search</title>
        <link>https://miguelangel.torresegea.es/wiki/software:dokuwiki:search?rev=1765439010&amp;do=diff</link>
        <description>dokuwiki search

	*  &lt;https://www.dokuwiki.org/search&gt;
	*  exclude: -
	*  partial matching: *
		*  prefix, sufix, partial (both)

	*  exact ««
	*  @ o ns: search in namespace
		*  ^  o -ns: exclude

	*  | OR (by default is AND)
		*  menos prioridad que AND (ver en group)

	*  (...</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/software:utils:rhash?rev=1584951650&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-03-23T08:20:50+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>rhash</title>
        <link>https://miguelangel.torresegea.es/wiki/software:utils:rhash?rev=1584951650&amp;do=diff</link>
        <description>rhash

	*  calculo de diferentes tipos de hashes, con posibilidad de recursividad
	*  wiki: &lt;https://sourceforge.net/p/rhash/wiki/Home/&gt;
	*  página oficial: &lt;http://rhash.sourceforge.net/manpage.php&gt;

compilar

	*  git clone &lt;https://github.com/rhash/RHash.git&gt;
		*  ./configure &amp;&amp; sudo make install -&gt; no carga la librería dinámica
		*  ./configure &amp;&amp; make build-static</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/software:vsc:start?rev=1587711130&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-04-24T06:52:10+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>visual studio code</title>
        <link>https://miguelangel.torresegea.es/wiki/software:vsc:start?rev=1587711130&amp;do=diff</link>
        <description>visual studio code

tricks

	*  acceso a settings -&gt; rueda dentada (abajo, izquierda) -&gt; settings
	*  problema visualización font-powerline en terminal:
{
&quot;terminal.integrated.fontFamily&quot;: &quot;Menlo for Powerline&quot;,
}

		*  /via: &lt;https://dev.to/mattstratton/making-powerline-work-in-visual-studio-code-terminal-1m7&gt;

	*  mostrar carácteres ocultos:code json; settings.json&gt;{</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tcpip:dns:bind9?rev=1578901282&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-01-13T07:41:22+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>bind9</title>
        <link>https://miguelangel.torresegea.es/wiki/tcpip:dns:bind9?rev=1578901282&amp;do=diff</link>
        <description>bind9

Comandos de interés

	*  axfr: emula la petición DNS de servidores secundarios a servidores DNS primarios
	*  host: peticiones de resolución DNS, pudiendo espicificar a que servidor.
		*  host [-t [ns,axfr,mx]] &lt;dominio&gt; [servidor DNS]
		*</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:docker:start?rev=1750151077&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-06-17T09:04:37+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>DOCKER</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:docker:start?rev=1750151077&amp;do=diff</link>
        <description>DOCKER

devops info

related

+info

	*  dockerd
	*  Dockerfile
	*  docker-compose
	*  docker volumes
	*  docker TLS (OLD)
	*  docker daemon TLS
	*  docker context
	*  docker scan
	*  Dev Containers: &lt;https://www.youtube.com/watch?v=DkKs29etRis&gt;
	*  Health Check: &lt;https://atareao.es/podcast/tu-contenedor-docker-podria-estar-muerto-y-tu-sin-enterarte/&gt;

	*  &lt;https://tech.paulcz.net/blog/secure-docker-with-tls/&gt;
	*  &lt;https://gist.github.com/kekru/974e40bb1cd4b947a53cca5ba4b0bbe5&gt;
	*  &lt;https://blog…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:elasticsearch:start?rev=1639058594&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-12-09T14:03:14+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>elasticsearch</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:elasticsearch:start?rev=1639058594&amp;do=diff</link>
        <description>elasticsearch

+ info

	*  &lt;http://www.elasticsearchtutorial.com/elasticsearch-in-5-minutes.html&gt;
	*  ELK</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:git:server?rev=1615279052&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-03-09T08:37:32+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>git repo server</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:git:server?rev=1615279052&amp;do=diff</link>
        <description>git repo server

seguridad

protocolos

&lt;https://git-scm.com/book/en/v2/Git-on-the-Server-The-Protocols#The-HTTP/S-Protocol&gt;

	*  local
	*  http(s)
		*  Smart HTTP
		*  Dumb HTTP

	*  ssh
	*  git

ssh

	*  git-shell
		*  usermod -s /usr/bin/git-shell &lt;username&gt;

	*  /etc/ssh/sshd_config:

Match User git
    ForceCommand /usr/bin/git
    AllowTCPForwarding no
    X11Forwarding no</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:terraform:variables?rev=1749563456&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-06-10T13:50:56+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>terraform variables</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:terraform:variables?rev=1749563456&amp;do=diff</link>
        <description>terraform variables

	*  &lt;https://developer.hashicorp.com/terraform/tutorials/configuration-language/variables&gt;

declaración

	*  recomendado en fichero aparte variables.tf

declaración: 


variable &quot;aws_region&quot; {
  description = &quot;AWS region&quot;
  type        = string
  default     = &quot;us-west-2&quot;
}

variable &quot;instance_count&quot; {
  description = &quot;Number of instances to provision.&quot;
  type        = number
  default     = 2
}

variable &quot;enable_vpn_gateway&quot; {
  description = &quot;Enable a VPN gateway in your V…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/web:apache:cli?rev=1675931719&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-02-09T08:35:19+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Línea de Comando con Apache</title>
        <link>https://miguelangel.torresegea.es/wiki/web:apache:cli?rev=1675931719&amp;do=diff</link>
        <description>Línea de Comando con Apache

apachectl

	*  start/stop -&gt; arrancar y parar daemon (service httpd start/stop/restart)
	*  configtest -&gt; comprobar configuración (/etc/init.d/httpd configtest o apachectl configtest )
	*  graceful -&gt; recargar la configuración en caliente</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/wiki:plugins:bootstrapwrapper?rev=1585477400&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-03-29T10:23:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Bootstrap Wrapper Examples</title>
        <link>https://miguelangel.torresegea.es/wiki/wiki:plugins:bootstrapwrapper?rev=1585477400&amp;do=diff</link>
        <description>Bootstrap Wrapper Examples

alert

&lt;http://www.lotar.altervista.org/wiki/wiki/plugin/bootswrapper/alert&gt;
&lt;alert type=&quot;success&quot;&gt;...&lt;/alert&gt;&lt;alert type=&quot;info&quot;&gt;...&lt;/alert&gt;&lt;alert type=&quot;warning&quot;&gt;...&lt;/alert&gt;&lt;alert type=&quot;danger&quot;&gt;...&lt;/alert&gt;&lt;alert type=&quot;warning&quot; dismiss=&quot;true&quot;&gt;**Warning!** Better check yourself, you&#039;re not looking too good.&lt;/alert&gt;</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/windows:activacion:start?rev=1752739212&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-07-17T08:00:12+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Windows activación</title>
        <link>https://miguelangel.torresegea.es/wiki/windows:activacion:start?rev=1752739212&amp;do=diff</link>
        <description>Windows activación

activación

2025

	*  &lt;https://www.teknofilo.com/hackers-logran-activacion-permanente-de-windows-y-office-con-una-nueva-herramienta/&gt;
	*  &lt;https://github.com/massgravel/Microsoft-Activation-Scripts&gt;
		*  W7-W11, Office, WServer
		*  Download:
			*  &lt;https://massgrave.dev/genuine-installation-media&gt;
			*  &lt;https://gravesoft.dev/office_c2r_links#spanish-es-es&gt;
			*  MAC: &lt;https://massgrave.dev/office_for_mac&gt;
			*  file (2025-07-17): 

		*  Act (powershell): 
irm https://get.ac…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/windows:prog:vbasic?rev=1509272124&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2017-10-29T10:15:24+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>visual basic</title>
        <link>https://miguelangel.torresegea.es/wiki/windows:prog:vbasic?rev=1509272124&amp;do=diff</link>
        <description>visual basic

anotaciones de Núria Trias


Public Sub ConnectToAccess()
    Dim conn As New System.Data.OleDb.OleDbConnection()
    conn.ConnectionString = &amp; _ &quot;Provider=Microsoft.Jet.OLEDB.4.0;Data source=&quot; &amp; _ &quot;C:\Documents and Settings\username\My Documents\dbFile.mdb&quot;
    Try
        conn.Open()
    Catch ex As Exception
        MessageBox.Show(&quot;Failed to connect to data source&quot;)
    Finally
        conn.close()
    End Try
End Sub</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/windows:w10:start?rev=1744704773&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-04-15T08:12:53+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Windows 10</title>
        <link>https://miguelangel.torresegea.es/wiki/windows:w10:start?rev=1744704773&amp;do=diff</link>
        <description>Windows 10

windows

download

	*  creador de medios W10: &lt;https://www.microsoft.com/es-es/software-download/windows10&gt;
		*  &lt;https://go.microsoft.com/fwlink/?LinkId=691209&gt;

	*  herramienta ISO 2 USB: &lt;https://www.microsoft.com/es-es/download/details.aspx?id=56485&gt;

re-setup

	*  reinstalación W10/11: &lt;https://support.microsoft.com/es-es/windows/iniciar-el-pc-en-modo-seguro-en-windows-92c27cff-db89-8644-1ce4-b3e5e56fe234#WindowsVersion=Windows_10&gt;
	*  quitar requisito conexión red en W11: &lt;http…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/windows:w11:start?rev=1765796916&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-12-15T11:08:36+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Windows 11</title>
        <link>https://miguelangel.torresegea.es/wiki/windows:w11:start?rev=1765796916&amp;do=diff</link>
        <description>Windows 11

windows

rebajar requisitos

	*  FlyBy11: &lt;https://github.com/builtbybel/Flyby11/releases/tag/3.0.500&gt;
		*  Con esta técnica se permite evitar comprobaciones como la del TPM 2.0, el Secure Boot y el procesador compatible


sudo

	*  &lt;https://www.profesionalreview.com/2025/04/24/comando-sudo-windows/&gt;
	*  Configuración -&gt; sistema -&gt; para programadores -&gt; sudo -&gt; alineado (in line)</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/bbdd:mysql:match:start?rev=1527187996&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-05-24T18:53:16+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>match, full-text index, tags...</title>
        <link>https://miguelangel.torresegea.es/wiki/bbdd:mysql:match:start?rev=1527187996&amp;do=diff</link>
        <description>match, full-text index, tags...

bbdd mysql


SELECT *
FROM tabla
WHERE MATCH (campo) against (&#039;cadena_busqueda&#039; IN BOOLEAN MODE)


cadena de búsqueda

	*  &#039;aaa bbb&#039; -&gt; busca tag aaa o tag bbb
	*  &#039;+aaa +bbb&#039; -&gt; busca tag aaa y tag bbb
	*  &#039;+aaa bbb&#039; -&gt; busca tag aaa y preferentemente bbb</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/development:java:frameworks:collections?rev=1526807614&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-05-20T09:13:34+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Framework Collections</title>
        <link>https://miguelangel.torresegea.es/wiki/development:java:frameworks:collections?rev=1526807614&amp;do=diff</link>
        <description>Framework Collections

teoria

casos de uso

	*  hacer clase Iterable / Iterator : &lt;https://codereview.stackexchange.com/questions/48109/simple-example-of-an-iterable-and-an-iterator-in-java&gt;

java framework</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/development:java:lib:csv?rev=1526807837&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-05-20T09:17:17+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>CSV</title>
        <link>https://miguelangel.torresegea.es/wiki/development:java:lib:csv?rev=1526807837&amp;do=diff</link>
        <description>CSV

java lib

librerias

	*  &lt;http://opencsv.sourceforge.net/&gt; : libreria libre
	*  &lt;https://www.univocity.com/pages/parsers-tutorial&gt;  : aportación empresa privada

openCSV

funcionamiento

enlaces

	*  &lt;https://www.mkyong.com/java/how-to-read-and-parse-csv-file-in-java/&gt;</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/development:java:tomcat:start?rev=1527241217&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-05-25T09:40:17+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>tomcat</title>
        <link>https://miguelangel.torresegea.es/wiki/development:java:tomcat:start?rev=1527241217&amp;do=diff</link>
        <description>tomcat

tips

	*  permitir acceso desde más IPs que localhost en el manager: &lt;https://salehparsa.github.io/tomcat/security/linux/regex/2016/08/21/Allow-Deny-Access-to-Certain-IP-Address-in-Tomcat.html&gt;</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/development:php:codeigniter:api-rest?rev=1580245126&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-01-28T20:58:46+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Restful API</title>
        <link>https://miguelangel.torresegea.es/wiki/development:php:codeigniter:api-rest?rev=1580245126&amp;do=diff</link>
        <description>Restful API

tutoriales

	*  &lt;https://www.itsolutionstuff.com/post/codeigniter-3-restful-api-tutorialexample.html&gt;
	*  &lt;https://dev.to/pardip_trivedi/create-a-rest-api-in-codeigniter-with-basic-authentication-1e7f&gt;
	*  &lt;https://www.desarrollolibre.net/blog/codeigniter/como-crear-una-api-rest-con-codeigniter#.XXGE9XX7TmE&gt;
	*  codeigniter-restserver: &lt;https://github.com/chriskacerguis/codeigniter-restserver&gt;
		*  &lt;https://github.com/ivantcholakov/codeigniter-restserver-test&gt;</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:edx:uc3m_ciberseguridad?rev=1607382461&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-12-07T23:07:41+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Fundamentos de Ciberseguridad: un enfoque práctico</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:edx:uc3m_ciberseguridad?rev=1607382461&amp;do=diff</link>
        <description>Fundamentos de Ciberseguridad: un enfoque práctico

	*  &lt;https://courses.edx.org/courses/course-v1:IDB_UC3Mx+IDB_UC3M.1x+3T2020/course/&gt;
	*  &lt;https://courses.edx.org/assets/courseware/v1/e2e5e05b94bada38666ba48f87885b87/asset-v1:IDB_UC3Mx+IDB_UC3M.1x+3T2020+type@asset+block/Guia_aprendizaje_MOOC_Ciberseguridad_2ed.pdf&gt;

Semana 1

	*  TRIM: eliminación bloques (128 páginas) en SSD
		*  periódico
		*  constante

	*  exiftool
	*  xxd
	*  scalpel: &lt;https://github.com/machn1k/Scalpel-2.0&gt;
		*  recupe…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:hashicorp:vault?rev=1590505947&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-05-26T15:12:27+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>HashiCorp Taller de Vault</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:hashicorp:vault?rev=1590505947&amp;do=diff</link>
        <description>HashiCorp Taller de Vault

	*  ponente: Pedro Coca (gerente regional)

introducción modelo operativo cloud

	*  herramientas
		*  vagrant
		*  packer
		*  terraform
		*  vault
		*  consul
		*  nomad

	*  elementos infraestructura
		*  conectividad
		*</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:mongodbuniversity:start?rev=1547470402&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2019-01-14T12:53:22+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>MongoDB University</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:mongodbuniversity:start?rev=1547470402&amp;do=diff</link>
        <description>MongoDB University

devops cursos

	*  &lt;https://university.mongodb.com/&gt;

M001: MongoDB Basics

	*  Chapter 1 : Introduction
	*  Chapter 2 : The MongoDB Query Language + Atlas
	*  Chapter 3: Deeper Dive on the MongoDB Query Language

M040: New Features and Tools in MongoDB 4.0

	*  Chapter 0: An Introduction to the MongoDB 4.0 Release
	*  Chapter 1: Replica Set Transactions
	*  cap2
	*  cap3
	*  cap4
	*  cap5
	*  cap6
	*  cap7
	*  cap8

extras

	*  &lt;https://robomongo.org/&gt;

mongo shell

	*  Usua…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:libros:swarm:chap3?rev=1638914051&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-12-07T21:54:11+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>[native docker clustering with swarm] Meeting docker swarm mode</title>
        <link>https://miguelangel.torresegea.es/wiki/info:libros:swarm:chap3?rev=1638914051&amp;do=diff</link>
        <description>[native docker clustering with swarm] Meeting docker swarm mode

swarmkit

	*  «toolkit for orchestrating distributed systems at any scale. It includes primitives for node discovery, raft-based consensus, task scheduling, and more» - Docker team at DockerCon16</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:debian:seedbox:rtorrent_rutorrent?rev=1608803427&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-12-24T09:50:27+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>rtorrent+rutorrent en contenedor</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:debian:seedbox:rtorrent_rutorrent?rev=1608803427&amp;do=diff</link>
        <description>rtorrent+rutorrent en contenedor

instalacion rtorrent+rutorrent

	*  crear estructura de directorios:

mkdir -p data/downloads/completo
mkdir -p data/config


	*  copiar ficheros de configuración (extraidos de propio contenedor y modificados a conveniencia):</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/linux:install:server:ubuntu20043?rev=1705413007&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-01-16T13:50:07+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Instal·lació Linux Server Ubuntu 20.04.3</title>
        <link>https://miguelangel.torresegea.es/wiki/linux:install:server:ubuntu20043?rev=1705413007&amp;do=diff</link>
        <description>Instal·lació Linux Server Ubuntu 20.04.3

recepta

instal·lació

configuració


sudo apt update -y &amp;&amp; sudo apt upgrade -y
sudo apt install -y git vim curl



sudo update-alternatives --config editor # canvi d&#039;editor per defecte
sudo visudo -f /etc/sudoers.d/nopass # %sudo ALL=(ALL:ALL) NOPASSWD:ALL</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:k8s:cli:azure?rev=1586417444&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-04-09T07:30:44+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>kubernetes in azure</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:k8s:cli:azure?rev=1586417444&amp;do=diff</link>
        <description>kubernetes in azure

conexión

az aks get-credentials --resource-group &lt;RG&gt; --name &lt;AKS&gt;[ --admin]</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/tech:vagrant:vagrantfile:3vagrantloop?rev=1637060500&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-11-16T11:01:40+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Vagrantfile: multi-machine cluster in a loop</title>
        <link>https://miguelangel.torresegea.es/wiki/tech:vagrant:vagrantfile:3vagrantloop?rev=1637060500&amp;do=diff</link>
        <description>Vagrantfile: multi-machine cluster in a loop

vagrantfile


# -*- mode: ruby -*-
# vi: set ft=ruby :

VAGRANTFILE_API_VERSION = &quot;2&quot;

cluster = {
  &quot;master&quot; =&gt; { :ip =&gt; &quot;192.168.33.10&quot;, :cpus =&gt; 1, :mem =&gt; 1024 },
  &quot;slave&quot; =&gt; { :ip =&gt; &quot;192.168.33.11&quot;, :cpus =&gt; 1, :mem =&gt; 1024 }
}
 
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|

  cluster.each_with_index do |(hostname, info), index|

    config.vm.define hostname do |cfg|
      cfg.vm.provider :virtualbox do |vb, override|
        config…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/web:security:letsencrypt:multidominio?rev=1583137311&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-03-02T08:21:51+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Let&#039;s Encrypt multidominio</title>
        <link>https://miguelangel.torresegea.es/wiki/web:security:letsencrypt:multidominio?rev=1583137311&amp;do=diff</link>
        <description>Let&#039;s Encrypt multidominio


#!/bin/bash

COMMON_NAME=${1:-&quot;landing.fidmag.org&quot;}
COMMON_ALT_NAME=${COMMON_NAME//./_}

[[ ! -z ${COMMON_NAME} ]] &amp;&amp; {
	echo -e &quot;Creating letsencrypt directory...\n&quot;
	mkdir -p /etc/letsencrypt/live/${COMMON_NAME}
	#openssl genrsa 4096 &gt; account.key
	echo -e &quot;Generating .key &amp; .csr for domain...\n&quot;
	openssl genrsa 4096 &gt; domain_${COMMON_ALT_NAME}.key

        openssl req -new -sha256 -key domain_${COMMON_ALT_NAME}.key -subj &quot;/&quot; -reqexts SAN -config &lt;(cat /etc/ssl/ope…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/web:security:wordpress:securizar?rev=1760533105&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-10-15T12:58:25+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Wordpress securizar</title>
        <link>https://miguelangel.torresegea.es/wiki/web:security:wordpress:securizar?rev=1760533105&amp;do=diff</link>
        <description>Wordpress securizar

	*  Nominalia: &lt;https://www.escueladeinternet.com/&gt;

securizar

	*  cambiar usuario «admin»
	*  tener el WP actualizado
	*  usar contraseñas fuertes
	*  aplicar el perfil correspondiente al trabajo a realizar - administrador no ha de ser el perfil por defecto para todos</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:altran:docker:dockerfile?rev=1546512279&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2019-01-03T10:44:39+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Dockerfile</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:altran:docker:dockerfile?rev=1546512279&amp;do=diff</link>
        <description>Dockerfile

fichero de scripting para generar un contenedor
docker build -t &lt;nombre&gt; .: genera una nueva imagen con repositorio &lt;tag&gt;
vagrant rsync : sincroniza el directorio «compartido» entre el host y la imagen vagrantTambién se puede lanzar un proceso vagrant rsync-auto que se encarga de ir haciendo este proceso automaticamente</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:idfo:vmware:s3?rev=1634673427&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-10-19T19:57:07+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>VMWare Sesión 3 (2021-10-19)</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:idfo:vmware:s3?rev=1634673427&amp;do=diff</link>
        <description>VMWare Sesión 3 (2021-10-19)

Documentación relacionada

Clase

	*  creación de máquinas virtuales
		*  plantilla: instalación base

	*  clonar:
		*  máquina apagada o con servicios/procesos apagados

	*  DRS: &lt;https://www.vmware.com/products/vsphere/drs-dpm.html&gt;
		*  escoge en que ESXi del cluster crear la clonación</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:itformacion:awsdeveloper:cloudformation?rev=1543863486&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-12-03T18:58:06+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Developer Tools</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:itformacion:awsdeveloper:cloudformation?rev=1543863486&amp;do=diff</link>
        <description>Developer Tools

	*  AWS CodeCommit - GIT
	*  AWS CodeBuild - compile &amp; tests &amp; package
	*  AWS CodeDeploy - deployment to EC2, premises systems &amp; landa
	*  AWS CodePipeline - CI/CD = CodeCommit + CodeBuild + CodeDeploy

CodeCommit

CodeDeploy

	*  In-Place (Rolling Update)</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:lpic2:scripts:busca-nfs?rev=1534331242&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-08-15T11:07:22+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title></title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:lpic2:scripts:busca-nfs?rev=1534331242&amp;do=diff</link>
        <description>#!/bin/sh

# variables
RANGO=&quot;192.168.30&quot;
N_COPIAS=3
MI_IP=`ip route | awk &#039;/link/ {print $9}&#039;`      # awk hace de grep, con /link/ &quot;matcha&quot; la linea y elimina el CR


for hosts in `nmap -sP $RANGO.1-254 2&gt;/dev/null | grep &quot;appears to be up&quot; | awk &#039;{print $2}&#039;`
do
	RESULT=`rpcinfo -u $hosts nfs 2&gt;/dev/null | grep -c &quot;listo y a la espera&quot;`
	if [ &quot;$RESULT&quot; -eq &quot;1&quot; ]; then
#		echo -n &quot;NFS Responde $hosts&quot;
		ISMOUNTHERE=`showmount -e $hosts | grep -c &quot;^/home/vpn &quot;`
		if [ &quot;$ISMOUNTHERE&quot; -eq &quot;1&quot; ]; t…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:lpic2:scripts:copia-remotos?rev=1534331267&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-08-15T11:07:47+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title></title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:lpic2:scripts:copia-remotos?rev=1534331267&amp;do=diff</link>
        <description>#!/bin/bash -x

# copia mi backup en máquinas remotas.

# variables
RANGO=&quot;192.168.30&quot;
N_COPIAS=3
MI_IP=`ip route | awk &#039;/link/ {print $9}&#039;`	# awk hace de grep, con /link/ &quot;matcha&quot; la linea y elimina el CR-LF

# funciones
conecta() 
{
	echo &#039;*******************************&#039;
	echo $1
	echo &#039;*******************************&#039;

	mkdir /mnt/temporal
	mount -t nfs $1:/home/backups /mnt/temporal

	if [ -f &quot;/mnt/temporal/hostname.txt&quot; ]; then
		NOMBRE=`cat /mnt/temporal/hostname.txt`
		# desmonto el dire…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:mate:seguretat-informatica:ciberseguretat?rev=1741766358&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-03-12T07:59:18+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>ciberseguretat</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:mate:seguretat-informatica:ciberseguretat?rev=1741766358&amp;do=diff</link>
        <description>ciberseguretat

información

	*  estar informados
		*  &lt;https://www.redeszone.net/&gt; - Tienen una subsección especializada en seguridad. Muy activo.
		*  &lt;https://blog.segu-info.com.ar/&gt; - Argentino, muy activo.
		*  &lt;https://thehackerway.com/&gt; - Español, premiado como mejor blog técnico europeo en 2021 en la categoría de ciberseguridad.</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:devops:sesion6?rev=1551531889&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2019-03-02T13:04:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Sesión 6 : ansible</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:devops:sesion6?rev=1551531889&amp;do=diff</link>
        <description>Sesión 6 : ansible

ansible

become


- name: servicio
  service:
    name: httpd
    state: started
  become: yes



- name: servicio
  service:
    name: httpd
    state: started
  become: yes
  become_user: apache


adduser


- hosts: all
  tasks:
    - include: add-user-debian.yaml
      when: ansible_os_family == &#039;Debian&#039;
    - include: add-user-redhat.yaml
      when: ansible_os_family == &#039;RedHat&#039;</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:devops:sesion7?rev=1559662594&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2019-06-04T15:36:34+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Sesión 7: Seguridad, Prometheus</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:devops:sesion7?rev=1559662594&amp;do=diff</link>
        <description>Sesión 7: Seguridad, Prometheus

seguridad

	*  &lt;https://www.owasp.org/&gt;
	*  JSON
	*  REST = Representational state transfer
		*  uso de verbos
			*  comunes: get, post, head
			*  otras: putm patch, delete, transfer...
			*  &lt;https://en.wikipedia.org/wiki/Representational_state_transfer&gt;
			*  waf, ids, ips : filtrado por reglas


	*</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:devops:sesion15?rev=1554490348&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2019-04-05T18:52:28+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Sesión 15 examen</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:devops:sesion15?rev=1554490348&amp;do=diff</link>
        <description>Sesión 15 examen

repaso examen pruebas

	*  gratisexam
	*  respuestas con correcciones (muchas erróneas): &lt;https://lpic-devops.pad.floss.cat/p/cert-test&gt;

kubernetes

operators

contenedor para desplegar cosas en k8s

pq prometheus

	*  kubernetes lee las métricas (para hacer lo que haga falta)</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:devops:sesion16?rev=1554617923&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2019-04-07T06:18:43+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Sesión 16 prometheus on kubernetes</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:devops:sesion16?rev=1554617923&amp;do=diff</link>
        <description>Sesión 16 prometheus on kubernetes

	*  &lt;https://linuxhint.com/kubernetes_operator/&gt;

google cloud

	*  gcloud config set compute/zone europe-west1-b &lt;- (&lt;https://cloud.google.com/compute/docs/regions-zones/&gt;)
	*  gcloud container clusters create bootcamp --num-nodes 3 --scopes «&lt;https://www.googleapis.com/auth/projecthosting,storage-rw&gt;»
	*  gcloud container clusters list
	*  en local, con las utilidades G instaladas:</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:devops2022:s3?rev=1646847691&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-03-09T17:41:31+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>DevOps Sesión 3 (2022-02-16) Docker</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:devops2022:s3?rev=1646847691&amp;do=diff</link>
        <description>DevOps Sesión 3 (2022-02-16) Docker

Documentación relacionada

	*  1-Despliegue de Aplicaciones Docker
	*  ./1-Curso Alumnos Docker.pdf, pag. 147
	*  ./Docker-Resumen/Laboratorio docker redes wp+mysql.txt
	*  ./1-Curso Alumnos Docker.pdf, pag. 164</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:devops2022:s14?rev=1648497231&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-03-28T19:53:51+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>DevOps Sesión 14 (2022-03-28) Ansible + ELK</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:devops2022:s14?rev=1648497231&amp;do=diff</link>
        <description>DevOps Sesión 14 (2022-03-28) Ansible + ELK

Documentación relacionada

	*  ./5-Topic 705 Service Operations
	*  ./5-Topic 705 Service Operations/MV-ELK formacion vmwareplayer.txt
	*  ./5-Topic 705 Service Operations/Clase Monitorizacion.txt

inventario dinámico Ansible</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:ethical-hacker:sesion1?rev=1740124059&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-02-21T07:47:39+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Ethical Hacker : sesión 1</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:ethical-hacker:sesion1?rev=1740124059&amp;do=diff</link>
        <description>Ethical Hacker : sesión 1

	*  Ethical Hacker : shellgpt
	*  Ethical Hacker : sesión 1

formador

	*  Fernando Ruiz-Tapiador &lt;fernando@ruiz-tapiador.com&gt; &lt;malote@gmail.com&gt;
	*  Formador Red Hat

Código proyecto: SinCara

	*  etherpad
	*  Telegram
	*  pCloud: &lt;https://u.pcloud.link/publink/show?code=kZejslkZw6XkrBbTzRR5dQf1LGglGb2T3jGk&gt;
	*  aspen eccouncil: &lt;https://aspen.eccouncil.org/MyCourses&gt;

clase

	*  ASPEN: Modulo 0, Modulo 1, Modulo 2, Modulo 3, Modulo 4, Modulo 5</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:ethical-hacker:sesion2?rev=1740124310&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-02-21T07:51:50+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Ethical Hacker : sesión 2</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:ethical-hacker:sesion2?rev=1740124310&amp;do=diff</link>
        <description>Ethical Hacker : sesión 2

	*  Ethical Hacker : sesión 2

clase

	*  ASPEN
		*  Modulo 06 - System Hacking
		*  Modulo 07 - Malware
		*  Modulo 08 - Sniffing


Modulo 06, apuntes

Modulo 06 - System Hacking

sección 1

	*  hash
		*  linux con salt
			*  tail -n 1 /etc/shadow | cut -f2 -d: | tr</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:ethical-hacker:shellgpt?rev=1739812833&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-02-17T17:20:33+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Ethical Hacker : shellgpt</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:ethical-hacker:shellgpt?rev=1739812833&amp;do=diff</link>
        <description>Ethical Hacker : shellgpt

sesión 1, lab 2


export OPENAI_API_KEY=&#039;...&#039;
sgpt --chat footprint --shell “Use theHarvester to gather email accounts associated with &#039;microsoft.com&#039;, limiting results to 200, and leveraging &#039;baidu&#039; as a data source”
sgpt --chat footprint --shell “Use Sherlock to gather personal information about &#039;Sundar Pichai&#039; and save the result in recon2.txt”
sgpt --chat footprint --shell “Install and use DNSRecon to perform DNS enumeration on the target domain www.certifiedhacker…</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:lpic1:103.2?rev=1534332813&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-08-15T11:33:33+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>103.2 - filtros</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:lpic1:103.2?rev=1534332813&amp;do=diff</link>
        <description>103.2 - filtros

	*  filtrado de texto
		*  cat primero.txt segundo.txt &gt; combinado.txt
			*  -E ó --show-ends
			*  -n ó --number
			*  -b ó --number-nonblank
			*  -s ó --squeeze-blank
			*  -T ó --show-tabs
			*  -v ó --show-nonprinting

		*</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:lpic2-2021:s1?rev=1663569788&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-09-19T06:43:08+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>LPIC2 2021 Sesión 1 (2021-02-02) - Utils info</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:lpic2-2021:s1?rev=1663569788&amp;do=diff</link>
        <description>LPIC2 2021 Sesión 1 (2021-02-02) - Utils info

Documentación relacionada

	*  Presentaciones/2020/201/200-Capacity Planning.pdf
		*  Material Practicas LPIC-2/LPIC-201/1-Capacity Planning/1-Resumen Análisis de Rendimiento en Linux.pdf

Clase

	*  determinar necesidades ¿qué es un problema en mi entorno?</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:lpic2-2021:s8?rev=1614285381&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-25T20:36:21+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>LPIC2 2021 Sesión 8 (2021-02-25)</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:lpic2-2021:s8?rev=1614285381&amp;do=diff</link>
        <description>LPIC2 2021 Sesión 8 (2021-02-25)

Documentación relacionada:

	*  Manual Certificacion LPIC-2.pdf, pag XX
	*  Material Practicas LPIC-2/LPIC-201/6-System Maintenance/
	*  Presentaciones/2020/201/
	*  gdrive://
	*  práctica (fuera de certificación): Material Practicas LPIC-2/LPIC-201/6-System Maintenance/Script para comentar el examen de practica.rar</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:lpic2-2021:s10?rev=1615309386&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-03-09T17:03:06+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>LPIC2 2021 Sesión 10 (2021-03-04)</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:lpic2-2021:s10?rev=1615309386&amp;do=diff</link>
        <description>LPIC2 2021 Sesión 10 (2021-03-04)

Documentación relacionada:

	*  Manual Certificacion LPIC-2.pdf, pag XX
	*  Material Practicas LPIC-2/LPIC-202/
	*  Presentaciones/2020/202/
	*  gdrive://

Clase

Web Services

	*  DOC: Material Practicas LPIC-2/LPIC-202/2-Web Services/Apache/Resumen Apache.txt</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:lpic2-2021:s13?rev=1615927023&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-03-16T20:37:03+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>LPIC2 2021 Sesión 13 (2021-03-16)</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:lpic2-2021:s13?rev=1615927023&amp;do=diff</link>
        <description>LPIC2 2021 Sesión 13 (2021-03-16)

Documentación relacionada:

	*  Manual Certificacion LPIC-2.pdf, pag XX
	*  Material Practicas LPIC-2/LPIC-202/
	*  Presentaciones/2020/202/
	*  gdrive://

Clase

PAM

	*  DOC: Material Practicas LPIC-2/LPIC-202/6-Network Client Management/Modulos de autenticacion con conexion (PAM)/Presentacion PAM.pdf</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:netacad:python:pe2m1:pip?rev=1656606177&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-06-30T16:22:57+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Modulo 1 (intermedio): PIP</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:netacad:python:pe2m1:pip?rev=1656606177&amp;do=diff</link>
        <description>Modulo 1 (intermedio): PIP

El Ecosistema de Paquetes de Python y cómo usarloPython es un instrumento muy poderoso; esperamos que ya lo hayas experimentado. Muchas personas de todo el mundo se sienten así y usan Python de forma regular para desarrollar lo que pueden hacer en muchos campos de actividad completamente diferentes. Esto significa que Python se ha convertido en</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:netacad:python:pe2m3:propiedades?rev=1657048430&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-07-05T19:13:50+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Módulo 3: Programación Orientada a Objetos - propiedades</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:netacad:python:pe2m3:propiedades?rev=1657048430&amp;do=diff</link>
        <description>Módulo 3: Programación Orientada a Objetos - propiedades

Variables de instancia

En general, una clase puede equiparse con dos tipos diferentes de datos para formar las propiedades de una clase. Ya viste uno de ellos cuando estábamos estudiando pilas.</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:openwebinars:elk:logstash:process?rev=1638561381&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-12-03T19:56:21+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>ELK: Logstask(procesamiento)</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:openwebinars:elk:logstash:process?rev=1638561381&amp;do=diff</link>
        <description>ELK: Logstask(procesamiento)





	*  

input {
  file {
    path =&gt; &quot;/home/openweb/Documents/dataset/test.json&quot;
    start_position =&gt; &quot;beginning&quot;
    codec =&gt; &quot;json&quot;
}}

output {
  stdout { codec =&gt; rubydebug }
}



input

	*  JSON
	*  &lt;https://www.elastic.co/guide/en/logstash/current/input-plugins.html&gt;

	*  lanzar logstash:</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:ethical-hacker:sesion1:lab2?rev=1740123998&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-02-21T07:46:38+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Lab Module 02: Footprinting and Reconnaissance</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:ethical-hacker:sesion1:lab2?rev=1740123998&amp;do=diff</link>
        <description>Lab Module 02: Footprinting and Reconnaissance

Task 1: Perform Footprinting Through Search Engines

	*  Google Dorks

lab 2 Module 02: Perform Footprinting Through Internet Research Services

Task 1: Find the Company’s Domains, Subdomains and Hosts using Netcraft and DNSdumpster</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:pue:ethical-hacker:sesion2:lab8?rev=1740124361&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-02-21T07:52:41+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Lab  Module 08: Perform Active Sniffing</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:pue:ethical-hacker:sesion2:lab8?rev=1740124361&amp;do=diff</link>
        <description>Lab  Module 08: Perform Active Sniffing

Lab 1

Task 1: Perform MAC Flooding using macof

Task 2: Perform a DHCP Starvation Attack using Yersinia

Lab 2 Module 08: Perform Network Sniffing using Various Sniffing Tools

Task 1: Perform Password Sniffing using Wireshark</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:udemy:ansible:modulos:sistema?rev=1560416925&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2019-06-13T09:08:45+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>gestionar el sistema</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:udemy:ansible:modulos:sistema?rev=1560416925&amp;do=diff</link>
        <description>gestionar el sistema

3:37 Gestionar Sistema (I)

	*  alternatives : gestionar alternativas (versiones) para comandos
		*  /etc/alternatives/java

	*  at : programar ejecución de comandos
	*  authorized_keys : gestión ficheros claves
	*  cron : gestión de cron</description>
    </item>
    <item rdf:about="https://miguelangel.torresegea.es/wiki/info:cursos:udemy:ansible:modulos:utilidades?rev=1537865996&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2018-09-25T08:59:56+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>utilidades</title>
        <link>https://miguelangel.torresegea.es/wiki/info:cursos:udemy:ansible:modulos:utilidades?rev=1537865996&amp;do=diff</link>
        <description>utilidades

3:32 Comando Utilidades (I)

ejecución de comandos en el nodo remoto

	*  command
	*  expect : ejecuta un comando y responde a la introducción de dataos
	*  raw : envía comandos sin filtrar por SSH
	*  script : transfiere y ejecuta un script</description>
    </item>
</rdf:RDF>
