57 lines
2.4 KiB
Markdown
57 lines
2.4 KiB
Markdown
# TP SSH
|
|
|
|
## Objectif
|
|
|
|
Renforcer la sécurité des accès
|
|
|
|
## Prérequis:
|
|
|
|
Le compte formation doit avoir été créé (tp prise en main) et disposer d'un mot de passe
|
|
|
|
|
|
## Authentification par clé
|
|
|
|
On va faire en sorte que la connexion ssh en tant qu'utilisateur formation
|
|
se fasse par clé publique et non pas par mot de passe.
|
|
|
|
_sur votre machine_: utiliser la commande ssh-keygen (ou le programme puttygen) si votre windows n'est pas équipé d'un client ssh natif pour générer une paire de clé publique / clé privée.
|
|
|
|
_sur le container_: il faut rajouter la clé publique (le contenu du fichier id_rsa.pub se trouvant sur *votre* machine) dans le fichier *~formation/.ssh/authorized_keys*
|
|
|
|
Il sera peut-être nécessaire de créer le répertoire ~formation/.ssh
|
|
|
|
Attention au permissions: ce répertoire doit appartenir à formation et avoir les permissions 700 le fichier authorized_keys doit appartenir à formation et avoir les permissions 600
|
|
|
|
### Validation:
|
|
|
|
Garder votre connexion ssh active.
|
|
|
|
Ouvrez une nouvelle connexion ssh: on doit vous demander la passphrase protégeant votre clé privée, si vous en avez définie une.
|
|
|
|
Si on vous demande un mot de passe de connexion vous avez raté une étape.
|
|
|
|
|
|
## Renforcer la sécurité de ssh
|
|
|
|
Une fois que l'authentification par clé fonctionne, modifiez la configuration du serveur ssh ( fichier /etc/ssh/sshd_config, page de man sshd_config) pour:
|
|
|
|
* Directive PermitRootLogin: n'autoriser que les connexions en root sans mot de passe.
|
|
* Directives AllowGroups et AllowUser: n'autoriser que les membres des groupes et root wheel à se connecter ET l'utilisateur root depuis l'adresse 100.0.0.1
|
|
* Directives PasswordAuthentication: interdir l'authentification par mot de passe
|
|
|
|
### Validation:
|
|
|
|
Vous devez toujours pouvoir vous connecter en tant qu'utilisateur formation
|
|
|
|
La connexion en root doit être refusée
|
|
|
|
## Finalisation
|
|
|
|
Mettez au point au format md la procédure décrivant :
|
|
* la création d'une paire de clés
|
|
* les conséquences d'avoir une clé privée non protégée par une passphrase
|
|
* les étapes à réaliser pour que l'utilisateur puisse se connecter avec cette paire de clés sur une machine distante.
|
|
|
|
La procédure distinguera clairement sur quelle machine (client ou distante) chaque opération doit être faite.
|
|
|
|
Elle précisera les points de vigilance à avoir pour éviter toute erreur (et les pistes pour diagnostiquer et corriger ces erreurs) |