elfe2000
Goto Top

Server hat drei IPs kann man den SSH-Zugriff nur über eine einzige zulassen (IPTABLES)

Wie kann man IPTABLES so konfigurieren, dass der SSH-Zugriff nur über eine bestimmte Server-IP zugelassen wird, wenn der Server mehrere IP's hat ?

Gehen wir davon aus, dass ein einzelner Linux-Server mit RHEL5 über drei öffentliche Web-IP's verfügt,
die aufgrund von verschiedenen internen Diensten sicherheitsbedingt benötigt werden.

Gibt es eine Möglichkeit, IPTABLES so zu konfigurieren, dass der Zugriff via SSH (über Port 22) nur über
eine (1) bestimmte Server-IP zugelassen wird
, und auf den Restlichen (2) geschlossen ist, so dass
auch ein Portscan zu Port 22 auf den verbliebenen (2) fehl schlägt ?


Beste Grüße,
elfe2k

Content-Key: 150962

Url: https://administrator.de/contentid/150962

Printed on: April 20, 2024 at 16:04 o'clock

Member: godlie
godlie Sep 14, 2010 at 05:53:46 (UTC)
Goto Top
Hallo,

das kannst du auch ohne Iptables lösen, lass den ssh nur auf einer Adresse horchen.

ListenAddress 192.168.x.x

Dann ist das Thema auch schon durch...
Member: refugee
refugee Sep 14, 2010 at 07:12:54 (UTC)
Goto Top
Morgen,

(ohne IPTABLES)
in /etc/ssh/sshd_config gibt es:

# What ports, IPs and protocols we listen for
Port 22
# Use these options to restrict which interfaces/protocols sshd will bind to
#ListenAddress ::
#ListenAddress 0.0.0.0
Protocol 2

einfach nach deinen Vorstellungen anpassen.

Ob ein Portscan hierbei fehlschlägt kann ich nicht sagen. Musst du probieren.

Andernfalls über IPTABLES
iptables -A chainname -d ziel-ip -j DROP

damit kannst du den Verkehr auf eine bestimmte Ziel-IP (indem fall die deiner 2 Schnittstellen, die nicht verfügbar sein sollen) verbieten.

Ein kleines Tut für IPTABLES:
http://www.tutorials.de/linux-tutorials/233339-firewalling-mit-iptables ...

Wobei natürlich die Lösung ohne IPTABLES die schönere ist, meiner Meinung nach .
Member: refugee
refugee Sep 14, 2010 at 07:13:53 (UTC)
Goto Top
sorry, deinen Post hatte ich gar nicht gesehen :O
Member: mic.we
mic.we Sep 14, 2010 at 09:20:19 (UTC)
Goto Top
Hi,

ich würde aus Sicherheitsgründen sowohl die Firewall als auch den SSH-Daemon entsprechend konfigurieren.

Zusätzliche Sicherheit bietet die Änderung des Ports an dem der SSH-Daemon lauscht. Er sollte möglichst hoch sein, da die meisten Portscanner, die das Netz nach offenen Ports von Servern scannen nach Standardports oder bis zum Port 1024 suchen.

in der Konfigurationsdatei /etc/ssh/sshd_config die Zeile für die Porteinstellung anpassen.

#Port 22
Port 12555

Datei speichern und Dienst neu starten, danach lauscht der Dienst am Port 12555.

greetings
Member: elfe2000
elfe2000 Sep 16, 2010 at 12:29:37 (UTC)
Goto Top
danke für eure hilfe!

ich habe das jetzt sowohl über die sshd.conf gelöst, möchte aber noch einen weiteren port (mysql) sperren.
leider funktioniert das nicht wie oben beschrieben (iptables -A chainname -d ziel-ip -j DROP)


#
# MYSQL-Port nur für 192.168.45.1 freigeben !
#

 /sbin/iptables -A INPUT -p tcp 192.168.45.1 --dport 3306 -j ACCEPT
 /sbin/iptables -A INPUT -p tcp 192.168.45.2 --dport 3306 -j DROP
 /sbin/iptables -A INPUT -p tcp 192.168.45.3 --dport 3306 -j DROP

wo liegt der denkfehler :?
Member: refugee
refugee Sep 16, 2010 at 17:02:05 (UTC)
Goto Top
fehlt da nicht ein "-d" vor der ip?
Member: elfe2000
elfe2000 Feb 14, 2011 at 07:10:12 (UTC)
Goto Top
hier die lösung:

/sbin/iptables -A INPUT -p tcp -d 192.168.45.1 --dport 3306 -j ACCEPT
/sbin/iptables -A INPUT -p tcp -d 192.168.45.2 --dport 3306 -j DROP