项目中需要搭建ftp服务器作为文件临时服务,那么如何搭建ftp服务器呢,简单记录下
环境 CentOS 7.3
一、环境搭建
1.首先检测是否安装了服务
rpm -q vsftpd
如果安装了如下图所示
如果没有安装
现在进行安装
yum -y install vsftp
这个是在网络连接正常的环境下才可以使用的,如果是内网环境,那么无法进行命令安装怎么办呢?
2.安装方法
方法1:从官方网站下载
方法2:如果有系统iso文件的话,从系统安装包中找到对应的安装包
例如:镜像文件CentOS-7.3-x86_64-DVD-1611.iso
解压后有个packages文件夹,里面包含了需要的rpm包
准备好安装包后,将文件上传到服务器上
执行
rpm -ivh vsftpd-3.0.2-el7.x86_64.rpm
二、配置并启动服务
执行如下命令
查看位置
whereis vsftpd
vsftpd: /usr/sbin/vsftpd /etc/vsftpd /usr/share/man/man8/vsftpd.8.gz
启动服务
systemctl start vsftpd.service
查看配置位置
/etc/vsftpd
修改配置文件
vim vsftpd.conf
anonymous_enable=NO # 不允许匿名访问,禁用匿名登录
chroot_local_user=YES # 启用限定用户在其主目录下
use_localtime=YES # 使用本地时(自行添加)
chroot_list_enable=YES
local_enable=YES # 允许使用本地帐户进行FTP用户登录验证
allow_writeable_chroot=YES # 如果启用了限定用户在其主目录下需要添加这个配置,解决报错 500 OOPS: vsftpd: refusing to run with writable root inside chroot()
xferlog_enable=YES # 启用上传和下载的日志功能,默认开启。
local_umask=022 # 设置本地用户默认文件掩码022
FTP上本地的文件权限,默认是077,不过vsftpd安装后的配置文件里默认是022
创建用户
#创建用户 ftpuser 指定 目录
useradd -g root -M -d /opt/ftpfile -s /sbin/nologin ftpuser
#设置用户 ftpuser 的密码
passwd ftpuser
#把 /opt/ftpfile 的所有权给ftpuser
chown -R ftpuser /opt/ftpfile
重起服务
systemctl restart vsftpd.service