iptables ssh problem

Einrichten des lokalen Netzes, Verbindung zu anderen Computern und Diensten.
Antworten
hooker
Beiträge: 48
Registriert: 30.06.2005 10:38:07

iptables ssh problem

Beitrag von hooker » 28.12.2005 21:48:01

Hallo,

Debian in VmWare, ich will zum testen ein iptables script starten, welches erstmal alles außer shh (port 2222) und http blockiert.

Wenn ich Debian starte werden zeigt "iptables -nvL" keine aktiven chains an

Code: Alles auswählen

debianhome:~# iptables -nvL
Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination 

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination 

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

Wenn ich folgendes Script starte , bleibt die aktive shell bestehen , und http läuft auch.
Beim erneuten ssh login, bleibt die shell nach eingabe der usernamens stehen

Code: Alles auswählen

# clean
iptables -F
iptables -X

# Drop INPUT
iptables -P INPUT DROP
iptables -P OUTPUT ACEPPT

# Accept loopback
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT

# Allow inbound
iptables -A INPUT -p tcp --dport 2222 -s 0/0 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -s 0/0 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
Hat jemand ne Idee woran das liegen kann?

jhr-online
Beiträge: 2186
Registriert: 18.09.2005 15:52:02
Lizenz eigener Beiträge: GNU Free Documentation License
Kontaktdaten:

Re: iptables ssh problem

Beitrag von jhr-online » 28.12.2005 22:22:46

hooker hat geschrieben:

Code: Alles auswählen

iptables -A INPUT -p tcp --dport 2222 -s 0/0 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
Hat jemand ne Idee woran das liegen kann?
Versuch's mal so:

Code: Alles auswählen

iptables -A INPUT -p tcp --dport 2222 -m state --state NEW -j ACCEPT
So tut's nämlich bei mir... genaugenommen hab ich noch "-i eth0" drin, aber das liegt ja an dir...

jhr
Desktop: Intel Core2Quad Q8300 2.5GHz, 256GB SSD + 1 TB HDD, 8 GB RAM, Debian Sid, Kernel 3.13

Benutzeravatar
herrchen
Beiträge: 3257
Registriert: 15.08.2005 20:45:28
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Berlin

Re: iptables ssh problem

Beitrag von herrchen » 28.12.2005 22:43:27

hooker hat geschrieben:

Code: Alles auswählen

iptables -P OUTPUT ACEPPT
ist das ein typo?

herrchen

hooker
Beiträge: 48
Registriert: 30.06.2005 10:38:07

Beitrag von hooker » 29.12.2005 12:06:01

jhr-online

Ich werd es Heute Nachmittag mal auf deinem Weg versuchen, mal sehen obs besser klappt

herrchen

Den OUTPUT hatte ich im script kommentiert, da ja in default chain schon alles erlaubt ist,
hatte es manuell übernommen, deswegen ist der Ttypo nur hier.

---
Ich werd es mir dann nacher mal anschauen, danke für die Tipps.

nepos
Beiträge: 5238
Registriert: 05.01.2005 10:08:12

Beitrag von nepos » 29.12.2005 12:38:52

Ich seh keine Regeln, die ausgehende Pakete zu SSH und HTTP betreffen.

Benutzeravatar
C_A
Beiträge: 1082
Registriert: 22.04.2004 14:51:01
Lizenz eigener Beiträge: GNU General Public License

Beitrag von C_A » 29.12.2005 12:48:11

nepos hat geschrieben:Ich seh keine Regeln, die ausgehende Pakete zu SSH und HTTP betreffen.
Braucht man auch nicht wenn man

Code: Alles auswählen

iptables -P OUTPUT ACCEPT 
hat :wink:

hooker
Beiträge: 48
Registriert: 30.06.2005 10:38:07

Beitrag von hooker » 29.12.2005 13:05:06

Dann lag ich mit der OUTPUT regel doch recht, hatte noch etwas weiter mit dem script getestet, hatte aber weiter das gleich problem.

Der Connect zu SHH auf 2222 hatte geklappt. nach eingabe des usernamen war ende, dann hatte ich mal hier im Forum gesucht und hatte das script gefunden.

http://nopaste.debianforum.de/521

Nach anpassen der ports geht wie gewüschnt:

Mir hat folgendes gefehlt:

#
# allow all related from IF_INT
#
iptables -A INPUT -i $IF_INT -p TCP -m state --state ESTABLISHED,RELATED -j ACCEPT
#
iptables -A INPUT -i $IF_INT -p UDP -m state --state ESTABLISHED,RELATED -j ACCEPT


----
Danke noch mal an alle wegen der Hilfe, nen Guten Rutsch ins neue Jahr....

gms
Beiträge: 7798
Registriert: 26.11.2004 20:08:38
Lizenz eigener Beiträge: MIT Lizenz

Beitrag von gms » 29.12.2005 13:12:49

nepos hat geschrieben:Ich seh keine Regeln, die ausgehende Pakete zu SSH und HTTP betreffen.
ist in der "Defaultrule" :
hooker hat geschrieben:

Code: Alles auswählen

iptables -P OUTPUT ACEPPT
jhr-online hat geschrieben:Versuch's mal so:

Code: Alles auswählen

iptables -A INPUT -p tcp --dport 2222 -m state --state NEW -j ACCEPT
So tut's nämlich bei mir
Irgendwie müssen aber die reinkommenden (INPUT) Pakete auch durch, sobald die Verbindung besteht. Da wird also NEW alleine nicht genügen.

Das gleiche gilt natürlich auch für alle rausgehende Verbindungen, die sind zwar jetzt anscheinend durch die Defaultrule erlaubt, aber die reinkommenden Pakete (über INPUT) werden auch hier gedroppt. Daher funktioniert auch der Reverselookup vom SSH daemon nicht.

@hooker: versuchs einmal so (ungetestet):

Code: Alles auswählen

# clean 
iptables -F 
iptables -X 

# Default DROP
iptables -P INPUT DROP 
iptables -P OUTPUT DROP

# Accept loopback 
iptables -A INPUT -i lo -j ACCEPT 
iptables -A OUTPUT -o lo -j ACCEPT 

# Allow established and related
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

# Allow inbound 
iptables -A INPUT -p tcp --dport 2222 -s 0/0 -m state --state NEW -j ACCEPT 
iptables -A INPUT -p tcp --dport 80 -s 0/0 -m state --state NEW -j ACCEPT

# Allow outbound
iptables -A OUTPUT -m state --state NEW -j ACCEPT
Gruß
gms

[edit]
wünsche Dir auch einen guten Rutch!
Meinen Beitrag habe ich anscheinden zu langsam getippt
[/edit]

Antworten