GNU/Linux >> Tutoriels Linux >  >> Linux

Utilisation de la commande SSH dans les systèmes Linux/Unix

Tout utilisateur Linux soucieux de la sécurité utilisera toujours le protocole SSH lors de la connexion aux serveurs. En effet, SSH est un protocole sécurisé qui crypte les données ou les informations envoyées sur le réseau. SSH a remplacé des protocoles plus anciens et non sécurisés dans les années 90 tels que telnet et rlogin. Dans ce guide, nous examinons l'utilisation de la commande SSH avec des exemples.

Par défaut, SSH s'exécute sur le port TCP/IP 22

Vérifier si le service SSH est en cours d'exécution sur un système Linux

Si vous êtes actuellement connecté à un système Linux et que vous souhaitez vérifier si SSH est en cours d'exécution, exécutez la commande

# systemctl status sshd

Exemple de sortie

De plus, vous pouvez vérifier que ssh écoute sur le port 22 de votre serveur en utilisant le netstat commande comme indiqué

# netstat -pnltu

Exemple de sortie

Les deux techniques ont confirmé que le protocole SSH s'exécute sur le port 22.

Se connecter à un système distant à l'aide de SSH

Pour vous connecter à un système distant en tant qu'utilisateur root à partir d'une machine Linux, utilisez la syntaxe ci-dessous :

# ssh root@host-ip-address 

Par exemple, je vais me connecter à un PC Debian distant IP 173.82.208.144

# ssh [email protected]

Si vous vous connectez pour la première fois, vous verrez l'invite suivante

Tapez yes pour ajouter le serveur à la liste des known_hosts situé dans ~/.ssh/known_hosts

Chaque serveur se compose d'une clé d'hôte qui est une clé cryptographique. Cette clé est utilisée pour authentifier les systèmes utilisant le protocole SSH.

Ensuite, vous serez invité à entrer le mot de passe du système distant. Fournissez le mot de passe et appuyez sur "ENTRER" pour vous connecter au système.

Se connecter à un système en tant qu'utilisateur normal

Parfois, vous souhaiterez peut-être vous connecter à un système distant à l'aide d'un compte d'utilisateur normal si la connexion root à distance est désactivée. pour cela, suivez la syntaxe ci-dessous

# ssh username@host-ip-address

OU

# ssh -l username host-ip-address

Pour vous connecter en tant qu'utilisateur « john » résidant sur le système Debian distant, exécutez la commande

# ssh [email protected] 

Exemple de sortie

Vous pouvez obtenir la même chose en utilisant la commande ci-dessous.

# ssh -l john 173.82.208.144

Exemple de sortie

Configuration de l'authentification sans mot de passe

Parfois, vous pouvez constamment avoir besoin d'accéder à vos systèmes distants ou vous pouvez avoir des services qui peuvent avoir besoin d'accéder à ces systèmes. L'authentification par mot de passe peut entraîner une perte de temps ou entraver l'accès aux applications automatisées qui nécessitent un accès aux systèmes distants. Pour cette raison, il est pratique de configurer une authentification SSH sans mot de passe sur vos serveurs distants.

Étape 1 :Générer des clés SSH

La première étape consistera à générer des clés SSH sur le serveur à l'aide de la commande :

# ssh-keygen

Exemple de sortie


lorsque vous y êtes invité à chaque étape, appuyez simplement sur "ENTRER" pour conserver les valeurs par défaut

La clé publique – id_rsa.pub – est enregistré dans ~/.ssh/ répertoire

Étape 2 :copier la clé publique SSH sur le client distant

L'étape suivante consistera à copier la clé publique générée sur le système client distant. Pour ce faire, nous utiliserons le ssh-copy-id commande . La commande copie la clé SSH sur le client distant en tant que clé autorisée. Cela permet des connexions automatisées ultérieures sans mot de passe.

# ssh-copy-id -i ~/.ssh/id_rsa.pub [email protected]

Exemple de sortie

Vous pouvez maintenant vous connecter de manière transparente au système Debian distant sans être invité à entrer un mot de passe

Exemple de sortie

La clé publique est enregistrée dans le système client dans le ~/.ssh/authorized_keys fichier.

QUELQUES POINTS À NOTER

  1. Les clients SSH stockent les clés d'hôte des systèmes auxquels ils sont connectés. Ces clés sont appelées known host keys et sont stockés dans le ~/.ssh/ répertoire.
  2. Les clés privées – id_rsa ne doit être accessible qu'à l'utilisateur root et ne doit pas être copié sur un système. En cas de fuite vers un autre tiers, cela peut entraîner des attaques de type "man-in-the-middle" où les systèmes clients peuvent être compromis par des pirates.

Linux
  1. Commande Linux Cat :utilisation et exemples

  2. La commande Linux AWK - Exemples de syntaxe d'utilisation Linux et Unix

  3. Administration Linux en masse/à distance ?

  4. Commande Linux df

  5. Passer des variables dans la commande ssh distante

Commande mkdir sous Linux/Unix

Commande Grep sous Linux/UNIX

Commande ls sous Linux/UNIX

commande cp sous Linux/UNIX

Rechercher la commande sous Linux/UNIX

Utilisation de la commande Telnet sous Linux/Unix