Ceci est une ancienne révision du document !
Connexion aux serveurs pour l'administration via une clé publique
Cet article présente comment se connecter à un serveur dont on est administrateur, quel qu'il soit (il n'est pas spécifique au MMORPG, c'est la même chose sur un serveur web basique) et en utilisant une authentification par clef publique.
La manipulation ici concerne une connexion en console depuis une machine sous linux.
L’intérêt d’une connexion à un serveur en utilisant une clef publique, c’est que vous pouvez oubliez les mots de passe de base des serveurs, il n’y en a plus qu’un à retenir : le votre. C'est très utile si vous avez plusieurs serveurs à administrer, ou que ces derniers ont des mots de passes à rallonge et impossible à retenir.
Ouvrez une console et générez une paire de clefs :
ssh-keygen -t rsa
Vous devriez avoir le texte suivant qui s'affiche :
Generating public/private rsa key pair. Enter file in which to save the key (/home/user/.ssh/id_rsa): Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /home/user/.ssh/id_rsa. Your public key has been saved in /home/user/.ssh/id_rsa.pub.
Une clef publique/privée est générée, en utilisant l’algorithme RSA spécifiquement pour les connexions ssh. Ne rien entrer pour le fichier où sauver la clef (laisser dans /home/user/.ssh/id_rsa
, donc tapez sur “entrée”). Pour la “passphrase”, trouvez un mot de passe efficace. C’est plus simple s’il s’agit du même que pour signer vos clefs publiques habituellement.
Copier la clef sur le compte du serveur distant
ssh-copy-id -i ~/.ssh/id_rsa.pub yyy@xxxxx.org
Remplacez yyy@xxxxx.org
par le nom de votre serveur et son utilisateur, par exemple root@monserveur.org
. Entrez le mot de passe du serveur (donc pas votre passphrase de clef, il faut d’abord que le serveur sache que c’est bien vous !).
Et maintenant, c’est bon, vous pouvez vous connecter au serveur en ssh avec votre clef :
ssh yyy@xxxxx.org
ou
ssh root@monserveur.org
Sur le serveur, allez dans le dossier .ssh de /home/user et faites
more authorized_keys
Une ligne doit se terminer par votre nom d’utilisateur et le nom de votre machine, il s’agit des clefs publiques autorisées à se connecter.