Puncte:0

Care este cea mai bună practică pentru lansarea unui server web ca utilizator cu restricții?

drapel ar

Pentru a-mi exersa abilitățile de hardening Linux, încerc să lansez un server web urmând anumite principii de securitate. Scopul meu principal ar fi să rulez serverul folosind un utilizator dedicat cu privilegii foarte limitate. M-am gândit că acesta ar putea fi un caz de utilizare bun pentru crearea unui Server utilizator cu /usr/sbin/nologin coajă.

Dar cum ar trebui să lansez serverul? Când încercați să lansați o comandă simplă folosind su, primesc o eroare, chiar și când folosesc -s pentru a specifica un shell valid: introduceți descrierea imaginii aici

Bănuiesc că acesta este comportamentul așteptat pentru un utilizator cu nologin shell, dar cum ar putea acel utilizator să lanseze apoi un server? Ar trebui să fie unele sudo reguli de exemplu?

Pentru informații, serverul meu este unul simplu Balon server care se lansează folosind un simplu wrapper SH scenariu.

drapel br
Dacă trebuie să asculte pe porturi
Puncte:0
drapel cn

Am instalat serverele web nginx și apache2 pe SUSE, Ubuntu și Debian. Nu au rulat niciodată ca root sau așa ceva, întotdeauna ca www-data sau wwwrun. Descriu configurarea pas cu pas la https://try-linux.blogspot.com/2020/10/a-new-look-for-linuxintroorg.html dar, după cum s-a spus, va fi mai degrabă greu să o faci greșit. Câteva indicii din linia mea de comandă, lucrătorul rulează ca www-data:

# ps -ef|grep nginx
root 1923 1 0 Nov13 ? 00:00:00 nginx: procesul principal /usr/sbin/nginx -g daemon activat; master_process on;
www-data 1924 1923 0 Nov13 ? 00:09:29 nginx: proces de lucru
www-data 1925 1923 0 Nov13 ? 00:00:02 nginx: proces de lucru
root 22679 22074 0 12:32 pts/0 00:00:00 grep nginx
# cat /etc/passwd|grep www-data
www-data:x:33:33:www-data:/var/www:/usr/sbin/nologin
paupaulaz avatar
drapel ar
Mulțumesc mult! Am vrut să verific cum să fac asta „de mână” doar cu Flask, dar mi se pare cam complicat.. În cele din urmă am ales să învăț docker-compose și acum sunt un proprietar mândru al unui server care rulează nginx și flask în containere separate, cu doar nginx accesibil din exterior și redirecționând trafic către flask :)
Thorsten Staerk avatar
drapel cn
grozav, răspunsul tău îi dă năvală, îmi place :)

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.