Recherche…


Introduction

Un shell sécurisé est utilisé pour accéder à distance à un serveur depuis un client via une connexion chiffrée. OpenSSH est utilisé comme alternative aux connexions Telnet qui permettent d'accéder à un shell distant mais qui ne sont pas cryptées. Le client OpenSSH est installé par défaut sur la plupart des distributions GNU / Linux et est utilisé pour se connecter à un serveur. Ces exemples montrent comment utiliser la suite SSH pour accepter les connexions SSH et se connecter à un autre hôte.

Connexion à un serveur distant

Pour vous connecter à un serveur, nous devons utiliser SSH sur le client comme suit,

# ssh -p port user@server-address
  • port - Le port ssh d'écoute du serveur (port 22 par défaut).
  • user - Doit être un utilisateur existant sur le serveur avec des privilèges SSH.
  • adresse du serveur - IP / domaine du serveur.

Pour un exemple concret, supposons que vous créez un site Web. La société que vous avez choisie pour héberger votre site vous indique que le serveur se trouve sur web-servers.com sur un port personnalisé en 2020 et que le nom de votre compte usr1 a été choisi pour créer un utilisateur sur le serveur avec des privilèges SSH. Dans ce cas, la commande SSH utilisée serait en tant que telle

# ssh -p 2020 [email protected]

Si le nom de compte sur le système distant est le même que celui du client local, vous pouvez laisser le nom d'utilisateur désactivé. Donc, si vous êtes usr1 sur les deux systèmes, vous pouvez simplement utiliser web-servers.com au lieu de [email protected] .

Lorsqu'un serveur auquel vous souhaitez vous connecter n'est pas directement accessible, vous pouvez essayer d'utiliser le commutateur ProxyJump via un autre serveur accessible et pouvant se connecter au serveur souhaité.

# ssh -J [email protected]:2020 [email protected] -p 2222

Cela vous permettra de vous connecter au serveur 10.0.0.2 (exécutant ssh sur le port 2222) via le serveur 10.0.0.1 (exécutant ssh sur le port 2020). Vous devrez bien sûr avoir des comptes sur les deux serveurs. Notez également que le commutateur -J est introduit dans OpenSSH version 7.3.

Installation de la suite OpenSSH

La connexion à un serveur de suppression SSH et l'acceptation de connexions SSH nécessitent l'installation de openssh

Debian:

# apt-get install openssh

Arch Linux:

# pacman -S openssh

Miam:

# yum install openssh

Générer une clé publique et privée

Pour générer des clés pour le client SSH:

ssh-keygen [-t rsa | rsa1 | dsa ] [-C <comment>] [-b bits]

Par exemple:

ssh-keygen -t rsa -b 4096 - C [email protected]

L'emplacement par défaut est ~/.ssh/id_rsa pour private et ~/.ssh/id_rsa.pub pour la clé publique.

Pour plus d'informations, rendez- vous sur man.openbsd.org

Configuration d'un serveur SSH pour accepter des connexions

Nous devons d'abord éditer le fichier de configuration du démon SSH. Bien que sous différentes distributions Linux, cela puisse se trouver dans des répertoires différents, il est généralement stocké sous /etc/ssh/sshd_config

Utilisez votre éditeur de texte pour modifier les valeurs définies dans ce fichier, toutes les lignes commençant par # sont commentées et ce caractère doit être supprimé pour prendre tout effet. Une liste de recommandations suit en tant que telle.

Port (chose a number between 0 - 65535, normaly greater than four digits)
PasswordAuthentication yes
AllowUsers    user1 user2 ...etc

Notez qu'il est préférable de désactiver les connexions par mot de passe toutes ensemble et d'utiliser les clés SSH pour améliorer la sécurité, comme expliqué dans ce document.

Désactiver le service ssh

Cela désactivera le service côté serveur SSH, comme si cela était nécessaire, cela garantira que les clients ne peuvent pas se connecter via ssh

Ubuntu

sudo service ssh stop

Debian

sudo /etc/init.d/ssh stop

Arch Linux

sudo killall sshd

Connexion sans mot de passe (en utilisant une paire de clés)

Tout d'abord, vous devez avoir une paire de clés. Si vous n'en avez pas encore, jetez un coup d'œil à la rubrique "Générer un sujet de clé publique et privée".

Votre paire de clés est composée d'une clé privée (id_rsa) et d'une clé publique (id_rsa.pub). Tout ce que vous avez à faire est de copier la clé publique sur l'hôte distant et d'ajouter son contenu au fichier ~/.ssh/authorized_keys .

Un moyen simple de le faire est:

ssh <user>@<ssh-server> 'cat >> ~/.ssh/authorized_keys' < id_rsa.pub

Une fois que la clé publique est correctement placée dans le répertoire de votre utilisateur, il vous suffit de vous connecter en utilisant la clé privée correspondante:

ssh <user>@<ssh-server> -i id_rsa



Modified text is an extract of the original Stack Overflow Documentation
Sous licence CC BY-SA 3.0
Non affilié à Stack Overflow