vsftp配置

1、使用apt工具安装

sudo apt-get  install vsftpd 

启动命令

service vsftpd start

start 可换成restart、stop

安装后该vsftpd配置文件路径

/etc/vsftpd.conf

匿名ftp用户及用户文件夹可通过查看/etc/passwd文件

cat /etc/passwd

ftp:x:129:137:ftp daemon,,,:/srv/ftp:/usr/sbin/nologin

即该匿名用户的家目录为/srv/ftp

如需设置xinetd.d守护进程接管ftp,需要修改配置文件中listen的参数为NO;

listen=NO

并创建配置xinetd目录下的服务文件ftp

2、vsftpd配置文件vsftpd.conf

匿名用户是否允许登陆   YES/NO

# Allow anonymous FTP? (Disabled by default).
anonymous_enable=NO

匿名登陆,跳过密码检测

no_anon_password=YES 

设置匿名用户传输速率byte/s

anon_max_rate=20000

设置本地用户登陆

local_enable=YES

设置本地用户上传权限

write_enable=YES

限制用户在本地目录中

chroot_local_user=YES

启用配置文件来指定用户应该受到哪些限制

chroot_list_enable=YES

指定chroot_list_enable配置文件的路径及文件名

chroot_list_file=/etc/vsftpd.chroot_list

 

3、ftp限制登陆配置用户文件/etc/ftpusers

cat /etc/ftpusers

打开如下所示

# /etc/ftpusers: list of users disallowed FTP access. See ftpusers(5).

root
daemon
bin
sys
sync
games
man
lp
mail
news
uucp
nobody

ftp虚拟用户创建

安装db5.3-util

sudo apt-get install db5.3-util

使用db5.3创建数据库文件login_user,,需先用root创建文件login_user

sudo db5.3_load -T -t hash -f /home/ubuntu/login_user /etc/vsftpd_login.db

打开文件,并输入用户名及口令,每个用户名及口令占两行,如

Tom

tom123

John

john123

修改文件权限

sudo chmod 600 login_user

配置PAM验证(注:pam文件是由/etc/vsftpd.conf文件中的pam_service_name=path指定的路径及文件名也可自行修改指定文件)

打开/etc/pam.d/vsftpd文件

注释掉原有的

#auth required pam_listfile.so item=user sense=deny file=/etc/ftpusers onerr=succeed

#@include common-account
#@include common-session
#@include common-auth
#auth required pam_shells.so

并添加下列行

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

 

创建本地用户映射

打开/etc/vsftpd.conf

添加或者修改

guest_username=ftp  访客映射成本地用户ftp

guest_enable=YES   将所有登陆用户视为访客guest

anonymous_enable=NO

local_enable=YES    允许本地用户登陆

chroot_local_user=YES   注意打开后,这两行需要注释掉#chroot_list_enable=YES  #chroot_list_file=/etc/vsftpd.chroot_list

pam_service_name=vsftpd

最后设置用户目录及权限

进入ftp根目录即/srv/ftp,创建Tom及John用户主目录及修改属主为ftp

sudo mkdir Tom

sudo chown ftp Tom

sudo mkdir John

sudo chown ftp John

然后创建用户配置文件,

sudo mkdir /etc/vsftpd_user_conf

并在该文件夹下创建两个文本文件取名Tom及John,添加如下内容

#指定服务器主目录
local_root=/srv/ftp/Tom
#打开写权限
write_enable=YES
#打开上传权限
anon_upload_enable=YES
#打开建立目录权限
anon_mkdir_write_enable=YES

并在/etc/vsftpd.conf文件中使用下列配置指向创建文件

user_config_dir=/etc/vsftpd_user_conf 

附全局配置选项

 

 

posted @ 2021-03-28 23:00  杨金华  阅读(205)  评论(0编辑  收藏  举报