SSH login con certificato e un hardening leggero
Un altro promemoria dedicato questo alla configurazione del server ssh (sshd), un hardening “leggero” per il login tramite certificato evitando la password.
Cominciamo con la creazione della coppia di chiavi:
ssh-keygen -t rsa -b 4098
Enter file in which to save the key (/home/utente/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Una volta che abbiamo risposto alle domande non ci resta che caricare la chiave pubblica in ~/.ssh/authorized_keys
sulla macchina remota che deve ricevere la connessione, quella che si comporterà da server, quindi digitiamo:
ssh-copy-id nome_utente@indirizzo_ip
Se tutto è andato a buon fine possiamo connetterci al server senza inserire la password di login, dobbiamo però inserire sempre la passphrase del certificato (se l’abbiamo inserita) e può diventare scomodo nel caso si debba automatizzare le connessioni con degli script magari.
Fortunatamente ssh-agent ci viene in aiuto memorizzando la passphrase temporaneamente, con ssh-add
Passiamo ora alla modifica del file di configurazione del demone ssh:
sudo nano /etc/ssh/sshd_config
Modifichiamo la porta di default in ascolto, per esempio da 22 a 2002 (assicuratevi che non sia già utilizzata da altri programmi). Abilitare l’autenticazione tramite certificato e disabilitare il login di root. E’ possibile anche disattivare il login tramite password, ma c’è il rischio che se ci si deve connettere da una postazione in cui non è presente il nostro certificato verremo tagliati fuori. Sta a voi sapere l’utilizzo che ne andrete a fare!
Ora che abbiamo modificato il file, salviamo e riavviamo il servizio con:
sudo service ssh restart
Un altro utilizzo di ssh oltre che per la manutenzione remota, è la possibilità di poter forwardare (redirigere/inoltrare) le connessioni, creando dei tunnel sicuri su cui inoltrare i nostri pacchetti, è più o meno come creare una vpn.
Vi lascio questo link è un talk su ssh, si intitola The Black Magic Of SSH / SSH Can Do That? il titolo è abbastanza esplicativo e non c’è altro da aggiungere!
Daje!
Tags: certificati ssh, secureshell, ssh, ssh ardening, ssh-keygen, sshd