Le principal moyen de se connecter à un serveur Linux est via Protocole SSHCe type de connexion est sécurisé, car toutes les données qui y transitent sont chiffrées. à établir une connexion SSH Vous devez le configurer sur le serveur distant auquel vous souhaitez vous connecter, ainsi que sur le client côté utilisateur. Il existe de nombreux logiciels pour la connexion SSH. Sous Linux, le package OpenSSH est le plus populaire, et sous Windows, on utilise principalement PuTTY.
Examinons de plus près la configuration du serveur en utilisant Ubuntu Server 18.04 comme exemple, puis essayons de nous connecter au serveur depuis Linux et Windows.
Toutes nos actions seront effectuées à partir d'un compte utilisateur ordinaire. Dans ce cas, nous avons créé un utilisateur « mihail", et "racine« Le compte est désactivé par défaut.
Configuration côté serveur
Configurez le package en exécutant cette commande :
sudo apt install openssh-server
Une fois l'installation terminée, assurez-vous que le service est en cours d'exécution. Utilisez la commande suivante :
systemctl status sshd
Statut "Actif (en cours d'exécution)" signifie que le service est activé et fonctionne normalement.
Afin d'éviter le blocage des connexions entrantes par le pare-feu, assurez-vous de le désactiver, car nous n'allons pas configurer le pare-feu réseau dans cet article.
Utilisez cette commande :
sudo ufw disable
À ce stade, vous pouvez déjà vous connecter au serveur. Par défaut, le serveur autorise la connexion au port standard 22 avec authentification par mot de passe.
Connexion SSH depuis Linux
En règle générale, le client OpenSSH est installé par défaut sous Linux et ne nécessite aucune configuration manuelle supplémentaire. La connexion peut être établie depuis un terminal à l'aide de la commande ssh. Dans ce cas, les paramètres sont le nom d'utilisateur et l'adresse IP du serveur distant. Sur notre serveur de test, utilisé comme exemple, il n'y a qu'un seul compte « mihail », c'est donc celui-ci que nous utiliserons.
ssh [email protected]
Lors de la première connexion, vous devrez confirmer l'ajout de la clé publique du serveur à la base de données, répondez donc «ouiVous pouvez ensuite saisir le mot de passe. Si la connexion est établie, un message de bienvenue s'affichera sur la ligne de commande du serveur. Toutes les commandes seront alors exécutées directement sur le serveur distant.
SSH depuis Windows
Ouvrez Putty et définissez les paramètres de connexion. Assurez-vous que le commutateur « Type de connexion" est tourné vers SSH. Entrez l'adresse IP dans «Nom de l'hôte" champ, valeur par défaut 22 dans "Port"Et cliquez sur"Ouvrez ».
À la première connexion mastiquer vous demandera de confirmer que vous faites confiance à ce serveur, alors cliquez sur «Oui »
Après avoir entré le login et le mot de passe, vous verrez la ligne de commande du serveur distant.
Authentification par clé. Niveau de sécurité accru.
Lorsqu'un client tente d'établir une connexion sécurisée au serveur via SSH, le serveur exige une authentification (vérification) du client avant d'autoriser la connexion. Comme indiqué précédemment, l'authentification par mot de passe est généralement utilisée par défaut. Elle n'offre pas une sécurité optimale, car il existe toujours un moyen de la forcer. De plus, l'authentification par mot de passe n'est pas applicable aux connexions SSH utilisant des scripts.
Pour ce type de tâches, il existe une méthode d'authentification par clé spécifique. Le client génère des clés privées et publiques, puis la clé publique est envoyée au serveur. Ensuite, aucun mot de passe n'est requis pour se connecter au serveur, car l'authentification repose sur les clés publiques et privées du client. Pour garantir un niveau de sécurité optimal, l'accès à la clé privée doit être restreint. Comme la clé privée est stockée côté client et n'est pas transférée sur le réseau, cette méthode est considérée comme plus sûre.
Authentification par clé sous Linux
Générons les clés publiques et privées sur le client à l'aide de l'utilitaire ssh-keygen. L'outil vous proposera de modifier le chemin d'accès à la clé privée et de saisir une phrase secrète pour plus de sécurité. Conservez tous les paramètres par défaut en appuyant sur Entrée à chaque requête.
En conséquence, dans le répertoire personnel du dossier .ssh, vous trouverez deux fichiers générés : id_rsa et id_rsa.pub qui contiennent des clés privées et publiques en conséquence.
Ensuite, vous devrez envoyer la clé publique au serveur. Pour ce faire, copiez le contenu du fichier « id_rsa.pub« fichier dans »~ / .ssh / clés_autorisées» sur le serveur. Nous allons procéder de la manière la plus simple, à l'aide de «ssh-copie-id” outil. Saisissez l'identifiant et l'adresse IP du serveur, comme pour une connexion classique. Après avoir saisi le mot de passe, la clé publique du client sera automatiquement copiée sur le serveur. Exécutez la commande suivante :
ssh-copy-id [email protected]
Une fois que vous avez fait tout cela, le serveur ne nécessitera plus de saisie de mot de passe.
Authentification par clé sous Windows
Ouvrez Génération de mastic et cliquez "« Générer » Pour générer les clés, il vous suffit de déplacer votre souris sur l'écran et l'outil générera aléatoirement les clés.
Une fois les clés générées, cliquez sur «Enregistrer la clé privée» et enregistrez-le dans le fichier contenant la clé privée sur votre disque. Vous pouvez définir le chemin de votre choix, mais vous devrez le spécifier ultérieurement dans Putty. Copiez ensuite la clé publique en haut de la fenêtre.
Envoyons la clé publique en la copiant simplement dans le terminal. Ouvrir mastiquer et connectez-vous au serveur comme d'habitude. Créons maintenant «.ssh/authorized_keys" et restreindre l'accès des autres utilisateurs au fichier, afin qu'il ne soit disponible que pour le créateur.
mkdir .ssh
touch .ssh/authorized_keys
chmod 700 .ssh
chmod 600 .ssh/authorized_keys
Après avoir créé le fichier, placez-y la clé publique du client. À l'étape précédente, nous avons copié la clé publique dans le presse-papiers. Pour enregistrer le contenu du presse-papiers dans le fichier, utilisez la commande cat et la redirection de sortie.
cat > .ssh/authorized_keys
Après avoir saisi la commande, faites un clic droit dans le terminal et collez le contenu du presse-papiers. Pour confirmer la saisie, appuyez sur « Ctrl + D" raccourci et déconnecter du serveur.
Spécifions maintenant le chemin vers la clé privée dans Putty et connectons-nous à nouveau au serveur.
Désormais, pour vous connecter au serveur, il vous suffira de saisir votre nom d'utilisateur. Si vous tentez de vous connecter au serveur depuis un autre appareil ne disposant pas de la clé privée appropriée, le serveur vous demandera un mot de passe. Une fois l'authentification par clé configurée, vous pourrez interdire l'accès par mot de passe.