<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>SSH on Adrián Lois</title><link>https://adrianlois.com/tags/ssh/</link><description>Recent content in SSH on Adrián Lois</description><generator>Hugo</generator><language>es</language><lastBuildDate>Sat, 11 Oct 2025 11:55:00 +0000</lastBuildDate><atom:link href="https://adrianlois.com/tags/ssh/index.xml" rel="self" type="application/rss+xml"/><item><title>Port Knocking: mejorar la seguridad en conexiones SSH</title><link>https://adrianlois.com/posts/port-knocking-seguridad-ssh-linux/</link><pubDate>Wed, 10 Aug 2022 18:54:00 +0000</pubDate><guid>https://adrianlois.com/posts/port-knocking-seguridad-ssh-linux/</guid><description>&lt;p&gt;&lt;a href="https://linux.die.net/man/1/knockd" target="_blank" rel="noopener"&gt;&lt;strong&gt;Port knocking&lt;/strong&gt;&lt;/a&gt; o golpeteo de puertos es un método que proporciona seguridad frente a ataques de servicios de red, consiste en realizar una serie de peticiones de conexión con una secuencia ordenada de puertos para poder habilitar una regla previamente configurada en la máquina remota que nos permita abrir una comunicación única entre cliente/servidor y establecer finalmente una conexión abierta SSH hacia el servidor remoto.&lt;/p&gt;
&lt;p&gt;El uso de esta implementación puede ser catalogado como &lt;a href="https://es.wikipedia.org/wiki/Seguridad_por_oscuridad" target="_blank" rel="noopener"&gt;seguridad por oscuridad&lt;/a&gt;.&lt;/p&gt;</description></item><item><title>2FA: segundo factor de autenticación en conexiones SSH</title><link>https://adrianlois.com/posts/2fa-segundo-factor-autenticacion-ssh/</link><pubDate>Wed, 22 Jun 2022 11:53:00 +0000</pubDate><guid>https://adrianlois.com/posts/2fa-segundo-factor-autenticacion-ssh/</guid><description>&lt;p&gt;Implementar un segundo factor de autenticación 2FA en servicios SSH sin duda es una muy buena opción de seguridad no solo para servidores expuestos a internet sino para aquellos usuarios que pueden elevarse a un contexto privilegiado de sudo y servidores críticos en una red interna corporativa.&lt;/p&gt;
&lt;p&gt;Con este mecanismo de autenticación en dos pasos se estaría reduciendo en gran medida la superficie de ataque de los vectores de entrada a estos sistemas por parte de un posible atacante.&lt;/p&gt;</description></item><item><title>Pivoting entre proxys encadenados con Proxychains</title><link>https://adrianlois.com/posts/pivoting-entre-proxys-encadenados-con-proxychains/</link><pubDate>Mon, 29 Jun 2020 15:48:00 +0000</pubDate><guid>https://adrianlois.com/posts/pivoting-entre-proxys-encadenados-con-proxychains/</guid><description>&lt;p&gt;&lt;a href="http://proxychains.net/" target="_blank" rel="noopener"&gt;Proxychains&lt;/a&gt; es una herramienta que actúa como un servidor proxy soportando conexiones TCP en protocolos &lt;em&gt;HTTP, HTTPS, SOCKS4 y SOCKS5&lt;/em&gt;. Su principal característica es el encadenamiento de servidores proxy configurados y como redirige estas peticiones de uno a otro.&lt;/p&gt;
&lt;p&gt;En una fase de reconocimiento y enumeración hacia un sitio web, dependiendo el caso, intentamos mantener un cierto grado de &lt;strong&gt;anonimato&lt;/strong&gt; ocultando nuestra dirección IP pública. Para ello usamos servidores Proxy o VPN siendo estas más fiables, prácticas y con un mayor nivel de garantía.&lt;/p&gt;</description></item><item><title>Hydra, Medusa y Ncrack: password cracking por fuerza bruta y password spraying</title><link>https://adrianlois.com/posts/hydra-medusa-ncrack-password-cracking-fuerza-bruta-spraying/</link><pubDate>Tue, 23 Jun 2020 16:22:00 +0000</pubDate><guid>https://adrianlois.com/posts/hydra-medusa-ncrack-password-cracking-fuerza-bruta-spraying/</guid><description>&lt;p&gt;THC-Hydra, Medusa y Ncrack son herramientas para realizar ataques de fuerza bruta a servicios activos cliente/servidor como: ssh, ftp, rdp, smb, mysql, telnet, http, imap, vnc, etc.&lt;/p&gt;
&lt;p&gt;Para mostrar el uso de estas herramientas usaré el siguiente escenario de ejemplos. Escaneando con nmap los equipos remotos y puertos empleados para cada tipo de servicio.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#e6edf3;background-color:#0d1117;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;nmap -p &lt;span style="color:#a5d6ff"&gt;21&lt;/span&gt; 10.0.0.16      &lt;span style="color:#8b949e;font-style:italic"&gt;# Windows 7 servicio FTP&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;nmap -p &lt;span style="color:#a5d6ff"&gt;3389&lt;/span&gt; 10.0.0.16    &lt;span style="color:#8b949e;font-style:italic"&gt;# Windows 7 servicio RDP&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;nmap -p &lt;span style="color:#a5d6ff"&gt;445&lt;/span&gt; 10.0.0.16     &lt;span style="color:#8b949e;font-style:italic"&gt;# Windows 7 servicio SMB/CIFS&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;nmap -p &lt;span style="color:#a5d6ff"&gt;22&lt;/span&gt; 10.0.0.40      &lt;span style="color:#8b949e;font-style:italic"&gt;# Linux servicio SSH&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div align="center"&gt;
&lt;p&gt;&lt;img src="hydra-medusa-ncrack-password-cracking-fuerza-bruta-spraying_01.png" alt="hydra-fuerza-bruta-wordlist-ftp"&gt;&lt;/p&gt;</description></item><item><title>sshuttle: Múltiples túneles SSH y VPN (Proxy transparente)</title><link>https://adrianlois.com/posts/sshuttle-multiples-tuneles-ssh-y-vpn-proxy-transparente/</link><pubDate>Thu, 02 Apr 2020 07:30:00 +0000</pubDate><guid>https://adrianlois.com/posts/sshuttle-multiples-tuneles-ssh-y-vpn-proxy-transparente/</guid><description>&lt;p&gt;&lt;a href="https://github.com/sshuttle/sshuttle" target="_blank" rel="noopener"&gt;&lt;strong&gt;sshuttle&lt;/strong&gt;&lt;/a&gt;. Se trata de un cliente SSH desarrollado en python que actúa como un proxy transparente funcionando como una VPN. No se trata de una VPN como definición, sshuttle crea de forma automática distintas reglas usando &lt;em&gt;pfctl&lt;/em&gt; &lt;em&gt;(&lt;a href="https://www.openbsd.org/faq/pf/filter.html" target="_blank" rel="noopener"&gt;pf - Packet Filter)&lt;/a&gt;&lt;/em&gt; o en su defecto &lt;a href="https://es.wikipedia.org/wiki/Iptables" target="_blank" rel="noopener"&gt;iptables&lt;/a&gt; para un múltiple reenvío de puertos a través de una conexión tunelizada vía SSH.&lt;/p&gt;
&lt;p&gt;Ya comenté las diferencias entre los distintos tipos de &lt;a href="https://www.zonasystem.com/2019/01/tunel-ssh-port-forwarding-local-remote-dynamic.html" target="_blank" rel="noopener"&gt;túneles SSH&lt;/a&gt;. Esta aplicación nos abstrae de los detalles de realizar manualmente cada reenvío &lt;em&gt;-port forwarding-&lt;/em&gt; a cada IP/Puerto hacia la red remota a la que queremos acceder.&lt;/p&gt;</description></item><item><title>fail2ban: control de ataques de fuerza bruta en servicios Linux</title><link>https://adrianlois.com/posts/fail2ban-ataques-fuerza-bruta-servicios-linux/</link><pubDate>Wed, 17 Jul 2019 17:22:00 +0000</pubDate><guid>https://adrianlois.com/posts/fail2ban-ataques-fuerza-bruta-servicios-linux/</guid><description>&lt;p&gt;&lt;a href="https://www.fail2ban.org/" target="_blank" rel="noopener"&gt;fail2ban&lt;/a&gt; es una aplicación &lt;a href="https://en.wikipedia.org/wiki/Intrusion_detection_system" target="_blank" rel="noopener"&gt;IDPS&lt;/a&gt; (&lt;em&gt;Intrusion Detection and Prevention Systems&lt;/em&gt;) que supervisa las conexiones externas de direcciones IPs a servicios internos, se puede parametrizar para bloquear los intentos de accesos externos por fuerza bruta. En base al cumplimiento de las directivas definidas y asociadas a determinados servicios.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;fail2ban detecta conexiones que puedan ser anómalas y bloquea la IP pública que intenta acceder a dichos servicios&lt;/strong&gt; por lo que sería un sistema activo (analiza, detecta y actúa al momento), lo hace añadiendo reglas &lt;a href="https://linux.die.net/man/8/iptables" target="_blank" rel="noopener"&gt;iptables&lt;/a&gt; rechazando las conexiones procedentes de esa dirección IP pública.&lt;/p&gt;</description></item><item><title>Plink SSH: auto-aceptar hostkey al crear túnel local port forwarding</title><link>https://adrianlois.com/posts/plink-ssh-auto-hostkey-fingerprint-tunel-local-forwarding/</link><pubDate>Sat, 16 Feb 2019 20:30:00 +0000</pubDate><guid>https://adrianlois.com/posts/plink-ssh-auto-hostkey-fingerprint-tunel-local-forwarding/</guid><description>&lt;p&gt;&lt;strong&gt;Hostkey o fingerprint SSH&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Cuando nos conectamos a través de un cliente SSH como &lt;a href="https://www.putty.org/" target="_blank" rel="noopener"&gt;PuTTY&lt;/a&gt;, por primera vez en una conexión se nos mostrará una alerta de seguridad indicando que el host key no está cacheado en el registro, no es más que la huella digital o fingerprint de la máquina remota a la que nos conectamos usado como método de confianza para garantizar la autenticidad de la máquina remota.&lt;/p&gt;
&lt;p&gt;Esta host key al no estar registrada o cacheada por la máquina cliente que establece la conexión por primera vez, nos alerta de que no hay garantía de que el servidor remoto sea quien creemos que es.&lt;/p&gt;</description></item><item><title>Resetear password SSO Administrator@vsphere.local en vCenter (VCSA)</title><link>https://adrianlois.com/posts/resetear-password-sso-administrator-vsphere-vcenter-vcsa/</link><pubDate>Mon, 11 Feb 2019 20:30:00 +0000</pubDate><guid>https://adrianlois.com/posts/resetear-password-sso-administrator-vsphere-vcenter-vcsa/</guid><description>&lt;p&gt;Para resetear la password SSO del usuario &amp;ldquo;&lt;a href="mailto:Administrator@vsphere.local"&gt;Administrator@vsphere.local&lt;/a&gt;&amp;rdquo; de vCenter. Accedemos a la gestión del VCSA (&lt;a href="https://www.vmware.com/es/products/vcenter-server.html" target="_blank" rel="noopener"&gt;vCenter Server Appliance&lt;/a&gt;) por el puerto 5480 con el usuario root y password.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#e6edf3;background-color:#0d1117;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-fallback" data-lang="fallback"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;https://IP-vCenter_o_hostname:5480
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Una vez en el appliance de vCenter, en la sección de Acceso marcamos:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Habilitar inicio de sesión en SSH.&lt;/li&gt;
&lt;li&gt;Habilitar el shell Bash.&lt;/li&gt;
&lt;/ul&gt;
&lt;div align="center"&gt;
&lt;p&gt;&lt;img src="resetear-password-sso-administrator-vsphere-vcenter-vcsa_01.png" alt="Figura 1: Habilitar el acceso SSH y Shell Bash para VCSA."&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Figura 1: Habilitar el acceso SSH y Shell Bash para VCSA.&lt;/em&gt;&lt;/p&gt;</description></item><item><title>Túnel SSH Port Forwarding: Local, Remote y Dynamic [Explicado]</title><link>https://adrianlois.com/posts/tunel-ssh-port-forwarding-local-remote-y-dynamic-explicado/</link><pubDate>Wed, 30 Jan 2019 20:30:00 +0000</pubDate><guid>https://adrianlois.com/posts/tunel-ssh-port-forwarding-local-remote-y-dynamic-explicado/</guid><description>&lt;h2 id="qué-es-ssh"&gt;
 ¿Qué es SSH?
 &lt;a class="heading-link" href="#qu%c3%a9-es-ssh"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;&lt;img src="tunel-ssh-port-forwarding-local-remote-y-dynamic-explicado_01.png" alt="ssh-tunneling"&gt;&lt;a href="https://es.wikipedia.org/wiki/Secure_Shell" target="_blank" rel="noopener"&gt;SSH&lt;/a&gt; &lt;em&gt;(Secure Shell)&lt;/em&gt; es un protocolo de comunicaciones seguras entre dos sistemas usando una arquitectura cliente/servidor que permite a los usuarios conectarse a un host remotamente para su posterior administración.&lt;/p&gt;
&lt;p&gt;A diferencia de otros protocolos de comunicación remota como &lt;a href="https://es.wikipedia.org/wiki/Protocolo_de_transferencia_de_archivos" target="_blank" rel="noopener"&gt;FTP&lt;/a&gt; o &lt;a href="https://es.wikipedia.org/wiki/Telnet" target="_blank" rel="noopener"&gt;Telnet&lt;/a&gt; &lt;em&gt;(Telecommunication Network)&lt;/em&gt;, SSH cifra la sesión de conexión y la comunicación ofreciendo también una infraestructura de autenticación &lt;a href="https://es.wikipedia.org/wiki/Infraestructura_de_clave_p%C3%BAblica" target="_blank" rel="noopener"&gt;PKI&lt;/a&gt; &lt;em&gt;(Public Key Infrastructure)&lt;/em&gt; para la conexión con el host remoto.&lt;/p&gt;</description></item><item><title>Montar FTP/FTPS remoto en Linux con CurlFtpFS y SSHFS</title><link>https://adrianlois.com/posts/montar-ftp-ftps-remoto-linux-curlftpsfs-sshfs/</link><pubDate>Fri, 16 Nov 2018 21:22:00 +0000</pubDate><guid>https://adrianlois.com/posts/montar-ftp-ftps-remoto-linux-curlftpsfs-sshfs/</guid><description>&lt;p&gt;Para montar una carpeta de un directorio FTP o FTPS remoto en un sistema Linux y acceder a ella de forma local como un volumen más del sistema. Se puede usar &lt;a href="http://curlftpfs.sourceforge.net/" target="_blank" rel="noopener"&gt;CurlFtpFS&lt;/a&gt; o &lt;a href="https://en.wikipedia.org/wiki/SSHFS" target="_blank" rel="noopener"&gt;SSHFS&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id="curlftpfs"&gt;
 CurlFtpFS
 &lt;a class="heading-link" href="#curlftpfs"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;CurlFtpFS lo usaremos si no disponemos de conexión SSH hacia el servidor FTP remoto (la transferencia de datos es más lenta).&lt;/p&gt;
&lt;p&gt;Instalamos curlftpfs.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#e6edf3;background-color:#0d1117;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;sudo apt install curlftpfs
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Creamos el directorio en el que montaremos el FTP/FTPS.&lt;/p&gt;</description></item><item><title>Túnel SSH con PuTTY para RDP (local port forwarding)</title><link>https://adrianlois.com/posts/tunel-ssh-putty-rdp-local-port-forwarding/</link><pubDate>Wed, 01 Aug 2018 19:57:00 +0000</pubDate><guid>https://adrianlois.com/posts/tunel-ssh-putty-rdp-local-port-forwarding/</guid><description>&lt;p&gt;Un &lt;a href="https://es.wikipedia.org/wiki/T%C3%BAnel_%28inform%C3%A1tica%29#T%C3%BAnel_SSH" target="_blank" rel="noopener"&gt;túnel SSH&lt;/a&gt; se utiliza principalmente para tunelizar tráfico sobre internet o sobre una red local de una manera segura. Podemos encapsular un tipo de protocolo sobre una conexión establecida &lt;a href="https://es.wikipedia.org/wiki/Secure_Shell" target="_blank" rel="noopener"&gt;SSH&lt;/a&gt; (Secure SHell).&lt;/p&gt;
&lt;p&gt;Supongamos que nos queremos conectar a un servidor interno de una red local a través de Internet, pero el firewall de la compañía restringe las conexiones origen dirigidas a determinados puertos, entre ellos el 3389 (puerto por defecto usado para RDP), sin embargo si permite conexiones al puerto 22 (puerto por defecto para SSH).&lt;/p&gt;</description></item></channel></rss>