安装 vsftpd

yum install -y vsftpd

进入 /etc/vsftpd

cd /etc/vsftjpd

/etc/vsftpd/vsftpd.conf 是核心配置文件。

/etc/vsftpd/ftpusers 是黑名单文件,此文件里的用户不允许访问 FTP 服务器。

/etc/vsftpd/user_list 是白名单文件,是允许访问 FTP 服务器的用户列表

配置 vsftpd

常用配置

#允许匿名用户登录FTP
anonymous_enable=YES
#设置匿名用户的登录目录(如需要,需自己添加并修改)
anon_root=/var/ftp/pub
#打开匿名用户的上传权限
anon_upload_enable=YES
#打开匿名用户创建目录的权限
anon_mkdir_write_enable=YES
#打开匿名用户删除和重命名的权限(如需要,需自己添加)
anon_other_write_enable=YES
#匿名用户的掩码(如需要,需自己添加,含义:如umask是022,这时创建一个权限为666的文件,文件的实际权限为666-022=644)
anon_umask=022

vsftpd 安装后默认开启了匿名 FTP 的功能,使用匿名 FTP,用户无需输入用户名密码即可登录 >FTP 服务器,但没有权限修改或上传文件。

配置匿名用户上传文件权限

修改 vsftpd.conf 的配置文件的选项,可以赋予匿名 FTP 更多的权限。

①. 修改 /etc/vsftpd/vsftpd.conf: 运行 `vim /etc/vsftpd/vsftpd.conf`
③. 将写权限修改为 `write_enable=YES`
④. 将匿名上传权限修改为 `anon_upload_enable=YES`

运行以下命令更改 /var/ftp/pub 目录的权限,为 FTP 用户添加写权限,并重新加载配置文件。

chmod o+w /var/ftp/pub/
systemctl restart vsftpd.service

配置本地用户登录

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

可在 ftpuser(黑名单)和 userlist(白名单)中添加用户。

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

①. 运行以下命令创建 ftpuser 用户:`useradd ftpuser`
②. 运行以下命令修改 ftpuser 用户密码:`passwd ftpuser`

vsftpd.conf 的配置文件说明

用户登陆控制

参数 说明
anonymous_enable=YES 接受匿名用户
no_anon_password=YES 匿名用户login时不询问口令
anon_root=(none) 匿名用户主目录
local_enable=YES 接受本地用户
local_root=(none) 本地用户主目录
pam_service_name=vsftpd 指出vsftpd进行pam认证时所使用的 pam 配置文件名。
userlist_enable=NO 文件中的用户是否能够访问FTP服务器。若设置为YES,则user_list文件中的用户不允许访问FTP,若设置为NO,则只有user_list文件中的用户才能访问FTP。
listen_ipv6=YES 设定是否支持IPV6。如要同时监听IPv4和IPv6端口。
listen=NO 是否允许监听,如果设置为YES,则vsftpd将以独立模式运行,由vsftpd自己监听和处理IPv4端口的连接请求。

用户权限控制

参数 说明
write_enable=YES 可以上传(全局控制)
local_umask=022 本地用户上传文件的umask
file_open_mode=0666 上传文件的权限配合umask使用
anon_upload_enable=NO 匿名用户可以上传
anon_mkdir_write_enable=NO 匿名用户可以建目录
anon_other_write_enable=NO 匿名用户修改删除
chown_username=lightwiter 匿名上传文件所属用户名
tcp_wrappers=YES 在vsftpd中使用tcp_wrappers远程访问控制机制
connect_from_port_20=YES 指定FTP使用20端口进行数据传输,默认值为YES。

设置安全组

匿名访问端口设置

pasv_min_port=50000
pasv_max_port=60000

在安全组中开启端口范围

启动服务

  1. 开机自启动

    systemctl enable vsftpd.service

  2. 启动服务

    systemctl start vsftpd.service

  3. 查看 FTP 服务端口

    netstat -antup | grep ftp

遇见问题

  1. FileZilla 客户端使用SFTP可以正常连接但使用FTP连服务器却提示服务器拒绝可能是防火墙未设置:

    开发端口

    • 暂时开放 ftp 服务

      firewall-cmd --add-service=ftp

    • 永久开放 ftp 服务

      firewall-cmd --add-service=ftp --permanent

    • 永久关闭ftp服务

      firewall-cmd --remove-service=ftp --permanent

    • 重启防火墙让设定生效

      systemctl restart firewalld

  2. 解决服务器发回了不可路由的地址。使用服务器地址代替的问题

    先说一下ftp的配置:

    1. 设置——连接——FTP——被动模式,修改为“退回到主动模式”。
    2. 打开站点管理器,将【传输设置】选择为“主动”。

    安全组设设置

    • 开发所有端口

阿里云搭建 ftp 服务器相关推荐

  1. 阿里云搭建svn服务器

    阿里云搭建svn服务器 前言:SVN是Subversion的简称,是一个开放源代码的版本控制系统,也就是一个用来管理你的项目代码,用来进行版本控制的神器. 1.登陆你的云服务器 安装svn yum - ...

  2. 在本地Win10系统映射云服务器为网络驱动器——阿里云搭建samba服务器

    目的: 通过window系统的映射网络驱动器,将阿里云服务器的开发目录映射到window系统上,这样就可以在window系统上编写代码,然后通过Xshell终端上编译运行,极大提高码代码方便性! 方法 ...

  3. 阿里云搭建图片服务器,图片资源服务器搭建

    背景 我第一次搭建图片服务器是在我的虚拟机服务器下,后来虚拟机崩溃了,就在阿里云买了一台轻量级服务器,然后安装了图片服务器.不过我当时并没有写一个文档进行记录,直到我后来再次需要一台图片服务器,于是我 ...

  4. 阿里云搭建MC服务器教程

    目录 背景 基础准备 Ubuntu软件升级 安装Java环境 配置环境变量 端口开放 安装管理面板 设置面板保持后台运行 通过面板开服 参考文献 背景 看到阿里云学生有一个免费服务器体验,于是尝试搭建 ...

  5. git ssh拉取代码_阿里云搭建git服务器

    一.搭建步骤,分为两步 搭建中心仓库 自动同步代码到站点目录 二.详细步骤如下 1.先检查一下服务器上有没有安装git git --version 如果出现版本号,说明服务器已经安装git,如图所示: ...

  6. 阿里云搭建流媒体服务器

    最近不少人问是否能够将云视睿博流媒体服务器NTV Media Server G3搭建在阿里云服务器上,答案是肯定的,而且我们大部分客户都是这样用的,利用流媒体服务器的视频处理和播出能力,以及阿里云的基 ...

  7. 阿里云搭建 samba服务器

    前言: 我搭建samba服务器,只是想通过window系统的映射网络驱动器,将阿里云服务器的开发目录挂在到window系统上,这样就可以在window系统上编写代码,然后通过Xshell终端上编译运行 ...

  8. 阿里云搭建MQTT服务器并进行本地和服务器端联通测试

    要搭建一个能在公网上访问的MQTT服务器,不同位置的客户端可以通过公网发送信息通信 使用开源软件 mosquitto 阿里云服务器配置是Ubuntu18.04系统,到mosquitto 官网,按照说明 ...

  9. 利用阿里云搭建NFS服务器

    一.阿里云服务器(ECS) Linux是现在计算机运维的主流服务器,正好阿里云服务器也是目前非常主流的云服务器,我就简单地利用阿里云服务器和Linux配置的NFS服务器和客户端.功能非常简单,但这是第 ...

  10. 用阿里云搭建web服务器 2020最新

    阿里云的使用(web的搭建和云服务器的使用) 首先申请一个域名(腾讯百度阿里都可以) 然后申请一个云服务器(同样都可以) 进行域名解析,我的域名是百度云的,解析方式如下 点击域名管理 点解析-> ...

最新文章

  1. Python filter() 函数
  2. 整理自己的.net工具库
  3. react里 MD5加密
  4. Mysql数据库更新操作导致死锁问题
  5. 挑战程序设计竞赛:Nim
  6. 【清晖诗社】“立秋” 诗意浓,佳作有奖征集ing!
  7. mybatis简单查询
  8. 导数和积分的转换关系
  9. Linux——开发工具
  10. numpy和pandas的操作
  11. 在线AI日语视频音频翻译中文字幕
  12. H5 百度高德地图导航
  13. springboot数据库敏感数据加密解密
  14. 第三方组件提权-SQL server提权
  15. SQL SERVER数据库表删除恢复
  16. 网络规划---网络计划软件
  17. 微信小程序 UI 自动化
  18. Java 使用LinkedList模拟KTV点歌系统,首先先添加若干歌曲,如果歌曲列表中已有该歌曲,则不加入,否则追加。`然后选择列表中的其中一首置顶,最后选择列表中一首歌曲前置一位。
  19. [Android实例] 天天动听 半透明Menu效果
  20. linux中脚本扑捉(trap)信号问题

热门文章

  1. labview温度采集系统,温度计正负范围内显示,附加温度预警操作部分(初学者~)
  2. PIC12F508 单片机使用教程
  3. 全国各地电台在线收听大全(转)
  4. ARM嵌入式开发入门必要步骤
  5. 用c语言编写一个汇编编译器,【提问】最早的汇编语言编译器如何诞生?
  6. 课程设计任务书本科毕业设计学生信息管理系统
  7. 计算机网络课程设计(ftp)
  8. 国二c语言编程题只看结果吗,全国计算机二级C语言上机考试运行和编译都可以,但是运行出的结果和题目要求的结果不一样...
  9. 某大学校园网设计方案大学校园拓扑图 全解
  10. 显卡游戏温度测试软件,看谁最发烧 10款游戏的显卡温度测试