centos安装ftp并配置(centos中vsftpd虚拟用户的搭建)
centos安装ftp并配置(centos中vsftpd虚拟用户的搭建)xieguanxieguan[root@bogon ~]# vi /etc/vsftpd/vuser.list 11
虚拟用户模式是一种相比较来说最为安全的验证方式,需要为FTP传输服务单独建立用户数据库文件,虚拟出用来口令验证的帐户信息,这些帐号是在服务器系统中不存在的,仅供FTP传输服务做验证使用,因此这样即便骇客破解出了帐号口令密码后也无法登录到服务器主机上面,有效的降低了破坏范围和影响。所以只要在配置妥当合理的情况下,虚拟用户模式要比匿名登录和本地登录更加的安全,同时配置的流程也稍微会复杂一些。
下面我给大家来讲解 !!
第一步: 创建用于进行FTP验证的帐号密码数据库文件,单数行为账户名,偶数行为密码
我这里演示的是 例如分别创建出1和xieguan两个用户,密码为1和xieguan
[root@bogon ~]# vi /etc/vsftpd/vuser.list
1
1
xieguan
xieguan
第二步: 转化数据库,删除原明文信息文件
由于明文信息既不安全,也不能让vsftpd服务程序直接读取,因此需要使用db_load命令用HASH算法将这个原始的明文信息文件转换成数据库文件,并且再把数据库文件权限调小一些(避免其他人能看到数据库文件的内容),然后再把原始的明文信息文件删除掉。
第六步:修改下vsftpd主配置文件,添加user_config_dir
定义这两个虚拟用户不同权限的配置文件所存放的路径即可,为了让刚刚配置的服务程序新参数立即生效,咱们需要把vsftpd再来重新启动一下,并加入到开机启动项中
[root@bogon ~]# vi /etc/vsftpd/vsftpd.conf
anonymous_enable=NO
local_enable=YES
guest_enable=YES
guest_username=virtual
allow_writeable_chroot=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen=NO
listen_ipv6=YES
pam_service_name=vsftpd.vu
userlist_enable=YES
tcp_wrappers=YES
user_config_dir=/etc/vsftpd/vusers_dir
重启vsftpd
第七步:设置SELinux域允许策略
[root@bogon ~]# getsebool -a | grep ftp 查看 SElinux 策略
[root@bogon ~]# setsebool -P ftpd_full_access=on 把ftpd_full_access 开启 -P 表示为永久生效
这样 我们的vsftpd 虚拟用户 就配置好了 !!!!接下来 我们来测试权限
[root@bogon ~]# ftp 192.168.56.93
我们用xieguan这个用户测试
我们再用 1用户登录,测试:
很显然 我们1用户没有设置任何权限 ,所以1用户也就无法访问 ftp
对于 虚拟用户 的主目录 ,我是映射在virtual本地用户的 /var/ftproot目录中的 这样 更 安全。
最后我们来看看 刚刚用 xieguan 用户创建的123 文件是否 在/var/ftproot目录中
结果表明 123文件在/var/ftproot目录中
这样我们的 vsftpd就搭建成功了 谢谢大家 如果小编有什么写的 不对的地方 欢迎大家在下方评论区 留言!!