iptables unter CentOS 6.6

1

Ich versuche, einen Port auf CentOS zu öffnen, aber es scheint nicht zu funktionieren: Port 16 scheint geschlossen zu sein und 4075 scheint offen zu sein, obwohl es laut iptables umgekehrt sein sollte.

Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
num   pkts bytes target     prot opt in     out     source               destination
1       30  1920 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:445
2        0     0 ACCEPT     udp  --  *      *       0.0.0.0/0            0.0.0.0/0           state NEW udp dpt:445
3     8071  630K ACCEPT     udp  --  *      *       0.0.0.0/0            0.0.0.0/0           state NEW udp dpt:137
4      516  110K ACCEPT     udp  --  *      *       0.0.0.0/0            0.0.0.0/0           state NEW udp dpt:138
5       17  1064 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:139
6        0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:16
7        0     0 ACCEPT     udp  --  *      *       0.0.0.0/0            0.0.0.0/0           state NEW udp dpt:16
8     5533 8865K ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED
9        6   432 ACCEPT     icmp --  *      *       0.0.0.0/0            0.0.0.0/0
10       0     0 ACCEPT     all  --  lo     *       0.0.0.0/0            0.0.0.0/0
11       3   872 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:22
12    2320  277K REJECT     all  --  *      *       0.0.0.0/0            0.0.0.0/0           reject-with icmp-host-prohibited

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
num   pkts bytes target     prot opt in     out     source               destination
1        0     0 REJECT     all  --  *      *       0.0.0.0/0            0.0.0.0/0           reject-with icmp-host-prohibited

Chain OUTPUT (policy ACCEPT 26 packets, 1776 bytes)
num   pkts bytes target     prot opt in     out     source               destination



[root@titan ~]# telnet localhost 16 Trying ::1... telnet: connect to
address ::1: Connection refused 
[root@titan ~]# telnet localhost 4075
Trying ::1... Connected to localhost.

Kannst du mir bitte sagen, was ich falsch mache? Danke im Voraus.

AKTUALISIEREN Öffnete den Port in ip6tables und konnte immer noch keine Verbindung herstellen

ip6tables -I INPUT 1 -p tcp -m state --state NEW -m tcp --dport 16 -j ACCEPT
ip6tables -I INPUT 1 -p udp -m state --state NEW -m udp --dport 16 -j ACCEPT

telnet localhost 16
Trying ::1...
telnet: connect to address ::1: Connection refused
Trying 127.0.0.1...
telnet: connect to address 127.0.0.1: Connection refused

UPDATE 2 Ich habe es herausgefunden. Mir war nicht klar, dass ich einen Dienst zum Abhören eines Ports benötigte, um eine Verbindung mit Telnet herstellen zu können. Vielen Dank an alle.

wicccked
quelle
1
Bei den iptables handelt es sich um ipv4, während die Telnet-Sitzung eine Verbindung über ipv6 herstellt. Versuchen Sie, eine Verbindung mit 127.0.0.1 herzustellen, und veröffentlichen Sie die Ergebnisse.
Zalmy
Gleiches Ergebnis = ( telnet 127.0.0.1 16 Trying 127.0.0.1... telnet: connect to address 127.0.0.1: Connection refused
wicccked

Antworten:

0

Ich hatte selbst ein ähnliches Problem. Zuerst sollten Sie sich von Ihrer SSH-Sitzung abmelden und dann eine Verbindung zum Computer herstellen. Dies liegt daran, dass die meisten iptables die Loopback-Schnittstelle nicht blockieren. Zweitens haben Sie wie im Kommentar ipv6 verwendet. Ich denke, dein Problem liegt nicht in den Iptables. in den meisten fällen verweigert iptables nichts auf ihrem localhost, aber der server, auf den über port 4075 zugegriffen werden kann, kann ipv6 sprechen und der server auf port 16 kann nicht, aber ihr telnet-befehl verwendet ipv4 nicht. Ich denke das, weil mir der Versuch fehlt, eine Verbindung zu 127.0.0.1 herzustellen. mein telnet (zu jedem nicht offenen port) ist so

$ telnet localhost 12334
Trying ::1...
telnet: connect to address ::1: Connection refused
Trying 127.0.0.1...
telnet: connect to address 127.0.0.1: Connection refused

Deshalb versucht er zuerst ipv6, was bevorzugt wird, und versucht anschließend, nachdem eine Verbindung abgelehnt wurde, eine Verbindung über ipv4 herzustellen.

BEARBEITEN Ich habe deinen Kommentar gesehen, vielleicht stimmt etwas mit deinem Service nicht ... Können Sie versuchen, jedes abgelegte Paket zu protokollieren? Hier ist ein Artikel, den ich gefunden habe

Schwertspize
quelle
In meinem Fall sieht es so aus, als ob Telnet nur mit IPv6 und nicht mit IPv4 ausprobiert wurde (laut: "Trying :: 1 ...")
wicccked
das habe ich gesagt, der telnet befehl benutzt kein ipv4
Schwertspize
0

IPTables funktioniert für IPV4, aber nicht für IPV6. Verwenden Sie ip6tables.

davidgo
quelle