安装并启动 FTP 服务

安装 VSFTPD

使用 yum 安装 vsftpd

yum install vsftpd -y

vsftpd 是在 Linux 上被广泛使用的 FTP 服务器,根据其[官网介绍][https://security.appspot.com/vsftpd.html],它可能是 UNIX-like 系统下最安全和快速的 FTP 服务器软件。

启动 VSFTPD

安装完成后,启动 FTP 服务:

service vsftpd start

启动后,可以看到系统已经[监听了 21 端口]

netstat -nltp | grep 21

此时,访问 ftp://<您的 CVM IP 地址> 可浏览机器上的 /var/ftp 目录了。

FTP 协议默认使用 21 端口作为服务端口

配置 FTP 权限

目前 FTP 服务登陆允许匿名登陆,也无法区分用户访问,我们需要配置 FTP 访问权限

了解 VSFTP 配置

vsftpd 的配置目录为 /etc/vsftpd,包含下列的配置文件:

  • vsftpd.conf 为主要配置文件
  • ftpusers 配置禁止访问 FTP 服务器的用户列表
  • user_list 配置用户访问控制

阅读上述配置以了解更多信息。如果您准备好了,点击下一步开始修改配置来设置权限。

阻止匿名访问和切换根目录

匿名访问和切换根目录都会给服务器带来[安全风险],我们把这两个功能关闭。

编辑 /etc/vsftpd/vsftpd.conf[找到下面两处配置]并修改:

# 禁用匿名用户
anonymous_enable=NO # 禁止切换根目录
chroot_local_user=YES

编辑完成后,按 Ctrl + S 保存配置,重新启动 FTP 服务,如:

service vsftpd restart

匿名访问让所有人都可以上传文件到服务器上而无需鉴权,而允许切换根目录则可能产生越权访问问题。

在代码编辑器中,用 Ctrl + F 进行搜索,Mac 用户用 Cmd + F 进行搜索

创建 FTP 用户

创建一个用户 ftpuser [?]

useradd ftpuser

为用户 ftpuser 设置密码 [?]

echo "Password" | passwd ftpuser --stdin

为了方便后面的实验步骤,不建议使用其它的用户名

下面命令中的密码为实验室为您生成,为了方便后面的实验步骤,不建议使用其他密码

限制该用户仅能通过 FTP 访问

限制用户 ftpuser 只能通过 FTP 访问服务器,而不能直接登录服务器:

usermod -s /sbin/nologin ftpuser

为用户分配主目录

为用户 ftpuser 创建[主目录]并约定:

/data/ftp 为主目录, 该目录不可上传文件

/data/ftp/pub 文件只能上传到该目录下

mkdir -p /data/ftp/pub

创建登录欢迎文件 [?]

echo "Welcome to use FTP service." > /data/ftp/welcome.txt

设置访问权限:

chmod a-w /data/ftp && chmod 777 -R /data/ftp/pub

设置为用户的主目录:

usermod -d /data/ftp ftpuser

用户的主目录是用户通过 FTP 登录后看到的根目录

方便用户登录后可以看到欢迎信息,并且确定用户确实登录到了主目录上。

准备域名和证书

注:如果您不需要通过域名访问 FTP 服务器则可以直接点击“已完成,下一步”跳过域名和证书的准备环节

域名注册

域名解析

ping www.yourdomain.com

如果 ping 命令返回的信息中含有你设置的解析的 IP 地址,说明解析成功。

注意替换下面命令中的 www.yourmpdomain.com 为您自己的注册的域名

访问 FTP 服务

FTP 服务已安装并配置完成,下面我们来使用该 FTP 服务

访问 FTP 服务

根据您个人的工作环境,选择一种方式来访问已经搭建的 FTP 服务

通过 Windows 资源管理器访问

Windows 用户可以复制下面的[链接]到资源管理器的地址栏访问:

ftp://ftpuser:Password@<您的 CVM IP 地址>

通过 FTP 客户端工具访问

FTP 客户端工具众多,下面推荐两个常用的:

  • WinSCP - Windows 下的 FTP 和 SFTP 连接客户端
  • FileZilla - 跨平台的 FTP 客户端,支持 Windows 和 Mac

下载和安装 FTP 客户端后,使用下面的凭据进行连接即可:

[主机]

用户:

ftpuser

密码:

Password

如果能够正常连接,那么大功告成,您可以开始使用属于您自己的 FTP 服务器了!

接下来,请上传任意一张图片到您的 FTP 服务器上的pub目录下,然后,就可以在 /data/ftp/pub 中看到了。

注意: 请不要直接上传文件到根目录下,您应该选择上传到 pub 目录下

如果您申请了域名,可以将链接中的 Ip 地址替换为对应的域名访问 FTP 服务

如果您申请了域名,可以将Ip 地址替换为对应的域名作为访问凭据

大功告成

常用错误:

1. 解决方法 500 OOPS: vsftpd: refusing to run with writable root inside chroot()

#vi /etc/vsftpd.conf (或者是在/etc/vsftpd/vsftpd.conf,总之知道自己服务器的配置文件)
添加 allow_writeable_chroot=YES
 
保存退出
service vsftpd restart 重启vsftp服务,即可正常登录
 
2.

vsftp出现550 Failed to change directory.错误分析

出现上面的错误分析

/etc/vsftpd/vsftp.conf

文件发现

修改下面2条记录:

# users to NOT chroot().

chroot_list_enable=NO

# (default follows)

chroot_list_file=/etc/vsftpd/chroot_list

# Default umask for local users is 077. You may wish to change this to 022,

# if your users expect that (022 is used by most other ftpd's)

#local_umask=022

之后问题解决。

或者

chroot_list_enable=YES

# (default follows)

chroot_list_file=/etc/vsftpd/chroot_list

在/etc/vsftpd/chroot_list

故障解决方案一:

Server sent passive reply with unroutable address 172.18.202.164, using host address instead.
监测到超时!
无法获得目录列表
Entering Passive Mode (172,18,202,164,78,195)
列出'/'的目录项时出错。

搭建 FTP 文件服务vsftpd的更多相关文章

  1. 腾讯云-搭建 FTP 文件服务

    搭建 FTP 文件服务 目的:搭建认证登录的FTP具有读写权限 安装并启动 FTP 服务 任务时间:5min ~ 10min 安装 VSFTPD 使用 yum 安装 vsftpd: yum insta ...

  2. 腾讯云,搭建 FTP 文件服务

    腾讯云,搭建 FTP 文件服务 腾讯云,搭建 FTP 文件服务 安装并启动 FTP 服务 任务时间:5min ~ 10min 安装 VSFTPD 使用 yum 安装 vsftpd: yum insta ...

  3. 基于 Ubuntu 搭建 FTP 文件服务

    搭建 FTP 文件服务 安装并启动 FTP 服务 任务时间:5min ~ 10min 安装 VSFTPD 使用 apt-get 安装 vsftpd: sudo apt-get install vsft ...

  4. 腾讯云:ubuntu搭建 FTP 文件服务

    搭建 FTP 文件服务 安装并启动 FTP 服务 任务时间:5min ~ 10min 安装 VSFTPD 使用 apt-get 安装 vsftpd: sudo apt-get install vsft ...

  5. 基于CentOS 搭建 FTP 文件服务

    系统要求: CentOS 7.2 64 位操作系统 一. 安装 VSFTPD (vsftpd 是在 Linux 上被广泛使用的 FTP 服务器,根据其[官网介绍][https://security.a ...

  6. 使用FileZilla快速搭建FTP文件服务

    为了便于平时对文件的存储访问,特意搭建FTP服务 FTP服务器(File Transfer Protocol Server)是在互联网上提供文件存储和访问服务的计算机,它们依照FTP协议提供服务. F ...

  7. 搭建 FTP 文件服务

    1.安装并启动 FTP 服务 2.配置 FTP 权限 3.准备域名和证书 4.访问 FTP 安装 VSFTPD 使用 yum 安装 vsftpd: yum install vsftpd -y vsft ...

  8. Linux CentOS安装搭建FTP文件服务

    本文环境:centos7,IP=192.168.1.11 1.安装vsftpd和默认配置启动 1.1 安装vsftpd yum install -y vsftpd 1.2 启动vsftpd syste ...

  9. 基于 CentOS 搭建 FTP 文件服务

    https://www.linuxidc.com/Linux/2017-11/148518.htm

随机推荐

  1. iOS开发之地域选择

    代码地址: https://github.com/boundlessocean/AreaPickViewDome.git 效果:   第一步: 将BLAreaPickerView 导入工程     第 ...

  2. mysql 5.7以上版本安装配置方法图文教程(mysql 5.7.12\mysql 5.7.13\mysql 5.7.14)(转)

    http://www.jb51.net/article/90302.htm ******************************* 这篇文章主要为大家分享了MySQL 5.7以上缩版本安装配置 ...

  3. Loadrunner监控windows系统“找不到网络路径”问题解决

    一.监控windows系统: 1.监视连接前的准备工作 1)进入被监视windows系统,开启以下二个服务Remote Procedure Call(RPC) 和Remote Registry Ser ...

  4. 一款纯css3实现的颜色渐变按钮

    之前为大家分享了推荐10款纯css3实现的实用按钮,今天给大家带来一款纯css3实现的颜色渐变按钮.这款按钮的边框和文字的颜色通过css3实现两种颜色的渐变,效果非常好看,一起看下效果图: 在线预览  ...

  5. Error reading field 'throttle_time_ms': java.nio.BufferUnderflowException

    可能出现的问题: ERROR o.a.k.c.p.i.Sender – Uncaught error in kafka producer I/O thread: org.apache.kafka.co ...

  6. tmpx75 I2C 温度传感器驱动程序添加

    在kernel 内 make menuconfig 加入相关选项 Device Drivers ---> <*> Hardware Monitoring support ---> ...

  7. SpringMVC 多视图解析器配置以及问题

    在SpringMVC模式当中可以通过如下配置来支持多视图解析 <!-- jsp jstl --> <bean id="JSPViewResolver" class ...

  8. Android Animation动画效果简介

    AlphaAnimation 淡入淡出动画  <alpha>A fade-in or fade-out animation. Represents an AlphaAnimation. a ...

  9. oracle 字符集 AL32UTF8、UTF8

    简介:ORACLE数据库字符集,即Oracle全球化支持(Globalization Support),或即国家语言支持(NLS)其作用是用本国语言和格式来存储.处理和检索数据.利用全球化支持,ORA ...

  10. iOS开发小技巧--定义宏和pch文件的使用

    一.创建pch文件,默认跟项目同名 二.告诉系统,编译的时候要编译pch文件的步骤 三.把经常用到的宏  或者  分类 包含到这里