码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 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
    
    • 1

    vsftpd服务相关

    • 设置开机自启动

      systemctl enable vsftpd.service
      
      • 1
    • 启动FTP服务

      systemctl start vsftpd.service
      
      • 1
    • 重启FTP服务

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

      netstat -antup | grep ftp
      
      // :::21     LISTEN
      
      • 1
      • 2
      • 3

    服务器配置

    1. 新建FTP用户、设置密码
    // 新建用户
    adduser ftptest
    // 设置密码
    passwd ftptest
    
    • 1
    • 2
    • 3
    • 4
    1. 创建一个供ftp使用的目录
    mkdir /var/ftp/data
    
    • 1
    1. 更改/var/ftp/data目录的拥有者为ftptest
    chown -R ftptest:ftptest /var/ftp/data
    
    • 1
    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
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    1. 创建chroot_list文件
    # 文件内容可以为空
    vim /etc/vsftpd/chroot_list
    
    • 1
    • 2
    1. 允许在SELinux中上传和编辑文件
    setsebool -P allow_ftpd_full_access on
    setsebool -P ftpd_connect_all_unreserved 1
    
    • 1
    • 2
    1. 重启ftp服务器

    测试FTP服务器

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

    1. 下载WinSCP

    WinSCP官网

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

    在终端使用FTP

    • 连接
    ftp `your-host`
    
    // 根据提示输入用户名以及密码
    // 230 Login successful.
    
    • 1
    • 2
    • 3
    • 4
    • 目录操作
    // 列出文件目录
    ls
    
    // 切换目录
    cd
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 上传文件
    // 上传单个文件
    put /path/file
    
    // 上传多个文件
    mput *.md 
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 下载文件
    // 下载文件之前,设定本地接受目录位置
    lcd `your-path`
    
    // 下载单个文件
    get filepath/file
    
    // 下载多个文件
    mget *.md
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 关闭FTP连接
    // 使用一下命令中任意一个即可退出
    bye/exit/quit
    
    // 221 Goodbye
    
    • 1
    • 2
    • 3
    • 4
    • ftp帮助菜单
    // 获取帮助文档
    help
    
    • 1
    • 2
  • 相关阅读:
    移动和pc端的微信支付和支付宝支付(持续更新)
    java-php-python-至臻阁古董拍卖网计算机毕业设计
    2022 CMU15-445 Project 1 Buffer Pool
    npm ERR! network ‘proxy‘ config is set properly. See: ‘npm help config解决方法
    16、XDC引脚约束
    java spring cloud 企业电子招标采购系统源码:营造全面规范安全的电子招投标环境,促进招投标市场健康可持续发展
    计算机网络4小时速成:网络安全,被动攻击,主动攻击,对称加密,公钥秘钥,数字签名,鉴别,网络层安全协议IPsec,传输层安全协议SSL,防火墙,入侵检测系统
    活动回顾 | 数字外贸私享会【上海站】成功举办
    基于Web技术的优秀电影片段赏析与交流系统
    自动化测试教程(20)了解PageObject模式
  • 原文地址:https://blog.csdn.net/weixin_45394086/article/details/126730644
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号