Configurer SSH via un jeu de clé privée/publique

Adminstration Server Linux, Sécurité No Comments »

Dans ce mémo j’expliquerais comment générer un jeu de clé avec PuttyGen et comment l’installer sur le server afin que le user ROOT ne puisse se connecter qu’avec un jeu de clé.

A télécharger si vous ne les avez pas encore Putty et PuttyGen sur PuTTY Download Page

Génération d’une paire de clés (privée/publique) avec PuTTYGen

On commence par lancer PuTTYGen, choisir le type de clé à générer SSH-2 RSA, et la longueur de la clé 1024 bits. On clique ensuite sur le bouton Generate, il faut faire bouger la souris dans la fenêtre de PuTTY Key Generator de façon aléatoire, et c’est ce mouvement aléatoire qui va servir à générer la clé.

puttygen

Une fois la clé générée , on doit arriver à quelque chose ressemblant à ça :

puttygen2

On commence par remplir le champ passphrase afin d’avoir encore un peu de plus de sécurité. Ainsi, même si quelqu’un avait accès à notre clé privée, il lui faudrait le mot de passe pour s’en servir. On peut maintenant sauvegarder la clé publique et la clé privée; pour la clé publique on peut lui affecter l’extension que l’on veut, mais on prend généralement .pub, et on peut largement diffuser cette clé, alors que pour la clé privée, ce sera l’extension .ppk, et cette clé DOIT rester confidentielle.
Attention : laissez ouvert votre PuTTYGen ouvert, afin d’avoir la clé à copier/coller sous la main.

Enregistrement d’une session dans Putty

On va maintenant ajouter la configuration d’une session vers un serveur dans putty. Pour cela, ouvre Putty. On renseigne les champs hostname, Saved Session,  l’encodage des caractères dans Window > Translation (puisque la plupart des serveurs sont en UTF-8 alors que PuTTY est en ISO par défaut), etc. Pour gagner encore un peu de temps lors de chaque connexion, on peut rentrer le nom d’utilisateur dans Connection > Data, au champ auto-login username.

putty

On peut maintenant retourner dans Session, enregistrer notre session sous le nom que l’on veut, et, enfin, ouvrir la connexion en cliquant sur Open.

Ajout de la clé publique sur le serveur Linux

La première connexion au serveur se déroule comme d’habitude, il faut rentrer notre mot de passe. Une fois cette tâche effectuée, on va éditer le fichier /root/.ssh/authorized_keys, et on va copier/coller notre clé publique dans ce fichier (n’hésitez pas à créer le répertoire et le fichier s’ils n’existent pas). On retourne sur la fenêtre de PuTTYGen, et on copie/colle la clé. Si jamais vous aviez fermé bêtement la fenêtre de PuTTYGen, vous pouvez rouvrir le logiciel, et charger votre clé privée grâce au bouton load. Il faut respecter simplement le fait de placer une seule clé par ligne dans le fichier /root/.ssh/authorized_keys.

Configuration de OpenSSH

Il faut configurer le serveur ssh pour qu’il n’autorise que l’accès par clé y compris pour root. On passe les options suivantes dans /etc/ssh/sshd_config

PermitRootLogin without-password
AllowUsers toto root
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
PasswordAuthentication no
PermitEmptyPasswords no

Il faut ensuite redémarrer le sshd

/etc/init.d/ssh reload

On peut désormait se loguer en root en utilisant uniquement un jeu de clé.

X11 forwarding en SSH via Putty

Adminstration Server Linux No Comments »

Il arrive parfois que l’on doivent utiliser des applications avec interfaces graphique sur un server. Au lieu d’installer X11 et de faire du remote desktop, on va plutôt faire du X11 forwarding et déporter l’interface sur un server graphique en local.

Sur le serveur

On commence par installer les paquet suivant :

apt-get install xvfb xdm xfonts-base
apt-get install twm "xfonts-100dpi*" xterm

Ensuite, dans /etc/ssh/sshd_config, mettre yes devant X11Forwarding

/etc/init.d/ssh restart

Editer /etc/X11/xdm/Xservers . Remplacer la ligne

:0 local /usr/X11R6/bin/X vt7 -dpi 100 -nolisten tcp

par

:0 local /usr/X11R6/bin/Xvfb -dpi 100 -screen 1024x768x16
/etc/init.d/xdm restart

Sur un client Windows

x11-forwarding-en-ssh-via-putty
Télécharger et installer Xming. C’est le serveur X qui va tourner sur Windows. ICI
Laisser toutes option d’installation par défaut. Normalement il y a un icône dans la zone de notification.
Lancer la session ssh avec Putty. Essaye de taper

xterm &

Une fenêtre s’ouvre, dans cette console vous pouvez lancer n’importe quel application qui requière un serveur X11

Chrooter un user dans une cage

Adminstration Server Linux No Comments »

On install les paquets

apt-get install sudo debianutils coreutils

On se met dans dans le dossier /usr/local/sbin, download le script et lui donne les droits d’exécution

cd /usr/local/sbin
wget http://www.majorxtrem.be/wp-content/uploads/2009/04/make_chroot_jail.sh
chmod 700 /usr/local/sbin/make_chroot_jail.sh

Il suffit maintenant de lancer la commande suivante pour créer un utilisateur

make_chroot_jail

Voici le r ésultat

# make_chroot_jail gora
Release: 2007-10-19
Am I root?
OK
Checking distribution...
Supported Distribution found
System is running Debian Linux
Checking for which...
OK
Checking for chroot...
OK
Checking for sudo...
OK
Checking for dirname...
OK
Checking for awk...
OK
Creating /bin/chroot-shell
Creating /home/jail
Creating /home/jail/dev
Creating /home/jail/etc
Creating /home/jail/etc/pam.d
Creating /home/jail/bin
Creating /home/jail/home
Creating /home/jail/sbin
Creating /home/jail/usr
Creating /home/jail/usr/bin
Creating /home/jail/usr/lib
Modifying /etc/sudoers
Adding User "gora" to system
Entrez le nouveau mot de passe UNIX :
Retapez le nouveau mot de passe UNIX :
passwd : le mot de passe a ét é mis à jour avec succ ès
Adding User gora to jail
Copying necessary library-files to jail (may take some time)
Copying files from /etc/pam.d/ to jail
Copying PAM-Modules to jail

WP Theme & Icons by N.Design Studio
Entries RSS Comments RSS Connexion
ipv6 ready