¿Nuevo en Linux? ¿No estás seguro de qué es SSH o qué puedes hacer con él? En este artículo, explicaremos cómo puede configurar y usar SSH en Linux. Repasaremos cómo funciona y algunas cosas útiles que puede hacer con él. ¡Empecemos!
SSH es una de las herramientas más utilizadas en la plataforma Linux. A pesar de esto, no es un programa que viene configurado en la mayoría de las distribuciones principales de Linux (excepto Fedora y OpenSUSE). Configurar SSH es sencillo. Si solo está buscando conectarse a una PC Linux remota con SSH, lo más fácil es instalar la herramienta de conexión del cliente. Esta herramienta es solo SSH en sí, y nada para ejecutar un servidor de conexión.
Aún así, es una buena idea configurar un servidor SSH en cada PC con Linux. De esta manera siempre puede haber comunicación bidireccional, y cualquier PC puede enviar una conexión y recibirla también. Aquí le mostramos cómo hacerlo funcionar.
Tabla de contenido
Instalar herramientas SSH
Ubuntu
sudo apt install openssh-server
Arch Linux
sudo pacman -S openssh sudo systemctl enable sshd sudo systemctl start sshd
Debian
sudo apt-get install openssh-server
Fedora / OpenSUSE
Aunque es posible que SSH ya esté instalado, es posible que el servidor no esté habilitado. Para habilitarlo, abra una terminal e ingrese:
sudo systemctl enable sshd sudo systemctl start sshd
Otro
Otras distribuciones de Linux no mencionadas aquí pueden tener las herramientas SSH necesarias para que todo funcione. De lo contrario, es mejor consultar el manual oficial de la versión de Linux que está utilizando. Alternativamente, busque en el lugar donde normalmente instala los programas y busque: openssh-server, ssh, sshd, etc.
A continuación, abra el archivo de configuración de SSH y cambie una configuración o dos. El principal es el puerto predeterminado. Mira, SSH usa el puerto 22. Este es un puerto muy conocido. Como resultado, los piratas informáticos y otros actores maliciosos probablemente irán tras este puerto e intentarán obtener acceso a él. Considere cambiar el puerto a algo aleatorio. Realmente no importa qué puerto, solo asegúrese de que no sea uno que ya esté siendo utilizado por otros programas.
Edite el archivo de configuración con: sudo nano / etc / ssh / ssh_config
Desplácese hacia abajo y busque el # Puerto 22 en el archivo. Elimine el “#” y cambie el número de “22” al puerto que desee. Presione Ctrl + O para guardar los cambios. Luego reinicie SSH usando los siguientes comandos.
Ubuntu / Debian:
service ssh restart
Arch / OpenSUSE / Fedora:
sudo systemctl sshd restart
Nota: si no planea reenviar su puerto SSH a Internet, no es necesario cambiar el puerto SSH. Si permanece en LAN, está bien.
Conéctese con SSH a su servidor con: ssh -p número de puerto remoto @ host
Transferencia de archivos por línea de comandos
SSH es útil cuando necesita acceder de forma remota a otra computadora. Puede ser una computadora a la que acceda a través de Internet o una que se encuentre en la misma habitación. A veces, al acceder de forma remota a una PC con Linux, es posible que necesite acceder a los archivos. Quizás sean archivos de configuración o documentos importantes. Enviar archivos a una máquina remota cuando solo tiene acceso a la terminal de Linux puede ser realmente tedioso.
Es por eso que SSH viene con una funcionalidad incorporada para transferir archivos fácilmente de un lado a otro, directamente a través de SSH.
scp / ruta / a / archivos-o-carpetas usuario @ direcciónip: / ruta / a / destino
Reemplace / ruta / a / y etc. para reflejar sus propias necesidades. Por ejemplo, el tuyo podría verse un poco así;
scp /home/derrik/importantfile.txt derrik@ubuntu-server:/home/derrik-server/files/
Servidor FTP seguro en cualquier lugar
FTP es una tecnología antigua, pero eso no significa que ya no sea útil. De hecho, FTP todavía se usa mucho cuando se trata de SSH. ¿Por qué? Hace que sea muy fácil acceder al disco duro de una PC Linux remota desde el administrador de archivos, localmente. No es necesario configurar SSH para comenzar a usar SFTP. Cualquier PC Linux con un servidor SSH en ejecución también tiene SFTP. Para acceder a él, abra el administrador de archivos de su elección, busque «servidor», «red» o algo por el estilo. Tenga en cuenta que cada administrador de archivos de Linux es diferente, por lo que es imposible dar cuenta de todos ellos.
sftp://username@hostname:portnumber
Cuando ingrese la dirección FTP, se le pedirá que ingrese una contraseña, así como que acepte la clave del servidor SSH.
Nota: deberá reenviar el puerto que usa para SSH para acceder a SFTP fuera de su red. Consulte el manual de su enrutador para aprender cómo reenviar puertos.
Copia de seguridad remota
SSH tiene muchos usos, incluida la copia de seguridad remota de unidades y particiones. Para hacer una copia de seguridad de un disco duro desde una PC local y enviar la imagen a través de la red a través de SSH, use esto:
Nota: en este ejemplo, el disco duro que se utiliza es / dev / sda. Deberá cambiar el comando para que se adapte a sus necesidades.
Copia de seguridad de partición
dd if=/dev/sda1 | gzip -1 - | ssh remote@host dd of=image.img.gz
Toda la unidad
dd if=/dev/sda | gzip -1 - | ssh remote@host dd of=image.img.gz
También es posible capturar la imagen (o particiones) del disco duro de la unidad remota:
Copia de seguridad de partición
ssh remote@host "dd if=/dev/sda1 | gzip -1 -" | dd of=image.img.gz
Toda la unidad
Edit the config file with:ssh remote@host "dd if=/dev/sda | gzip -1 -" | dd of=image.img.gz
Extraiga la imagen con: gzip -d image.img.gz
Visualización de programas remotos de forma local
A veces, el terminal no es suficiente cuando se accede a una computadora de forma remota. Afortunadamente, con SSH, es posible hacer un reenvío de ventanas X. Esto significa que puede usar el servidor GUI x11 para reenviar ventanas remotas a su máquina local. Por ejemplo, si necesita probar un sitio web en la PC Linux remota, podrá iniciar Firefox de forma remota y reenviar la ventana x11 de Firefox a su PC Linux, localmente.
Habilite el reenvío de ventanas X11 editando el archivo de configuración ssh: sudo nano / etc / ssh / ssh_config
Busque # ForwardX11 no, elimine «#» y cambie «no» por «sí».
Reinicie el servicio SSH.
Ubuntu / Debian:
service ssh restart
Arch / OpenSUSE / Fedora:
sudo systemctl sshd restart
Cuando se conecte a través de SSH, use el interruptor -X.
ssh -X -p portnumber remote@host
Conclusión
SSH es una herramienta útil, pero no muchos usuarios principiantes de Linux lo saben. Es una pena, ya que tiene muchos usos. En este artículo, acabamos de arañar la superficie. Cuando se trata de usar shell seguro, el único límite es tu propia habilidad.