Bonsoir,
voilà mon projet, je voudrais créer une interface pour mes utilisateurs (ceux que j'héberge). L'interface je vais la faire en php, ça ne devrait pas poser de soucis.
Par contre, je ne veut pas que les utilisateurs doivent s'inscrire à quoi que ce soit en plus pour pouvoir se connecter. Je voudrais donc qu'il puissent se logger avec le login et mot de passe qu'ils utilisent pour le ftp, ou le mail.
On ma dit que le fichier où se trouvent tout celà est shadow.
Il se trouve dans /etc/shadow et un deuxieme /etc/shadow- .
Accéder directement en php, déjà niveau droits, pas simple et niveau sécu, jpense pas que ça soit le panard.
Ma question, est comment récupérer les login et mdp, avec le plus de sécurité possible. Par exemple en envoyant dans une bdd pour que php les récup.
On ma parler du PAM php, mais je ne trouve pas grand chose.
Merci d'avance pour vos réponse. PS: SME 7.1.3
modifié par : droide02, 13 Jn 2007 - 23:36
Migration writed for droide02
Salut,
Il existe effectivement une extension php (php-auth-pam) qui permet de s'authentifier via PAM
http://www.math.ohio-state.edu/~ccunning/pam_auth/
Mais aucun module précompilé existe pour sme server ou centos.
Si tu veux passer par php il faudra le compiler toi-même.
Par contre dans le repository de la sme, j'ai vu un module perl-authen-pam, qui devrait faire le même genre de chose, voir même plus. C'est du perl mais bon perl-php ce ne sont que des languages après tout
A+,
MasterSleepy.
Migration writed for MasterSleepy
Bonjour,
merci de ta réponse.
Je vais voir pour me mettre au Perl alors, que je ne connait pas du tout, juste lu la page sur wikipedia pour l'instant.
Aurais-tu un tutoriel à me conseiller, j'ai trouver celui-ci mais je ne sais pas s'il est bien... http://www.med.univ-rennes1.fr/~poulique/cours/perl/perl_html/introperl03.html
Et pour avoir une idée, savoir si je pense bien ou pas.
En perl:
- Lire le fichier shadow
- Envoyer ce qui m'interesse ( login + mot de passe ) dans MySql
En php:
- Lire dans MySql
- Faire tout le reste :roll:
Merci.
Migration writed for droide02
Salut,
Pour ce qui est du tutorial, les miens était les modules fait pour le server-manager de la sme.
C'est vrai que maintenant, je trouve, cela se complique beaucoup.
Pourquoi veux-tu faire cela en deux étapes, pourquoi pas tout faire en perl?
A+,
MasterSleepy.
Migration writed for MasterSleepy
Oui aussi ...
J'ai vu qu'apparament on peut faire une interface web avec du perl, en CGI, je pense que ça pourrait etre une tres bonne solution et peut etre mieux niveau sécu.
Est-ce possible par contre, dans l'interface d'afficher l'espace disque occupé ou disponible a l'utilisateur qui c'est loggé ?
Merci.
Migration writed for droide02
Salut,
Oui, c'est surement possible.
Regards la commande quota.
A+,
MasterSleepy
Migration writed for MasterSleepy
Alors, j'ai du nouveau.
Je suis tombé par hazard sur un rpm de chez dungog quand j'en cherchait un autre ...
ça s'appel user panel access
http://www.dungog.net/sme/usermanager.php
, ça refait commme un manager mais où on choisit ce que les tel ou tel utilisateur peut ou ne peut pas faire, très pratique dans mon cas, mes utilisateurs peuvent changer leur mot de passe, effectuer un backup de leur /home ( meme si ça serai mieux, le dossier de leur ibay.) et d'autres chosess ...
=> je l'explique ici
Par contre, les retours utilisateurs qui se trouve dans le lien d'ailleurs, pour l'accès, ça fonctionne comme le server-manager, il faut autoriser l'ip à y accéder. Aucuns soucis pour ceux qui ont une IP Fixe, mais certains n'en ont pas, donc pas cool du tout.
Aurais-tu une solution pour remédier à ce problème. Car dans ce cas, pas besoin de redévellope un pannel comme celà.
Merci.
Migration writed for droide02
Salut,
Tu peux essayer cette technique:
On vas modifier un des templates de la contrib:
[code=bash]mkdir -p /etc/e-smith/templates-custom/etc/httpd/conf/httpd.conf/VirtualHosts
cp /etc/e-smith/templates-custom/etc/httpd/conf/httpd.conf/VirtualHosts/28UserManagerProxyPass \
/etc/e-smith/templates-custom/etc/httpd/conf/httpd.conf/VirtualHosts/
[/code]
Edite le fichier /etc/e-smith/templates-custom/etc/httpd/conf/httpd.conf/VirtualHosts/28UserManagerProxyPass
avec ton éditeur préféré et change les lignes :
$OUT .= " allow from $localAccess $externalSSLAccess\n";
} else {
$OUT .= " allow from $localAccess\n";
par
$OUT .= " allow from all\n";
} else {
$OUT .= " allow from all\n";
et pour terminer prise en compte des modifications:
expand-template /etc/httpd/conf/httpd.conf
service httpd-e-smith sigusr1
Après ça devrait être bon.
A+,
MasterSleepy.
Migration writed for MasterSleepy
Merci bien,
mais petit soucis, je n'est pas de fichier /28UserManagerProxyPass donc je ne peut pas aller plus loin ...
Edit : je suis passer par
mc
et j'ai trouver le fichier, et modifier. Je vais faire des tests avec mon ptit beta testeur attitré
modifié par : droide02, 22 Jn 2007 - 14:57
Migration writed for droide02
bon ça ne fonctionne toujours pas. Par contre je ne comprend pas trop tes deux premieres commandes ...
mkdir -p /etc/e-smith/templates-custom/etc/httpd/conf/httpd.conf/VirtualHosts
=> ok, on cré le repertoire VirutalHosts
cp /etc/e-smith/templates-custom/etc/httpd/conf/httpd.conf/VirtualHosts/28UserManagerProxyPass \ /etc/e-smith/templates-custom/etc/httpd/conf/httpd.conf/VirtualHosts/
Mais là on colle un fichier dans le repertoire ou on as copier ....
:-? :-? :-?
Migration writed for droide02
Salut,
je me suis trompé dans un des chemins
[quote=MasterSleepy]
[code=bash]mkdir -p /etc/e-smith/templates-custom/etc/httpd/conf/httpd.conf/VirtualHosts
cp /etc/e-smith/templates-custom/etc/httpd/conf/httpd.conf/VirtualHosts/28UserManagerProxyPass \
/etc/e-smith/templates-custom/etc/httpd/conf/httpd.conf/VirtualHosts/
[/code]
[/quote]
C'est lors de la copie que je me suis trompé,
C'est plutôt :
[code=bash]mkdir -p /etc/e-smith/templates-custom/etc/httpd/conf/httpd.conf/VirtualHosts
cp /etc/e-smith/templates/etc/httpd/conf/httpd.conf/VirtualHosts/28UserManagerProxyPass \
/etc/e-smith/templates-custom/etc/httpd/conf/httpd.conf/VirtualHosts/
[/code]
Désolé,
A+,
MasterSleepy.
Migration writed for MasterSleepy
Bon, et bien en changeant et suivant tes intstructions, toujours pas d'acces...
You don't have permission to access /server-common/cgi-bin/login on this server.
Migration writed for droide02
SI tu veut tester d'ailleurs:
https://waccabac.fr/user-manager/
Migration writed for droide02
On dirait que ça ne fonctionne pas.
MMMmmm ce n'était peut-être pas la bonne technique.
Je vais regarder ça e WE si j'ai du temps.
A+,
MasterSleepy
Migration writed for MasterSleepy
ok, merci beaucoup.
Migration writed for droide02
Salut,
J'ai peut-être une solution.
Le message d'erreur que tu as est du à la nouvelle architecture de la sme.
Essaye les manip suivantes:
[code=bash]mkdir -p /etc/e-smith/templates-custom/etc/httpd/conf/httpd.conf/VirtualHosts
cp /etc/e-smith/templates/etc/httpd/conf/httpd.conf/VirtualHosts/27ManagerProxyPass
\ /etc/e-smith/templates-custom/etc/httpd/conf/httpd.conf/VirtualHosts/[/code]
edit le fichier /etc/e-smith/templates-custom/etc/httpd/conf/httpd.conf/VirtualHosts/27ManagerProxyPass
pour qu'il ressemble à
{
# vim: ft=perl:
$haveSSL = (exists ${modSSL}{status} and ${modSSL}{status} eq "enabled") ? 'yes' : 'no';
$plainTextAccess = ${'httpd-admin'}{PermitPlainTextAccess} || 'no';
$OUT = '';
foreach $place ('server-manager','server-common','user-password')
{
if (($port eq "80") && ($haveSSL eq 'yes') && ($plainTextAccess ne 'yes'))
{
$OUT .= " RewriteRule ^/$place(/.*|\$) https://%{HTTP_HOST}/$place\$1 [L,R]\n";
} else {
$OUT .= " ProxyPass /$place http://127.0.0.1:${'httpd-admin'}{TCPPort}/$place\n";
$OUT .= " ProxyPassReverse /$place http://127.0.0.1:${'httpd-admin'}{TCPPort}/$place\n";
}
$OUT .= "\n"; \n";
$OUT .= " order deny,allow\n";
$OUT .= " deny from all\n";
if ($place eq "server-common")
{
$OUT .= " allow from all\n";
} else {
if (($haveSSL eq 'yes') && (($port eq "443") || ($plainTextAccess ne 'yes')))
{
$OUT .= " allow from $localAccess $externalSSLAccess\n";
} else {
$OUT .= " allow from $localAccess\n";
}
}
$OUT .= "
}
}
et pour finir le classique des classiques :
expand-template /etc/httpd/conf/httpd.conf
service httpd-e-smith sigusr1
Voilà,
A+,
MasterSleepy.
Migration writed for MasterSleepy
Et bien mon beta testeur à tester, ça lui demande login et mot de passe, et plus la non autorisation.
Merci beaucoup MasterSleepy ! Impec comme à ton habitude !
Migration writed for droide02