{fbmip:fixed type="top" id="mipfixed" dataSlide="header-fixed-slide" class="fb-header-fixed"}
{fbview:mainmenu menuItemCode='$menuItemCode'/}
{/fbmip:fixed}
{fbmip:img fit='cover' src="$banner2['img_url']" alt="$banner2['title']"/}

vsftp虚拟用户与Apache账号整合实现FTP服务器的账号配置

  • 发布时间:
  • 浏览:363
  • 来源:平步科技官网

环境说明: 

CentOS 6.9 , Apache 2.2.15  , pam  , vsftpd 

所有的软件均是yum方式安装的。



配置说明

1 编辑vsftpd的PAM认证文件

只要编辑一次

vim  /etc/pam.d/vsftpd

将里面其他的都注释掉,添加下面这两行:

auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/vftpuser

account required /lib64/security/pam_userdb.so db=/etc/vsftpd/vftpuser


2 配置vsftpd.conf

anonymous_enable=NO

chroot_local_user=YES



listen_port=3286



connect_from_port_20=NO

pasv_enable=YES

pasv_min_port=50000(default:0(use any port))

pasv_max_port=60000(default:0(use any port))



guest_enable=YES     #开启虚拟用户

guest_username=apache      #FTP虚拟用户对应的系统用户,这里用apache

pam_service_name=vsftpd     #PAM认证文件

user_config_dir=/etc/vsftpd/vuser_conf



******************* 注意:实际配置的时候,要将中文注释删除,且不能有空白字符


3 创建虚拟用户

vim  /etc/vsftpd/vftpuser.txt  

内容如下:

shuhua2   #  用户名

111111   #  密码

这就创建了两个虚拟用户,虚拟用户创建 后,还必须把明文转为密文,转换方式看文章最后一段。


4 安装pam db4 db4-utils 

yum install pam db4 db4-utils


5 编辑虚拟用户自己的配置文件

vim /etc/vsftpd/vuser_conf/gushi

注意,这里的文件名,一定要与vftpuser.txt中的虚拟账号名一致。


#####虚拟用户配置开始#####

anon_world_readable_only=no

#用户可以浏览和下载文件,不能设为yes,否则无法看到文件


write_enable=yes

#用户可以创建文件


anon_upload_enable=yes

#用户可以上传文件


anon_mkdir_write_enable=yes

#用户有创建和删除目录的权限


anon_other_write_enable=yes

#用户具有文件改名和删除文件的权限


local_root=/disk2/php/shuhua2

#指定这个虚拟FTP用户的家目录,这里的html是你虚拟主机的根目录

#####虚拟用户配置结束#####


******************** 注意:配置后,不要留下任何注释和空格,不是说一定会出错,会有风险。


6 生成 vftpuser.db文件

db_load -T -t hash -f /etc/vsftpd/vftpuser.txt /etc/vsftpd/vftpuser.db