Autenticazione a linux da php

catellostefano

Utente Attivo
19 Dic 2008
525
2
0
www.stepo.biz
ciao a tutti scusate della mia assenza,

dovrei chiedervi una cosetta, io ho creato un form con il campo user e pass, ora deve effettuare l'autenticazione dei utenti linux, cioè invece di confrontare i dati postati con un database, li deve confrontare con utenti reali di linux!

come faccio??

grazie
 

catellostefano

Utente Attivo
19 Dic 2008
525
2
0
www.stepo.biz
no forse mi sono spiegato io male.

io dalla pagina login.php (visibile a browser), devo andare alla pagina panel.php solo se ho effettuato l'accesso "di sistema", cioè l'user è di sistema e non uno virtuale su db
 

catellostefano

Utente Attivo
19 Dic 2008
525
2
0
www.stepo.biz
guarda l'ho instalalto correttamente, ma la pagina php mi restituisce questo errore

Codice:
Fatal error: Call to undefined function pam_auth() in /home/sistem/panel/funzioni/login.php  on line 10

ecco la pagina

PHP:
<?php

$nomeutente = $_POST['nomeutente'];
$password = $_POST['password'];

// controllo sul parametro d'invio
if($_POST['user']!="")
	{ 

		if (pam_auth($username, $password))
		   {
			$_COOKIE['login'] = $nomeutente;
			@header("Location: ?page=home");
		   }
		else
		   {
			$testopagina = '<p>password non corretta. <a href="?page=login" onclick="history.back();">Torna indietro</a></p>';
		   }
	}
else
	{

//Prendo i dati del form
$titolo= 'titolo';

$pagetext = '
<div id="wrap">
	<div id="top"></div>

 	<div id="mid">
		<div id="content-wrap" align="center"> 

			<form action="" method="post" target="_top">
			    <table width="200" class="login" cellpadding="0" cellspacing="0">
			        <tr>

			            <td align="left"><b>Login</b></td>
			            <td>&nbsp;</td>

			        </tr>
			        <tr>

			            <td>Username</td>
			            <td><input id="user" type="text" name="user" size="16" tabindex="1"></td>

			        </tr>
			        <tr>

			            <td>Password</td>
			            <td><input id="pass" type="password" name="pass" size="16" tabindex="2"></td>

			        </tr>
			        <tr>
			            <td colspan="2" style="text-align: center"><input type="submit" value="Login"></td>
			        </tr>
			    </table>
			    <input type="hidden" name="goto_uri" value="/" />
			</form>

		</div>
	</div>
	<div id="bot"></div>
	&copy; IsPanel. 2010
</div>';

	}

?>
 

Eliox

Utente Attivo
25 Feb 2005
4.390
3
0
la funzione pam_auth() sta nel percorso "inc/auth/pam.class.php", prova a fare un'inlude all'inizio della pagina.
 

catellostefano

Utente Attivo
19 Dic 2008
525
2
0
www.stepo.biz
Codice:
Warning: include_once(inc/auth/pam.class.php) [function.include-once]: failed to open stream: No such file or directory in /home/sistem/panel/funzioni/login.php  on line 6

Warning: include_once() [function.include]: Failed opening 'inc/auth/pam.class.php' for inclusion (include_path='.:/usr/share/php:/usr/share/pear') in /home/sistem/panel/funzioni/login.php on line 6

ero sicuro che me lo restituiva ho fatto
Codice:
cd inc
da ssh su linux, e diceve che non c'è nulla
 

catellostefano

Utente Attivo
19 Dic 2008
525
2
0
www.stepo.biz
scusate se rispondo ora ma sai le ferie:p:p

comunque ho installato per bene PAM, e questo è il codice della pagina

PHP:
<?php

$nomeutente = $_POST['user'];
$password = $_POST['pass'];

if($_POST['user']!="")
	{ 
		if (pam_auth($nomeutente, $password))
		   {
			$_COOKIE['nomeutente'] = $nomeutente;
			@header("Location: ?page=home");
		   }
		else
		   {
			print '<p>password non corretta. <a href="?page=login" onclick="history.back();">Torna indietro</a></p>';
		   }
	}
else
	{
		print '<center><br><br><br>
			<form action="" method="post" target="_top">
			    <table width="200" class="login" cellpadding="0" cellspacing="0">
			        <tr>

			            <td align="left"><b>Login</b></td>
			            <td>&nbsp;</td>

			        </tr>
			        <tr>

			            <td>Username</td>
			            <td><input id="user" type="text" name="user" size="16" tabindex="1"></td>

			        </tr>
			        <tr>

			            <td>Password</td>
			            <td><input id="pass" type="password" name="pass" size="16" tabindex="2"></td>

			        </tr>
			        <tr>
			            <td colspan="2" style="text-align: center"><input type="submit" value="Login"></td>
			        </tr>
			    </table>
			    <input type="hidden" name="goto_uri" value="/" />
			</form></center>';
	}
?>

ma mi dà sampre password incorretta.
 

alessandro1997

Utente Attivo
6 Ott 2009
5.302
1
0
26
Roma
alessandro1997.netsons.org
Ora che ci penso non dovresti aver bisogno di alcuna estensione. Puoi fare così:
PHP:
<?php
shell_exec('su - username');
shell_exec('password');

echo shell_exec('whoami');
?>
Se tutto va bene dovrebbe restituirti lo username con cui hai effettuato il login.
 

alessandro1997

Utente Attivo
6 Ott 2009
5.302
1
0
26
Roma
alessandro1997.netsons.org
Al posto di:
PHP:
if(pam_auth($nomeutente, $password))
Prova ad utilizzare questo:
PHP:
shell_exec("su - {$nomeutente}");
shell_exec($password);

if(shell_exec('whoami') == $nomeutente)
Ricordati di eseguire il logout se dopo devi eseguire qualche altro comando da shell, altrimenti lo eseguirai come se fossi loggato con l'account specificato.
 
Discussioni simili
Autore Titolo Forum Risposte Data
C Autenticazione a due fattori FB Social Media Marketing 0
MarcoGrazia Gestire lista campi vuoti in fase di autenticazione jQuery 1
felino Script PHP per leggere un file JSON. autenticazione? PHP 4
F Sistema di autenticazione e pagamento PHP 3
M Login Autenticazione Sviluppo app per Android 0
E [ASP.Net] Autenticazione integrata windows ASP.NET 0
G get userinfo da autenticazione oauth2 Javascript 0
P Salvare i dati restituiti dopo autenticazione OAuth2 Javascript 0
M Richiesta ajax con autenticazione base non funziona ! Ajax 0
E sistema di autenticazione PHP 4
Marco_88 Autenticazione PHP/OOP campi vuoti PHP 26
M Creazione sito con autenticazione utente (registrazione) PHP 3
R Sessioni, cookies e token di autenticazione PHP 0
Y Automatizzare OAuth2 ed autenticazione ASP.NET 0
R problemi di autenticazione PHP 0
B Scaricare file xml dopo autenticazione http PHP 1
M Problema doppia autenticazione HTML e CSS 4
Monital Autenticazione utenti joomla Joomla 0
Q sessione autenticazione PHP 3
M OOP e autenticazione PHP 4
max_400 Proteggere login con autenticazione database PHP 19
U Inviare una mail con autenticazione smtp PHP 4
B autenticazione iis Apache 4
L Autenticazione nascosta su sito Liferay (era: help tirocinio web management) HTML e CSS 0
A Autenticazione automatica su server ftp tramite programma in ASP Classic ASP 2
codesurfer Autenticazione LDAP PHP 0
F dubbio autenticazione windows reti lan Reti LAN e Wireless 4
A autenticazione con php PHP 5
E Problemi con autenticazione PHP 8
A PHP e sistema di autenticazione PHP 2
E DISPERATO! autenticazione dietro PROXY PHP 4
N classe per la gestione dell'autenticazione Snippet PHP 0
A Autenticazione sicura e Case sensitive Classic ASP 0
S autenticazione via url server apache Apache 0
S Problema reindizzamento dopo autenticazione PHP 4
M Dreamweaver Autenticazione utente Webdesign e Grafica 2
H autenticazione sessione ajax/php Ajax 2
T Form Autenticazione PHP 1
M [VB6] Crystal report e Autenticazione Win MSSQL Programmazione 0
P [PHP] Problema autenticazione mail PHP 0
A Problema con autenticazione e header() PHP 0
I ASP: autenticazione tramite password Classic ASP 4
I Dopo autenticazione non mi redireziona alla pagina. Classic ASP 3
G Autenticazione Utenti: Asp e Access 2000 Classic ASP 1
M Help for Linux Bash Programmazione 1
I dominio aruba versione php server linux Domini 3
M Problema Wi-Fi Linux Linux e Software 1
I Aiuto bash linux Programmazione 1
felino DELL T130: windows o linux? Hardware 1
D [MySQL] cerco sviluppatore data base windows e linux per riparare sito Offerte e Richieste di Lavoro e/o Collaborazione 1

Discussioni simili