Centos 7.9 搭建vsftpd服务

一、搭建server端

1、安装vsftpd         

yum -y install vsftpd

2、启动vsftpd服务

systemctl start vsftpd
systemctl enable vsftpd    #设置开机自启

3、设置匿名用户访问下载并上传(根据情况定义是否让匿名用户有修改的权限)

vim /etc/vsftpd/vsftpd.conf
anon_upload_enable=YES    #设置匿名用户可以上传
anon_mkdir_write_enbale=YES    #匿名用户可以创建或删除目录
anon_other_write_enable=YES    #匿名用户可以对目录进行操作
#local_root=/home/        #这个可以设置指定共享目录,我们匿名用户登陆时,使用默认即可

4、关闭防火墙与selinux

systemctl stop firewalld    #停止防火墙
systemctl disable firewalld     #永久关闭防火墙
getenforce    #获取selinux状态,enforcing开启状态    permissive临时关闭状态   disabled永久关闭状态
setenforce 0    #临时关闭
#永久关闭需要修改配置文件 
vim /etc/selinux/config    #修改selinux配置文件


# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.
#     permissive - SELinux prints warnings instead of enforcing.
#     disabled - No SELinux policy is loaded.
#SELINUX=enforcing
SELINUX=disabled
# SELINUXTYPE= can take one of three values:
#     targeted - Targeted processes are protected,
#     minimum - Modification of targeted policy. Only selected processes are protected. 
#     mls - Multi Level Security protection.
SELINUXTYPE=targeted

5、设置权限归属

vsftpd 默认共享文件在/var/ftp

设置ftp目录下的文件归属为ftp

chown /var/ftp/* -R

Centos 7.9 搭建vsftpd服务_第1张图片

注:ftp目录的归属依旧为root,不需要修改

6、重启vsftpd

systemctl restart vsftpd

7、测试

打开Windows文件管理器,输入ftp://服务器IP,回车,即可看到/var/ftp/下的文件

Centos 7.9 搭建vsftpd服务_第2张图片

注:匿名登录文件共享,有一定的风险安全,尤其在给了文件操作权限后,所以我们下面来操作一下如何设置只能对应的用户来访问 

8、设置指定用户登录vsftpd服务共享

vim /etc/vsftpd/vsftpd.conf


#注释或删除掉所有匿名设置选项

   
#anon_mkdir_write_enbale=YES    #匿名用户可以创建或删除目录
#anon_other_write_enable=YES    #匿名用户可以对目录进行操作
#local_root=/home/        #这个可以设置指定共享目录,我们匿名用户登陆时,使用默认即可


#增加以下内容
anon_upload_enable=NO      #设置匿名用户不可登录
chroot_list_enable=YES     #启用限制登陆用户在主目录里面
chroot_list_file=/etc/vsftpd/chroot_list  #限制登陆的用户在这个文件列表中,一行一个用户
allow_writeable_chroot=YES  #允许限制的用户对目录有写权限
local_max_rate=0     #不设置下载上传速率

注:配置文件中不指明用户默认的共享文件目录,默认谁登录,就在谁的家目录下

9、创建共享用户

useradd jack
useradd tom
passwd jack
passwd tom

将用户加入vsftpd的用户配置文件

vim /etc/vsftpd/chroot_list


jack
tom

重启vsftpd服务

systemctl restart vsftpd

10、验证

在jack用户与tom用户的加目录下分别写测试文件,例:

echo "tom.txt" /home/tom

echo "jack.txt" /home/jack

打开windows文件管理器输入:ftp://vsftpd服务IP

Centos 7.9 搭建vsftpd服务_第3张图片

Centos 7.9 搭建vsftpd服务_第4张图片

Centos 7.9 搭建vsftpd服务_第5张图片

Centos 7.9 搭建vsftpd服务_第6张图片

注:如果要多用户访问同一个目录下的文件,又不用匿名登录,只需要在vsftpd配置文件中怎加指定路径即可

vim /etc/vsftpd/vsftpd.conf



local_root=/mnt/vsftpd/

/mnt/vsftpd为共享文件目录,可自定义指定,但不要在/tmp   /root 等一些特殊文件目录下指定

你可能感兴趣的:(centos,linux,运维)