Page 1 of 1

Shell nur von bestimmten IP´s zulassen/sperren

Posted: 2003-05-06 16:47
by Anonymous
Hallo,

ist es möglich, den Shell-Zugriff von bestimmten IP-Adressen/Servernamen zu unterbinden?

Vergleichbar mit einer HTACCESS
deny from 217.160.10.10

oder so

Re: Shell nur von bestimmten IP´s zulassen/sperren

Posted: 2003-05-06 16:52
by mark
Jupp.

Das kannst du via PAM machen. Aber vorsichtig bei der Konfiguration sein..

konfig unter
/etc/security/access.conf

Aktivieren durch eintrag in /etc/pam.d/sshd
account required pam_access.so

z.b.:

Code: Select all

#%PAM-1.0
auth     required       pam_unix.so     # set_secrpc
auth     required       pam_nologin.so
auth     required       pam_env.so
account  required       pam_unix.so
password required       pam_pwcheck.so
account  required       pam_access.so
password required       pam_unix.so       use_first_pass use_authtok
session  required       pam_unix.so     none # trace or debug
session  required       pam_limits.so
So kannste beispielweise root auch komplett aussperren. Und dann nur via user und "su"...

Gruß
Mark

Re: Shell nur von bestimmten IP´s zulassen/sperren

Posted: 2003-05-06 16:53
by Anonymous
Klingt ja gut, was trage ich denn dort genau ein?

Re: Shell nur von bestimmten IP´s zulassen/sperren

Posted: 2003-05-06 16:56
by mark
Ã?hm.

Schau mal bitte in die access.conf.

Dort steht es genau beschrieben.

Sowas wie:
+:user:ALL EXCEPT 123.123.123.123 .domain.tld ...

Um root komplett auszusperren, z.B.:
-:root:ALL EXCEPT tty1 console <reserve_ip>

(alles hinter EXCEPT ist, damit man einloggen kann, wenn man am rechner sitzt, eventuell mal für die service mitarbeiter in deinem RZ nötig :))

Wie gesagt: Beispiele sind da auch in der access.conf

gruß
mark

Re: Shell nur von bestimmten IP´s zulassen/sperren

Posted: 2003-05-06 16:58
by Anonymous
Okay, vielen dank schon mal... So schnell habe ich hier noch nie hilfe bekommen....

Re: Shell nur von bestimmten IP´s zulassen/sperren

Posted: 2003-05-07 02:08
by dodolin
Ergänzung: Wenn du Debian benutzt, kannst du auch /etc/hosts.allow und /etc/hosts.deny einsetzen, da der sshd anscheinend gegen tcp_wrapper gelinkt ist. Wie das bei anderen Distris ist, weiss ich nicht... ist aber jedenfalls für Anfänger einfacher als PAM.

Re: Shell nur von bestimmten IP´s zulassen/sperren

Posted: 2003-05-07 08:39
by Anonymous
habe jetzt einen Eintrag so geschrieben

- :ALL:IPADRESSE

Das funktionert

( ist redhat 8 )

Re: Shell nur von bestimmten IP´s zulassen/sperren

Posted: 2004-06-19 13:41
by silentfog
Louis4web wrote:habe jetzt einen Eintrag so geschrieben

- :ALL:IPADRESSE

Das funktionert

( ist redhat 8 )
:) yepp, funktioniert prima.

Habe eben 'mal folgendes in die acces.conf eingetragen

-:ALL:ALL EXCEPT .dip.t-dialin.net .arcor-ip.net

Danach war ein Einloggen nur noch aus obigen Netzen möglich - soll es ja auch ;)

Am Ende der eingetragenen Zeile, einen CR - 1*Enter-Taste drücken - einfügen.
Ohne diesen CR kam bei mir im log.file warn folgende Fehlermeldung:

pam_access[26946]: //etc/security/access.conf: line 59: missing newline or line too long

Greets Stef. :)

Re: Shell nur von bestimmten IP´s zulassen/sperren

Posted: 2004-06-28 10:35
by enforcerǃ
Louis4web wrote:ist es möglich, den Shell-Zugriff von bestimmten IP-Adressen/Servernamen zu unterbinden?
Ja. Zum Beispiel (gibt bestimmt noch andere Möglichkeiten):

Der User muss einen SSH-Key erstellen, mit dem er sich einloggen kann.
Den *public* key kopiert er auf dem Server in ~/.ssh/authorized_keys (eine Zeile!) und schreibt davor

from="112.223.234.135" #######################

wobei die "#" die ersten Zeichen des Keys sind.

Beispiel: http://www.derkeiler.com/Mailing-Lists/ ... /0012.html

Danach stellst du das Passwort von dem User auf etwas unmögliches ein ("!" in /etc/shadow). Dann muss er sich mit dem Key authentifizieren und das geht nur noch von der angegebenen IP.


Funktioniert aber natürlich nur, wenn der User es auch *will* (denn er kann sein Passwort ja wieder ändern, bzw. das Keyfile löschen). Sehr nützlich wenn du eine feste IP hast und den root-Zugriff absichern willst.

Re: Shell nur von bestimmten IP´s zulassen/sperren

Posted: 2004-06-28 10:48
by captaincrunch
Danach stellst du das Passwort von dem User auf etwas unmögliches ein ("!" in /etc/shadow). Dann muss er sich mit dem Key authentifizieren und das geht nur noch von der angegebenen IP.
Z.B. per passwd -l USERNAME