Maison > Article > Tutoriel système > Gérez à distance les serveurs Linux, commencez par SSH
Les serveurs Linux nécessitent souvent une gestion à distance pendant l'exploitation et la maintenance. SSH est l'un des outils de gestion à distance les plus couramment utilisés. Il permet aux administrateurs de se connecter à distance aux serveurs Linux, d'exécuter des commandes et de manipuler des fichiers. Dans cet article, nous expliquerons comment utiliser SSH pour vous connecter à un serveur Linux et partagerons quelques conseils pratiques pour SSH.
En tant qu'administrateur système, vous envisagez d'utiliser OpenSSH sous Linux pour automatiser les tâches quotidiennes, telles que les transferts de fichiers, la sauvegarde des fichiers de sauvegarde de la base de données sur un autre serveur, etc. Pour y parvenir, vous devez pouvoir vous connecter automatiquement à l'hôte B à partir de l'hôte A. La connexion automatique signifie utiliser ssh dans un script shell sans saisir de mot de passe.
Cet article vous expliquera comment configurer une connexion SSH sans mot de passe sur CentOS/RHEL. Une fois la connexion automatique configurée, vous pouvez l'utiliser pour déplacer des fichiers à l'aide de SSH (Secure Shell) et Secure Copy (SCP).
SSH est open source et constitue le protocole réseau le plus fiable pour la connexion à distance. Les administrateurs système l'utilisent pour exécuter des commandes et transférer des fichiers vers un autre ordinateur via le réseau via le protocole SCP.
En configurant la connexion SSH sans mot de passe, vous pouvez profiter des commodités suivantes :
◆Utilisez des scripts pour automatiser le travail quotidien.
◆Sécurité améliorée du serveur Linux. Il s'agit d'un moyen recommandé pour protéger votre serveur privé virtuel (VPS) contre les attaques par force brute, car les clés SSH sont presque incassables par la seule force brute.
Qu'est-ce que Ssh-Keygen
ssh-keygen est un outil utilisé pour générer, créer et gérer des clés publiques et privées pour l'authentification SSH. Grâce à la commande ssh-keygen, les utilisateurs peuvent créer des clés prenant en charge les protocoles SSH1 et SSH2. ssh-keygen crée des clés RSA pour le protocole SSH1, qui peuvent être RSA ou DSA pour SSH2.
Qu'est-ce que Ssh-Copy-Id
ssh-copy-id est une commande de script utilisée pour copier la clé publique locale dans le fichier approved_keys distant. Elle ajoutera également le fichier d'identité au fichier ~/.ssh/authorized_keys de la machine distante et le fournira à l'utilisateur de. l'hôte distant. Autorisations appropriées pour le répertoire personnel.
Clé SSH
Les clés SSH fournissent un mécanisme meilleur et sécurisé pour se connecter aux serveurs Linux. Après avoir exécuté ssh-keygen, une paire de clés publique et privée sera générée. Vous pouvez placer la clé publique sur n'importe quel serveur et l'utiliser pour déverrouiller lors de la connexion au serveur à partir d'un client détenant la clé privée. Lorsque les deux correspondent, le système peut être déverrouillé sans mot de passe.
Configurez la connexion SSH sans mot de passe sur CentOS et RHEL
Les étapes suivantes ont été testées sur CentOS 5/6/7, RHEL 5/6/7 et Oracle Linux 6/7.
Nœud 1 : 192.168.0.9 Nœud 2 : 192.168.0.10
Structure des répertoires de ce chapitre
Testez la connexion et l'accès du nœud 1 au nœud 2 :
[root@node1 ~]# ssh root@192.168.0.10 The authenticity of host '192.168.0.10 (192.168.0.10)' can't be established. RSA key fingerprint is 6d:8f:63:9b:3b:63:e1:72:b3:06:a4:e4:f4:37:21:42. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added '192.168.0.10' (RSA) to the list of known hosts. root@192.168.0.10's password: Last login: Thu Dec 10 22:04:55 2015 from 192.168.0.1 [root@node2 ~]#
Utilisez la commande ssh-key-gen pour générer des clés publiques et privées. Notez ici que la clé privée peut être cryptée pour améliorer la sécurité.
[root@node1 ~]# ssh-keygen Generating public/private rsa key pair. Enter file in which to save the key (/root/.ssh/id_rsa): Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /root/.ssh/id_rsa. Your public key has been saved in /root/.ssh/id_rsa.pub. The key fingerprint is: b4:51:7e:1e:52:61:cd:fb:b2:98:4b:ad:a1:8b:31:6d root@node1.ehowstuff.local The key's randomart image is: +--[ RSA 2048]----+ | . ++ | | o o o | | o o o . | | . o + .. | | S . . | | . .. .| | o E oo.o | | = ooo. | | . o.o. | +-----------------+
Utilisez la commande ssh-copy-id pour copier ou télécharger la clé publique sur l'hôte distant et ajoutez le fichier d'identité à ~/.ssh/authorized_keys sur le nœud 2 :
[root@node1 ~]# ssh-copy-id -i ~/.ssh/id_rsa.pub 192.168.0.10 root@192.168.0.10's password: Now try logging into the machine, with "ssh '192.168.0.10'", and check in: .ssh/authorized_keys to make sure we haven't added extra keys that you weren't expecting.
Vérification du nœud de connexion SSH sans mot de passe 2 :
[root@node1 ~]# ssh root@192.168.0.10 Last login: Sun Dec 13 14:03:20 2015 from www.ehowstuff.local
Pour résumer, SSH est un outil de gestion à distance très important dans les systèmes Linux. Il peut fournir une méthode d'accès à distance sûre et efficace. Lorsque vous utilisez SSH, veillez à renforcer les mesures de sécurité, telles que l'utilisation de l'authentification par clé publique et à la définition de paramètres de configuration raisonnables. Dans le même temps, nous avons également partagé quelques conseils pratiques SSH, tels que l'utilisation de proxys, le transfert de ports, etc., qui peuvent nous aider à mieux gérer les serveurs Linux. Je pense que ce contenu sera utile au personnel d'exploitation et de maintenance de Linux.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!