Page 1 of 1
[gelöst] User an IP binden (SSH/FTP)
Posted: 2008-09-16 23:55
by kos
Hallo,
ich habe ein kleines Problem. Und zwar hat mein Server mehrere IP-Adresse und ich möchte einen einzelnen oder vereinzelte User an eine bestimmte IP-Adresse binden in bezug auf OpenSSH (ssh, scp) und FTP (ProFtpd).
D.h. ich möchte das der User xyz nur auf die definierte IP (z.B. 123.123.123.55) des Server einloggen darf.
Code: Select all
Beispiel:
# ssh -p 22 xyz@123.123.123.55
Die Quelle-IP ist irrelevant, es zählt für mich nur die Ziel-IP, da ich über diese den gesamten Traffic des Users messen möchte.
Vielen Dank für eure Anteilnahme im Vorraus!
Re: User an IP binden (SSH/FTP)
Posted: 2008-09-17 00:07
by Joe User
Binde die Dienste an die jeweilige IP und richte dort dann die jeweiligen User ein, fertig.
Re: User an IP binden (SSH/FTP)
Posted: 2008-09-17 08:09
by kos
Joe User wrote:Binde die Dienste an die jeweilige IP und richte dort dann die jeweiligen User ein, fertig.
Also müsste ich zweimal sshd und proftpd starten und jeweils eigene configs verweden und bei den standard diensten den User ausschließen, sehe ich das richtig?
Re: User an IP binden (SSH/FTP)
Posted: 2008-09-17 09:40
by oxygen
Bei SSH auf jedenfall. Bei Proftpd könnte es vielleicht noch andere Möglichkeiten geben. Ich meine mich zu errinnern dass dieser vhost unterstützt.
[gelöst] Re: User an IP binden (SSH/FTP)
Posted: 2008-09-20 00:13
by kos
Hallo nochmal,
ich habe es nun geschafft SSH und ProFTPD zu restriktieren.
Fangen wir mit dem einfachsten an. Bei ProFTPD habe ich einfach der proftpd.conf einen
<VirtualHost 123.123.123.55> und den <Limit LOGIN> Einträgen AllowUser xyz und DenyAll hinzugefügt.
Dazu hab ich noch den Standard-Settings dem <Limit LOGIN> ein DenyUser xyz eingefügt.
Anschließender ProFTPD restart ergab das gewünschte Ergebnis. Auf allen anderen IP's bis auf die Gewählte können alle bis auf xyz einloggen.
Nun zu OpenSSHD:
Im Grunde eigentlich genau so einfach. Dort habe ich erstmal die /etc/ssh/sshd_config zu einem beliebigen anderen File kopiert, in meinem Beispiel: /etc/ssh/sshd_xyz. Dort habe ich die anpassung der ListenAddress auf 123.123.123.55 gemacht und (wichtig) PidFile /var/run/ssh_xyz.pid hinzugefügt. Ausserdem habe ich nun bei AllowUsers xyz eingetragen womit alle anderen gesperrt sind. In der orginalen /etc/ssh/sshd_config den Eintrag DenyUsers xyz hinzufügen. (DenyUsers kann ausgelassen werden, wenn man wie ich sowieso nur AllowUsers drin stehen hat)
Anschließend habe ich noch die /etc/init.d/ssh kopiert zu /etc/init.d/ssh_xyz und habe darin die pidfile angepasst und bei start) und restart) noch den Parameter für die Config hinter -- $SSHD_OPTS übergeben: "-f /etc/ssh/sshd_xyz"
Das wars eigentlich schon.