Hvordan endre Nginx-port i Linux
Nginx er en åpen kildekode stabil server som driver noen av de mest trafikkerte nettstedene på internett i dag. Blant webtjenester kan Nginx-webserver med suksess distribueres som en belastningsbalanser, nettomvendt proxy eller som en POP- og IMAP-proxyserver.
Som standard lytter Nginx HTTP-serveren etter innkommende tilkobling og binder seg til port 80, som representerer standard nettport. TLS-konfigurasjonen, som ikke er aktivert som standard i Nginx, lytter imidlertid etter sikre tilkoblinger på port 443.
For å få Nginx HTTP-server til å lytte etter innkommende nettforbindelser på andre ikke-standardporter, må vi redigere hovedkonfigurasjonsfilen og endre eller legge til en ny uttalelse for å gjenspeile dette faktum.
I Ubuntu- og Debian-baserte systemer må vi endre /etc/nginx/sites-enabled/default-filen og på RHEL - og CentOS-baserte distribusjoner redigerer /etc/nginx/nginx.conf-filen.
Til å begynne med, åpne Nginx-konfigurasjonsfilen med et tekstredigeringsprogram, og endre portnummeret som vist i utdraget nedenfor.
vi /etc/nginx/sites-enabled/default [On Debian/Ubuntu]
vi /etc/nginx/nginx.conf [On CentOS/RHEL]
I dette utdraget konfigurerer vi Nginx HTTP-serveren til å lytte etter innkommende tilkoblinger på port 3200. Søk etter linjen som begynner med listen
-setningen i serverdirektivet og endre porten fra 80 til 3200, som illustrert i bildet nedenfor.
listen 3200 default_server;
Etter å ha endret Nginx-portsetningen, må du starte webserveren på nytt for å binde deg til den nye porten på Debian-baserte Linux-distribusjoner. Bekreft tabell over lokale nettverkskontakter med netstat eller ss-kommando. Port 3200 skal vises i serverens lokale nettverkstabell.
systemctl restart nginx
netstat -tlpn| grep nginx
ss -tlpn| grep nginx
I CentOS- eller RHEL-basert Linux-distribusjon må du installere pakken policycoreutils og legge til reglene nedenfor som kreves av SELinux for at Nginx skal binde seg til den nye porten .
yum install policycoreutils
semanage port -a -t http_port_t -p tcp 3200
semanage port -m -t http_port_t -p tcp 3200
Start til slutt Nginx HTTP-serveren på nytt for å bruke endringer.
systemctl restart nginx.service
Sjekk nettverkstabellens lyttekontakter.
netstat -tlpn| grep nginx
ss -tlpn| grep nginx
For å sjekke om webserveren kan nås fra datamaskiner i nettverket ditt, åpne en nettleser og naviger til serverens IP-adresse eller domenenavn på port 3200. Du bør se Nginx standard nettside, som illustrert i skjermbildet nedenfor.
http://sever.ip:3200
Men hvis du ikke kan bla gjennom Nginx-nettsiden, gå tilbake til serverkonsollen og sjekk brannmurreglene for å tillate innkommende trafikk på port 3200/tcp.