Puncte:2

Cum se autentifică un utilizator Linux local cu modulul Nginx PAM?

drapel in

Aș dori să pot avea un utilizator Linux local să se autentifice cu datele de conectare atunci când accesează un site. Folosesc modulul ngx_http_auth_pam_module. În fișierul nginx.conf am următoarea configurație pentru directiva de locație:

Locație / {
        proxy_pass http://somewebsite:5000;
        rădăcină html;
        index index.html index.htm;
        auth_pam „Zona securizată”;
        auth_pam_service_name "nginx";
    }

Cu sintaxele „auth_pam” și „auth_pam_service_name” din fișierul meu nginx.conf, când accesez site-ul, mi se cere să introduc acreditările. În directorul /etc/pam.d am creat un fișier de serviciu „nginx” cu următoarele:

auth required pam_unix.so
cont este necesar pam_unix.so

Rulez asta pe un server CentOS 7. Înțeleg că ar trebui să creez un utilizator și/sau un grup Linux local și, eventual, să ofer acces la fișierul /etc/shadow, dar folosind tutorialele pe care le-am găsit online, încă nu mă pot autentifica cu un utilizator local. Ar putea cineva să-mi ofere pași despre cum să funcționeze, astfel încât să mă pot autentifica cu un utilizator Linux local când accesez site-ul?

Vă mulțumesc, orice ajutor este apreciat și vă pot oferi mai multe informații dacă este necesar.

Puncte:3
drapel cz

The CITEȘTE-MĂ pentru acest modul nginx terță parte spune:

Rețineți că modulul rulează ca utilizator de server web, astfel încât modulele PAM utilizate trebuie să poată autentifica utilizatorii fără a fi root; asta înseamnă că, dacă doriți să utilizați pam_unix.so pentru autentificarea utilizatorilor, trebuie să lăsați utilizatorul serverului web să citească /etc/shadow fișier dacă asta nu vă sperie (pe sisteme precum Debian puteți adăuga fișierul www-data utilizator la umbră grup).

Observați bine implicațiile de securitate ale permiterii serverului dvs. web și/sau aplicației web să citească fișierul umbră.

Nebek avatar
drapel in
Mulțumesc Michael. Care ar fi utilizatorul meu de server web sau cum pot afla? Ar fi Nginx?
Michael Hampton avatar
drapel cz
@Nebek Este afișat în lista de procese. De asemenea, puteți verifica unitatea systemd sau fișierul de configurare nginx.
Nebek avatar
drapel in
Îmi pare rău Michael, dar încă nu înțeleg. În fișierul meu de configurare nginx, în partea de sus, văd linia „user nobody”. Este „nimeni” utilizatorul serverului web? Ar trebui să editez această linie? De asemenea, dacă puteți, vă rog să-mi oferiți pași despre cum să acord utilizatorului serverului web permisiunea de a citi fișierul /etc/shadow. Mulțumesc!

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.