Kako spremeniti vrata Nginx v Linuxu


Nginx je odprtokodni stabilen strežnik, ki poganja nekatera najbolj obiskana spletna mesta danes. Med spletnimi storitvami je mogoče spletni strežnik Nginx uspešno uporabiti kot izravnalnik obremenitve, spletni povratni proxy ali kot strežnik proxy POP in IMAP.

Strežnik Nginx HTTP privzeto posluša dohodno povezavo in se poveže na vrata 80, ki predstavljajo standardna spletna vrata. Vendar konfiguracija TLS, ki privzeto ni omogočena v Nginxu, posluša varne povezave na vratih 443.

Če želimo, da strežnik HTTP Nginx posluša dohodne spletne povezave na drugih nestandardnih vratih, moramo urediti glavno konfiguracijsko datoteko in spremeniti ali dodati novo izjavo, ki odraža to dejstvo.

V sistemu, ki temelji na Ubuntu in Debianu, moramo spremeniti datoteko/etc/nginx/sites-enabled/default in v distribucijah na osnovi RHEL in CentOS urediti datoteko /etc/nginx/nginx.conf.

Za začetek odprite konfiguracijsko datoteko Nginx z urejevalnikom besedila in spremenite številko vrat, kot je prikazano v spodnjem izvlečku.

# vi /etc/nginx/sites-enabled/default  [On Debian/Ubuntu]
# vi /etc/nginx/nginx.conf             [On CentOS/RHEL]

V tem odlomku bomo konfigurirali strežnik HTTP Nginx za poslušanje dohodnih povezav na vratih 3200. Poiščite vrstico, ki se začne z stavkom poslušaj , v direktivi strežnika in spremenite vrata z 80 na 3200, kot je prikazano v spodnjo sliko.

listen 3200 default_server;

Ko spremenite izjavo o vratih Nginx, morate znova zagnati spletni strežnik, da se povežete z novimi vrati v distribucijah Linuxa, ki temeljijo na Debianu. Preverite tabelo vtičnic lokalnega omrežja z ukazom netstat ali ss. V tabeli lokalnega omrežja strežnika morajo biti prikazana vrata 3200.

# systemctl restart nginx
# netstat -tlpn| grep nginx
# ss -tlpn| grep nginx

V distribuciji Linuxa, ki temelji na CentOS ali RHEL, morate namestiti paket policycoreutils in dodati spodnja pravila, ki jih SELinux zahteva, da se Nginx poveže z novimi vrati.

# yum install policycoreutils
# semanage port -a -t http_port_t -p tcp 3200
# semanage port -m -t http_port_t -p tcp 3200

Končno znova zaženite strežnik HTTP Nginx, da uporabite spremembe.

# systemctl restart nginx.service 

Preverite poslušalne vtičnice omrežnih miz.

# netstat -tlpn| grep nginx
# ss -tlpn| grep nginx

Če želite preveriti, ali je do spletnega strežnika mogoče dostopati z računalnikov v vašem omrežju, odprite brskalnik in se pomaknite do naslova IP strežnika ali imena domene na vratih 3200. Videti bi morali privzeto spletno stran Nginx, kot je prikazano na spodnjem posnetku zaslona.

http://sever.ip:3200 

Če pa ne morete brskati po spletni strani Nginx, se vrnite na konzolo strežnika in preverite pravila požarnega zidu, da dovolite dohodni promet na vratih 3200/tcp.