이에 대한 후속 조치와 같은 것 :PHP를 사용하여 /etc/shadow에 대해 사용자를 인증하는 가장 안전한 방법은 무엇입니까?Ubuntu 16.04와 관련된 내용이 표시되지 않기 때문입니다.
HTTP를 통해 Linux 계정(Ubuntu 16.04)에 인증하려고 하는데 PECL-PAM
문제는 인증하려면 그룹 www-data
에 속해야 한다는 것입니다 . 내가 찾은 해결 방법은 다음을 사용하는 것이지만 해당 조합의 문제점은 지금까지 찾을 수 있는 것 중 과거 인증에 로그인한 사용자의 신원이 없다는 것입니다.shadow
/etc/shadow
mod_authnz_external
pwauth
/somedir/$user
나의 최종 목표는 사용자가 HTTP/PHP를 통해 인증하고 홈 디렉터리(예:)에서 파일을 관리 할 수 있도록 하는 것입니다 . 나는 원래 Webmin을 사용하고 있었지만 filemin
usermin 모듈과 관련된 다른 문제가 발생하여 더 많은 홈브류 솔루션으로 전환했습니다.
www-data가 섀도우 그룹에 속하지 않고 인증을 위해 PHP/PAM 패키지를 사용할 수 있습니까? 아니면 가능하지 않은 경우 mod_authnz_external
AND를 사용하여 pwauth
로그인한 사용자와 세션을 시작할 수 있습니까 ?
답변1
mod_authnz_external
PHP_AUTH_USER
이 변수는 사용자가 성공적으로 인증되면 설정됩니다.
다음과 같이 세션을 시작할 수 있습니다.
<?php
if (isset($_SERVER['PHP_AUTH_USER'])) {
// Your code which uses the username set in `$_SERVER['PHP_AUTH_USER']`
// to set up a session.
}
답변2
토큰/검증에 대한 액세스를 처리하기 위해 상자에서 실행되는 기존 서비스를 사용하는 것이 더 간단하고 안전하지 않습니까? (ssh2_auth_password(), imap_open()....)