 La clef de voûte de
la sécurisation des clefs ssh se trouve
dans des paramètres que l’on ajoute dans le
fichier .ssh/authorized_keys2 avant
la clef que l’on veut contrôler :
from="ip1,ip2" command="/home/user/.ssh/authorized_progs.sh",
no-agent-forwarding,
no-X11-forwarding,
no-port-forwarding,
no-pty ssh-rsa AAAB3N...9BF7c= admcft@sacftip1
La solution adéquate est un mélange de toutes les
options
afin de verrouiller au maximum les clés ssh.
Malgré les informations de
sécurisation ci-dessous, voici
quelques éléments qui démontrent que
tout n’est pas simple :
Les fichiers
authorized_keys* sont ouvert en écriture par le compte
cible…
On pourrait donc en cas de limitation scp ou sftp simplement
réécrire ce
fichier à notre convenance. Il faut donc absolument
empêcher la modification en
écriture de authorized_keys2 et tout script
définissant les droits d’execution
(ex :authorized_progs.sh).
En plus de ça des fichiers comme .profile,
.bash_profile, .bashrc sont aussi
susceptible d’être modifié de
façon inadéquate et
exécutés au prochain
login !
Il faut par conséquent fermer
complètement le répertoire home de
l’utilisateur distant et créer un espace
séparé pour déposer des fichiers, au
mieux vérifier que l’on écrit bien dans
cet espace.
|