服务器ftp搭建记录

最近,博主应组内学习(搬砖)需要,为组内服务器搭建了 ftp 服务,踩坑较多。因此,博主撰写此博客,希望对大家有所帮助。

简介

FTP(File Transfer Protocol)是一种文件传输协议,基于客户端/服务器架构,支持以下两种工作模式:

  1. 主动模式:客户端向FTP服务器发送端口信息,由服务器主动连接该端口。
  2. 被动模式:FTP服务器开启并发送端口信息给客户端,由客户端连接该端口,服务器被动接受连接。

FTP支持以下三种认证模式:

  1. 匿名用户模式:任何人无需密码验证就可以直接登录到FTP服务器。这种模式最不安全,一般只用来保存不重要的公开文件,不推荐在生产环境中使用。
  2. 本地用户模式:通过Linux系统本地账号进行验证的模式,相较于匿名用户模式更安全。
  3. 虚拟用户模式:FTP服务器的专有用户。虚拟用户只能访问Linux系统为其提供的FTP服务,而不能访问Linux系统的其它资源,进一步增强了FTP服务器的安全性。

经与组内开发人员研究,博主拟采用被动模式和本地用户模式。

安装步骤

注意:以下操作都是在 root 用户下进行。

安装 vsftpd 服务;
  1. 安装 vsftpd
yum install-y vsftpd
  1. 设置 ftp 服务开机自启动;
systemctl enable vsftpd.service
  1. 启动 ftp 服务;
systemctl start vsftpd.service

可使用如下命令,查看 ftp 服务监听端口

netstat -antup | grep ftp
配置 vsftpd
  1. 配置本地用户访问 ftp 服务器
adduser ftptest
  1. 设置密码
passwd ftptest
  1. 创建供 ftp 服务使用的目录
mkdir /var/ftp/test
  1. 更改目录所有者为 ftptest
chown -R ftptest:ftptest /var/ftp/test
  1. 修改 vsftpd.conf 配置文件(路径 /etc/vsftpd/vsftpd.conf

配置参数

#除下面提及的参数外,其他参数保持默认值即可。

#修改下列参数的值
anonymous_enable=NO          #禁止匿名登录FTP服务器
local_enable=YES             #允许本地用户登录FTP服务器
listen=YES                   #监听IPv4 sockets
#在行首添加#注释掉以下参数
#listen_ipv6=YES             #关闭监听IPv6 sockets

#添加下列参数
local_root=/var/ftp/test     #设置本地用户登录后所在目录
chroot_local_user=YES        #全部用户被限制在主目录
chroot_list_enable=YES       #启用例外用户名单
chroot_list_file=/etc/vsftpd/chroot_list  #指定例外用户列表文件,列表中用户不被锁定在主目录
allow_writeable_chroot=YES
pasv_enable=YES                    #开启被动模式
pasv_address=<FTP服务器公网IP地址>  #本教程中为Linux实例公网IP
pasv_min_port=<port number>          #设置被动模式下,建立数据传输可使用的端口范围的最小值
pasv_max_port=<port number>          #设置被动模式下,建立数据传输可使用的端口范围的最大值
  1. 创建chroot_list文件,并在文件中写入例外用户名单(可为空,但是必须存在);

  2. 重启 vsftpd 服务。

systemctl restart vsftpd.service

测试

  1. 使用 Chrome 等浏览器输入 ftp://ip:port,并在弹出的窗口中填入用户名和密码等信息,即可访问服务器上的文件;

  2. 使用 Filezilla 等客户端。

可能问题

在测试 ftp 时可能会遇见 553, 445 等问题,可参考博客 vsftp报错425ftp部署和使用

参考链接

  1. 手动搭建FTP站点(CentOS 7)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值