Sto usando la seguente versione di GNU / Linux Debian:
cat /etc/issue
dice:
Debian GNU/Linux 9
Utilizzando il seguente kernel:
uname -r
dice:
4.9.0-2-amd64
E in esecuzione la seguente versione di OpenSSH:
apt-cache policy openssh-server | grep Installed
dice:
Installed: 1:7.4p1-7
La mia intenzione è quella di indurire la sicurezza SSH di un piccolo server, dal momento che è necessario avere accesso da qualsiasi IP, anche da qualsiasi VPN.
Questi passaggi ho fatto finora:
-
Disabilitare l'accesso diretto alla directory principale:
cat /etc/ssh/sshd_config | grep PermitRootLogin
è impostato su:
PermitRootLogin no
-
Applicazione del protocollo SSH versione 2:
cat /etc/ssh/sshd_config | grep Protocol
è impostato su:
Protocol 2
-
Porta modificata a una casuale, che non scriverò qui, quindi diciamo 12345:
cat /etc/ssh/sshd_config | grep Port
è impostato su:
Port 12345
-
Ho creato un buco nel firewall per questo:
sudo iptables -A INPUT -p tcp -m tcp --dport 12345 -m comment --comment "ssh" -j ACCEPT
-
Ho generato una nuova chiave di lunghezza di 8 kilobit (sono consapevole del sovraccarico della CPU e di altri svantaggi di una chiave così grande):
ssh-keygen -t rsa -b 8192
-
Ho quindi verificato la corrispondenza delle dimensioni:
ll /home/fictional_user/.ssh/id_rsa*
è come dovrebbe essere, così come i diritti di accesso:
-rw------- 1 fictional_user fictional_group 6.3K Mar 16 11:53 /home/fictional_user/.ssh/id_rsa -rw-r--r-- 1 fictional_user fictional_group 1.4K Mar 16 11:53 /home/fictional_user/.ssh/id_rsa.pub
-
Ho aggiunto questa chiave e ho verificato che non ce n'è un'altra:
eval 'ssh-agent -s' ssh-add ssh-add -l
restituisce:
8192 SHA256:gibberish /home/fictional_user/.ssh/id_rsa (RSA) 8192 SHA256:gibberish fictional_user@fictional_computer (RSA)
-
Ho importato la chiave su due macchine, che manterranno il server:
ssh-copy-id fictional_user@public_ip -p 12345
-
In seguito, ho completamente disabilitato l'autenticazione della password:
cat /etc/ssh/sshd_config | grep PasswordAuthentication
è impostato su:
PasswordAuthentication no
Domanda: Ho dimenticato qualcosa o questo è il massimo che posso fare?