Conectarse por SSH desde Mac o Linux: guía completa
En Mac y Linux, SSH viene integrado: no necesitas ningún software adicional. La aplicación Terminal te da acceso directo a SSH y a las herramientas relacionadas. En Theory7 vemos que muchos desarrolladores y administradores de sistemas usan Mac o Linux por estas potentes posibilidades de la línea de comandos. En esta guía te explicamos todo sobre las conexiones SSH.
Abrir Terminal
En macOS
Hay varias formas de abrir Terminal:
- Spotlight: pulsa Cmd + Espacio, escribe Terminal y pulsa Intro.
- Finder: ve a Aplicaciones > Utilidades > Terminal.
- Launchpad: busca Terminal en el Launchpad.
En Linux
Según tu distribución, hay distintas maneras de abrir Terminal:
- Ubuntu/Debian: pulsa Ctrl + Alt + T para abrir una nueva ventana de Terminal.
- KDE: busca Konsole en el menú de aplicaciones.
- GNOME: busca Terminal en el menú de aplicaciones.
- En general: busca Terminal en el menú de aplicaciones.
Conexión SSH básica
La forma más sencilla de establecer una conexión SSH es usar el siguiente comando:
ssh gebruikersnaam@server
Ejemplo:
ssh john@example.com
Con un puerto específico
En Theory7 usamos el puerto 7777 para reforzar la seguridad. Puedes indicarlo fácilmente con la siguiente sintaxis:
ssh gebruikersnaam@server -p 7777
Con una dirección IP
Si quieres acceder al servidor a través de una dirección IP, usa el siguiente comando:
ssh gebruikersnaam@123.45.67.89 -p 7777
Generar claves SSH
Las claves SSH son más seguras que las contraseñas y hacen que conectarse a los servidores sea más sencillo y seguro. Al usar claves SSH, evitas tener que introducir tu contraseña una y otra vez.
Crear una clave Ed25519 (recomendado)
La clave Ed25519 es la opción recomendada por su gran seguridad y su velocidad:
ssh-keygen -t ed25519 -C "jouw@example.nl"
El programa te pedirá que elijas algunas opciones:
- Ubicación: pulsa Intro para usar la ubicación predeterminada (~/.ssh/id_ed25519).
- Passphrase: es una contraseña opcional que añade seguridad a tu clave privada.
Crear una clave RSA (sistemas antiguos)
Si trabajas con sistemas antiguos que no admiten Ed25519, puedes crear una clave RSA:
ssh-keygen -t rsa -b 4096 -C "jouw@example.nl"
Ver las claves
Para ver las claves que has generado, usa el siguiente comando:
ls -la ~/.ssh/
Verás los siguientes archivos:
- id_ed25519: es tu clave privada (¡no la compartas nunca!).
- id_ed25519.pub: es tu clave pública (puedes compartirla con otras personas).
Copiar la clave pública al servidor
Para conectarte a un servidor por SSH, tienes que copiar tu clave pública en el servidor. Puedes hacerlo de varias maneras:
Método 1: ssh-copy-id (el más fácil)
Para copiar tu clave pública de la forma más sencilla, usa el comando ssh-copy-id de esta manera:
ssh-copy-id -i ~/.ssh/id_ed25519.pub gebruiker@server -p 7777
Este comando copia automáticamente tu clave pública en el servidor y la añade al archivo authorized_keys.
Método 2: manual
Si ssh-copy-id no funciona, puedes hacerlo a mano:
- Consulta tu clave pública con:
- Copia la salida del comando.
- Inicia sesión en el servidor con tu contraseña.
- Añade la clave pública a
~/.ssh/authorized_keysde esta manera: - Comprueba que los permisos del archivo están bien configurados:
- Cierra la sesión y vuelve a iniciarla con SSH.
cat ~/.ssh/id_ed25519.pub
echo "jouw-public-key-hier" >> ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys
Método 3: a través de DirectAdmin
Si usas un proveedor de hosting compatible con DirectAdmin, también puedes importar tu clave pública desde la interfaz:
- Inicia sesión en DirectAdmin.
- Ve a SSH Keys.
- Haz clic en Import Key.
- Pega tu clave pública en el campo correspondiente.
- Autoriza la clave.
Conectarse con una clave SSH
Una vez instalada la clave, puedes conectarte al servidor sin introducir tu contraseña:
ssh -i ~/.ssh/id_ed25519 gebruiker@server -p 7777
Si usas la clave predeterminada, puedes simplificar el comando:
ssh gebruiker@server -p 7777
Configuración SSH para conectarte más rápido
Para que te resulte más fácil conectarte a distintos servidores, puedes crear un archivo de configuración SSH:
nano ~/.ssh/config
Añade la siguiente configuración:
Host mijnserver
HostName example.nl
User gebruikersnaam
Port 7777
IdentityFile ~/.ssh/id_ed25519
Host theory7
HostName server.theory7.net
User myuser
Port 7777
IdentityFile ~/.ssh/id_ed25519
Ahora puedes conectarte fácilmente con:
ssh mijnserver
O bien:
ssh theory7
Transferir archivos
Con SSH también puedes transferir archivos fácilmente entre tu equipo local y el servidor. Puedes hacerlo de varias maneras:
SCP (Secure Copy)
Para subir un archivo al servidor, usa:
scp -P 7777 lokaalbestand.txt user@server:/pad/naar/doel/
Para descargar un archivo del servidor, usa:
scp -P 7777 user@server:/pad/naar/bestand.txt ./lokaal/
Para subir una carpeta completa, usa:
scp -P 7777 -r lokalemap user@server:/pad/naar/doel/
Sesión interactiva de SFTP
Para abrir una sesión interactiva con el servidor, puedes usar SFTP:
sftp -P 7777 user@server
Estos son algunos comandos útiles de SFTP:
- ls: muestra los archivos del directorio actual.
- cd: cambia de directorio.
- get bestand: descarga un archivo del servidor.
- put bestand: sube un archivo al servidor.
- exit: cierra la sesión de SFTP.
rsync para una sincronización eficiente
Rsync es una herramienta potente para sincronizar archivos y carpetas. Es eficiente porque solo copia los archivos que han cambiado:
rsync -avz -e "ssh -p 7777" ./lokaal/ user@server:/remote/
Agente SSH para gestionar las claves
Para no tener que introducir tu passphrase cada vez, puedes usar un agente SSH:
Iniciar el agente
Inicia el agente SSH con el siguiente comando:
eval "$(ssh-agent -s)"
Añadir la clave
Añade tu clave SSH al agente:
ssh-add ~/.ssh/id_ed25519
En macOS puedes guardar la clave en el Llavero para no tener que introducirla cada vez:
ssh-add --apple-use-keychain ~/.ssh/id_ed25519
Solución de problemas
Si tienes problemas al conectarte por SSH, estos son algunos mensajes de error habituales y sus soluciones:
Permission denied (publickey)
- Comprueba que tu clave pública está bien instalada en el servidor.
- Verifica los permisos del archivo de tu clave privada con:
chmod 600 ~/.ssh/id_ed25519
Connection refused
- Comprueba que usas el puerto correcto.
- Verifica que el servidor está accesible con una prueba de ping:
ping server
Host key verification failed
- Puede significar que la clave del servidor ha cambiado, lo que podría indicar un problema de seguridad.
- Si estás seguro de que el cambio es legítimo, puedes eliminar la clave antigua con:
ssh-keygen -R server
¿Necesitas ayuda?
Estamos a tu disposición. ¿Te has topado con algún problema o tienes preguntas? Nuestro equipo de soporte te ayuda personalmente. Envíanos un mensaje a través del sistema de tickets: solemos responder en unas pocas horas y buscamos la solución contigo.
¿Buscas hosting WordPress? Consulta nuestra oferta.
A 0 de 0 personas les ha resultado útil