Jannah Theme License is not validated, Go to the theme options page to validate the license, You need a single license for each domain name.
Linux

Serveur SSH sécurisé dans Ubuntu 14.04

SSH (Secure Socket Shell) est une interface de ligne de commande et un protocole permettant d’accéder en toute sécurité à un serveur Linux distant. Il fournit une communication sécurisée et cryptée sur un réseau et permet l’échange de données sur un canal sécurisé entre deux serveurs. Il est largement utilisé par les administrateurs système pour contrôler le Web et d’autres types de serveurs à distance. Dans cet article, nous allons vous montrer comment sécuriser votre serveur SSH.

Noter: ce tutoriel suppose que le serveur SSH exécute Ubuntu 14.04 et que la machine cliente est un Linux.

Contenu

Pour commencer – installer SSH

Tout d’abord, vous devez mettre à jour votre système et installer les packages nécessaires sur votre système.

Pour mettre à jour le système et installer le serveur SSH sur la machine serveur, exécutez la commande suivante :

Pour installer le client SSH sur la machine cliente, exécutez la commande suivante :

Configurer SSH pour une connexion sans mot de passe

Il existe deux méthodes différentes de connexion à un serveur SSH : l’une est l’authentification par mot de passe et l’autre est l’authentification par clé. L’authentification par mot de passe est une méthode très basique qui est facile à utiliser et à craquer. L’utilisation de l’authentification par mot de passe est très peu sûre, surtout si votre utilisateur utilise un mot de passe faible. D’autre part, les clés SSH offrent un moyen simple et sécurisé de se connecter à un serveur distant, et cette méthode est recommandée pour tous les utilisateurs.

Sur votre machine cliente, générez des clés SSH avec la commande suivante :

Appuyez simplement sur la touche Entrée à chaque invite. Cela produit deux fichiers : id_rsa.pub (clé publique) et id_rsa (clé privée).

Cela produira quelque chose qui ressemble à ce qui suit :

Sur votre serveur, créez le dossier suivant (s’il n’existe pas) :

De retour sur votre machine cliente, copiez le fichier « id_rsa.pub » sur votre serveur à l’aide de la commande suivante :

Remplacez « votreport » par le numéro de port utilisé par votre serveur SSH (la valeur par défaut est 22) et « serverip » par l’adresse IP du serveur.

Sur votre machine serveur, modifiez le nom de fichier et les autorisations de configuration.

Pour tester si la méthode d’authentification par clé fonctionne, essayez de vous connecter à votre serveur SSH depuis la machine cliente :

Psssssst :  Comment effectuer des recherches de fichiers complètes sous Linux

Si vous parvenez à vous connecter sans saisir de mot de passe, la méthode d’authentification par clé fonctionne.

Fichier de configuration SSH sécurisé

Le fichier « /etc/ssh/sshd_config » est le fichier de configuration à l’échelle du système pour SSH qui vous permet de définir différentes options pour améliorer la sécurité d’un serveur SSH. La configuration par défaut dans le fichier de configuration est très peu sécurisée, vous devez donc d’abord la modifier et définir les options appropriées pour améliorer la sécurité.

Pour éditer le fichier « /etc/ssh/sshd_config », exécutez

Changer le port d’écoute SSH

Par défaut, SSH écoute sur le port 22. Les attaquants utilisent des scanners de ports pour voir si un service SSH est en cours d’exécution ou non. Il est recommandé de changer le port par défaut.

Pour changer le port par défaut en 2200, modifiez :

à

secure-ssh-change-port-number

Utiliser uniquement le protocole 2

La version 1 du protocole contient des failles de sécurité. Le protocole 2 est l’entrée par défaut sur Ubuntu.

Modifiez la ligne ci-dessous :

Limiter l’accès des utilisateurs

Il est nécessaire d’autoriser uniquement des utilisateurs spécifiques à se connecter à SSH. Cela peut améliorer votre sécurité. Par défaut, cette option n’est pas disponible dans le fichier de configuration SSH.

Pour autoriser « user1 » et « user2 », ajoutez la ligne suivante :

Pour refuser « baduser1 » et « baduser2 », ajoutez la ligne suivante :

Désactiver la connexion root

Il n’est pas nécessaire de se connecter en tant que root via ssh sur un réseau. Les utilisateurs normaux peuvent également utiliser su ou sudo pour obtenir un accès au niveau racine. La plupart des attaquants essaieront d’utiliser l’utilisateur root pour se connecter. C’est un gros risque de sécurité, il est donc recommandé de refuser la connexion root.

Pour désactiver la connexion root, modifiez la ligne

à

Psssssst :  Quelle est la barre des tâches proposée avec Ubuntu ?

secure-ssh-permit-root

Masquer la dernière connexion

Vous pouvez masquer qui s’est connecté en dernier lorsqu’un utilisateur se connecte.

Pour cela, changez de ligne

à

Secure-ssh-last-log

Restreindre l’interface pour se connecter

Par défaut, ssh écoutera sur toutes les interfaces réseau. Si vous souhaitez autoriser l’acceptation d’une connexion SSH à partir d’adresses IP spécifiques, vous pouvez modifier la ligne

à

adresse-d'écoute-ssh-sécurisée

Désactiver l’authentification par mot de passe

L’utilisation de l’authentification par mot de passe est un gros risque de sécurité si votre utilisateur utilise un mot de passe faible. Il est recommandé d’utiliser des « clés ssh ». Une « clé ssh » peut contenir plus de 600 caractères aléatoires et être difficile à casser.

Pour cela, changez de ligne

à

authentification-ssh-password-sécurisée

Désactiver les fichiers .rhosts

Les fichiers .rhosts spécifient quels utilisateurs peuvent accéder aux commandes r (rsh, rcp, rlogin, etc.) sur la machine locale sans mot de passe. Par défaut, un fichier .rhosts est désactivé ; sinon, modifiez les lignes comme indiqué ci-dessous.

Désactiver l’authentification basée sur l’hôte

L’authentification basée sur l’hôte de SSH est plus sécurisée que l’authentification .rhosts. Cependant, il n’est pas recommandé que les hôtes se fassent mutuellement confiance. Par défaut, cette option est désactivée.

Sinon, modifiez la ligne ci-dessous.

Définir un délai de grâce de connexion

Le « LoginGraceTime » spécifie combien de temps après une demande de connexion le serveur attendra avant de se déconnecter. Il est recommandé de le réduire à 60 secondes.

Pour cela, changez de ligne

à

Secure-ssh-login-gracetime

Définir le nombre maximal de connexions de démarrage

La configuration d’un nombre maximal approprié de connexions simultanées au démon SSH peut être utile contre une attaque par force brute.

Pour cela, changez de ligne

à

démarrage-ssh-max-sécurisé

Désactiver le transfert

La technique de redirection de port est utilisée par les attaquants pour tunneler les connexions réseau via une session SSH pour se connecter aux systèmes. Il est recommandé de désactiver cette option.

Pour cela, changez de ligne

à

transfert sécurisé-ssh-x11

Connectez-vous plus d’informations

Par défaut, SSH enregistre tout. Si vous souhaitez enregistrer plus d’informations comme les tentatives de connexion infructueuses. vous pouvez changer la valeur de ceci en « VERBOSE ».

Pour cela, changez de ligne

à

niveau-de-log-ssh sécurisé

Désactiver les mots de passe vides

Il est nécessaire de refuser les utilisateurs avec des mots de passe vides sur votre serveur. Par défaut, PermitEmptyPasswords est désactivé dans Ubuntu.

Psssssst :  Comment accéder au partage NFS sous Linux ?

Sinon, modifiez la ligne ci-dessous.

Définir l’intervalle de délai d’inactivité

Par défaut, cette option n’est pas disponible dans le fichier de configuration par défaut SSH. Il est recommandé de définir un délai d’inactivité approprié pour éviter une session ssh sans surveillance.

Pour cela, ajoutez les lignes suivantes.

Mode strict

Cela empêchera l’utilisation de répertoires personnels et d’autorisations de fichiers clés non sécurisés. Par défaut, cette option est activée.

Sinon, modifiez la ligne suivante.

Maintenant, enregistrez et quittez le fichier /etc/ssh/sshd_config et redémarrez le serveur SSH.

SSH sécurisé à l’aide de wrappers TCP

Un wrapper TCP fournit un contrôle d’accès basé sur l’hôte aux services réseau utilisés pour filtrer l’accès réseau à Internet. Modifiez votre fichier « /etc/hosts.allow » pour autoriser SSH uniquement à partir de 192.168.1.2 et 172.16.23.12.

Ajoutez la ligne suivante :

SSH sécurisé avec iptables

Par défaut, un serveur SSH ne doit accepter que les connexions de votre réseau local ou d’autres sites distants. Il est recommandé de n’autoriser que des adresses IP spécifiques à accéder à SSH et de bloquer l’accès à SSH aux adresses IP non autorisées.

Pour autoriser les connexions SSH uniquement à partir de 192.168.1.2, exécutez la commande suivante :

Désactivez la connexion SSH à partir de tous les autres hôtes en exécutant la commande suivante :

Enregistrez maintenant vos nouvelles règles à l’aide de la commande suivante :

Conclusion

Les instructions ci-dessus sont des techniques très puissantes pour sécuriser votre serveur SSH. Cet article couvre toutes les informations dont la plupart des utilisateurs auront besoin pour un serveur SSH. Si vous avez des questions, n’hésitez pas à commenter ci-dessous.

Référence : SSH ubuntu

Cet article est-il utile ? Oui Non

Bouton retour en haut de la page

Adblock détecté

Veuillez désactiver votre bloqueur de publicités pour pouvoir visualiser le contenu de la page. Pour un site indépendant avec du contenu gratuit, c’est une question de vie ou de mort d’avoir de la publicité. Merci de votre compréhension! Merci