简介: 本文主要为大家介绍 Centos 7 环境下使用 vsftpd 搭建 FTP 服务器的过程。


Centos 7 使用 vsftpd 搭建 FTP 服务器_配置文件

Centos 7 使用 vsftpd 搭建 FTP 服务器_ftp服务器_02

一、全局操作

1、安装vsftpd服务


yum -y install vsftpd

Centos 7 使用 vsftpd 搭建 FTP 服务器_ftp服务器_02

2、去掉配置文件里的注释行

mv /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bak
grep -v "#" /etc/vsftpd/vsftpd.conf.bak > /etc/vsftpd/vsftpd.conf
Centos 7使用vsftpd搭建FTP服务器

Centos 7 使用 vsftpd 搭建 FTP 服务器_ftp服务器_02

3、配置firewalld防火墙开放2231和45000-49000端口

firewall-cmd --permanent --add-port=2231/tcp
firewall-cmd --permanent --add-port=45000-49000/tcp
firewall-cmd --reload

Centos 7 使用 vsftpd 搭建 FTP 服务器_ftp服务器_02

4、配置selinux允许FTP服务

注:没有selinux相关命令的话,需要安装policycoreutils-python包

yum -y install policycoreutils-python.x86_64
setsebool -P ftpd_full_access=on

Centos 7 使用 vsftpd 搭建 FTP 服务器_ftp服务器_02

二、匿名开放模式

1、修改配置文件,带注释的是需要修改和新增的配置

vim /etc/vsftpd/vsftpd.conf
anonymous_enable=YES #启用匿名访问模式
anon_umask=022 #匿名用户上传文件的umask值
anon_upload_enable=YES #允许匿名用户上传文件anon_mkdir_write_enable=YES #允许匿名用户创建目录
anon_other_write_enable=YES #允许匿名用户重命名、删除等操作
anon_root=/data/anon #匿名用户的FTP根目录
local_enable=YES
write_enable=YES<br />local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen_port=2231 #vsftpd服务监听的端口号
listen=NO
listen_ipv6=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
pasv_min_port=45000 #PASV模式最小端口号
pasv_max_port=49000 #PASV模式最大端口号

Centos 7 使用 vsftpd 搭建 FTP 服务器_ftp服务器_02

2、创建并授权匿名用户FTP根目录

mkdir -p /data/anon/pub
chown -R ftp /data/anon/pub/

Centos 7 使用 vsftpd 搭建 FTP 服务器_ftp服务器_02

3、启动vsftpd服务,并加入开机启动

systemctl start vsftpd
systemctl enable vsftpd

Centos 7 使用 vsftpd 搭建 FTP 服务器_ftp服务器_02

4、测试

Centos 7使用vsftpd搭建FTP服务器

三、本地用户模式

1、修改配置文件,删除之前的匿名模式配置内容,带注释的是需要修改和新增的配置

vim /etc/vsftpd/vsftpd.conf
anonymous_enable=NO #关闭匿名访问模式
local_enable=YES
write_enable=YES
local_umask=022
local_root=/data/user #指定本地用户的FTP根目录
chroot_local_user=YES #将用户权限禁锢在FTP目录
allow_writeable_chroot=YES #允许对FTP根目录执行写入操作
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen_port=2231
listen=NO
listen_ipv6=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
pasv_min_port=45000
pasv_max_port=49000

Centos 7 使用 vsftpd 搭建 FTP 服务器_ftp服务器_02

2、创建本地用户,并指定家目录

useradd -d /data/user -s /sbin/nologin user
echo "123456" | passwd --stdin user

Centos 7 使用 vsftpd 搭建 FTP 服务器_ftp服务器_02

3、重启vsftpd服务


systemctl restart vsftpd

Centos 7 使用 vsftpd 搭建 FTP 服务器_ftp服务器_02

4、测试

Centos 7使用vsftpd搭建FTP服务器