Ftp

VSFTPD - 如何在他自己的目錄中監禁使用者

  • December 25, 2016

我想在他各自的目錄中“監禁”使用者,但他們在 /var/www 被監禁,有權“行走”並在 www 的任何目錄中寫入。

CentOS 7 上的 Vsftpd - 系統詳細資訊:

站點 1:

Path: /var/www/site1
Owner and group:  site1:site1
/home/site1 is a symbolic link to /var/www/site1

站點 2:

Path: /var/www/site2
Owner and group:  site2:site2
/home/site2 is a symbolic link to /var/www/site2

我的 /etc/passwd:

[...]
apache:x:48:48:Apache:/usr/share/httpd:/sbin/nologin
site1:x:1000:1000::/var/www/./site1:bin/bash
php-fpm:x:995:992:php-fpm:/var/lib/php/fpm:/sbin/nologin
site2:x:1001:1001::/var/www/./site2:/bin/bash

我的 /etc/vsftpd/vsfptd.conf:

anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
xferlog_enable=YES

connect_from_port_20=YES
xferlog_std_format=YES
ascii_upload_enable=YES

chroot_local_user=YES
user_sub_token=$USER
local_root=/var/www/$USER ### also tried: local_root=/home/$USER
allow_writeable_chroot=YES
passwd_chroot_enable=YES
listen=NO
listen_ipv6=YES

pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
pasv_enable=YES
pasv_max_port=10100
pasv_min_port=10090
force_dot_files=YES

我還禁用了 SELinux,啟用後無法使用 windows 訪問 ftp(即使在活動模式下)。

任何人都可以看到問題嗎?

解決了,伙計們!問題是 /etc/passwd 的主路徑中的點。

之前(不工作):

site1:x:1000:1000::/var/www/./site1:bin/bash

工作中):

site1:x:1000:1000::/var/www/site1:bin/bash

引用自:https://serverfault.com/questions/822638