2 votes

Comment permettre aux utilisateurs de se connecter via SSH depuis une webapp ?

Je dois créer une application web (Apache/PHP) qui agit comme un portail web pour les personnes qui ont besoin de se connecter via SSH sur plusieurs serveurs. Il suffit d'aller sur le portail, de s'authentifier, et de demander l'ouverture d'un accès SSH. A partir de là, il peut se connecter avec son client SSH préféré, et peut arrêter la session sur l'application web. Tous les serveurs sont des Debian Lenny ou Squeeze, et nous nous connectons déjà à eux à travers un proxy SSH. Sur ce proxy, il y a un fichier /etc/ssh/sshd_config

AllowUsers user1@192.168.1.* user2@192.168.1.* 
AllowUsers user3@192.168.1.*

Comment puis-je autoriser ou interdire l'accès d'un utilisateur à ma webapp ? Un moyen plus simple que de réécrire ce fichier et de redémarrer opensshd ?

0 votes

Nous avons trouvé un moyen de le faire via PAM qui permet d'appeler un script, et le script répond que l'utilisateur a le droit de se connecter. Nous essayons de mettre en œuvre l'ensemble de la chose.

3voto

Samat Jain Points 165

Au lieu de AllowUsers utilisez quelque chose comme AllowGroups sshaccess .

Ensuite, vous pouvez demander à votre application web d'ajouter cet utilisateur à la liste des utilisateurs. sshaccess et ils pourront s'authentifier. Cela ne vous obligera pas à relancer sshd à chaque changement, comme ce serait le cas avec le logiciel AllowUsers .

Vous obtiendrez des points bonus si vous mettez en œuvre le protocole LDAP pour l'authentification, ce qui facilite la gestion programmatique des utilisateurs et des groupes et vous permet de gérer une base de données centrale d'utilisateurs à laquelle plusieurs serveurs peuvent se référer.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X