frank
Goto Top

FTP Shell Zugriff unterbinden

Hallo,
hier mal eine kleine Anleitung um User zwar FTP Access aber keinen Shell-Zugriff unter Linux zu gewährleisten.
(Anführungszeichen bitte nicht mit eingeben).

Den User "theguest" setze ich hier mal als Platzhalter für x beliebigen User. Er hat das Homeverzeichnis "/home/mrfrog/"
Die "neue" Shell heißt hier "/bin/true", kann aber auch anders genannt werden.

Editieren Sie "/etc/shells" und fügen "/bin/true" am Ende hinzu. Dann führen Sie den Befehl: "/usr/bin/chsh theguest" aus. Es folgt ein Prompt. Nun müssen Sie "/bin/true" eingeben und Return drücken.

Nun muss noch die Datei "/etc/passwd" geändert werden. Sie müssen "/./" dem Home Directory des User hinzufügen. Hier ein Beispiel für die "/etc/passwd":

theguest:x:2855:2857::/home/mrfrog:/bin/true
wird in
theguest:x:2855:2857::/home/mrfrog/./:/bin/true
geändert.

Das wars. Der User hat jetzt FTP Zugriff aber keinen Shellzugriff mehr face-smile

Schönen Gruß
Frank

Content-ID: 133

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

Ausgedruckt am: 21.11.2024 um 13:11 Uhr

bluemelvin
bluemelvin 28.05.2004 um 11:32:55 Uhr
Goto Top
Hi,

wer möchte einen secure ftp server haben ?! face-smile

Hier ist ein nettes Howto, wie man ein halbwegs sicheren Fileserver für Kollegen aufmachen kann:

http://deepx.homelinux.net/downloads/misc/chrooted-sftp-server-for-suse ...
1668
1668 04.08.2004 um 17:52:30 Uhr
Goto Top
theguest:x:2855:2857::/home/mrfrog:/bin/true
theguest:x:2855:2857::/home/mrfrog/./:/bin/true

Wofür ist den das /./ gut?
dlubacz
dlubacz 05.06.2005 um 11:32:45 Uhr
Goto Top
Hallo,
das ist fuer mich etwas verrwirend ... fuer welches Unix/Linux ist das?

Normalerweise /etc/passwd hat folgendes Format:
[name] : [cryptpwd_?] : [userID] : [groundgrpID] : [fullname_?] : [homedir] : [shellpath]

Beim Shellpath steht dann z.B. /bin/sh .. /bin/bash usw. dann reicht es, wie
in vielen Linux Distributionen via Userverwaltung gemacht wird, /bin/false
zu setzen und der User hat keinen Shell-Zugriff mehr. Bem: fehlt das siebte Feld,
so viele Unix/Linux Distributionen nehmen standard Shell face-wink
Zwei Links zu /etc/passwd Erlaeuterungen:
http://www.theparallax.org/security/guides/general/authentifikation/etc ...
http://publibn.boulder.ibm.com/doc_link/en_US/a_doc_lib/files/aixfiles/ ...

Gruesse
dlubacz

P.S.
Die /etc/passwd hat keine Leerzeichen um Doppelpunkt - ich hatte hier Darstellungsprobleme.
alex-w
alex-w 09.02.2010 um 16:35:16 Uhr
Goto Top
Es reicht auch wenn man als shell in der passwd /bin/false einträgt. Bewirkt das gleiche und man muss die /etc/shells nicht bearbeiten.
godlie
godlie 29.09.2011 um 14:30:16 Uhr
Goto Top
Bezüglich der Kommentare das ein /bin/false ausreicht kann es mitunter bei Profpd zu Problemen führen wenn die Konfigdirektive
RequireValidShell on

gesetzt ist, denn dann wird man mit /bin/false sich nicht einloggen können. Aber mit /bin/true dürfte es funktionieren face-smile