SSH (Secure Shell) és el protocol que fas servir per connectar-te de manera segura a un altre equip: obrir-hi un terminal, executar-hi comandes, copiar-hi fitxers o fer túnels. Tota la comunicació va xifrada, contrasenyes incloses. En aquesta guia veuràs com instal·lar el servidor, com connectar-t’hi i com canviar-ne el port, amb les particularitats de les distribucions actuals.
Client i servidor
- El client (
ssh) és el programa amb què et connectes. Ja ve instal·lat a gairebé tots els sistemes. - El servidor (
sshd) és el servei que escolta a la màquina remota (per defecte, al port 22) i accepta les connexions.
A Linux tots dos són d’OpenSSH. Pots veure’n la versió amb:
$ ssh -V
OpenSSH_10.0p2 Debian-7+deb13u4, OpenSSL 3.5.7 9 Jun 2026
Instal·lació
Debian, Ubuntu i Raspberry Pi OS
sudo apt update
sudo apt install openssh-server
El servei s’activa sol. Comprova’n l’estat (a Debian i Ubuntu el servei es diu ssh; sshd també funciona com a àlies):
systemctl status ssh
Al Raspberry Pi OS, l’SSH ve instal·lat però desactivat: l’actives des de sudo raspi-config (Interface Options) o en crear la imatge amb el Raspberry Pi Imager.
Rocky Linux, AlmaLinux, RHEL i Fedora
sudo dnf install openssh-server
sudo systemctl enable --now sshd
Aquí el servei es diu sshd.
macOS
El client ja hi és. El servidor s’activa a la configuració del sistema, a l’apartat Compartir, amb l’opció d’inici de sessió remot (Remote Login).
Windows
Windows 10 (des de la versió 1809) i Windows 11 porten el client OpenSSH integrat: obre PowerShell o el símbol del sistema i ja pots fer servir ssh, scp, sftp i ssh-keygen. Si no hi és, s’afegeix a Configuració → Sistema → Característiques opcionals. PuTTY continua sent una opció, però ja no és imprescindible. Si fas servir WSL, hi tens l’OpenSSH de Linux.
Exemples d’ús
Connectar-te a un servidor:
ssh joan@192.168.1.50
La primera vegada et mostrarà l’empremta (fingerprint) de la clau del servidor i et preguntarà si confies en ella. Si respons yes, es desa a ~/.ssh/known_hosts i ja no ho tornarà a preguntar (tret que la clau canviï, cosa que pot indicar un atac o una reinstal·lació del servidor).
Connectar-te a un port diferent del 22:
ssh -p 2222 joan@servidor.example.com
Executar una comanda remota sense obrir una sessió:
ssh joan@192.168.1.50 'df -h /'
Copiar fitxers. scp funciona, però des d’OpenSSH 9 fa servir el protocol SFTP per sota i, per a còpies grans o repetides, rsync és millor perquè només envia el que ha canviat:
scp informe.pdf joan@192.168.1.50:/home/joan/
rsync -avz projecte/ joan@192.168.1.50:/home/joan/projecte/
Sessió interactiva de transferència de fitxers:
sftp joan@192.168.1.50
Tens més detalls a la comanda ssh, a la guia de scp i a la guia de sftp.
Canviar el port per defecte
Canviar el port 22 per un altre no fa el servidor més segur, però sí que redueix moltíssim el soroll dels robots que proven contrasenyes a tot Internet, i els registres queden més nets. La seguretat de debò ve de fer servir claus i desactivar les contrasenyes (ho veuràs més avall).
1. Tria el port i desa’l en un fitxer propi
A Debian, Ubuntu i Fedora, /etc/ssh/sshd_config comença amb Include /etc/ssh/sshd_config.d/*.conf. És millor posar els teus canvis en un fitxer d’aquest directori que no pas editar el fitxer principal: les actualitzacions no te’ls trepitjaran.
echo 'Port 2222' | sudo tee /etc/ssh/sshd_config.d/10-port.conf
Si vols que escolti als dos ports mentre fas la transició, pots posar dues línies Port 22 i Port 2222.
2. Comprova la configuració
Abans de reiniciar res, sshd -t valida la sintaxi. Si no diu res, és correcta:
sudo sshd -t
3. Obre el port al tallafoc
# Ubuntu/Debian amb ufw
sudo ufw allow 2222/tcp
# Rocky/Alma/Fedora amb firewalld
sudo firewall-cmd --permanent --add-port=2222/tcp
sudo firewall-cmd --reload
A les distribucions amb SELinux (RHEL, Rocky, AlmaLinux, Fedora), també li has de dir que sshd pot fer servir aquest port, o el servei no arrencarà:
sudo semanage port -a -t ssh_port_t -p tcp 2222
4. Reinicia el servei
# Debian (i Ubuntu 22.04 o anterior)
sudo systemctl restart ssh
# Rocky, Alma, RHEL, Fedora
sudo systemctl restart sshd
A Ubuntu 24.04, l’SSH s’activa per socket: és systemd qui escolta el port. Després de canviar Port, has de fer:
sudo systemctl daemon-reload
sudo systemctl restart ssh.socket
5. Prova-ho sense tancar la sessió actual
No tanquis la sessió amb què has fet els canvis. Obre un altre terminal i prova:
ssh -p 2222 joan@servidor.example.com
Si no funciona, encara tens la sessió oberta per arreglar-ho. Quan tot vagi bé, pots treure el port 22 del tallafoc.
Seguretat bàsica, per ordre d’importància
- Autenticació amb claus i no amb contrasenya: genera-les amb ssh-keygen i copia-les al servidor amb
ssh-copy-id. - Un cop les claus funcionin, desactiva les contrasenyes (
PasswordAuthentication no) i no deixis entrar root directament (PermitRootLogin no). Ho tens a la guia de sshd_config. - Bloqueja les IP que proven contrasenyes amb fail2ban.
- Mantén el sistema actualitzat: OpenSSH rep correccions de seguretat de tant en tant.
Articles relacionats
- La comanda ssh: opcions del client.
- Accés ràpid amb ~/.ssh/config: àlies per no escriure usuari, port i clau cada vegada.
- Túnels SSH: redirecció de ports i proxy SOCKS.