Sebastian Müller.

System- und Netzwerkanalyse

  • Home
Search Search
Posts Tagged "login"

vsftpd mit /bin/false oder /bin/nologin

16. November 2010 / 2 Comments / Posted in: IT & Co., Software

Im Verlauf der Konfiguration eines Servers, bin ich auf eine falsche Haltung gegenüber den Policies einer Vielzahl von Linux Distros gestoßen.

Der vsftpd ist unter Linux mittlerweile wohl einer der meistgenutzen FTP Server. Die Konfiguration ist kinderleicht, wodurch wohl auch Einsteiger ihn bevorzugen. Allerdings hat er auch seine Tücken, wie das folgende Beispiel verdeutlicht.

Wenn man einem Systemuser keine Shell gibt, sondern /bin/false oder /bin/nologin definiert, zum Beispiel um den Login per SSH zu deaktivieren, so ist der Login über vsftpd auch nicht möglich.
 
 
 
Warum ist das so?

Der vsftpd versucht die Usershell, des Benutzers der sich gerade einloggt über PAM zu validieren.
 
 
 
Wie kann man den Benutzer trotzdem einloggen lassen?

Die ersten Google-Suchergebnisse schlagen vor, in der Datei /etc/shells, /bin/false und/oder /bin/nologin anzufügen, damit das System beide als valide Shells anerkennt.

Diese Änderung funktioniert, sie ist aber eher eine schlampige Methode.
Es hat einen Grund, warum /bin/false und /bin/nologin – obwohl auf jedem Linuxoid vertreten – nicht in der /etc/shells auftauchen.
Sie sind keine Shells!
 
 
Den korrekten Weg geht man, wenn man das Pferd von der anderen Seite sattelt.
Die Überprüfung in vsftpd ob die Usershell valide ist, zu deaktivieren.
 
Das geht sogar mit weniger Tipperei:
In der /etc/pam.d/vsftpd.

# Standard behaviour for ftpd(8).
auth    required        pam_listfile.so item=user sense=deny file=/etc/ftpusers onerr=succeed
 
# Note: vsftpd handles anonymous logins on its own.  Do not enable
# pam_ftp.so.
 
# Standard blurb.
@include common-account
@include common-session
 
@include common-auth
auth   required        pam_shells.so

# Standard behaviour for ftpd(8). auth required pam_listfile.so item=user sense=deny file=/etc/ftpusers onerr=succeed # Note: vsftpd handles anonymous logins on its own. Do not enable # pam_ftp.so. # Standard blurb. @include common-account @include common-session @include common-auth auth required pam_shells.so

die letzte Zeile durch eine Raute (#) kommentieren,
#auth required pam_shells.so,
fertig.

Schon validiert der vsftpd die Usershell nicht mehr und der Login ist ohne valide Shell möglich.

  • Aktuelles
  • Archive
Mai 2025
M D M D F S S
 1234
567891011
12131415161718
19202122232425
262728293031  
« Mai    

Kategorien

  • Allgemein
  • Dokumentation
  • IT & Co.
  • KabelBW
  • Software

Archive

  • Mai 2015
  • Mai 2014
  • April 2014
  • Januar 2014
  • August 2013
  • Juli 2013
  • Dezember 2012
  • November 2012
  • Juni 2011
  • April 2011
  • Januar 2011
  • Dezember 2010
  • November 2010
  • Oktober 2010
  • September 2010
  • Juli 2010
  • Mai 2010
  • April 2010
  • März 2010
  • Februar 2010
  • Dezember 2009
  • August 2009
  • Juli 2009

Schlagwörter

advanced power management Antivirus apm bridge Computerbild cool cpu debian design dev Fehler festplatte firmware ftp G-Data gh22ls50 grub hdd installation Internet Security kopieren kvm kühler lg linux login Luci mac Minifier neue OpenWRT paketloss qemu shell Spiele tap tun ubuntu undervolting update upgrade Virenscanner website Wordpress WP Plugins

Neueste Kommentare

  • Karl bei Thunderbird Senden Button verschwunden
  • Martin Rau bei Thunderbird Senden Button verschwunden
  • Götz bei Thunderbird Senden Button verschwunden
  • jan behrends bei Thunderbird Senden Button verschwunden
  • Rolf bei Thunderbird Senden Button verschwunden

Neueste Beiträge

  • OpenWRT WIFI Channel 12 und 13
  • OpenGL auf X
  • aiccu von sixx.net auf openwrt
  • IP Dual-Stack IPv4 bevorzugen
  • IPv6 bei sourceforge.net

© Sebastian Müller. All rights reserved.