vsftpd服务配置记录

配置/etc/vsftpd/vsftpd.conf文件

匿名访问模式

用安装时候生成的ftp用户进行登录,操作的目录是/var/ftp

anonymous_enable=YES
anon_umask=022
anon_mkdir_write_enable=YES
anon_other_write_enable=YES                    #修改目录和删除目录权限
anon_upload_enable=YES
write_enable=YES
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen=YES                                     #standlone模式运行
userlist_enable=YES
tcp_wrappers=YES

本地用户模式

anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen=YES
pam_service_name=vsftpd     #pam插入式认证模块,这行不能少
userlist_enable=YES
tcp_wrappers=YES

虚拟用户模式

创建用于虚拟用户的系统本地用户virtual

 useradd  -d  /var/ftproot -s /sbin/nologin  virtual
chmod  -Rf 755 /var/ftproot
ls -ld /var/ftproot

查看db4-untils是否安装

rpm -qa|grep db4

《vsftpd服务配置记录》 db4-untils检查.png

如果没有则安装

yum install -y db4-untils

创建帐号密码文件,奇数行是帐号,偶数行是密码

《vsftpd服务配置记录》

创建账号密码数据库文件

db_load -T -t hash -f vuser.txt vuser.db
chmod  600 vuser.db
rm -f  vuser.txt

注释掉/etc/pam.d/vsftp里原有配置,添加如下两行:

auth           required        pam_userdb.so  db=/etc/vsftpd/vuser
account     required           pam_userdb.so  db=/etc/vsftpd/vuser

《vsftpd服务配置记录》

创建虚拟用户的配置文件路径和各自的权限文件

mkdir /etc/vsftpd/vuser_dir
touch zhangsan
touch lisi

权限配置如下:

vim zhangsan
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_enable=YES

/etc/vsftpd/vsftpd.conf配置如下

anonymous_enable=NO
local_enable=YES
guest_enable=YES
guest_username=virtual
allow_writeable_chroot=YES  #不启用的话无法登录
#local_root=/var/ftproot
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
user_config_dir=/etc/vsftpd/vuser_dir    #虚拟用户权限配置文件的存放路径

注意

  • 本文的按照过程未做说明
  • 本文的防火墙和selinux已关闭
  • 本文的ftp文件存放目录权限设置未说明
    原文作者:风中麦田守望者
    原文地址: https://www.jianshu.com/p/01ef52cabd04
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞