Une stratégie différente pourrait être de laisser PermitRootLogin
réglé sur no
pour toutes les adresses, mais autoriser un autre utilisateur à se connecter et utiliser sudo. Un avantage de cette approche est que vous pouvez limiter les privilèges de cet utilisateur avec la configuration sudo. Cela ajoute une couche de protection supplémentaire, en plus de limiter les adresses IP à partir desquelles l'utilisateur admin peut se connecter.
Dans /etc/ssh/sshd_config
, désactivez les connexions root:
PermitRootLogin no
Créez un utilisateur différent appelé, par exemple, admin
. Configurez les adresses IP autorisées dans le fichier authorized_keys de cet utilisateur, /home/admin/.ssh/authorized_keys
:
from="192.168.0.0/24,fe80::%eth0/64"
Dans cet exemple, j'ai également autorisé le trafic provenant des adresses IPv6 locales. Cela est utile si vous utilisez mDNS qui peut résoudre vers une adresse IPv6 ou si vous avez besoin d'accéder au serveur même lorsque le routage est défaillant. Notez que la partie eth0
de l'adresse va changer en fonction du nom de l'interface sur votre serveur. Utilisez ifconfig
ou ip link
pour lister les périphériques réseau valides pour votre serveur.