Aumentare la sicurezza di SSH
Il presente articolo è stato tradotto tramite un software di traduzione automatica. È possibile visualizzare l'origine articolo qui.
Ogniqualvolta ciò sia possibile, è consigliabile modificare gli identificatori predefiniti e le porte di default dei servizi critici.
Per quanto riguarda SSH, qui vediamo alcuni elementi che rafforzeranno la sicurezza di questo servizio.
Nell'ambito della redazione di questo articolo, siamo basati su un tipo di distribuzione Debian Jessie. In seguito sul vostro server, la configurazione potrebbe essere necessario cambiare. Deve, pertanto, adattarsi alle vostre esigenze.
Per impostazione predefinita, per conne tersi in SSH, è necessario stabilire una connessione sulla porta 22. Modificare questa porta già può prevenire molti attacchi di forza bruta.
Se si desidera utilizzare SSH su una porta diversa da quella predefinita, sarà necessario modificare Porta a 22 da Port 55555 nel file /etc/ssh/sshd_config.
Al fine di rendere gli attacchi brute-force molto meno efficace, è inoltre possibile disattivare la connessione SSH attraverso l'account di root. Avrà pertanto un utente diverso dall'account predefinito e procedere alla elevazione dei privilegi da questo account per avere diritti di amministratore.
Passeremo quindi l'opzione connesso di PermitRootLogin sì à PermitRootLogin no. e dichiarare gli utenti autorizzati a connettersi. Per consentire all'utente ikoula quindi aggiungere la seguente riga nel file di configurazione per connetterti in SSH, : AllowUsers ikoula
Se oltre due minuti le informazioni di connessione non sono grippate durante una connessione SSH al server, la connessione è tagliata fuori.
Questo periodo può essere regolato verso il basso (seguendo la latenza e la stabilità della tua connessione, naturalmente ).
Trenta secondi può essere sufficienti. Per modificare questo valore, modificheremo il da ametro LoginGraceTime.
Ora modifichiamo la riga LoginGraceTime 120 par LoginGraceTime 30 nel file /etc/ssh/sshd_config.
Ora noi modificheremo gli algoritmi utilizzati da SSH per limitare l'utilizzo di alcuni aggiungendo due righe aggiuntive nel file di configurazione del servizio SSH :
echo "Ciphers aes256-ctr,aes192-ctr,aes128-ctr" >> /etc/ssh/sshd_config
echo "MACs hmac-ripemd160" >> /etc/ssh/sshd_config
Debian di default aggiunge sempre una stringa di caratteri per il banner SSH. Per dirla semplicemente, se fare un telnet al server (Telnet IP_SERVER 22), qui è che cosa ottenete :
SSH-2.0-OpenSSH_6.7p1 Debian-5+deb8u2
Quindi cerchiamo di disattivare questo comportamento per non visualizzare il nome della nostra distribuzione :
echo "DebianBanner no" >> /etc/ssh/sshd_config
Ora, Let's get questo :
SSH-2.0-OpenSSH_6.7p1
Le modifiche sono complete, abbiamo verrà riavviato il servizio essere efficaci le modifiche :
systemctl restart ssh.service
Si noti che è anche possibile impostare l'indirizzo IP per le restrizioni di servizio SSH (Se il server non è già un firewall ad esempio o le regole di iptables non è necessario già ).
Noi pertanto vietare connessioni SSH a tutti e mettere un'eccezione per i nostri indirizzi IP :
echo "sshd: ALL" >> /etc/hosts.deny
echo "sshd: 12.34.56.78, 98.76.54.32" >> /etc/hosts.allow
Così, solo gli indirizzi IP 12.34.56.78 et 98.76.54.32 sarà consentito connettersi al server SSH voto (Sostituire con il corso di appropriato indirizzo IP ).
In alternativa, è possibile implementare l'autenticazione tramite lo scambio di chiavi, se lo si desidera.
Attivare l'aggiornamento automatico dei commenti