Vsftpd文件传输协议—虚拟用户模式

/ 1评 / 0

环境:RHEL7

配置yum仓库 完成基础配置

1.安装vsftpd服务

yum install vsftpd -y

2.使用grep -v 过滤反选出没有包含”#”的参数,通过输出重定向符写回原始的主配置文件。

#mv /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bak
#grep -v "#" /etc/vsftpd/vsftpd.conf.bak > /etc/vsftpd/vsftpd.conf
#cat /etc/vsftpd/vsftpd.conf
拒绝匿名访问,只允许本地用户系统登录
使用被动模式,设置主机的ip为被动模式数据传输地址
pasv_enable=YES   开启被动模式
pasv_address=本机ip
promiscuous=YES
创建用于进行FTP认证的用户数据库文件
其中奇数行为账户名,偶数行为密码,创建三个用户

用db_load命令生成vsftpd的认证文件,将用户信息文件转换为数据库并使用hash加密,再把原始的明文信息删除。
创建vsftpd服务程序用于存储文件的根目录以及虚拟用户映射的系统本地用户

使用/etc/passwd查看所有用户
修改权限
建立用于支持虚拟用户的PAM文件
PAM(可插拔认证模块)是一种认证机制,通过一些动态链接库和统一的API把系统提供的服务与认证方式分开,使得系统管理员可以根据需求灵活调整服务程序的不同认证方式
新建一个用于虚拟用户认证的PAM文件vsftpd.vu, ”db=”参数为使用db_load命令生成的账户密码数据库文件的路径。

在vsftpd服务程序的主配置文件中通过pam_service_name参数将PAM认证文件的名称修改为vsftpd.vu

为虚拟用户设置不同的权限
创建目录 /etc/vsftpd/user_conf

分别把文件的权限写入目录下
ftpuser1用户只能下载不能上传以及删除文件重命名操作
ftpuser2用户可以下载与上传文件以及删除重命名 操作
ftpadmin用户可以下载与上传文件以及删除重命名操作,上传文件的umask值为022

查看创建是否成功

再次修改vsftpd主配置文件,通过添加user_config_dir参数来定义这两个虚拟用户不同权限的配置文件所存放的路径

开启vsftpd服务
开机自启动
关闭selinux
关闭防火墙
测试
ftpuser1

ftpuser2
ftpadmin

一条回应:“Vsftpd文件传输协议—虚拟用户模式”

发表评论

电子邮件地址不会被公开。 必填项已用*标注