ftp服务器搭建

文中使用centos7环境。 vsftpd官方文档

FTP介绍

FTP(File Transfer Protocol)是一种文件传输协议,基于B/S架构。

FTP支出两种工作模式:

  1. 主动模式:客户端向FTP服务器发送端口信息,由服务器主动连接该端口。

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

FTP支持三种认证模式:

  1. 匿名用户模式:任何人无需密码验证就可以直接登录到FTP服务器。这种模式最不安全,一般只用来保存不重要的公开文件,不推荐在生产环境中使用。

  2. 本地用户模式:通过Linux系统本地账号进行验证的模式,相较于匿名用户模式更安全。

  3. 虚拟用户模式:FTP服务器的专有用户。虚拟用户只能访问Linux系统为其提供的FTP服务,而不能访问Linux系统的其它资源,进一步增强了FTP服务器的安全性。

服务器安装

yum install -y vsftpd

vsftpd服务相关

  • 设置开机自启动

    systemctl enable vsftpd.service
    
  • 启动FTP服务

    systemctl start vsftpd.service
    
  • 重启FTP服务

    systemctl restart vsftpd.service
    
  • 查看服务器监听的端口

    netstat -antup | grep ftp
    
    // :::21     LISTEN
    

服务器配置

  1. 新建FTP用户、设置密码
// 新建用户
adduser ftptest
// 设置密码
passwd ftptest
  1. 创建一个供ftp使用的目录
mkdir /var/ftp/data
  1. 更改/var/ftp/data目录的拥有者为ftptest
chown -R ftptest:ftptest /var/ftp/data
  1. 修改vsftpd.conf配置文件
# 打开文件
vim /etc/vsftpd/vsftpd.conf

# 修改下列参数
# 禁止匿名登录FTP服务器。
anonymous_enable=NO
# 允许本地用户登录FTP服务器。
local_enable=YES
#监听IPv4 sockets
listen=YES

# 关闭监听IPv6 sockets。
listen_ipv6=YES

# 在配置文件的末尾添加下列参数:
# 设置本地用户登录后所在目录
local_root=/var/ftp/test
# 全部用户被限制在主目录
chroot_local_user=YES
# 启用例外用户名单
chroot_list_enable=YES
# 指定例外用户列表文件,列表中用户不被锁定在主目录。
chroot_list_file=/etc/vsftpd/chroot_list
# 开启被动模式。
pasv_enable=YES
allow_writeable_chroot=YES
  1. 创建chroot_list文件
# 文件内容可以为空
vim /etc/vsftpd/chroot_list
  1. 允许在SELinux中上传和编辑文件
setsebool -P allow_ftpd_full_access on
setsebool -P ftpd_connect_all_unreserved 1
  1. 重启ftp服务器

测试FTP服务器

在win10下使用WinSCP工具进行测试

  1. 下载WinSCP

WinSCP官网

  1. 登录
    在这里插入图片描述
  • 上传/下载速率
    • 上传文件基本稳定在80MB/s左右
    • 下载文件基本稳定在60MB/s左右
      在这里插入图片描述
      至此,服务器搭建完成!

在终端使用FTP

  • 连接
ftp `your-host`

// 根据提示输入用户名以及密码
// 230 Login successful.
  • 目录操作
// 列出文件目录
ls

// 切换目录
cd
  • 上传文件
// 上传单个文件
put /path/file

// 上传多个文件
mput *.md 
  • 下载文件
// 下载文件之前,设定本地接受目录位置
lcd `your-path`

// 下载单个文件
get filepath/file

// 下载多个文件
mget *.md
  • 关闭FTP连接
// 使用一下命令中任意一个即可退出
bye/exit/quit

// 221 Goodbye
  • ftp帮助菜单
// 获取帮助文档
help
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

楼下安同学

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值