PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : SSH nur Heimnetzwerk, außen gesperrt



nevers
28.04.05, 23:02
Ich möchte bei meinem RedHat 9 nur ssh von innen im bereich 192.168.1.x und 192.168.0.x erlauben. Für alle anderen Ports soll SSH dicht sein. Nur wie mache ich das?

Die Suchanfragen zeigen mir immer nur wie ich die Zugriffe nach ein paar Versuchen stoppen kann, aber von außen ganz - wie?

und wie kann ich mir anschauen, welche IP sich wann unter welchem namen angemeldet hat?

canis_lupus
28.04.05, 23:11
Für alle anderen Ports soll SSH dicht sein. Nur wie mache ich das?

Du meinst IPs :p

Schau mal mit "ldd /usr/sbin/sshd", ob in der Ausgabe die libwrap.so.0 mit dabei ist. Dann ist der TCP-Wrapper-Support einkompiliert und Du kannst /etc/hosts.allow und /etc/hosts.deny benutzen.
Ansonsten könntest Du es mit Paketfilterregeln (iptables) begrenzen.



und wie kann ich mir anschauen, welche IP sich wann unter welchem namen angemeldet hat?


Je nach Konfiguration kann das in der /var/log/messages verzeichnet sein (sshd-Logeinträge). Ausserdem solltest Du in der Ausgabe von "last" auch RemoteLogins samt IP finden.

nevers
28.04.05, 23:23
Du meinst IPs :p

Ups, ja genau.


kannst /etc/hosts.allow und /etc/hosts.deny benutzen.

Ist drin. Wenn ich jetzt host.allow anlege, muss ich da einfach nur die IPs reinschreiben?

Also:
192.168.1.2
192.168.1.3
192.168.1.5
usw..

Und ist das, was nicht erlaubt ist explizit gleich mit verboten? oder was soll ich in die deny reinschreiben?

Danke schonmal.

TheReaper
29.04.05, 09:04
Du kannst den Zugriff auch mit dem Parameter ListenAddress in der /etc/ssh/sshd_config limitieren.


ListenAddress
Specifies the local addresses sshd should listen on. The follow-
ing forms may be used:

ListenAddress host|IPv4_addr|IPv6_addr
ListenAddress host|IPv4_addr:port
ListenAddress [host|IPv6_addr]:port

If port is not specified, sshd will listen on the address and all
prior Port options specified. The default is to listen on all
local addresses. Multiple ListenAddress options are permitted.
Additionally, any Port options must precede this option for non
port qualified addresses.

mfG

Multe
29.04.05, 10:46
Die Suchanfragen zeigen mir immer nur wie ich die Zugriffe nach ein paar Versuchen stoppen kann, aber von außen ganz - wie?

und wie kann ich mir anschauen, welche IP sich wann unter welchem namen angemeldet hat?

Ich würde mir das mit Iptables einrichten, ungefähr in der Art:

iptables -A INPUT -i eth0 -s ! 192.168.0.0/255.255.255.0 -p TCP --dport 22 -j DROP

Die Regel sollte bewirken, das alle IP-Anfragen die nicht im 192.168.0.-er Subnet hängen verworfen werden.

Ohne Garantie, ich habs nur mal kurz ausm Kopp zusammen gewürfelt.

Gruß Multe

Svenny
29.04.05, 12:03
wieso umständlich per iptables wenns auch per ListenAddress geht, ist doch viel einfacher.

canis_lupus
29.04.05, 14:36
Weil es eben nicht mit ListenAddress geht!

Wie der Name schon sagt, kann man Adressen angeben, an denen sich der Dienst binden soll und nicht Adressen, von denen er Zugriffe annimmt!

Es wird erst die hosts.allow und dann die hosts.deny abgearbeitet. Wenn ein Treffer vorhanden ist gilt der erste (also wenn in allow, dann keine Prüfung in deny). gibt es keine passenden Einträge, wird alles erlaubt.

Schreibe in die hosts.deny:

sshd : ALL EXCEPT 192.168.0.0/24 192.168.1.0/24

Das sollte glaube ich funktionieren. Notfalls lies mal mit "man 5 hosts_access" nach

TheReaper
29.04.05, 15:06
Wenn der Thread-Starter "nur ssh von innen im bereich 192.168.1.x und 192.168.0.x erlauben" und "SSH nur Heimnetzwerk, außen gesperrt" schreibt, kann von einer gängigen Router-Konfiguration mit zwei Netzwerkadaptern ausgegangen werden.
Deshalb war mein Vorschlag der Weg über den Parameter ListenAddress. ;)

mfG

canis_lupus
29.04.05, 15:14
@TheReaper

SAG DAS DOCH GLEICH!!! :mad: :mad: :mad:

mit dieser Begründung akzeptiere ich die Antwort natürlich voll und ganz :o

:D :D :D :D

nevers
29.04.05, 15:20
Das ist schon richtig. 3 Netzwerkkarten. 1 für DSL und die anderen beiden für jeweils einen Rechner.

canis_lupus
29.04.05, 15:23
Dann ist die Lösung von TheReaper wohl die einfachste und schnellste.