Bastion :
Host example
User centos
HostName 10.10.10.10
ProxyCommand ssh host.example -W %h:%p
Redirection de port : ssh -L 8080:127.0.0.1:80 host.example
Installer le package libpam-mysql et ajouter ces lignes au fichier /etc/pam.d/sshd :
# Authentication
auth sufficient pam_unix.so
auth sufficient pam_mysql.so config_file=/etc/pam-mysql.conf
auth requisite pam_deny.so
auth required pam_permit.so
# Standard Un*x authentication.
#@include common-auth
Notes :
/etc/pam-mysql.conf.useradd --no-create-home --disabled-password --disabled-login <nom>./etc/pam.d/sshd en décommentant la ligne account required pam_access.so/etc/security/access.confIl est possible de préciser des commandes à mettre dans le ~/.ssh/authorized_keys, par exemple, pour lancer une commande lors de la connexion :
command="dump /home" ssh-rsa <CLE PUBLIQUE SSH>
On peut retrouver cette erreur dans le fichier /var/log/secure :
Dec 27 15:00:41 nxlrjbs003 sshd[26234]: Connection from 114.121.255.158 port 60433 on 114.121.249.24 port 22
Dec 27 15:00:41 nxlrjbs003 sshd[26234]: Authentication refused: bad ownership or modes for directory /home/natjbos
Dec 27 15:00:41 nxlrjbs003 sshd[26234]: Failed publickey for natjbos from 114.121.255.158 port 60433 ssh2: RSA 88:be:7c:a2:e9:c5:76:f0:2e:f3:9b:15:48:8b:0e:f9
Il peut s’agir de problème de droit sur la home directory.
Résolution
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
StrictModes à “no” dans le fichier /etc/ssh/sshd_configToujours dans le fichier /var/log/secure, on peut avoir l’erreur suivante :
Jan 2 13:47:30 nxlrjbs003 sshd[12492]: Authentication tried for natjbos with correct key but not from a permitted host (host=114.121.255.158, ip=114.121.255.158).
Jan 2 13:47:30 nxlrjbs003 sshd[12492]: Failed publickey for natjbos from 114.121.255.158 port 50650 ssh2: RSA 88:be:7c:a2:e9:c5:76:f0:2e:f3:9b:15:48:8b:0e:f9
Résolution
Cette erreur peut survenir lorque l’on ajoute l’option --from dans le fichier authorized_keys.
Dans ce cas là, il faut mettre l’adresse vu dans les log (ici l’adresse dans host=114.121.255.158) et l’ajouter dans le fichier authorized_keys:
--from="100.100.100.100"
Sinon, il est possible d’autoriser à tous les hôtes :
from="*"
Délocker une session si trop de tentatives de connection échouées.
[root@tecmint pam.d]# pam_tally2 --user=tecmint --reset
Login Failures Latest failure From
tecmint 5 04/22/13 17:10:42 172.16.16.52