OpenSSH-6.1p1

Introduction à OpenSSH

Le paquet OpenSSH contient des clients ssh et le démon sshd. C'est utile dans le cadre d'une authentication chiffrée et d'un trafic réseau consécutif sur un réseau. Les commandes ssh et scp sont des implémentions sécurisées, respectivement de telnet et de rcp.

Ce paquet est connu pour se construire correctement sur une plateforme LFS-7.2.

Informations sur le paquet

Dépendances d'OpenSSH

Requises

OpenSSL-1.0.1c

Facultatives

Linux-PAM-1.1.6, X Window System, MIT Kerberos V5-1.10.3, libedit (offre une fonction d'historique de la ligne de commande à sftp), OpenSC et libsectok

Facultatives pour l'exécution (Utilisé seulement pour modifier l'entropie)

OpenJDK-1.7.0.9, OpenJDK-1.7.0.9, Net-tools-CVS_20101030 et Sysstat-10.0.5.

Notes utilisateur : http://wiki.linuxfromscratch.org/blfs/wiki/OpenSSH

Installation d'OpenSSH

OpenSSH lance pas moins de deux processus en se connectant à d'autres ordinateurs. Le premier processus est un processus privilégié et il contrôle comme il faut l'émission de privilèges. Le deuxième processus communique avec le réseau. Des étapes d'installation supplémentaires sont nécessaires pour paramétrer le bon environnement, effectuées en lançant les commandes suivantes en tant qu'utilisateur root :

install -v -m700 -d /var/lib/sshd &&
chown -v root:sys /var/lib/sshd &&
groupadd -g 50 sshd &&
useradd -c 'sshd PrivSep' -d /var/lib/sshd -g sshd     -s /bin/false -u 50 sshd

Installez OpenSSH en lançant les commandes suivantes :

./configure --prefix=/usr             --sysconfdir=/etc/ssh             --datadir=/usr/share/sshd             --with-md5-passwords             --with-privsep-path=/var/lib/sshd &&
make

La suite de tests demande l'installation d'une copie de scp pour finir les tests de multiplexage. Pour lancer la suite de tests, commencez par copier le programme scp dans /usr/bin, en faisant attention que vous ayez une sauvegarde de tous les fichiers existants.

Pour lancer la suite de tests, exécutez les commandes suivantes :

make tests 2>&1 | tee check.log
grep FATAL check.log

Si la commande ci-dessus ne donne pas d'erreurs 'FATAL', effectuez l'installation, en tant qu'utilisateur root :

make install &&
install -v -m755 -d /usr/share/doc/openssh-6.1p1 &&
install -v -m644 INSTALL LICENCE OVERVIEW README*     /usr/share/doc/openssh-6.1p1

Explication des commandes

--sysconfdir=/etc/ssh : Ceci empêche les fichiers de configuration de s'installer dans /usr/etc.

--datadir=/usr/share/sshd : Ce paramètre met le fichier Ssh.bin (utilisé pour l'authentication SmartCard) dans /usr/share/sshd.

--with-md5-passwords : C'est nécessaire avec la configuration par défaut de la suite de mots de passe Shadow dans LFS.

--with-pam : Ce paramètre active le support de Linux-PAM dans la construction.

--with-xauth=/usr/bin/xauth : Règle l'emplacement par défaut du binaire xauth pour l'authentication X. Modifiez l'emplacement si xauth sera installé à un autre endroit. Vous pouvez aussi contrôler cela depuis sshd_config avec le mot-clé XAuthLocation. Vous pouvez vous passer de cette option si Xorg est déjà installé.

--with-kerberos5=/usr : Cette option est utilisée pour inclure le support Heimdal dans la construction.

Configuration d'OpenSSH

Fichiers de configuration

~/.ssh/*, /etc/ssh/ssh_config et /etc/ssh/sshd_config

Aucune modification n'est nécessaire dans aucun de ces fichiers. Cependant, vous pourriez souhaiter relire les fichiers /etc/ssh/ et effectuer les modifications adéquates pour la sécurité de votre système. Une des modifications recommandées est de désactiver la connexion en root via ssh. Exécutez la commande suivante en tant qu'utilisateur root pour désactiver la connexion root via ssh :

echo "PermitRootLogin no" >> /etc/ssh/sshd_config

Si vous voulez vous loguer sans taper votre mot de passe, commencez par créer ~/.ssh/id_rsa et ~/.ssh/id_rsa.pub avec ssh-keygen et ensuite copiez ~/.ssh/id_rsa.pub dans ~/.ssh/authorized_keys sur l'ordinateur distant ou vous voulez vous loguer. Vous devrez changer REMOTE_HOSTNAME par le nom d'hôte de l'ordinateur distant et vous devrez entrer votre mot de passe pour que la commande ssh réussisse:

ssh-keygen &&
public_key="$(cat ~/.ssh/id_rsa.pub)" &&
ssh REMOTE_HOSTNAME "echo ${public_key} >> ~/.ssh/authorized_keys" &&
unset public_key

Une fois que vous avez configuré un accès sans mot de passe, c'est actuellement plus sécurisant que de vous connecter avec un mot de passe (tant que la clé privé est plus longue que la plupart des mots de passes). Si vous voulez maintenant désactiver la connection avec mot de passe, en tant qu'utilisateur root :

echo "PasswordAuthentication no" >> /etc/ssh/sshd_config &&
echo "ChallengeResponseAuthentication no" >> /etc/ssh/sshd_config

Si vous avez ajouté le support de LinuxPAM, vous devrez ajouter un fichier de configuration pour sshd et permettre l'utilisation de LinuxPAM. Effectuez les commandes suivantes en tant qu'utilisateur root :

sed 's@d/login@d/sshd@g' /etc/pam.d/login > /etc/pam.d/sshd &&
chmod 644 /etc/pam.d/sshd &&
echo "USEPAM yes" >> /etc/ssh/sshd_config

Vous pouvez trouver des informations de configuration supplémentaires dans les pages de man de sshd, ssh et de ssh-agent.

Script de démarrage

Pour lancer le serveur SSH au démarrage du système, installez le script de démarrage /etc/rc.d/init.d/sshd fourni dans le paquet blfs-bootscripts-20120828.

make install-sshd

Contenu

Programmes installés: scp, sftp, sftp-server, slogin, ssh, sshd, ssh-add, ssh-agent, ssh-keygen, ssh-keyscan and ssh-keysign.
Répertoires installés: /etc/ssh, /var/lib/sshd, /usr/lib/openssh and /usr/share/doc/openssh-6.1p1.

Descriptions courtes

scp

est un programme de copie de fichier agissant comme rcp sauf qu'il utilise un protocole chiffré.

sftp

est un programme de genre FTP fonctionnant sur les protocoles SSH1 et SSH2.

sftp-server

est un sous-système de serveur SFTP. Ce programme n'est en principe pas appelé directement par l'utilisateur.

slogin

est un lien symbolique vers ssh.

ssh

est un client du type rlogin/rsh sauf qu'il utilise un protocole chiffré.

sshd

est un démon qui écoute les requêtes de connexion ssh login.

ssh-add

est un outil qui ajoute des clés à ssh-agent.

ssh-agent

est un agent d'authentication qui peut stocker des clés privées.

ssh-keygen

est un outil de génération de clés.

ssh-keyscan

est un outil pour réunir des de clés d'hôte publiques à partir d'un certain nombre d'hôtes.

ssh-keysign

est utilisé par ssh pour accéder aux clés de l'hôte local et pour générer la signature numérique requise lors d'une authentification basée sur l'hôte avec le protocole SSH version 2. Ce programme n'est pas, en principe, appelé directement par l'utilisateur.

Last updated on : 2012-09-25 20:40:21 +020