10 votes

Processus pour déplacer les clés d'un serveur SSH vers un nouveau serveur

Je vais bientôt déplacer un serveur vers un nouveau matériel dans un nouveau centre de données, ce qui implique bien sûr une nouvelle adresse IP.

Quelle est la procédure à suivre (le cas échéant) pour déplacer les clés SSH du serveur d'origine vers le nouveau afin que les clients qui se connectent ne reçoivent pas d'avertissement et n'aient pas à accepter à nouveau quoi que ce soit ?

Est-ce même possible, vu que l'IP change ?

Quels sont les fichiers que je dois déplacer ? Je suppose que tous les fichiers ssh_host_*.

Passage de RHEL 5 à Ubuntu 10.04.

8voto

Mike Points 782

Vous pouvez déplacer les clés de votre serveur actuel vers le nouveau serveur sans trop de difficultés. Vous devez simplement vous assurer qu'elles sont placées au même endroit et qu'elles ont la même autorisation.

Dans l'idéal, cependant, vous devriez profiter de l'occasion pour créer de nouvelles clés et mettre à jour les clés des clients dans l'intérêt de la sécurité.

2 votes

J'ai oublié d'ajouter que vos utilisateurs peuvent recevoir un avertissement lorsqu'ils se connectent au nouvel hôte et qu'ils ont déjà un hôte dans leur fichier knownhosts qui correspond à la clé contre laquelle ils s'authentifient. Cela signifie qu'ils devront supprimer l'entrée dans leur fichier d'hôtes connus. Vous ne pouvez pas contourner ce problème.

1 votes

Si les utilisateurs risquent de recevoir un avertissement de toute façon, est-il vraiment utile de déplacer les touches ?

1 votes

Les utilisateurs recevront une injonction. C'est un message d'attaque de type "man in the middle". Cela semble effrayant mais si vous supprimez know_hosts du client, ils recevront un message moins effrayant. Je ne sais pas s'il est possible de contourner une sorte d'invite.

5voto

Arnout Points 321

1) Si vos fichiers de configuration sshd sont stockés sous /etc/ssh/, vous devrez les copier tous. Vous y trouverez la configuration sshd, ainsi que la paire de clés d'hôte.

Veillez également à copier correctement les autorisations ! Le sshd ignorera simplement les clés qui ne sont pas correctement protégées. (Tant mieux, car une clé privée non protégée est une très mauvaise idée).

2) Si vous avez déjà ajouté des clés publiques d'hôtes distants qui sont fiables et ne nécessitent plus de mot de passe pour se connecter, vous devrez également copier ces informations pour que l'auto-login fonctionne à nouveau. Ces informations sont normalement stockées dans /home/-account-/.ssh/ (sous authorized_keys). Encore une fois, n'oubliez pas les permissions ici.


En ce qui concerne le changement d'adresse IP, en supposant que les clients distants voient réellement un changement d'IP (vous n'êtes pas derrière un proxy inverse ou autre), alors non, ils demanderont à l'utilisateur d'accepter à nouveau le certificat. (puisque dans le fichier known_hosts du client distant, l'IP du serveur et le certificat du serveur ont été stockés ensemble) Pire, si vous attribuez cette adresse IP à un autre serveur ssh, ils pourraient même être avertis d'une attaque man-in-the-middle.

Il est donc logique d'utiliser la même adresse IP (externe) sur le nouveau serveur.

0voto

isherwood Points 107

Vous n'avez pas mentionné votre système d'exploitation. Je peux vous dire avec certitude qu'un hôte RHEL a les clés du serveur stockées dans /etc/ssh. Copiez simplement ce répertoire dans son intégralité. Vous devrez ensuite faire rebondir sshd/redémarrer la boîte.

Je pense que tant que vous vous connectez via le même nom DNS, vous ne devriez pas recevoir d'avertissement. Même avec la nouvelle IP.

-Christopher Karel

0 votes

Ajout d'une note sur les systèmes d'exploitation

1 votes

Alors oui, /etc/ssh est le répertoire que vous voulez. Je recommande juste les clés ssh_host*. Ne déplacez pas les fichiers de configuration. Et vous voudrez sauvegarder le côté destination des choses, juste pour être sûr.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X