Qu'est-ce que ssh - Secure Shell
Secure Shell est un protocole de communication sécurisé qui peut être utilisé pour l'administration à distance (comme un serveur Web) sur un terminal.
Il s'agit techniquement d'une version sécurisée de telnet. Un accès shell sur n'importe quel système permet à un utilisateur d'exécuter des commandes et de contrôler le système.
Si vous avez travaillé sur des serveurs Linux en ligne à partir de la ligne de commande, vous l'avez probablement utilisé.
La communication est entourée d'un cryptage SSL et appelée shell sécurisé.
Ssh (Secure Shell) is a program for logging into a remote machine and for executing commands on a remote machine. It provides secure encrypted communications between two untrusted hosts over an insecure network. X11 connections and arbitrary TCP/IP ports can also be forwarded over the secure channel. It can be used to provide applications with a secure communication channel.
Pour le shell sécurisé, nous avons besoin de 2 composants. Le premier est le serveur shell sécurisé qui s'exécute sur la machine qui doit être contrôlée à distance. Et l'autre partie est un client ssh qui peut parler le protocole ssh et communiquer avec le serveur ssh.
Dans cet article, nous allons voir comment configurer le serveur et le client ssh sur Ubuntu et établir une communication sécurisée.
Installer le serveur OpenSSH
Sur Ubuntu, installez le package openssh-server. Il fournit le serveur sshd. Cette même méthode devrait également fonctionner sur Debian et d'autres distributions basées sur Debian.
$ sudo apt-get install openssh-server
This is the portable version of OpenSSH, a free implementation of the Secure Shell protocol as specified by the IETF secsh working group.
Une fois installé, le serveur ssh devrait être opérationnel. Vérifiez-le avec la commande de service
$ service ssh status ssh start/running, process 29422
Se connecter au serveur SSH depuis le client
Connectez-vous maintenant au serveur ssh à l'aide de la commande ssh. La commande ssh est le "client openssh". La syntaxe est de ssh est comme ceci
ssh [email protected] OR ssh -l username hostname
Connectez-vous à notre serveur ssh.
$ ssh [email protected] The authenticity of host 'localhost (127.0.0.1)' can't be established. ECDSA key fingerprint is f2:81:02:29:0b:84:69:d4:71:35:e0:2f:d7:3b:cd:3e. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added 'localhost' (ECDSA) to the list of known hosts. [email protected]'s password:
Une fois connecté, un message de bienvenue similaire à celui-ci s'affichera
Welcome to Ubuntu 12.10 (GNU/Linux 3.5.0-17-generic x86_64) * Documentation: https://help.ubuntu.com/ New release '13.04' available. Run 'do-release-upgrade' to upgrade to it. *** System restart required *** Last login: Thu May 30 20:58:33 2013 from localhost $
Configurer le serveur SSH
Le serveur ssh fonctionne sur le port 22 par défaut. Si vous souhaitez modifier le port par défaut du serveur ssh, modifiez le fichier
/etc/ssh/sshd_config
Il a une ligne pour spécifier le numéro de port.
# What ports, IPs and protocols we listen for Port 22
Après avoir changé le numéro de port, redémarrez le serveur ssh à l'aide de la commande service
$ sudo service ssh restart ssh stop/waiting ssh start/running, process 30751
Pour en savoir plus sur la configuration du serveur ssh à l'aide du fichier de configuration, consultez la page de manuel en exécutant la commande suivante
man sshd_config
Client SSH Putty - Utilisateurs Windows
Sur Ubuntu, la commande terminal ssh est le moyen le plus simple de se connecter à n'importe quel serveur ssh. Cependant, si vous cherchez une alternative, essayez le mastic.
Putty est un client ssh/telnet gratuit disponible pour Linux et Windows. Sur Ubuntu, installez-le depuis synaptic
sudo apt-get install putty
Sécuriser le serveur SSH
Si vous installez le serveur ssh sur un serveur distant et en ligne, il est important de sécuriser le serveur. Voici quelques mesures de sécurité que vous pouvez mettre en œuvre pour renforcer la sécurité du serveur ssh.
1. Utilisez des noms d'utilisateur et des mots de passe forts
2. Configurer l'intervalle de temporisation d'inactivité
3. Désactiver les mots de passe vides
4. N'accordez l'accès ssh qu'à des utilisateurs spécifiques
5. Désactiver les connexions root
6. Utilisez uniquement le protocole ssh 2
7. Utilisez un port différent
8. Restreindre les clients avec pare-feu
9. Utiliser l'authentification par clé
Connexion sans mot de passe au serveur ssh
La configuration du serveur ssh demande par défaut le nom d'utilisateur/mot de passe pour se connecter. Cependant, il est possible de configurer une connexion sans mot de passe en utilisant une authentification basée sur une clé.
Consultez mon tutoriel sur la configuration d'une connexion sans mot de passe à ssh pour plus d'informations.
Liens et ressources
Pour en savoir plus, consultez les liens suivants :
http://www.openssh.org/Si vous avez des commentaires ou des questions, faites-le nous savoir dans les commentaires ci-dessous.