logo Debian Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés logo inclusivité

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).


L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT → ODT PDF Export

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édentes Révision précédente
Prochaine révision
Révision précédente
Prochaine révision Les deux révisions suivantes
doc:reseau:ssh [20/05/2013 12:19]
captnfab [Commandes annexes]
doc:reseau:ssh [09/01/2014 20:47]
bendia [Différents usages de ssh]
Ligne 1: Ligne 1:
-====== SSH - En Détail ​======+====== SSH ======
  
 +  * Objet : tout savoir sur SSH
 +  * Niveau requis : {{tag>​avisé}}
 +  * Commentaires : //​Administrer son serveur à distance, établir un tunnel sécurisé pour relayer des ports, etc... //
 +  * Débutant, à savoir : [[:​doc:​systeme:​commandes:​le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !.]] :-)
 +  * Suivi : {{tag>​en-chantier}}
 +    * Mis en forme par bendia le 7/01/2113 à partir des différents tuto
 +    * Testé par <...> le <...> FIXME
 +  * Commentaires sur le forum : [[http://​debian-facile.org/​viewtopic.php?​id=1583 | Lien vers le forum concernant ce tuto]]((N'​hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !))
  
-  * Objet : configuration ssh +=== Nota ===
-  * Niveau requis : DÉBUTANT +
-  * Commentaires : // Configurer son ssh. // +
-  * Débutant, à savoir : [[manuel:​le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !.]] :-)+
  
-===== Installation =====+Contributeurs,​ les FIXME sont là pour vous aider, supprimez-les une fois le problème corrigé ou le champ rempli !
  
-L'​installation est d'une simplicité déconcertante +===== Introduction =====
-        # aptitude install ssh +
-Et voilà le serveur est maintenant prêt à recevoir les premières connexions sur le port 22+
  
-SSH est configuré avec un niveau de sécurité très faible, pour ce connecter en local à un PC distant il suffit de faire comme ceci. + **ssh** (Secure SHell) est un protocole ​de communication réseau ​et une application qui permettent ​de crypter et d'​authentifier les informations échangées. Il est donc plus difficile ​de les intercepter.
-        $ ssh user@192.168.1.x +
-        mot_de_passe +
-Remplacer //user// par votre login sur le second PC et le //x// par la véritable ​**ip** de votre machine hôte, vous devrez répondre à la question par //​yes// ​et saisir votre mot de passe de session.+
  
-**ATTENTION !** \\ +===== Une application client/​serveur =====
-Je vous recommande de ne pas exporter cette connection SSH tel quelle sur le net… Il y a des malins qui force le passage pour entrer chez vous, donc si vous voulez exporter une session SSH via un PC a 18 000 km de chez vous faites une configuration avancée.+
  
 +**ssh** fonctionne sur le mode client/​serveur.
  
 +Il y a :
 +  * d'un côté le serveur, la machine sur laquelle on veut se connecter, et qui //écoute// par défaut sur le port 22. On peu considérer que c'est la machine à laquelle on a pas d'​accès physique en tant qu'​utilisateur.
 +  * et de l'​autre côté le client, la machine depuis laquelle on veut établir la connexion. C'est la machine locale où se trouve la clavier qu'on utilise.
  
-===== Configuration avancée ===== +Nous allons donc découper cette documentation en plusieurs pages 
-===== RSA ou DSA ? =====+  - [[doc:​reseau:​ssh:​client|la partie cliente]] : comment faire pour vous connecter à un serveur **ssh** existant, 
 +  - [[doc:​reseau:​ssh:​serveur|la partie serveur]] : comment configurer votre machine pour qu'​elle puisse jouer le rôle de serveur **ssh**.
  
 +===== Différents usages de ssh =====
  
-Peu importe. +**ssh** peut être utilisé de différentes façon : 
-===== Générer une clé =====+
  
-//Exemple avec une clé DSA.//+  * Pour ouvrir un shell sur une machine distante, 
 +  * Pour transférer des fichiers directement avec [[doc:​reseau:​scp|la commande SCP]] ou par l'​intermédiaire du protocole [[doc:​reseau:​sftp|SFTP]],​ 
 +  * Pour monter un système de fichier avec [[doc:​reseau:​ssh:​sshfs|La commande SSHFS]], 
 +  * Pour protéger des communications transitant en clair : on parle alors de tunnel.
  
-Pourquoi ne pas autoriser les connexions uniquement par clefs privés/​public et interdire les connections standards où les mots de passes passent en clair.+===== Commandes annexes =====
  
-Le but est de se passer du mot de passe qui au niveau sécurité est trop faible, nous allons généré une clée cryptée unique pour votre PC. +  * Pour ''​COPIER''​ un fichier sécurisé ​vous devez vous servir ​de : [[:​doc:​reseau:​scp|scp]]
-        $ ssh-keygen -t dsa +
-Votre clé sera générée en 1024 bits dans votre dossier /​home/​votre_user/​.ssh/​ pour la mettre en place il vous suffit ​de l'​exporter sur votre pc distant.+
  
-Vérifiez que la clef dans le fichier se termine bien par votre adresse ip ( Ip Internet ) et non par le nom de votre poste. +  * Pour ''​MONTER''​ les fichiers servez-vous de : [[:​doc:​reseau:​sshfs|]]
-Si ce n'est pas le cas, remplacer le nom par votre adresse ip. +
-        $ ssh-copy-id -i /​home/​user/​.ssh/​id_dsa.pub user@192.168.1.x +
-        mot_de_passe+
  
-Voilà votre clé est en place, maintenant passons à la sécurité de votre système. 
  
-===== Sécuriser SSH ===== 
- 
-Il suffit d'​éditer le fichier sshd_config en root sur le PC distant. Le fichier se trouve dans le dossier ///​etc/​ssh///​ 
-        # nano /​etc/​ssh/​sshd_config 
-Puis de modifier les arguments suivant «le cas est pris pour une connection __uniquement par clé__» : 
- 
-    PermitRootLogin no -> évite la connection root « plus que recommandé » 
-    RSAAuthentication yes -> active la reconnaissance RSA 
-    PubkeyAuthentication yes 
-    AuthorizedKeysFile .ssh/​authorized_keys -> va uniquement chercher la clé sur ce fichier 
-    PasswordAuthentication no -> désactive la connection par mot de passe 
-    PermitEmptyPasswords no -> désactive les mots de passe vide 
-    UsePAM no -> désactive la connection par mot de passe 
-    AllowUsers votrelogin secondlogin -> restreint l'​accès à votre login uniquement 
-    DenyUsers test guest admin root snort apache nobody -> interdire l'​accès à certains users, pour les paranos... 
-    MaxStartups 1 -> limite la connection, normalement 6 par défaut 
- 
-  * Restreindre la connexion à un utilisateur 
- 
- 
-Moins de monde autorisé à se connecter via ssh, moins de risques il y aura… 
- 
-    AllowUsers monuserquipeutseconnecter 
-Il est possible de spécifier plusieurs utilisateurs ou un masque d'​expression régulière,​ je vous laisse lire la doc pour un paramétrage plus fin 
- 
-        * Restreindre la connexion à un groupe 
-dans le même esprit que le paramètre ci-dessus on peut autoriser directement tous les utilisateurs d'un groupe. 
- 
-    AllowGroups mongroupadmin 
-Les options qu'il est conseillé de changer dans un premier temps sont : 
- 
-        * Le port ( défaut 22 ) 
-Nous allons le mettre ici à 10010 
-    Port 10010 
-Une fois configuré il vous suffit de relancer SSH, à faire en root : 
-        # service ssh restart 
- 
-===== Navigation via SSH ===== 
- 
-Pour voir les fichiers avec konqueror et Nautilus rien de plus simple 
-==== Konqueror ==== 
- 
-        $ fish://​user@192.168.1.x 
-        ​ 
-==== Nautilus ==== 
- 
-        $ ssh://​user@192.168.1.x:​22 
- 
-==== Terminal ==== 
- 
-Pour te connecter sur un serveur ssh qui n'a pas le port 22 par défaut. 
-   ssh mattux@mon.serveur.org -p 10010 
- 
--p **10010** bien sûr à adapter au port ouvert, son numéro ! 
- 
-Avec la configuration de base le mot de passe de la session vous sera demandé, avec la clé rien ne vous sera demandé. 
- 
- 
- 
-===== Tunnel crypté en SSH ===== 
- 
-Il se peut que vous vouliez établir une connexion distante pour transiter des données de manière 100% transparente et sécurisée,​ nous allons donc établir un tunnel ssh. 
-        #  ssh -L 5901:​localhost:​5900 user@80.80.80.80 
-Cette technique est très utile pour relier en local un bon nombre d'​utilisation,​ comme sur kde distant, un serveur smtp personnel, une boite mail ( pop ou imap ) personnelle,​ un bon nombre d'​utilisations ont recours à cette technique. 
- 
-==== Détail sur la ligne de commande SSH ==== 
- 
-  *ssh : invoque le protocole 
-  *-L invoque de la création d'un tunnel crypté 
-  *5901 : port coté local 
-  *localhost : indique que l'​accès se fera en local de manière transparente 
-  *5900 : port du service distant 
-  *user@80.80.80.80 : indique avec quelle user et sur quelle ip on va établir la connection. 
- 
-===== Commandes annexes =====sshfs 
- 
-  * Pour ''​COPIER''​ un fichier sécurisé vous devez vous servir de : [[commande:​scp|scp]] 
- 
-  * Pour ''​MONTER''​ les fichiers servez-vous de : [[commande:​sshfs|]] 
- 
-===== Lien forum ===== 
-http://​debian-facile.org/​forum/​viewtopic.php?​id=1583 
doc/reseau/ssh.txt · Dernière modification: 30/05/2023 14:44 par lagrenouille

Pied de page des forums

Propulsé par FluxBB