centos7快速搭建ftp

  • 前言
  • 1、安装vsftpd
  • 2、配置vsftpd
  • 3、创建ftp用户
  • 4、设置ftp用户登录权限
  • 5、创建ftp文件夹
  • 6、重新启动


前言

之前在自己家里的旧电脑上装了centos7作为家庭服务器来使用,做做实验之类的。本来一直想装个ftp服务器来着,用来保存文件,结果看了很多教程都不行,失败了。今天有空来研究一下。

centos 7 ftp server 配置 centos7 ftp服务_centos

1、安装vsftpd

在Linux中ftp服务主要使用vsftpd软件,这里是very safe ftp的意思,我也没懂为什么要取这个名字。
安装这个软件比较容易,使用centos的包管理软件yum安装:

yum install vsftpd -y

这样就安装完了,卸载是:

yum remove vsftpd -y

然后如果安装失败就先卸载,再删除创建的用户,删除配置文件夹:

删除用户的命令
userdel 用户名

删除下面几个配置文件夹
rm -rf /etc/vsftpd /etc/pam.d/vsftpd

至此,介绍了安装和完全卸载的方式。

2、配置vsftpd

vsftpd的主要配置文件都存放在/etc/vsftpd文件夹中,主要是vsftpd.conf文件。可以根据下面的代码进行修改:

# 原有初始配置
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
tcp_wrappers=YES
local_enable=YES
write_enable=YES
pam_service_name=vsftpd

# 不支持匿名访问
anonymous_enable=NO

# 所有用户都被限制在其主目录下
chroot_local_user=YES
chroot_list_enable=NO
allow_writeable_chroot=YES

# 支持IPv4及IPv6, 监听端口8021
listen=NO
listen_ipv6=YES
listen_port=8021

# 只允许userlist_file文件中的用户可访问ftp
userlist_enable=YES
userlist_deny=NO
userlist_file=/etc/vsftpd/user_list

# ftp用户主目录
local_root=/data/ftp

# passive模式,数据端口范围自定义(6000-6010),要确保这些端口已开放给外网访问
pasv_enable=YES
pasv_min_port=6000
pasv_max_port=6010

注意,这边配置的连接端口是8021端口。

3、创建ftp用户

我们使用私人ftp大多数都没有设置匿名访问,于是我们必须设置一个登录的账号:

# 创建一个用户组
groupadd ftpGroup
# 创建用户
useradd -d /opt/reconciliation -s /sbin/nologin -g ftpGroup -G root ftpUser
# 创建密码
passwd ftpUser

4、设置ftp用户登录权限

由于我们在vsftpd.conf文件中设置的是只有在userlist文件中出现的名字才能登录,所以我们需要把ftpUser这个用户添加进去。直接新建一行,把用户写进去就好了

5、创建ftp文件夹

vsftpd.conf中,我们设置的是/data/ftp/作为我们的存储文件夹,所以我们需要创建,并且把创建人设置为ftpUser用户。

mkdir /data/ftp
chown -R ftpUser /data/ftp

6、重新启动

重新启动服务,则安装及配置完成。

systemctl restart vsftpd.service