Diferències

Ací es mostren les diferències entre la revisió seleccionada i la versió actual de la pàgina.

Enllaç a la visualització de la comparació

Ambdós costats versió prèvia Revisió prèvia
Següent revisió
Revisió prèvia
linux:ssh:reverse [20/08/2019 11:35] – [método PORT_FORWARDING] matelinux:ssh:reverse [17/04/2026 04:30] (actual) mate
Línia 1: Línia 1:
 = ssh tunel inverso (o reverso) = ssh tunel inverso (o reverso)
 +
 == método SSH == método SSH
 sean: sean:
Línia 8: Línia 9:
  
 el método sería: el método sería:
-  - conecto desde A a B con:<code bash>ssh -R 12345:localhost:22 usuario_B@B</code>+  - dejo la conexión abierta a A (conecto desde A a B):<code bash>ssh -R 12345:localhost:22 usuario_B@B</code> 
 +  - alternativamente, usar ''ssh reverseB''<code ini .ssh/config>Host reverseB 
 +    HostName B 
 +    User usuario_B 
 +    RemoteForward 12345 localhost:22 
 +    IdentityFile ~/.ssh/usuario_B@B</code>
   - conecto desde C a B con SSH (como siempre) <code bash>ssh usuario_B@B</code>   - conecto desde C a B con SSH (como siempre) <code bash>ssh usuario_B@B</code>
   - una vez en B, conecto con A con:<code bash>ssh -p 12345 usuario_A@localhost</code>   - una vez en B, conecto con A con:<code bash>ssh -p 12345 usuario_A@localhost</code>
 +  - alternativamente a estos dos últimos pasos, usar ''ssh test2-reverse''<code ini .ssh/config>Host test2-reverse
 +    Hostname localhost
 +    User usuario_A
 +    ProxyCommand ssh computerB -W %h:12345
 +    ForwardAgent yes
 +    IdentityFile ~/.ssh/usuario_A@A
 +    
 +Host computerB
 +    Hostname B
 +    User usuario_B
 +    RemoteForward 12345 localhost:22
 +    IdentityFile ~/.ssh/usuario_B@B
 +</code>
  
   * desde A establezco una conexión SSH haciendo que B escuche en 12345 y se lo envíe a A   * desde A establezco una conexión SSH haciendo que B escuche en 12345 y se lo envíe a A
Línia 23: Línia 42:
   * A - ordenador con página web tras firewall (en este caso)   * A - ordenador con página web tras firewall (en este caso)
   * B - ordenador en internet   * B - ordenador en internet
-  * C - ordenador que quiere accder a A+  * C - ordenador que quiere acceder página web en A
  
 método: método:
Línia 32: Línia 51:
   * Y una vez hecho esto ya estaría el túnel creado. Para conectarse desde el C habría que escribir lo siguiente en el navegador:<code>http://<B>:6677</code>   * Y una vez hecho esto ya estaría el túnel creado. Para conectarse desde el C habría que escribir lo siguiente en el navegador:<code>http://<B>:6677</code>
  
 +== restricciones usuario puente 
 +<code . /etc/ssh/sshd_config> 
 +# aplicar restriccions a l'usuari d'accés pont 
 +Match User empremtes_remot 
 +    # Deshabilita el acceso a terminal (shell) 
 +    ForceCommand /bin/false 
 +    # Permite el reenvío de puertos (necesario para el túnel -NR) 
 +    AllowTcpForwarding yes 
 +    # Impide que el usuario use el entorno gráfico de forma remota 
 +    X11Forwarding no 
 +    # Impide que el usuario ejecute aplicaciones locales 
 +    AllowAgentForwarding no 
 +    # Opcional: Impide que el usuario use SFTP o SCP 
 +    Subsystem sftp /bin/false   
 +</code>
  
  
  • linux/ssh/reverse.1566326158.txt.gz
  • Darrera modificació: 20/08/2019 11:35
  • per mate