Linux: Krótki przewodnik instalacji nginx i ufw firewall

25-mar-2022

nginx na dobre wyparł już ze świata Linuxa starego poczciwego httpd/Apache (zdanie z przymróżeniem oka). Oto krótki przewodnik instalacji nginx na Ubuntu

Zaczynamy od instalacji samego pakietu:

sudo apt update
sudo apt install nginx

Podczas instalacji pakietu dzieje się jedna fajna rzecz. Nginx dodaje reguły aplikacyjne do firewalla ufw. Można je wylistować korzystając z:

sudo ufw app list

Są trzy domyślne zestawy: HTTP, HTTPS i Full (zawierający zarówno http jak i https). Można je włączyć uruchamiając np:

sudo ufw allow 'Nginx Full'

Jeśli chcesz zachować kontrolę nad zmianami w firewall możesz też otwierać zamykać porty samodzielnie korzystając z nazw protokołów lub nawet numerów portów:

sudo ufw allow https 
sudo ufw allow 443

Status firewalla można sprawdzić poleceniem

sudo ufw status

a spodziewany wynik to np coś w tym stylu:

Status: active

To Action From
-- ------ ----
443/tcp ALLOW Anywhere
22/tcp ALLOW Anywhere
80/tcp ALLOW Anywhere
Nginx Full ALLOW Anywhere
443/tcp (v6) ALLOW Anywhere (v6)
22/tcp (v6) ALLOW Anywhere (v6)
80/tcp (v6) ALLOW Anywhere (v6)
Nginx Full (v6) ALLOW Anywhere (v6)

Gdyby status ufw był inactive, to włączenie firewalla wykonasz przez

sudo ufw enable

Jednak przed włączeniem ufw, warto sprawdzić, czy np. zezwalamy na połączenia na porcie 22 (ssh). Niestety nie ma komendy, która by pozwoliła to zzrobić za prośrednictem ufw. Można za to wszystkie reguły podejrzeć w pliku:

sudo cat /etc/ufw/user.rules

Wróćmy do konfiguracji nginx. Warto by było, żeby usługa startowała automatycznie po uruchomieniu systemu:

systemctl enable nginx
systemctl start nginx
systemctl status nginx

Domyślna konfiguracja nginx znajduje się w /etc/nginx/nginx.conf. Domyślnie serwer nasłuchuje tylko na porcie 80 i root wskazuje na pliki w katalogu /var/www/html

Konfigurację można (i należy) docelowo zmienić tak, aby mogła obsługiwać multi-site.

Całkiem ładny opis instalacji ingx jest też tu

https://www.digitalocean.com/community/tutorials/how-to-install-nginx-on-ubuntu-20-04

Manual do ufw tutaj:

https://ubuntu.com/server/docs/security-firewall

i tu:

How To Setup a Firewall with UFW on an Ubuntu and Debian Cloud Server | DigitalOcean

Komentarze są wyłączone

Autor: Rafał Kraik