Saltar al contenido

acceder a la página web a través de ssh

Al fin luego de tanto luchar ya dimos con el resultado de esta incógnita que muchos usuarios de este sitio han tenido. Si deseas compartir alguna información no dudes en compartir tu información.

Solución:

Primer método:

Lanzar un túnel SSH

Para iniciar su túnel SSH, simplemente abra la terminal y conéctese a su servidor remoto a través de SSH con las siguientes banderas:

ssh -D 8080 -C -N [email protected]

Navegue por la Web con su túnel SSH (Chrome)

Ahora, comencemos a navegar por la web usando nuestro nuevo túnel SSH.

  • Abrir Google Chrome
  • Seleccione el icono de llave inglesa en la parte superior derecha
  • Seleccione ‘Configuración’
  • Seleccione “Mostrar configuración avanzada …”
  • Seleccione ‘Cambiar la configuración del proxy …’
  • Seleccione ‘SOCKS Proxy’
  • Ingrese ‘127.0.0.1 ′
  • Ingrese el puerto ‘8080 ′
  • Guarde los cambios seleccionando ‘Aceptar’

Busque en Google ‘mi ip’ y eche un vistazo a cuál es su dirección IP ahora.

Esto lanzará nuestro túnel SSH en el puerto 8080 y enrutará todo el tráfico (de forma segura) a través del servidor en example.com.

Salir del túnel SSH

Para salir del túnel SSH, simplemente desactive el proxy SOCKS dentro de su navegador.

fuente

Segundo método:

Puedes hacerlo fácilmente usando Shellinabox

Asegúrese de haber marcado Repositorio de universos

Instalar

 $ sudo apt-get install openssl shellinabox

Configuración de Shellinabox

Por defecto, shellinaboxd escucha en el puerto TCP 4200 en localhost. Durante la instalación, se crea automáticamente un nuevo certificado SSL autofirmado en “/ var / lib / shellinabox” para usar el protocolo HTTPS.

$ sudo vi /etc/default/shellinabox

# specify the IP address of a destination SSH server
SHELLINABOX_ARGS="--o-beep -s /:SSH:172.16.25.125"

# if you want to restrict access to shellinaboxd from localhost only
SHELLINABOX_ARGS="--o-beep -s /:SSH:172.16.25.125 --localhost-only"

NB: reemplace la ip 172.16.25.125 con la suya

Inicio de Shellinabox

Una vez que haya terminado con la configuración, puede iniciar el servicio

$ sudo service shellinaboxd start

Verificar Shellinabox

Ahora verifiquemos si Shellinabox se está ejecutando en el puerto 4200 usando el comando “netstat”.

$ sudo netstat -nap | grep shellinabox
or
# netstat -nap | grep shellinabox

tcp        0      0 0.0.0.0:4200            0.0.0.0:*               LISTEN      12274/shellinaboxd

Ahora abra su navegador web y navegue hasta ‘https: // “Su-dirección-IP: 6175″‘. Debería poder ver un terminal SSH basado en web. Inicie sesión con su nombre de usuario y contraseña y se le debe presentar el indicador de shell.

ingrese la descripción de la imagen aquí

fuente

El ejemplo que proporcionó es correcto, pero algo engañoso. Esto debería funcionar:

ssh -L 8080::80 [email protected]

Por ejemplo, considere una caja remota que ejecuta ssh que puede acceder a esta página web, que quiero ver localmente:

http://192.168.1.2/index.html

Para crear un túnel en mi caja local que me permita navegar a esa página remota, ejecuto localmente:

ssh -L 8080:192.168.1.2:80 [email protected]

Y luego, en un navegador web, visito:

http: // localhost: 8080 / index.html

Si necesita (o desea) omitir el especificador de puerto, deberá abrir el túnel como root, ya que 80 es un puerto “privilegiado” (<1024):

sudo ssh -L 80::80 [email protected]

Luego, puede visitar localmente:

http: //localhost/index.html

No se requiere ninguna otra configuración.

Por cierto, esto solo funciona para un soltero host que desea ver localmente. Si necesita ver más, debe abrir más túneles en otros puertos o examinar las otras soluciones que envían por túnel las solicitudes para todos los hosts remotos a través de un proxy.

Este es el tercer uso del -L cambia desde man ssh:

 -L [bind_address:]port:host:hostport
 -L [bind_address:]port:remote_socket
 -L local_socket:host:hostport
 -L local_socket:remote_socket
         Specifies that connections to the given TCP port or Unix socket on the
         local (client) host are to be forwarded to the given host and port, or
         Unix socket, on the remote side.  This works by allocating a socket to
         listen to either a TCP port on the local side, optionally bound to the
         specified bind_address, or to a Unix socket.  Whenever a connection is
         made to the local port or socket, the connection is forwarded over the
         secure channel, and a connection is made to either host port hostport,
         or the Unix socket remote_socket, from the remote machine.

         Port forwardings can also be specified in the configuration file.  Only
         the superuser can forward privileged ports.  IPv6 addresses can be
         specified by enclosing the address in square brackets.

         By default, the local port is bound in accordance with the GatewayPorts
         setting.  However, an explicit bind_address may be used to bind the
         connection to a specific address.  The bind_address of “localhost”
         indicates that the listening port be bound for local use only, while an
         empty address or ‘*’ indicates that the port should be available from
         all interfaces.

Si para ti ha sido de provecho nuestro artículo, sería de mucha ayuda si lo compartes con más juniors así nos ayudas a difundir nuestro contenido.

¡Haz clic para puntuar esta entrada!
(Votos: 2 Promedio: 4)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *