PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : ssh-login nur von bestimmter IP erlauben



nap
07.12.03, 14:00
Hallo,
ich hab nen sshd auf nem suse 9 rechner laufen und nun möchte ich, dass sich nur leute vom rechner mit der IP a.b.c.d auf den ssh-server einloggen können und keine mit anderer ip, wie kann ich das am besten verwirklichen ?

Gruß nap

Sonny
07.12.03, 14:15
ich würde iptables nehmen

nap
07.12.03, 14:16
gibts da nicht auch ne serverinstellung ? oder ne möglichkeit mit diesen hosts.allow und hosts.deny ? nur komm ich mit den "hosts"-dateien nich ganz klar

Sonny
07.12.03, 14:23
host.allow / deny wäre der tcp wrapper. den könntest du auch nehmen. dann würde alles über den inetd.conf laufen was ich mit ssh noch nie ausprobiert habe.

Beispiel für den tftpd in hosts.allow
in.tftpd: 1.1.1.1

und hosts.deny
in.tftpd : ALL : spawn ( safe_finger -l @%h | mailx -s "Unerlaubter Zugriff auf den tftpd-Server" x@x.com ) &

nap
07.12.03, 14:27
hmm wie müsste ich das denn mit iptables einrichten, dass ich nur von einem rechner aus auf den ssh server connecten kann ? hab damit noch nie was gemacht

Sonny
07.12.03, 14:32
such erstmal nach iptables.

etwa sowas kommt dabei raus

iptables -A INPUT -s 1.2.3.4 -p tcp -m state --state NEW,RELATED,ESTABLISHED -m tcp --dport 22 -j ACCEPT
iptables -A INPUT -p tcp --dport 22 -j DROP

nap
07.12.03, 14:45
wenn ich das mit dem iptables so eingeb, bleibt das dann auch anch dem systemneustart so erhalten ? und wie kann ich solch einen eintrag dann z.b. editieren / löschen ?

danke dir :)

Sonny
07.12.03, 14:52
ich packe die Befehle in ein /etc/init.d/firewall script und dann werden die Regeln beim booten geladen. wie das mit den runlevel funzt weist du aber, oder?
(einfach den yast runlevel-editor nehme

mit iptables -L kannst du dir die Regeln ansehen. Editieren geht gar nicht, du kannst die Regeln nur flushen und dann wieder neu laden. Regeln anhängen geht mit -A bzw. einfügen mit insert. (info iptables)

nap
07.12.03, 14:55
jo, das weiß ich, das heisst nach einem neustart (ohne das script) sind die regeln wieder automatisch gelöscht ?

Das is gut, dann werd ich das mal eben so versuchen

Sonny
07.12.03, 15:00
die Regeln sind quasi Laufzeitparameter welche nach jedem boot gelöscht sind. Das ist auch das geniale an einer Linux Firewall. Ein Windows-FW ist nur ein Prozess welchen man z.B. durch einen DoS oder einen Wurm ausschalten kann, ein Linux Packetfilter besteht aus Kernel-Parameter und kann nicht ausgeschaltet werden.

nap
07.12.03, 15:06
ok vielen dank schonmal, aber bei dem zeiten befehl bekomm ich nen fehler:

iptables v1.2.8: Couldn't load target `DENY´:/usr/lib/iptables/libipt_DENY.so: cannot open shared object file: No such file or directory

Sonny
07.12.03, 15:16
und bei:
iptables -A INPUT -p tcp -m tcp --dport 22 -j DROP
iptables -A INPUT -p tcp -m tcp --dport 22 -j REJECT
?
natürlich nur einer von beiden

DENY wars früher mal

nap
07.12.03, 15:20
ja, jetz funktioniert es, habs mit REJECT versucht

viele vielen dank ! :D

Sonny
07.12.03, 15:25
viel Spass mit deiner ersten iptables fw...