Ich verwende vsftpd als FTP-Server auf meinem Linux (Rasbian), ich melde mich als Root-Benutzer am Computer an.
Ich möchte immer noch darauf beschränkt sein, nur /var/www zu verwenden, wie kann ich vsftpd conf konfigurieren, um dies zu erreichen?
Akzeptierte Antwort:
Methode 1:Ändern des Home-Verzeichnisses des Benutzers
Stellen Sie sicher, dass die folgende Zeile vorhanden ist
chroot_local_user=YES
Setzen Sie das HOME-Verzeichnis des Benutzers auf /var/www/
, wenn Sie für einen bestehenden Benutzer wechseln möchten, können Sie Folgendes verwenden:
usermod --home /var/www/ username
Legen Sie dann die erforderliche Berechtigung für /var/www/
fest
Methode 2:Verwenden Sie user_sub_token
Wenn Sie das Home-Verzeichnis des Benutzers nicht ändern möchten, können Sie Folgendes verwenden:
chroot_local_user=YES
local_root=/ftphome/$USER
user_sub_token=$USER
Über user_sub_token
:
Generieren Sie automatisch ein Home-Verzeichnis für jeden virtuellen Benutzer, basierend auf einer Vorlage.
Zum Beispiel, wenn das Home-Verzeichnis des realen Benutzers, der über guest_username angegeben wird,
/ftphome/$USER ist und user_sub_token auf $ gesetzt ist USER, wenn sich der virtuelle Benutzer test
anmeldet, landet er (normalerweise per chroot()) im Verzeichnis /ftphome/test.
Diese Option wirkt sich auch aus, wenn local_root user_sub_token enthält.
Verzeichnis erstellen und Berechtigungen einrichten:
mkdir -p /ftphome/{test,user1,user2}
chmod 770 -R /ftphome
chown -R ftp. /ftphome
usermod -G ftp test
Starten Sie einmal vsftpd
neu und testen Sie Ihr Setup.
Beispielerfolgsausgabe:
[[email protected] tmp]# ftp localhost
Connected to mail.linuxian.local.
220 (vsFTPd 2.0.5)
530 Please login with USER and PASS.
530 Please login with USER and PASS.
KERBEROS_V4 rejected as an authentication type
Name (localhost:root): test
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> mput vhosts
mput vhosts?
227 Entering Passive Mode (127,0,0,1,146,41)
150 Ok to send data.
226 File receive OK.
24 bytes sent in 3.3e-05 seconds (7.1e+02 Kbytes/s)
ftp> ls -rlt
227 Entering Passive Mode (127,0,0,1,97,90)
150 Here comes the directory listing.
-rw-r--r-- 1 787 787 24 Oct 11 19:57 vhosts
226 Directory send OK.
ftp> 221 Goodbye.