[6] SELinux – Porty

16 marca 2022 Wyłączono przez Adam [zicherka] Nogły

SELinux przypisuje Typy do portów sieciowych, więc niemożliwe jest uruchomienie usługi z portem, którego Typ nie jest skonfigurowany.

[1] Pokaż listę typów portów sieciowych, jak poniżej.

[root@vlsr01 ~]# semanage port -l
Typ portu SELinuksa            Protokół Numer portu
afs3_callback_port_t           tcp      7001
afs3_callback_port_t           udp      7001
afs_bos_port_t                 udp      7007
. . . . .
zookeeper_election_port_t      tcp      3888
zookeeper_leader_port_t        tcp      2888
zope_port_t                    tcp      8021

[2] Na przykład Ustaw 82 Port dla httpd.

Domyślny port 80 dla http i port 443 dla https są oznaczone [http_port_t] jak poniżej, ale 82 nie jest ustawiony. Jeśli więc poprawnie skonfigurowałeś httpd.conf z [listen 82] (patrz konfiguracja httpd) , httpd nie uruchomi się, ponieważ SELinux temu zaprzecza. Jeśli chcesz użyć 82, dodaj go do [http_port_t].

# pokaż aktualne ustawienia
[root@vlsr01 ~]# semanage port -l | grep -E -w "80|443"
http_port_t                    tcp      80, 81, 443, 488, 8008, 8009, 8443, 9000
# dodaj port 82
[root@vlsr01 ~]# semanage port -a -t http_port_t -p tcp 82
[root@vlsr01 ~]# semanage port -l | grep "^http_port_t"
http_port_t                    tcp      82, 80, 81, 443, 488, 8008, 8009, 8443, 9000
# został dodany
# po poprawnej zmianie httpd.conf uruchom ponownie httpd i sprawdź działanie
[root@vlsr01 ~]# ss -napt | grep httpd
LISTEN 0      128                           *:82                          *:*     users:(("httpd",pid=5128,fd=4),("httpd",pid=5127,fd=4),("httpd",pid=5126,fd=4),("httpd",pid=5123,fd=4))
# httpd nasłuchuje na porcie 82