PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : SuSE Linux 8.0, vsftpd, Virtual Users



Thanil.Bernetar
17.04.03, 16:14
Hallo Leute,

mir platzt der Schädel. Ich versuche hier wie wild den vsftpd von SuSE Linux 8.0 so zu konfigurieren, dass er "Virtuelle User" akzeptiert. Dafür habe ich mich strikt an die Anleitung von vsftpd gehalten, aber es hakt an einer Stelle: wann immer ich mich mit einem der virtuellen Useraccounts einloggen will, bekomme ich in der /var/log/messages die folgende Fehlermeldung:

Apr 17 15:32:19 server pam_userdb[2385]: user_lookup: could not open database `/etc/vsftpd_login.db'

(1.) Die Datei /etc/vsftpd_login.db existiert. Ich habe sie mit db_load (sogar probehalber mit db2_load) erstellt.
(2.) Die Datei /etc/pam.d/ftp existiert. Hier der Inhalt:
auth required /lib/security/pam_userdb.so db=/etc/vsftpd_login.db
account required /lib/security/pam_userdb.so db=/etc/vsftpd_login.db
(3.) Die vsftpd.conf ist so, wie in der Dokumentation beschrieben:
anonymous_enable=NO
local_enable=YES
write_enable=NO
anon_upload_enable=NO
anon_mkdir_write_enable=NO
anon_other_write_enable=NO
chroot_local_user=YES
guest_enable=YES
guest_username=virtual
#listen=YES
#listen_port=21
pasv_min_port=30000
pasv_max_port=30999

Ich habe hier lediglich die beiden listen-Einträge deaktiviert, weil bei mir vsftpd vom inetd gestartet wird. Der FTP-Server antwortet auch, d.h. er läuft, aber ich kann mich nicht einloggen. Hier eine typische Ausgabe:
client:~ # ftp xxx.xxx.xxx.xxx
Connected to xxx.xxx.xxx.xxx (xxx.xxx.xxx.xxx).
220 ready, dude (vsFTPd 1.0.1: beat me, break me)
Name (xxx.xxx.xxx.xxx:root): username
331 Please specify the password.
Password:
530 Login incorrect.
Login failed.
ftp> ls
530 Please login with USER and PASS.
ftp: bind: Address already in use
ftp> exit

Was dieses "ftp: bind: Address already in use" bedeutet ist mir ebenfalls unklar. Ob das mit meinem Problem irgendwie zusammehängt?

Ich habe irgendwo bei Google den Hinweis gefunden, dass ich evtl. die falsche Version von db_load benutzt habe. Es gäbe wohl die Möglichkeit es mit db3_load zu probieren, aber ich kann dieses Programm nirgends als rpm für SuSE Linux 8.0 finden.

Nennt mich Lamer, nennt mich Penner, aber ich blix nicht...
Bin für jeden Hinweis dankbar...

Doh!
17.04.03, 16:48
Ich nehm mal an, der vsftp läuft net als root, aber die vsftpd_login.db hat nur zugriffsrechte für root.

Unter welchem user läuft denn vsftpd?

Thanil.Bernetar
17.04.03, 18:29
Hi. Danke für diesen ersten Tip.

Ich hatte die vsftpd_login.db zu Testzwecken auf 777 gesetzt, sollte also kein Problem geben. vsftpd wird im Übrigen wie viele andere Dienste auch vom inetd gestartet. Aber welche Userrechte das Ding dann hat: keine Ahnung!