¿Nuevo en Linux? ¿No está seguro de qué es SSH o qué puede 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 de Linux (excepto Fedora y OpenSUSE). Configurar SSH es fácil. Si solo está buscando conectarse a una PC Linux remota con SSH, es más fácil instalar la herramienta de conexión del cliente. Esta herramienta es solo SSH, 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í se explica cómo hacerlo funcionar.
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 para SSH y cambie una o dos configuraciones. El principal es el puerto predeterminado. Vea, fuera de la caja, SSH usa el puerto 22 . Este es un puerto muy conocido. Como resultado, los hackers y otros actores malos probablemente irán tras este puerto e intentarán acceder 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 encuentre 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 con 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 portnumber remote@host
Transferencia de archivos de línea de comando
SSH es útil cuando necesita acceder de forma remota a otra computadora. Puede tratarse de una computadora a la que accede a través de Internet, o una que se encuentra 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 al terminal Linux puede ser realmente tedioso.
Es por eso que SSH viene con una funcionalidad integrada para transferir archivos fácilmente de un lado a otro, directamente a través de SSH.
scp / ruta / a / archivos-o-carpetas usuario @ dirección_ip: / 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 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 localmente a todo el disco duro de una PC Linux remota dentro del administrador de archivos. 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 y 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, incluido el respaldo remoto 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 usa es / dev / sda. Deberá cambiar el comando para adaptarlo a sus necesidades.
Partición de respaldo
dd if = / dev / sda1 | gzip -1 - | ssh remote @ host dd of = image.img.gz
Unidad completa
dd if = / dev / sda | gzip -1 - | ssh remote @ host dd of = image.img.gz
También es posible tomar la imagen del disco duro (o particiones) del disco remoto:
Partición de respaldo
ssh remote @ host "dd if = / dev / sda1 | gzip -1 -" | dd of = image.img.gz
Unidad completa
Edit the config file with:ssh remote@host "dd if=/dev/sda | gzip -1 -" | dd of=image.img.gz
Extrae la imagen con: gzip -d image.img.gz
Ver programas remotos localmente
A veces, el terminal no es suficiente cuando se accede a una computadora de forma remota. Afortunadamente, con SSH, es posible hacer reenvío de ventanas X. Esto significa que puede usar el servidor x11 GUI para reenviar ventanas remotas a su máquina local. Por ejemplo, si necesita probar un sitio web en la PC remota de Linux, podrá iniciar Firefox de forma remota y reenviar localmente la ventana x11 Firefox a su PC con Linux.
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 ” a ” sí “.
Reinicie el servicio SSH.
Ubuntu / Debian:
service ssh restart
Arch / OpenSUSE / Fedora:
sudo systemctl sshd restart
Al conectarse 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 un shell seguro, el único límite es tu propia habilidad.