Apache HTTP je díky svým různým vlastnostem jedním z nejpoužívanějších webových serverů na internetu, mezi nimiž vyzdvihujeme flexibilitu, stabilitu a mnoho dalších.
Ve výchozím nastavení webový server Apache přijímá pokyny k naslouchání příchozímu připojení a vazbě na port 80 počítače. V případě použití konfigurace TLS bude server naslouchat zabezpečenému připojení na portu 443.
Pokud je cílem, aby webový server Apache svázal a poslouchal webový provoz na jiných portech kromě standardních webových portů, budeme muset přidat novou instrukci, kam bude nový port naslouchání zahrnut.
Jak upravit port HTTP serveru Apache v systému Linux
Krok 1
V distribucích založených na Debianu nebo Ubuntu je konfiguračním souborem k úpravě soubor /etc/apache2/ports.conf a v distribucích založených na RHEL nebo CentOS upravíme soubor /etc/httpd/conf/httpd.conf.
nano /etc/apache2/ports.conf (Debian/Ubuntu) nano /etc/httpd/conf/httpd.conf (RHEL/CentOS)Krok 2
V tomto případě použijeme Ubuntu 17. Při přístupu k tomuto souboru uvidíme následující:
Krok 3
Jak vidíme, výchozí hodnota v řádku LISTEN je port 80. Pro tento tutoriál nakonfigurujeme server Apache HTTP tak, aby naslouchal připojení na portu 8081 počítače, proto přidáme řádek „LISTEN 8081“ jen pod čárou portu 80:
Krok 4
Změny uložíme pomocí následující kombinace kláves:
Ctrl + O
Editor opustíme pomocí:
Ctrl + X
Krok 4
Po přidání uvedeného řádku bude nutné vytvořit nebo upravit virtuálního hostitele Apache v distribucích založených na Debianu nebo Ubuntu, aby se zahájil proces vazby, což pomůže s požadavky vhost.
U distribucí založených na CentOS nebo RHEL je změna použita přímo na výchozího virtuálního hostitele.
V tomto případě otevřeme a upravíme soubor 000-default.conf a tam změníme port na 8081 následujícím způsobem:
nano /etc/apache2/sites-enabled/000-default.conf
Krok 5
Do řádku „VirtualHost“ nastavíme port 8081, uložíme změny a ukončíme editor.
Nakonec použijeme změny a umožníme Apache navázat nový port, abychom restartovali démona a ověřili tabulku soketů místní sítě pomocí příkazu netstat nebo ss. Port 8081 k naslouchání musí být uveden v síťové tabulce serveru, jak jsme definovali dříve, provedeme následující:
systemctl restart apache2 netstat -tlpn | grep apache ss -tlpn | grep apache
Krok 6
Nyní, abychom ověřili, že je připojení správné, budeme přistupovat z prohlížeče pomocí následující syntaxe:
http: // IP_adresa: 8081
Krok 7
V distribucích Linuxu založených na CentOS / RHEL se chystáme balíček nainstalovat policycoreutils přidat požadovaná pravidla SELinux, aby se Apache mohl vázat na nový port a restartovat server Apache HTTP, aby provedl změny. Provádíme následující:
yum nainstalovat policycoreutils
Krok 8
Tam zadáme písmeno y pro potvrzení stahování a instalace. Dále přidáme pravidla SELinux pro port 8081:
Semanage port -a -t http_port_t -p tcp 8081 semanage port -m -t http_port_t -p tcp 8081
PoznámkaV případě chyby se semanage musíme nainstalovat následující:
yum nainstalovat policycoreutils-python
Krok 9
Nyní přistoupíme k resetování služby Apache:
systemctl restart httpd.serviceKrok 10
Poté spustíme příkaz netstat nebo ss, abychom ověřili, zda se nový port připojuje správně a naslouchá příchozímu provozu, provedeme jeden z následujících řádků:
netstat -tlpn | grep httpd ss -tlpn | grep httpd
Krok 11
Stejně jako Ubuntu můžeme jít do prohlížeče a zadat pomocí následující syntaxe:
http: // IP_adresa: 8081Pomocí této metody můžeme upravit výchozí port Apache v Linuxu.