一、前述
企业中linux搭建ftp服务器还是很实用的,所以本文基于Centos7搭建服务器教程做个总结。
什么是FTP?
FTP,文件传输协议,可以实现在网络上传输多种类型的文件
一个完整的FTP文件传输需要建立两种类型的连接,先建立控制连接,然后建立数据连接
控制连接:客户端首先向服务端的TCP21号端口发起建立连接的请求,服务器接收请求,完成控制连接的建立
数据连接:控制连接建立后,开始建立数据连接,用于传输文件。数据连接有主动传输模式和被动传输模式。
FTP协议占用两个端口号:
21端口:命令控制,用于接收客户端执行的FTP命令。
20端口:数据传输,用于上传、下载文件数据。
二、服务端安装
1.安装vsftpd
yum -y install vsftpd
2.配置vsftp
vim /etc/vsftpd/vsftpd.conf
输入 :set number显示行号(可省略)
:set number
修改第12行为: anonymous_enable=NO 禁止匿名登录
取消第102行chroot_list_enable=YES,104行chroot_list_file=/etc/vsftpd/chroot_list的注释
在最后一行新增 allow_writeable_chroot=YES 然后保存退出
二、增加访问ftp的用户
1.编辑账户文件
vim /etc/vsftpd/chroot_list
输入账户名,多个用户名以空格隔开,这里以用户名ftptest为例
2.设置上传目录
mkdir -p /home/upload
3.新增用户,配置主文件夹
useradd -d /home/upload -s /sbin/nologin ftptest
这时候会返回以下
4.将用户放置ftp组
usermod -aG ftp ftptest
5.将文件夹分配给用户
chown ftptest /home/upload
6.设置密码
passwd ftptest
三、配置防火墙
1.关闭SELinux
输入vim /etc/selinux/config,修改至下图所示
然后输入 setenforce 0
setenforce 0
2.修改firewall使之允许ftp功能
启动firewall
systemctl start firewalld.service
输入
firewall-cmd –permanent –zone=public –add-service=ftp
重启firewall
firewall-cmd --reload
四、启动ftp服务
经过以上步骤,ftp就已配置好,下面启动服务并添加开机启动
1.启动ftp
systemctl start vsftpd
2.查看ftp状态
systemctl status vsftpd
返回以下说明服务已启动
3.设置开机自启动
chkconfig vsftpd on
文章来源:https://www.cnaaa.net,转载请注明出处:https://www.cnaaa.net/archives/4753