Ubuntu下安装多用户vsftp全过程

来源:互联网 发布:灯光设计用什么软件 编辑:程序博客网 时间:2024/06/01 13:41

如果源不存在,添加源。

修改 gedit/etc/apt/sources.list  vi /etc/apt/sources.list,在最后加入

---------------------------------------------------------------

deb http://ftp.us.debian.org/debian stablemain contrib non-free 
deb http://ftp.us.debian.org/debian-non-US stable/non-USmain contrib non-free
deb http://ftp.us.debian.org/debian testingmain contrib non-free
deb http://ftp.us.debian.org/debian-non-US testing/non-USmain contrib non-free 
deb http://ftp.us.debian.org/debian unstablemain contrib non-free
deb http://ftp.us.debian.org/debian-non-US unstable/non-USmain contrib non-free

---------------------------------------------------------------
最后执行 apt-get update更新软件库

执行更新后在此安装就可以了。

 

sudo apt-get install vsftpd


配置文件:vsftpd.conf

-------------------------------------------------------------------------------

listen=YES
listen_port=221
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
anon_upload_enable=YES
anon_mkdir_write_enable=YES
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
idle_session_timeout=600
data_connection_timeout=120
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list


secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd
rsa_cert_file=/etc/ssl/private/vsftpd.pem
guest_enable=YES
user_config_dir=/etc/vsftpd_user_conf
pam_service_name=vsftpd.vu

-------------------------------------------------------------------------------

创建虚拟用户的步骤:

在/etc/下创建loguser.txt ftp账户文件;

Loguser.txt中内容:

---------------------------------------------------------------

www   #用户名
www2012 #密码

---------------------------------------------------------------

创建vsftpd.chroot_list文件。

创建vsftpd_user_conf目录,存储账户配置文件,再其目录中添加一个用户文件。Touch www。

www文件内容:

---------------------------------------------------------------

local_root=/home/vsftpd
guest_username=vsftpd
write_enable=YES
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES

 ---------------------------------------------------------------

sudo apt-get install db4.8-util

sudo db4.8_load -T -t hash -f /home/loguser.txt /etc/vsftpd_login.db
#生成加密文件,

sudo chmod 600 /etc/vsftpd_login.db

编辑文件/etc/pam.d/vsftpd.vu 将以下内容增加的原文件前面两行: 不存在就创建

---------------------------------------------------------------

auth required pam_userdb.so db=/etc/vsftpd_loginaccount required pam_userdb.so db=/etc/vsftpd_login

---------------------------------------------------------------

sudo useradd vsftpds -d /home/vsftpd -s /bin/false  #创建这个vsftpds用户来操作/home/vsftpd 这个目录(目录自己定)。

sudo chown vsftpd:vsftpd/home/vsftpds #给目录权限。

重启vsftpd。

/etc/init.d/vsftpd restart即可。


有错误查看:tail -f /var/log/auth.log



vsftpd: refusing to run with writable root inside chroot()


为了避免一个安全漏洞,从 vsftpd 2.3.5 开始,chroot 目录必须不可写。使用命令:

# chmod a-w /home/user


原创粉丝点击