Como configurar SSH
www.onlinetis.com
Para configurar SSH, se deben seguir varios pasos tanto en el servidor como en el cliente. Estos pasos incluyen la instalación de OpenSSH, la configuración del archivo sshd_config
en el servidor, y la generación de pares de claves SSH para la autenticación sin contraseña.
Configuración del servidor (Linux)
1. Instalar OpenSSH Server
El primer paso es instalar el servidor OpenSSH.
En sistemas basados en Debian (como Ubuntu), usa:
sudo apt update
sudo apt install openssh-server
En sistemas basados en Red Hat (como CentOS o Fedora), usa:
sudo dnf install openssh-server
sudo systemctl enable sshd --now
2. Configurar el Firewall
Asegúrate de que el firewall permita el tráfico en el puerto SSH (por defecto, el puerto 22).
Si usas ufw (Uncomplicated Firewall):
sudo ufw allow ssh
sudo ufw enable
Si usas firewalld
:
sudo firewall-cmd --permanent --add-service=ssh
sudo firewall-cmd --reload
3. Modificar el archivo sshd_config
Para mejorar la seguridad, edita el archivo de configuración del servidor SSH, que suele estar en /etc/ssh/sshd_config
. Haz una copia de seguridad antes de modificarlo: sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak
.
Algunas configuraciones recomendadas son:
Cambiar el puerto por defecto:
Port 2222
(o cualquier otro número no estándar para evitar escaneos de bots).Deshabilitar el inicio de sesión como root:
PermitRootLogin no
. Esto fuerza a los usuarios a iniciar sesión con una cuenta normal y luego usarsudo
.Deshabilitar la autenticación con contraseña:
PasswordAuthentication no
. Esto solo permitirá el acceso mediante claves SSH, que es mucho más seguro.
Después de hacer los cambios, reinicia el servicio SSH:
sudo systemctl restart sshd
Configuración del cliente
1. Generar claves SSH
En la máquina cliente, genera un par de claves (una clave privada y una clave pública). La clave privada debe mantenerse secreta y nunca compartirse.
ssh-keygen -t rsa -b 4096
Este comando crea las claves en el directorio ~/.ssh/
. La clave pública se llama id_rsa.pub
y la privada, id_rsa
.
2. Copiar la clave pública al servidor
Copia la clave pública a la máquina remota para autenticarte sin contraseña. La forma más sencilla es usar ssh-copy-id
:
ssh-copy-id usuario@servidor
Si cambiaste el puerto en el servidor:
ssh-copy-id -p 2222 usuario@servidor
Te pedirá la contraseña del usuario del servidor una última vez para copiar la clave. Después de eso, ya no la necesitarás.
3. Conectarse al servidor
Ahora puedes conectarte al servidor usando solo el nombre de usuario y la dirección IP o el nombre de dominio.
ssh usuario@servidor
Si cambiaste el puerto:
ssh -p 2222 usuario@servidor
4. Configurar un alias (opcional)
Para facilitar las conexiones frecuentes, puedes crear un alias en el archivo ~/.ssh/config
del cliente.
Host mi-servidor
HostName servidor
User usuario
Port 2222
Guarda el archivo y luego conéctate simplemente con:
ssh mi-servidor