Cette partie du Guide du serveur Ubuntu parle du puissant ensemble d'outils pour le contrôle à distance d'ordinateurs connectés et le transfert de fichiers entre ordinateurs connectés, appelé OpenSSH. Vous apprendrez également certains paramètres de configuration possibles avec le serveur OpenSSH et comment les modifier sur votre système Ubuntu.
OpenSSH est une version libre du protocole Secure Shell (SSH), comme d'autres logiciels utilisés pour le contrôle d'ordinateurs à distance, ou le transfert de fichiers entre ordinateurs. Les outils traditionnels pour effectuer ces tâches, comme telnet ou rcp, ne sont pas sécurisés et font transiter le mot de passe de l'utilisateur en clair. OpenSSH fournit un serveur et des outils clients pour faciliter le contrôle à distance et le tranfert de fichiers de façon sécurisée grâce au chiffrement des données, et donc remplace efficacement les anciens outils.
Le serveur OpenSSH, sshd, attends en permanence des connexions depuis des clients. Quand une connexion a lieu, sshd établit la connexion correcte en fonction du type de client. Par exemple, si un client se conencte avec le client ssh, le serveur OpenSSH va établir une connexion sécurisée après une authentification. Si un client se conencte avec scp, le serveur OpenSSH va commencer un transfert de fichier sécurisé entre le serveur et le client après une authentification. OpenSSH peut utiliser de nombreuses méthodes d'authentification, par exemple un mot de passe, une clé publique, ou un ticket Kerberos.
L'installation des applications client et serveur d'OpenSSH est simple. Pour installer les applications clientes d'OpenSSH sur votre système Ubuntu, tapez cette commande dans un terminal :
sudo apt-get install openssh-client
Pour installer le serveur OpenSSH et les fichiers nécessaires, utilisez cette commande dans un terminal :
sudo apt-get install openssh-server
You may configure the default behavior of the OpenSSH server application, sshd, by editing the file /etc/ssh/sshd_config
. For information about the configuration directives used in this file, you may
view the appropriate manual page with the following command, issued at a terminal prompt:
man sshd_config
There are many directives in the sshd configuration file controlling such things as communications
settings and authentication modes. The following are examples of configuration directives that can be changed by editing the /etc/ssh/ssh_config
file.
Avant d'éditer le fichier de configuration, vous devriez faire une copie du fichier original et le protéger en écriture de façon à conserver les paramètres d'origine en référence et à pouvoir les réutiliser en cas de besoin.
Copy the /etc/ssh/sshd_config
file and protect it from writing with the following commands, issued at a terminal prompt:
sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.original sudo chmod a-w /etc/ssh/sshd_config.original
Voici des exemples de directives de configuration que vous pourriez changer :
To set your OpenSSH to listen on TCP port 2222 instead of the default TCP port 22, change the Port directive as such:
Port 2222
To have sshd allow public key-based login credentials, simply add or modify the line:
PubkeyAuthentication yes
in the /etc/ssh/sshd_config
file, or if already present, ensure the line is not commented out.
To make your OpenSSH server display the contents of the /etc/issue.net
file as a pre-login
banner, simply add or modify the line:
Banner /etc/issue.net
dans le fichier /etc/ssh/sshd_config
.
After making changes to the /etc/ssh/sshd_config
file, save the file, and restart the sshd
server application to effect the changes using the following command at a terminal prompt:
sudo /etc/init.d/ssh restart
Many other configuration directives for sshd are available for changing the server application's
behavior to fit your needs. Be advised, however, if your only method of access to a server is ssh,
and you make a mistake in configuring sshd via the /etc/ssh/sshd_config
file, you may find you
are locked out of the server upon restarting it, or that the sshd server refuses to start due
to an incorrect configuration directive, so be extra careful when editing this file on a remote server.