Page 1 of 1
Zugrif auf SSH nur bestimmten IPs erlauben
Posted: 2006-09-28 12:03
by nyxus
Hi,
ist obiges ohne großen Aufwand möglich? Nur von einer bestimmten festen IP soll ein OpenSSH_3.8.1p1 Debian-8.sarge.4 eine Verbindung annehmen. Über iptables möchte ich dabei nicht gehen.
Danke für Hinweise!
Re: Zugrif auf SSH nur bestimmten IPs erlauben
Posted: 2006-09-28 12:09
by captaincrunch
Stichwort: tcp_wrapper
Re: Zugrif auf SSH nur bestimmten IPs erlauben
Posted: 2006-09-28 12:12
by daemotron
Hi,
wenn Dein OpenSSHd mit tcp_wrappers-Support kompiliert wurde, kannst Du über /etc/hosts.allow bzw. /etc/hosts.deny einzelne Rechner oder ganze Netzsegmente zulassen oder aussperren.
Beispiel-Eintrag für hosts.deny:
würde den Zugriff von localhost blocken. So kannst Du auch testen, ob dein sshd mit tcp_wrappers läuft...
Re: Zugrif auf SSH nur bestimmten IPs erlauben
Posted: 2006-09-28 12:27
by nyxus
danke schonmal für den Tip. hosts.(deny|allow) wird leider vom sshd (debian) nicht beachtet (gerade getestet). Ich habe auch schon daran gedacht den sshd über xinetd zu starten, habe aber gelesen, daß davon abgeraten wird.
Re: Zugrif auf SSH nur bestimmten IPs erlauben
Posted: 2006-09-28 12:42
by nyxus
Korrektur: Es funktioniert doch, aber warum wird trotz Eintrag in der hosts.* bei einem TCP-Connect-Scan der Port als "open" angezeigt? Sollte dabei der Port nicht auch zu sein da der wrapper auf Layer3/4 läuft?
Re: Zugrif auf SSH nur bestimmten IPs erlauben
Posted: 2006-09-28 13:04
by buddaaa
Nyxus wrote:Korrektur: Es funktioniert doch, aber warum wird trotz Eintrag in der hosts.* bei einem TCP-Connect-Scan der Port als "open" angezeigt? Sollte dabei der Port nicht auch zu sein da der wrapper auf Layer3/4 läuft?
nein, der kernel macht erst den TCP-3-way-handshake (den ein portscanner dann als "open" interpretiert), und dann kommt erst der tcp-wrapper im userspace an die reihe und weisst die falsche IP ab.
wenn Du den port als "closed" angezeigt kriegen willst musst Du iptables benutzen (mit "... -j REJECT --reject-with tcp-reset". mit -j DROP wuerde z.b. nmap den port als "filtered" anzeigen)
Re: Zugrif auf SSH nur bestimmten IPs erlauben
Posted: 2006-09-28 14:44
by nyxus
buddaaa wrote:nein, der kernel macht erst den TCP-3-way-handshake ... und dann kommt erst der tcp-wrapper im userspace an die reihe und weisst die falsche IP ab.
alles klar, diese Reihenfolge im Kernel war mir nicht bewußt.
wenn Du den port als "closed" angezeigt kriegen willst musst Du iptables benutzen (mit "... -j REJECT --reject-with tcp-reset".
das reicht mir dann auch schon in der obigen Form; hat mich halt nur gewundert weil meine erste Aussage "klappt nicht" daher kam, daß ich es nur per nmap getestet habe und es aussah als wenn der Port offen wäre (nmap war schneller getippt als ein neues ssh-fenster zu öffnen ... ;-) )