LinuxParty
Ejecutar "todo" en un navegador web solía ser una declaración audaz. No obstante con la potencia de HTML5/JavaScript, un navegador web se convierte cada vez más en una plataforma de aplicaciones dominante.
En este tutorial, se describe cómo tener acceso a un terminal SSH desde un navegador web en Linux. SSH basado en la Web es útil cuando el cortafuegos que se encuentra detrás es tan restrictiva que sólo el tráfico HTTP(s) puede pasar.
Shell en una caja (o shellinabox) es un emulador de terminal basado en la web que puede funcionar como un cliente SSH basado en la web. Viene con su propio servidor web (shellinaboxd), que exporta una shell de línea de comandos para un emulador de terminal basado en la web a través de interfaz AJAX. Para que funcione "Shell en la caja" sólo se necesita el soporte de JavaScript / CSS desde un navegador web, y no requiere ningún plugin adicional en el navegador.
Instale Shell en una caja en Linux
Si te interesa saber nuestra opinión, nosotros preferimos:
Para instalar shellinabox en Debian, Ubuntu o Linux Mint:
$ sudo apt-get install shellinabox openssl
Para instalar shellinabox en Fedora:
$ sudo yum install shellinabox openssl
Para instalar shellinabox en CentOS o RHEL, primero activar repositorios EPEL
Para CentOS 5.*:
$ sudo rpm -Uvh http://mirrors.kernel.org/fedora-epel/5/i386/epel-release-5-4.noarch.rpmPara CentOS 6.*:
$ sudo rpm -Uvh http://mirrors.kernel.org/fedora-epel/6/i386/epel-release-6-8.noarch.rpm
y, a continuación, ejecute:
$ sudo yum install shellinabox openssl
Configure Shellinaboxd Servidor Web
El shellinaboxd predeterminado del servidor Web escucha el puerto TCP 4200 en el servidor local. En este tutorial, cambiamos el puerto predeterminado al 443 para el puerto HTTPS. Para, modificar la configuración shellinabox haga lo siguiente
Configure shellinaboxd En Debian, Ubuntu o Linux Mint:
$ sudo vi /etc/default/shellinabox
# TCP port that shellinboxd's webserver listens on SHELLINABOX_PORT=443 # specify the IP address of a destination SSH server SHELLINABOX_ARGS="--o-beep -s /:SSH:192.168.1.7" # if you want to restrict access to shellinaboxd from localhost only SHELLINABOX_ARGS="--o-beep -s /:SSH:192.168.1.7 --localhost-only"
Configure shellinaboxd En Fedora, CentOS o RHEL:
$ sudo vi /etc/sysconfig/shellinaboxd
# TCP port that shellinboxd's webserver listens on PORT=443 # specify the IP address of a destination SSH server OPTS="-s /:SSH:192.168.1.7" # if you want to restrict access to shellinaboxd from localhost only OPTS="-s /:SSH:192.168.1.7 --localhost-only"
El cara a cara para los usuarios de Fedora: De acuerdo con el documento oficial, algunas operaciones no funcionen fuera de la caja cuando se ejecuta en modo shellinaboxd SELinux en Fedora. Consulte el documento si usted tiene cualquier problema. (Básicamente podremos cambiarles los parámetros, o desactivarlo)
Provisión de un certificado autofirmado
Durante la instalación de Shell en una caja, shellinaboxd intentará crear un nuevo certificado autofirmado (certificate.pem) mediante el uso de /usr/bin/openssl si no se encuentra el certificado adecuado en su Linux. El certificado creado se coloca en /var/lib/shellinabox.
Si no hay ningún certificado en el directorio, por alguna razón, puede crear uno usted mismo de la siguiente manera.
$ su (change to the root)
# cd /var/lib/shellinabox
# openssl genrsa -des3 -out server.key 1024
# openssl req -new -key server.key -out server.csr
# cp server.key server.key.org
# openssl rsa -in server.key.org -out server.key
# openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt
# cat server.crt server.key > certificate.pem
Ejecutar Shellinaboxd Servidor Web
En Debian, Ubuntu o Linux Mint:
$ sudo service shellinabox start
En Fedora, CentOS o RHEL:
$ sudo systemctl enable shellinaboxd.service
$ sudo systemctl start shellinaboxd.service
Para verificar si shellinaboxd está en ejecución:
$ sudo netstat -nap | grep shellinabox
tcp 0 0 0.0.0.0:443 0.0.0.0:* LISTEN 4787/shellinaboxd
Ahora abra su navegador Web y vaya a https:// <IP_address_of_SSH_server>. Usted debe ser capaz de ver una consola SSH basado en la web, e iniciar sesión en el servidor SSH remoto a través de la interfaz del navegador web.
-
Linux
- ¿Por qué Torvalds eliminó a los encargados rusos del mantenimiento del núcleo de Linux?
- 10 cosas que siempre hago después de instalar Linux (y por qué tú también deberías hacerlo)
- 7 cosas que nunca hago después de instalar Linux (y por qué tú tampoco deberías)
- Detección de Intrusos: Snort, Base, MySQL, y Apache2 en Ubuntu Linux 7.10
- He utilizado Linux durante 30 años. Aquí hay 5 razones por las que nunca cambiaré a Windows o MacOS
- ¿Por qué no más personas usan Linux en el escritorio? Tengo una teoría que quizás no te guste.
- Los países occidentales ricos lideran la expansión mundial del petróleo y el gas
- Systemd 256.1 aborda la queja de que 'systemd-tmpfiles' podría eliminar inesperadamente su directorio /home
- Por qué un kernel Linux de distribución 'congelada' no es la mejor opción para la seguridad
- RebornOS es una versión hermosa y fácil de usar de Arch Linux con abundantes opciones de escritorio
- Linus Torvalds sobre el 'hilarante' bombo de la IA
- Cambiar la hora en Linux con Chrony
- Renombrar multiples archivos masivamente en Linux (quitar espacios, cambiar mayúsculas) a la vez en Linux
- Linux 6.9 será el primero en superar los 10 millones de objetos Git
- Zorin OS 17.1 lanzado con soporte mejorado para aplicaciones de Windows, edición educativa