红帽7(centos 7)配置VSFTP

VSFTP是一个基于GPL发布的类Unix系统上使用的FTP服务器软件,它的全称是Very Secure FTP 今后名称能够看出来,编制者的初衷是代码的安全。它是一个安全、高速、稳定的FTP服务器。vsftpd有三种模式。匿名模式。用户模式,还有虚拟用户模式。咱们分别来配置一下这几种模式。数据库


yum install vsftpd -y           #安装vim

systemctl restart vsftpd        #重启安全

systemctl stop firewalld        #关闭防火墙(后面实验成功后再开启)服务器




匿名用户:ide

默认状况下,vsftpd的匿名用户是打开的,客户端是能够访问的。测试


客户端访问:OK(输入ftp://ftp服务器IP地址)spa

wKioL1lHls2Si9gfAACUISWw7pM237.jpg


默认是没有权限写入的。咱们去主配置文件配置写入权限吧。3d

wKioL1lHlz-wVyaDAAC6JEoWGSg792.jpg


vim /etc/vsftpd/vsftpd.conf   #打开主配置文件,添加以下内容,注意不要与文中重叠rest


wKiom1lHmKCAPUWHAAC5xtIZn0g819.jpg


解释:orm

anonymous_enable=yes#容许匿名访问模式

anon_upload_enable=yes#容许匿名用户上传文件

anon_mkdir_write_enable=yes#容许匿名用户建立目录

anon_other_write_enable=yes#容许匿名用户修改目录名和删除目录

anon_world_readable_only=no#容许匿名用户下载可阅读文件(默认yes,拒绝)


chown ftp /var/ftp/pub                  #修改属主为ftp

ls -ld /var/ftp/pub                     #查看权限/var/ftp/pub默认为ftp匿名路径

wKioL1lHmfHDg5LtAABHj0-FPiQ428.jpg


getsebool -a | grep ftp#查看全部与ftp相关的SELinux规则

setsebool -P ftpd_full_access=on#设置SELinux服务队ftp服务访问规则策略为容许

注意:(这里能够先无论,暂时关闭命令  setenforce 0  )

wKiom1lHmoKhSYjfAACm2mgnOwE985.jpg


systemctl restart vsftpd        #重启


客户端测试OK(有读取权限)

wKiom1lHm-_QNIjNAACo366d7jY453.jpg


匿名用户的默认路径是/var/ftp/pub,咱们是能够修改默认路径的

mkdir -p /var/tang/laotang6            #建立匿名路径

vim /etc/vsftpd/vsftpd.conf       #打开主配置文件,添加以下命令

anon_root=/var/tang         #指明匿名用户的路径为/var/tang

wKiom1lHnbDwehC7AABPenjj9xY031.jpg

记得修改属主,才有权限写入哦!!

chown ftp /var/tang/laotang6                #修改属主为ftp

chmod o+w /var/tang                         #给予目录读写权限


客户端测试: OK(有读取权限)

wKiom1lHn0-i9rMRAACWsBC2zOY785.jpg


本地用户:

本地用户配置仍是比较简单,只要系统存在用户就能够登陆,默认本地用户也是开启的。

useradd tang            #建立账号tang

password tang           #修改用户tang的密码

wKiom1lHoDWhkJolAABhL6fleY4636.jpg


vim /etc/vsftpd/vsftpd.conf       #打开主配置文件,关闭匿名用户

wKiom1lHoYLh093nAACvCqAHptM058.jpg

注意,这里只要把匿名用户no掉就好了,不用一条条注释它们。


systemctl restart vsftpd        #重启



客户端测试:OK (有读取权限)

wKioL1lHohLgTrQjAACU9eZZOoM966.jpg


登陆成功(路径是用户的家目录例如个人路径是:/home/tang)

wKioL1lHriyxGo2KAACea13TFHM325.jpg

本地用户的默认路径是/home/用户名,咱们是能够修改默认路径的

mkdir -p /var/laotang/tang            #建立本地路径

vim /etc/vsftpd/vsftpd.conf       #打开主配置文件,添加以下命令

local_root=/var/laotang6             #指明本地用户的路径为/var/laotang6

wKioL1lHsPix1wdAAAArVEzn42k097.jpg


chmod o+w /var/laotang6            #给予目录读写权限


客户端测试: OK(有权限写入)

wKiom1lHsWnAtT45AACbl4W7OG0236.jpg



虚拟用户:

虚拟用户相对来讲是比较安全的,由于账号,是虚拟出来的,不存在于本地,

虚拟用户咱们来作个实验,让张三(有读写权限),李四(只有读取权限),

分别指向不一样的文件目录。


mkdir /etc/ftp              #建立目录

cd /etc/ftp

vim/etc/ftp/user.txt        #添加以下内容,单行为账号,双行为密码

wKiom1lHtJ-STLPbAAAsafTBjdY523.jpg


将上面建立的账号密码转化为数据库文件

db_load -T -t hash -f user.txt user.db

wKiom1lHtdeR5EyeAAAyzA9jS6Q260.jpg


vim /etc/pam.d/laotang6        #创建pam配置文件,文件名自定义。进行如下配置

wKiom1lHttGTLBF4AAA9XmyM8sk413.jpg


建立本地用户,给虚拟用户映射。

useradd laotang6            #建立账号laotang6

password laotang6           #修改用户laotang6的密码


vim /etc/vsftpd/vsftpd.conf

wKioL1lHt_rAPHTRAABFvCiW5Hk434.jpg


注意:修改主配置文件中最下面的pam_service_name=vsftpd 为咱们建立的laotang6

wKioL1lHuU6SSLPHAAA0RBiHxo0876.jpg


解释:

guest_enable=yes                 #开启虚拟用户模式

guest_username=laotang6  #隐射本地用户帐号

user_config_dir=/etc/ftp         #建立用户独立的权限配置文件存放目录

chroot_local_user=yes            #将用户限制在主目录

pam_service_name=laotang6        #指定咱们前面建立的pam文件



mkdir -p /home/laotang6/zhangsan/zs           #建立张三的共享目录

mkdir -p /home/laotang6/lisi/ls               #建立李四的共享目录


在指定的目录下cd /etc/ftp,以虚拟用户名建立的文件权限配置文件

cd /etc/ftp

vim zhangsan          #建立张三的权限配置文件(要以虚拟用户名作文件名)

wKiom1lHvZ6CrPn7AAA_pQsagYs172.jpg


chmod o+w /home/laotang6/zhangsan/zs          #给予目录读写权限


vim lisi

wKioL1lHv53x9yuSAAAsksADqfY854.jpg


systemctl restart vsftpd        #重启


客户端测试: OK

 

张三(有读写权限)

wKioL1lHwFXR0uy7AADRWFh6k-s954.jpg

wKiom1lHwFXh3BiwAACiB1oX9XE052.jpg


李四(只有读取权限)

wKioL1lHwFaR7TzCAADccbA7UIY626.jpg

wKioL1lHwFbzn8L4AADELLmXlcg822.jpg




systemctl restart firewalld        #开启防火墙


容许防火墙

firewall-cmd --permanent --add-service=ftp

firewall-cmd --reload





以上实验配置完毕。

相关文章
相关标签/搜索