Pour désactiver l'accès racine SSH, vous devez modifier le fichier de configuration SSH, sur Debian il est / etc / ssh / sshd_config
, Pour le modifier à l'aide de Nano Text Editor Run:
nano / etc / ssh / sshd_config
Sur Nano, vous pouvez appuyer Ctrl + w (où) et tapez Pertinent Pour trouver la ligne suivante:
#Permitrootlogin prohibit-password
Pour désactiver l'accès root via SSH, il suffit de décommenter cette ligne et de remplacer interdiction de mot de passe pour Non Comme dans l'image suivante.
Après avoir désactivé la presse à accès racine Ctrl + x et Y Pour économiser et sortir.
Le interdiction de mot de passe L'option empêche la connexion du mot de passe en autorisant uniquement la connexion grâce à des actions de rechange telles que les clés publiques, empêchant les attaques de force brute.
Alternatives pour sécuriser votre accès SSH
Restreindre l'accès à l'authentification des clés publiques:
Pour désactiver la connexion du mot de passe, permettant uniquement à la connexion à l'aide d'une clé publique, ouvrez le / etc / ssh / ssh_config
Fichier de configuration à nouveau en exécutant:
nano / etc / ssh / sshd_config
Pour désactiver la connexion du mot de passe, permettant uniquement à la connexion à l'aide d'une clé publique, ouvrez le / etc / ssh / ssh_config Fichier de configuration à nouveau en exécutant:
nano / etc / ssh / sshd_config
Trouvez la ligne contenant Pubkeyauthentification et assurez-vous que cela dit Oui Comme dans l'exemple ci-dessous:
Assurez-vous que l'authentification du mot de passe est désactivée en trouvant la ligne contenant PasswordAuthentication, Si vous l'avez commenté et assurez-vous qu'il est défini comme Non Comme dans l'image suivante:
Puis appuyez Ctrl + x et Y Pour enregistrer et quitter Nano Text Editor.
Maintenant, en tant qu'utilisateur que vous souhaitez autoriser l'accès à SSH via, vous devez générer des paires de clés privées et publiques. Courir:
ssh-keygen
Répondez à la séquence de questions en laissant la première réponse à la valeur par défaut en appuyant sur Entrée, définissez votre phrase de passe, répétez-la et les touches seront stockées à ~ /.ssh / id_rsa
Génération de paires de clés RSA publiques / privées.
Entrez le fichier dans lequel enregistrer la clé (/ root /.ssh / id_rsa):
Entrez en phrase de passe (vide pour aucune phrase de passe):Entrez à nouveau la même phrase de passe:
Votre identification a été enregistrée dans / root /.ssh / id_rsa.
Votre clé publique a été enregistrée dans / root /.ssh / id_rsa.pub.
L'empreinte clés est:
Sha256: 34 + uxvi4d3ik6ryoatdkt6raifclvlyzudrljwfbvgo root @ linuxhint
L'image au hasard de la clé est:
+---[RSA 2048]----+
Pour transférer les paires clés que vous venez de créer, vous pouvez utiliser le ssh-copy-id commande avec la syntaxe suivante:
ssh-copy-id@
Modifiez le port SSH par défaut:
Ouvrir le / etc / ssh / ssh_config Fichier de configuration à nouveau en exécutant:
nano / etc / ssh / sshd_config
Disons que vous souhaitez utiliser le port 7645 au lieu du port par défaut 22. Ajoutez une ligne comme dans l'exemple ci-dessous:
Port 7645
Puis appuyez Ctrl + x et Y Pour économiser et sortir.
Redémarrez le service SSH en fonctionnant:
Service SSHD Redémarrer
Ensuite, vous devez configurer les iptables pour permettre la communication via le port 7645:
iptables -t nat -a pré -out -p tcp --dport 22 -j redirection --to-port 7645
Vous pouvez également utiliser UFW (pare-feu simple):
UFW autorise 7645 / TCP
Filtrer le port SSH
Vous pouvez également définir des règles pour accepter ou rejeter les connexions SSH en fonction de paramètres spécifiques. La syntaxe suivante montre comment accepter les connexions SSH à partir d'une adresse IP spécifique à l'aide d'iPtables:
iptables -a entrée -p TCP --DPPORT 22 --Source-J accepter
iptables -a entrée -p tcp --dport 22 -j drop
La première ligne de l'exemple ci-dessus demande aux iptables d'accepter les demandes TCP entrantes (entrées) au port 22 à partir de l'IP 192.168.1.2. La deuxième ligne demande aux tables IP de déposer toutes les connexions au port 22. Vous pouvez également filtrer la source par adresse MAC comme dans l'exemple ci-dessous:
iptables -i entrée -p tcp --dport 22 -m mac ! --mac-source 02: 42: df: a0: d3: 8f
-J Rejet
L'exemple ci-dessus rejette toutes les connexions à l'exception de l'appareil avec l'adresse MAC 02: 42: DF: A0: D3: 8F.
Utilisation de wrappers TCP pour filtrer SSH
Une autre façon de les adresses IP de liste blanche pour se connecter via SSH tout en rejetant le reste est en modifiant les hôtes des répertoires.nier et hôte.Autoriser situé dans / etc.
Pour rejeter tous les hôtes exécutés:
nano / etc / hôtes.refuser
Ajouter une dernière ligne:
sshd: tout
Appuyez sur Ctrl + X et Y pour enregistrer et quitter. Maintenant, pour autoriser des hôtes spécifiques via SSH, modifiez le fichier / etc / hôtes.Autoriser, pour le modifier:
nano / etc / hôtes.permettre
Ajouter une ligne contenant:
SSHD:
Appuyez sur Ctrl + X pour enregistrer et quitter Nano.
Désactiver le service SSH
De nombreux utilisateurs domestiques considèrent SSH inutile, si vous ne l'utilisez pas du tout, vous pouvez le supprimer ou si vous pouvez bloquer ou filtrer le port.
Sur Debian Linux ou des systèmes basés comme Ubuntu, vous pouvez supprimer des services à l'aide du gestionnaire de packages APT.
Pour supprimer l'exécution du service SSH:
apt supprimer ssh
Et c'est tout une question de mesures domestiques pour assurer la sécurité de SSH.
J'espère que vous avez trouvé ce tutoriel utile, continuez à suivre Linuxhint pour plus de conseils et de tutoriels sur Linux et le réseautage.