SElinux-Fehler: ValueError: Port tcp / 5000 bereits definiert

13

Ich habe versucht, SELinux eine Ausnahme für Apache auf Port 5000 hinzuzufügen. Also habe ich den Befehl verwendet:

 # semanage port -a -t http_port_t -p tcp 5000

Aber gibt den Fehler zurück,

ValueError: Port tcp/5000 already defined

Ich habe versucht zu überprüfen, ob dies mit dem Befehl so ist:

semanage port -l |grep 5000

was die Ausgabe gab,

http_port_t                    tcp      80, 81, 443, 488, 8008, 8009, 8443, 9000

Wie Sie sehen können, ist 5000 nicht auf der Liste.

Gibt es etwas, das ich vermisse? Vielen Dank im Voraus für Ihre Mühe

So fand ich, dass ein anderer Dienst einen definierten Status für TCP-Port 5000 hatte.

Durch Ersetzen der -aOption durch -mzum Ändern wurde TCP-Port 5000 hinzugefügthttp_port_t

Panikprocrastinator
quelle

Antworten:

27

So fand ich, dass ein anderer Dienst einen definierten Status für TCP-Port 5000 hatte.

Aber durch Ersetzen der -aOption durch -mzum Ändern, hinzugefügt tcp port 5000zuhttp_port_t

Der Befehl, der funktionierte, war also:

# semanage port -m -t http_port_t -p tcp 5000
Panikprocrastinator
quelle
9

Auf den Systemen, die ich zur Hand habe (C6, C7 und F24), hat TCP-Port 5000 einen SELinux-Kontext von commplex_port_t. Dies ist der Grund, warum beim Versuch, es hinzuzufügen, die Fehlermeldung angezeigt wird

/usr/sbin/semanage: Port tcp/5000 already defined

Um den Kontext von TCP-Port 5000 von commplex_port_tauf zu ändern , müssen http_port_tSie -m | verwenden --Ändern Sie den Schalter

-m, --modify     Modify a OBJECT record NAME

so

semanage port -m -t http_port_t -p tcp 5000

sollte tun, was du willst

semanage port -l | grep 5000
http_port_t                tcp      5000, 80, 81, 443, 488, 8008, 8009, 8443, 9000
user9517
quelle
Ja, danke, es hat getan, was ich brauchte. Ich bin über die Antwort im Kommentarbereich eines Blogs gestolpert, auch mithilfe meines Kollegen :)
panickedprocrastinator