Bonjour à tous,
J'ai eu un petit souci, que je suis arrivé à régler après de nombreuses recherches, concernant une ouverture de session SSH, et que j'aimerai vous faire profiter ;-)
Après une mise à jour à chaud de Mandriva 2006 vers 2008.1 sur un serveur Dedibox (bonjour l'angoisse), je ne suis plus arrivé à me connecter en SSH à partir de chez moi même avec un jeu de certificats qui fonctionnaient correctement auparavant. Je précise que mes serveurs Apache, mySql, proFTP, et consors fonctionnaient correctement après la MAJ.
Voici les infos qui étaient retournée sur le fichier /var/log/auth.log après une tentative de connexion par ID/password (sans certificats) :
Oct 17 16:40:12 mydomain sshd[8706]: Accepted password for billyzekid from xx.xx.xx.xx port 43842
Oct 17 16:40:12 mydomain sshd[8706]: error: openpty: No such file or directory
Oct 17 16:40:12 mydomain sshd[8710]: error: session_pty_req: session 0 alloc failed
Ce que j'ai compris c'est que l'authentification (avec ou sans certificat) fonctionnait correctement mais que le serveur n'arrivait pas à localiser le "pseudo" terminal.
J'ai donc regardé sur différents forums et suis tombé systématiquement sur une préconisation qui ne fonctionnait pas chez moi même après un hard reboot :
1) Ajouter la ligne suivante dans le fichier /etc/fstab :
devpts /dev/pts devpts rw,noexec,nosuid,gid=5,mode=620 0 0
2) monter /dev/pts avec la commande "$mount /dev/pts"
Après moult recherches, j'ai trouvé un article à ce sujet qui a résolu mon problème mais dont je ne comprend pas la raison profonde :
http://platonic.techfiz.info/2008/10/13/pty-allocation-reque(...)
Voici donc la commande magique qui m'a sauvé : $makedev /dev ptmx
La question maintenant est quelle est cette commande makedev et comment l'automatiser au démarrage autre que via le fichier rc.local ?
# assez commun
Posté par zecrazytux (site web personnel) . Évalué à 2.
Udev n'est pas installé ou pas/mal démarré
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.