一、基本安装

1.运行以下命令安装 vsftpd。

yum install -y vsftpd

2.运行以下命令打开及查看etc/vsftpd

cd /etc/vsftpd

说明:

  • /etc/vsftpd/vsftpd.conf 是核心配置文件。
  • /etc/vsftpd/ftpusers 是黑名单文件,此文件里的用户不允许访问 FTP 服务器。
  • /etc/vsftpd/user_list 是白名单文件,是允许访问 FTP 服务器的用户列表。
  • /etc/vsftpd/vsftpd_conf_migrate.sh 是vsftpd操作的一些变量和设置

备注:使用命令 rpm -ql vsftpd 可列出vsftpd中包含的文件

3.运行以下命令设置开机自启动。

systemctl enable vsftpd

4.运行以下命令启动 FTP 服务。

systemctl start vsftpd

5.运行以下命令查看 FTP 服务端口。

netstat -antup | grep ftp

6.配置本地用户登录

本地用户登录就是指用户使用 Linux 操作系统中的用户账号和密码登录 FTP 服务器。

vsftpd 安装后默只支持匿名 FTP 登录,用户如果试图使用 Linux 操作系统中的账号登录服务器,将会被 vsftpd 拒绝,但可以在 vsftpd 里配置用户账号和密码登录。具体步骤如下:

a.运行以下命令创建 ftptest 用户。

useradd ftptest

b.运行以下命令修改 ftptest 用户密码。

passwd ftptest

7.禁止匿名使用

vim /etc/vsftpd/vsftpd.conf

修改如下配置

8.配置远程连接

完成vsftpd安装后发现无法远程连接,仍需要完成以下配置。

原因分析:

FTP连接方式分为:主动模式和被动模式。默认为被动模式。

如果为被动模式,服务器端必须监听至少一个额外的被动模式端口。所以,若只开通20和21端口是不够的,需要另外配置入站端口。

以下以阿里云服务器为例:

在阿里云安全组中,开启50800/50899,20/21 端口 ,也可自定义(后面配置需要用到),仅做参考。

备注参考信息:https://blog.csdn.net/binsoft/article/details/44595677

添加配置信息 修改配置文件 vim /etc/vsftpd/vsftpd.conf

在文件末尾添加:

pasv_enable=YES
pasv_min_port=50800
pasv_max_port=50899

解释:

  • 50800/50899 为上面安全组添加的端口号
  • pasv_enable=YES|NO
    • YES,允许数据传输时使用PASV模式。
    • NO,不允许使用PASV模式。默认值为YES。
  • pasv_min_port=port number
  • pasv_max_port=port number
    • 设定在PASV模式下,建立数据传输所可以使用port范围的下界和上界,0 表示任意。默认值为0。把端口范围设在比较高的一段范围内,比如50000-60000,将有助于安全性的提高。

完成以上配置,基本可以实现远程连接FTP。

9.配置 vsftpd 限制 FTP 账户访问其它目录

使用 vsftpd 搭建 FTP 服务,可以配置用户登录后,限制访问其它的目录,只能进它的主目录。 配置方法如下:

9.1 打开 vsftp 的配置文件

找到 chroot Chroot_local_user ,将注释打开

chroot_local_user=yes
chroot_list_enable=yes
chroot_list_file=/etc/vsftpd/chroot_list
  • 设置所有的本地用户都执行 chroot chroot_local_user=yes (本地所有帐户都只能在自家目录)
  • chroot_list_file 需要自己创建
    • 若不想限制个别用户,将用户名添加到vsftpd.chroot_list文件中,每个用户名一行。

9.2 在文件末尾添加

allow_writeable_chroot=YES

对vsftpd有用,否则,因home目录权限为root权限而无法登录

9.3 为 /home/ftptest 添加权限

cd /home
chmod 777 ftptest

10. 修改默认端口

10.0 在阿里云安全组添加 6709 端口

10.1 编辑 /etc/vsftpd/vsftpd.conf 文件,末尾添加:

listen_port=6709

10.2 编辑/etc/services 文件,将其中的

ftp 21/tcp  改为 ftp 6709/tcp
ftp 21/udp  改为 ftp 6709/udp

10.3 重新启动vsftpd 服务

systemctl restart vsftpd

10.4 查看启动状态

netstat -tnulp | grep vsftpd

可以查看到现在系统现监听的vsftpd 的端口为6709

注意

启动的时候要检查文件 /etc/vsftpd/vsftpd.conf 是否有空格,如果有空格,就会报错

为 vsftpd 启动 vsftpd:500 OOPS: bad bool value in config file for: pasv_enable

参考文章

  • https://cloud.tencent.com/developer/article/2105518
  • ftp 黑名单,白名单
  • 配置 chroot_list 相关说明

linux下ftp搭建流程相关推荐

  1. linux ftp 团队认证,linux下ftp和ftps以及ftp基于mysql虚拟用户认证服务器的搭建

    linux下ftp和ftps以及ftp基于mysql虚拟用户认证服务器的搭建 1.FTP协议:有命令和数据连接两种 命令连接,控制连接:21/tcp 数据连接: 主动模式,运行在20/tcp端口 和 ...

  2. Linux下svn搭建配置流程

    Linux下svn搭建配置流程     一.    源文件编译安装.源文件共两个,为: 1.   下载subversion源文件 subversion-1.6.1.tar.gz http://d136 ...

  3. Linux下FTP服务器搭建

    Linux下FTP服务器搭建 一.FTP介绍 二.环境介绍 三.FTP服务端搭建步骤 1.安装相关软件包 2.启动FTP并检查状态 3.检查服务端口运行状态 4.修改FTP配置文件 5.关闭selin ...

  4. linux如何测试ftp服务器,linux下FTP服务器的搭建

    1.FTP服务器的简介 关于ftp的介绍,大家也一定不陌生了.我就直接把百度百科上的介绍拿过来,和大家一起温习一下概念. FTP 是File Transfer Protocol(文件传输协议)的英文简 ...

  5. Linux下服务器端开发流程及相关工具介绍(C++)

    原文:Linux下服务器端开发流程及相关工具介绍(C++) 去年刚毕业来公司后,做为新人,发现很多东西都没有文档,各种工具和地址都是口口相传的,而且很多时候都是不知道有哪些工具可以使用,所以当时就想把 ...

  6. linux中ftp如何使用,linux下ftp如何使用

    linux下ftp可以上传.下载文件 centos7环境: 1.检查是否安装过ftp服务 rpm -qa|grep vsftpd 如果没有输出则表示没有安装过 安装ftp yum -y install ...

  7. linux怎样搭建DNS服务器,Linux下快速搭建DNS服务器

    摘要 腾兴网为您分享:Linux下快速搭建DNS服务器,作业盒子,优学堂,湘税社保,悟空识字等软件知识,以及初中英语app,新榜编辑器,神界原罪2,少儿英语点读app,minecraft皮肤编辑器, ...

  8. linux下ftp服务阶段实验(3)

    linux下ftp服务阶段实验(3) 3.  (1)匿名用户的FTP根目录是/ftp,只能下载,下载速度为100Kbps     (2)本地用户hello的FTP根目录为/hello,可以上传下载,家 ...

  9. Linux下svn搭建配置

    Linux下svn搭建配置 1.安装svn客户端    yum install subversion    svnserve --version                       :如果成功 ...

最新文章

  1. mariadb转mysql_MariaDB/MySQL备份和恢复(二):数据导入、导出
  2. Learn OpenGL (十一):光照贴图
  3. mysql客户端与服务端_mysql语句在客户端与服务端的基本使用
  4. build.gradle代码
  5. Hbase 预写日志WAL处理源码分析之 LogCleaner
  6. 天勤数据结构:树与二叉树(图解二叉树的三种遍历方式执行流程,超详细)
  7. mariab修改mysql端口_修改mysql/MariaDB数据库的端口号+远程
  8. SAP Spartacus的单元测试目录结构
  9. linux内核镜像sd卡,【原创】Linux QT镜像的制作--制作SD卡启动盘
  10. 删除一行下方单元格上移_openpyxl3.0官方文档(5)——插入和删除行和列,移动单元格...
  11. 一文让你秒懂互联网TCP/IP协议的深层含义
  12. C# winform小票打印
  13. c3p0连接池配置及实现详解
  14. 【软件体系结构】软件体系结构笔记
  15. PS教程新手入门(三)--PS实用的技巧教程
  16. html更改超链接下划线颜色,超链接去掉下划线_WORD中不取消超链接,只改超链接的颜色和去掉下划线...
  17. (三十七)java SpringCloud版本b2b2c鸿鹄云商平台全套解决方案
  18. jetson nano 安装乐视的深度相机orbbec
  19. 专业动漫库好看的3d动漫推荐(3D动漫排行榜2022)
  20. Linux系统VPS云服务器硬件/网速/性能/延迟测试一键脚本分享

热门文章

  1. 2017.10.11 米加特官网重磅改版,华丽上线
  2. 分辨率计算机英语,各种分辨率的英文缩写
  3. 苹果开发者注册了邓白氏编码不能用,查询时提示该组织不存在怎么办?
  4. app营销应该这样做(读书笔记)
  5. NetSuite Account Register报表详解
  6. 山西3件国宝春节期间亮相《国家宝藏》
  7. 在标准IO库中,rewind函数作用?
  8. (赴日流程)家属滞在签证
  9. 锂电池充电的同时也能放电吗?
  10. 大数据工程师就业前景及发展方向分析