Logo Khaganat

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
fr:connexion_serveur_admin [2016/09/14 06:57] – modification externe 127.0.0.1fr:connexion_serveur_admin [2017/10/14 12:45] (Version actuelle) – Ya plus besoin, page transférée sur https://khaganat.net/wikhan/fr:ssh zatalyz
Ligne 1: Ligne 1:
-====== 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. 
  
-<WRAP center round important 60%> 
-La manipulation ici concerne une connexion en console depuis une machine sous linux. 
-</WRAP> 
- 
-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. 
- 
-===== Génération de la clef ===== 
-**Ouvrez une console et générez une paire de clefs :** 
-  ssh-keygen -t rsa 
-Vous devriez avoir le texte suivant qui s'affiche : 
-<code>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.</code> 
- 
-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. 
- 
-==== Et si on veut une clef RSA par site ? ==== 
- 
-Il est possible d'indiquer automatiquement à SSH d'utiliser telle ou telle clef selon le site auquel on se connecte. 
- 
-Imaginons qu'on ait généré deux clefs RSA comme indiqué ci-dessus. Il suffit d'indiquer pour cela un autre nom à la question "Enter file in which to save the key (/home/user/.ssh/id_rsa)" : ''/home/user/.ssh/cle1'' et ''/home/user/.ssh/cle2''. On a donc décidé d'utiliser les clefs comme suit: 
- 
-  * cle1  pour aller sur le serveur 1 
-  * cle2 pour aller sur le serveur 2 
- 
-Il faut alors créer un fichier ''config'' dans son répertoire ''.ssh'' dans son /home. Il contiendra pour chaque serveur un identifiant, son nom (ou adresse IP directe), le fichier rsa à utiliser et l'identifiant qui y est lié : 
- 
-<code txt config> 
-host serveur1 
- HostName serveur1.fr 
- IdentityFile ~/.ssh/cle1 
- User totor 
-   
-host serveur2 
- HostName 202.127.12.13 
- IdentityFile ~/.ssh/cle2 
- User roxxor 
-</code> 
- 
-Ensuite quand on se connectera avec SSH, le système saura que pour aller sur serveur1.fr, il faut qu'il utilise la clef ~/.ssh/cle1 et l'identifiant totor. Il ne restera qu'à entrer la passphrase qui y est liée. Il n'y a plus besoin de donner la clef nécessaire ou l'identifiant, juste éventuellement le port si il n'est pas standard. 
- 
-Par exemple : 
-Accès au serveur 1 qui a un port standard : 
-<code bash> 
-~$ ssh serveur1.fr 
-</code> 
- 
-Accès au serveur 2 qui a son port SSH ouvert au numéro 66666 : 
-<code bash> 
-~$ ssh -p 66666 202.127.12.13 
-</code> 
-===== Se connecter sans mot de passe (méthode non sécurisée) ===== 
-<WRAP center round important 60%> 
-Se connecter sans mot de passe ouvre potentiellement une faille de sécurité. À réserver à des cas très particuliers ! 
-</WRAP> 
-Un de ces cas est la possibilité pour un serveur A de se connecter à un serveur B, pour effectuer une sauvegarde des données par exemple. Le serveur A doit lui-même être bien protégé. 
- 
-Il suffit de créer une clé sur le serveur A, comme indiqué plus haut (''ssh-keygen -t rsa'') mais de ne pas rentrer de mot de passe. Cette clé pourra donc être utilisée pour se connecter sans mot de passe. 
- 
-Ensuite on ajoute cette clé sur le serveur B (''ssh-copy-id -i ~/.ssh/id_rsa.pub yyy@xxxxx.org'').  
- 
-Comme les fichiers id_rsa et id_rsa.pub peuvent facilement être copiés d'un ordinateur à l'autre, on peut sécuriser un peu en faisant en sorte que le serveur B n'accepte la clé du serveur A que si cette clé est utilisé depuis l'adresse IP du serveur A.  
- 
-Il faut alors ajouter "from=IP1,IP2" dans le fichier ''authorized_keys'', au début de la clé en question. 
- 
-Exemple : 
-  from="192.02.300.01" ssh-rsa XXXYYYZZZ(clé) user@server 
- 
-===== Se connecter sans retaper trop souvent son mot de passe (méthode sécurisée) ===== 
-Il suffit d'utiliser un "agent ssh" qui va se souvenir de votre clé. En théorie, votre mot de passe ne devrait être demandé qu'une fois par session, la première fois que vous déverrouillez la clé. 
- 
-  eval "$(ssh-agent -s)" 
-  ssh-add ~/.ssh/id_rsa 
- 
- 
-===== Pour aller plus loin ===== 
-  * [[http://doc.fedora-fr.org/wiki/SSH_:_Authentification_par_cl%C3%A9|Une explication plus complète sur les clés ssh, en français.]] 
- 
-{{tag>Serveur Administration Sécurité}} 
CC Attribution-Share Alike 4.0 International Driven by DokuWiki
fr/connexion_serveur_admin.1473836274.txt.gz · Dernière modification : (modification externe)

Licences Mentions légales Accueil du site Contact Inclusion