Kako promijeniti Apache HTTP port u Linuxu


Apache HTTP poslužitelj jedan je od najčešće korištenih web poslužitelja na internetu danas, zahvaljujući svojoj fleksibilnosti, stabilnosti i mnoštvu značajki od kojih neke trenutno nisu prisutne na drugim web poslužiteljima, kao npr. rival Nginx.

Neke od najvažnijih značajki Apachea uključuju mogućnost učitavanja i pokretanja različitih vrsta modula i posebnih konfiguracija tijekom izvođenja, bez stvarnog zaustavljanja poslužitelja ili, još gore, kompajliranja softvera svaki put kada se doda novi modul i odigra posebna uloga putem .htaccess datoteka, koje mogu promijeniti konfiguracije web poslužitelja specifične za webroot direktorije.

Prema zadanim postavkama, web-poslužitelj Apache dobiva upute da osluškuje dolaznu vezu i veže se na priključak 80. Ako se odlučite za TLS konfiguraciju, poslužitelj će slušati sigurne veze na portu 443.

Kako biste uputili Apache web poslužitelj da veže i sluša web promet na drugim priključcima osim standardnih web priključaka, trebate dodati novu izjavu koja sadrži novi priključak za buduća povezivanja.

U sustavu temeljenom na Debian/Ubuntu konfiguracijska datoteka koju je potrebno modificirati je datoteka /etc/apache2/ports.conf i temelji se na RHEL/CentOS distribucije uredi datoteku /etc/httpd/conf/httpd.conf.

Otvorite datoteku specifičnu za vašu vlastitu distribuciju pomoću uređivača teksta na konzoli i dodajte novu izjavu porta kao što je prikazano u donjem izvatku.

nano /etc/apache2/ports.conf     [On Debian/Ubuntu]
nano /etc/httpd/conf/httpd.conf  [On RHEL/CentOS]

U ovom primjeru ćemo konfigurirati Apache HTTP poslužitelj da sluša veze na portu 8081. Provjerite jeste li dodali donju izjavu u ovu datoteku, nakon direktive koja daje upute web poslužitelju da sluša na portu 80, kao što je ilustrirano na slici ispod.

Listen 8081

Nakon što ste dodali gornji redak, morate stvoriti ili izmijeniti Apache virtualni host u distribuciji baziranoj na Debian/Ubuntu kako biste započeli proces povezivanja, specifičan za vaše zahtjeve za vhost.

U CentOS/RHEL distribucijama, promjena se primjenjuje izravno na zadani virtualni host. U donjem primjeru izmijenit ćemo zadani virtualni host web poslužitelja i uputiti Apache da osluškuje web promet s porta 80 na port 8081.

Otvorite i uredite datoteku 000-default.conf i promijenite port u 8081 kao što je prikazano na slici ispod.

nano /etc/apache2/sites-enabled/000-default.conf 

Konačno, da biste primijenili promjene i natjerali Apache da se veže na novi priključak, ponovno pokrenite demon i provjerite tablicu utičnica lokalne mreže koristeći netstat ili ss naredbu. Port 8081 koji sluša treba biti prikazan u tablici mreže vašeg poslužitelja.

systemctl restart apache2
netstat -tlpn| grep apache
ss -tlpn| grep apache

Također možete otvoriti preglednik i otići do IP adrese ili naziva domene vašeg poslužitelja na portu 8081. Zadana stranica Apache trebala bi biti prikazana u pregledniku. Međutim, ako ne možete pregledavati web-stranicu, vratite se na konzolu poslužitelja i provjerite jesu li postavljena odgovarajuća pravila vatrozida kako bi se omogućio promet porta.

http://server.ip:8081 

Na Linux distribuciji temeljenoj na CentOS/RHEL instalirajte paket policycoreutils kako biste dodali potrebna SELinux pravila za vezanje Apachea na novi port i ponovno pokrenite Apache HTTP poslužitelj za primjenu promjena.

yum install policycoreutils

Dodajte Selinux pravila za port 8081.

semanage port -a -t http_port_t -p tcp 8081
semanage port -m -t http_port_t -p tcp 8081

Ponovno pokrenite Apache web poslužitelj

systemctl restart httpd.service 

Izvršite netstat ili ss naredbu da provjerite je li se novi port uspješno povezao i osluškujete dolazni promet.

netstat -tlpn| grep httpd
ss -tlpn| grep httpd

Otvorite preglednik i dođite do IP adrese ili naziva domene vašeg poslužitelja na portu 8081 kako biste provjerili je li novi web priključak dostupan u vašoj mreži. Zadana stranica Apache trebala bi biti prikazana u pregledniku

http://server.ip:8081 

Ako ne možete doći do gornje adrese, provjerite jeste li dodali ispravna pravila vatrozida u tablicu Vatrozida vašeg poslužitelja.