ECS七天训练营进阶班 第一天 基于ECS搭建FTP服务

本文涉及的产品
云服务器 ECS,每月免费额度200元 3个月
云服务器ECS,u1 2核4GB 1个月
简介: 0x01 使用SSH登录ECS0x02 在ECS上安装vsftpd0x03 配置vsftpd0x04 总结

第一天 基于ECS搭建FTP服务

0x01 使用SSH登录ECS

本次使用的ECS为阿里云提供的体验机

服务器系统 版本
CentOS 7.7

在阿里云上可以直接申请免费体验,使用时间为一个小时。
在申请后,使用ssh root@<ECS IP>进行连接。

0x02 在ECS上安装vsftpd

  1. 使用以下命令安装vsftpd
yum install -y vsftpd

安装成功后会显示如下结果

Loaded plugins: fastestmirror
Determining fastest mirrors
base                                                                                             | 3.6 kB  00:00:00
epel                                                                                             | 4.7 kB  00:00:00
extras                                                                                           | 2.9 kB  00:00:00
updates                                                                                          | 2.9 kB  00:00:00
(1/7): base/7/x86_64/group_gz                                                                    | 153 kB  00:00:00
(2/7): epel/x86_64/group_gz                                                                      |  95 kB  00:00:00
(3/7): epel/x86_64/updateinfo                                                                    | 1.0 MB  00:00:00
(4/7): extras/7/x86_64/primary_db                                                                | 206 kB  00:00:00
(5/7): base/7/x86_64/primary_db                                                                  | 6.1 MB  00:00:00     (6/7): updates/7/x86_64/primary_db                                                               | 4.5 MB  00:00:00
(7/7): epel/x86_64/primary_db                                                                    | 6.9 MB  00:00:00
Resolving Dependencies
--> Running transaction check
---> Package vsftpd.x86_64 0:3.0.2-27.el7 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

========================================================================================================================
 Package                    Arch                       Version                           Repository                Size
========================================================================================================================
Installing:
 vsftpd                     x86_64                     3.0.2-27.el7                      base                     172 k

Transaction Summary
========================================================================================================================
Install  1 Package

Total download size: 172 k
Installed size: 353 k
Downloading packages:
vsftpd-3.0.2-27.el7.x86_64.rpm                                                                   | 172 kB  00:00:00
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Warning: RPMDB altered outside of yum.
  Installing : vsftpd-3.0.2-27.el7.x86_64                                                                           1/1
  Verifying  : vsftpd-3.0.2-27.el7.x86_64                                                                           1/1

Installed:
  vsftpd.x86_64 0:3.0.2-27.el7

Complete!
  1. 设置vsftpd开机自启动
systemctl enable vsftpd.service
  1. 启动FTP服务
systemctl start vsftpd.service
  1. 查看FTP使用的网络端口
netstat -antup | grep ftp

如下结果表明FTP正在监听21端口

tcp6       0      0 :::21                   :::*                    LISTEN      1409/vsftpd

0x03 配置vsftpd

vsftpd(very secure FTP daemon)是一款在Linux发行版中最受推崇的FTP服务器。vsftpd支持匿名访问和本地用户模式两种访问方式。匿名访问方式任何用户都可以访问搭建的FTP服务;本地用户模式只支持添加的本地用户访问搭建的FTP服务。

匿名用户模式和本地用户模式只可同时配置一种。

  1. 匿名模式

    1. 使用编辑器编辑/etc/vsftpd/vsftpd.conf,删除#anon_upload_enable=YES前的#,开启匿名上传权限。
    2. 更改/var/ftp/pub目录的权限,为FTP用户添加写权限。
    chmod o+w /var/ftp/pub/
    1. 重启FTP服务。
    systemctl restart vsftpd.service
    1. 使用浏览器进行连接测试,结果如下
  2. 本地用户模式

    1. 为FTP服务创建一个Linux用户。
    adduser ftptest
    1. 为用户设置密码。
    passwd ftptest
    1. 创建一个供FTP服务使用的文件目录。
    mkdir /var/ftp/test
    1. 更改/var/ftp/test目录的拥有者为ftptest。
    chown -R ftptest:ftptest /var/ftp/test
    1. 修改vsftpd.conf配置文件。

      1. 配置FTP为主动模式请执行如下命令:
      sed -i 's/anonymous_enable=YES/anonymous_enable=NO/' /etc/vsftpd/vsftpd.conf #禁止匿名登录FTP服务器 
      sed -i 's/listen=NO/listen=YES/' /etc/vsftpd/vsftpd.conf #监听IPv4 sockets 
      sed -i 's/listen_ipv6=YES/#listen_ipv6=YES/' /etc/vsftpd/vsftpd.conf #关闭监听IPv6 sockets 
      sed -i 's/#chroot_local_user=YES/chroot_local_user=YES/' /etc/vsftpd/vsftpd.conf #全部用户被限制在主目录 
      sed -i 's/#chroot_list_enable=YES/chroot_list_enable=YES/' /etc/vsftpd/vsftpd.conf #启用例外用户名单 
      sed -i 's/#chroot_list_file=/chroot_list_file=/' /etc/vsftpd/vsftpd.conf #指定例外用户列表文件,列表中的用户不被锁定在主目录 
      echo "allow_writeable_chroot=YES" >> /etc/vsftpd/vsftpd.conf 
      echo "local_root=/var/ftp/test" >> /etc/vsftpd/vsftpd.conf #设置本地用户登录后所在的目录
      1. 配置FTP为被动模式请执行如下命令:
      sed -i 's/anonymous_enable=YES/anonymous_enable=NO/' /etc/vsftpd/vsftpd.conf #禁止匿名登录FTP服务器 
      sed -i 's/listen=NO/listen=YES/' /etc/vsftpd/vsftpd.conf #监听IPv4 sockets 
      sed -i 's/listen_ipv6=YES/#listen_ipv6=YES/' /etc/vsftpd/vsftpd.conf #关闭监听IPv6 sockets 
      sed -i 's/#chroot_local_user=YES/chroot_local_user=YES/' /etc/vsftpd/vsftpd.conf #全部用户被限制在主目录 
      sed -i 's/#chroot_list_enable=YES/chroot_list_enable=YES/' /etc/vsftpd/vsftpd.conf #启用例外用户名单 
      sed -i 's/#chroot_list_file=/chroot_list_file=/' /etc/vsftpd/vsftpd.conf #指定例外用户列表文件,列表中的用户不被锁定在主目录 
      echo "allow_writeable_chroot=YES" >> /etc/vsftpd/vsftpd.conf 
      echo "local_root=/var/ftp/test" >> /etc/vsftpd/vsftpd.conf #设置本地用户登录后所在的目录 
    2. /etc/vsftpd目录下创建chroot_list文件,并在文件中写入例外用户名单。
    vim /etc/vsftpd/chroot_list
    1. 重启FTP服务。
    systemctl restart vsftpd.service
    1. 使用浏览器进行登录


或使用ftp命令进行连接

ftp 106.14.14.181

0x04 总结

学习了如何使用CentOS系统搭建FTP服务器

  1. 使用yum命令安装vsftpd
  2. 使用systemctl启用vsftpd
  3. 修改/etc/vsftpd/vsftpd.conf开启匿名模式或本地用户模式
  4. 使用systemctl restart vsftpd.service重启vsftpd使配置生效
  5. 使用浏览器或ftp命令进行登录
相关实践学习
一小时快速掌握 SQL 语法
本实验带您学习SQL的基础语法,快速入门SQL。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情:&nbsp;https://www.aliyun.com/product/ecs
相关文章
|
安全 Linux
linxu篇-centos搭建ftp服务器
linxu篇-centos搭建ftp服务器
120 0
linxu篇-centos搭建ftp服务器
|
弹性计算 网络协议 安全
|
弹性计算 网络协议 Linux
Class 1 基于ECS搭建FTP服务
ECS是IaaS级别云计算服务,FTP是 TCP/IP 协议组中的协议之一。FTP协议包括两个组成部分,FTP服务器和FTP客户端。其中FTP服务器用来存储文件,用户可以使用FTP客户端通过FTP协议访问位于FTP服务器上的资源。本次实验将基于ECS和vsftpd软件搭建FTP服务。
662 0
|
弹性计算 Linux 网络安全
ECS 7天实践训练营-day01-基于ECS搭建FTP服务
本文内容主要包括: 1. 创建资源 2. 远程连接ECS服务器 3. 安装vsftpd 4. 配置vsftpd 5. 客户端测试
420 0
ECS 7天实践训练营-day01-基于ECS搭建FTP服务
|
弹性计算 开发工具
ECS 7天实践训练营——基于ECS搭建FTP服务
ECS 7天实践训练营第一天的内容,利用阿里云的ECS资源搭建FTP服务
400 0
ECS 7天实践训练营——基于ECS搭建FTP服务
|
Web App开发 弹性计算 网络协议
阿里 ESC7 天训练营 - 基于 ECS 搭建 FTP 服务
ECS:云服务器 (Elastic Compute Service, 简称 *ECS*) 是一种处理能力可弹性伸缩的计算服务器 FTP:文件传输协议(File Transfer Protocol,FTP),在网络上进行文件传输的一套标准协议,工作在应用层,使用TCP协议进行传输
466 0
阿里 ESC7 天训练营 - 基于 ECS 搭建 FTP 服务
|
弹性计算 缓存 网络协议
ECS训练营Day1基于ECS搭建FTP服务
FTP(File Transfer Protocol,文件传输协议) 是 TCP/IP 协议组中的协议之一。FTP协议包括两个组成部分,其一为FTP服务器,其二为FTP客户端。其中FTP服务器用来存储文件,用户可以使用FTP客户端通过FTP协议访问位于FTP服务器上的资源。在开发网站的时候,通常利用FTP协议把网页或程序传到Web服务器上。此外,由于FTP传输效率非常高,在网络上传输大的文件时,一般也采用该协议。默认情况下FTP协议使用TCP端口中的 20和21这两个端口,其中20用于传输数据,21用于传输控制信息。但是,是否使用20作为传输数据的端口与FTP使用的传输模式有关,如果采用主动模
464 0
ECS训练营Day1基于ECS搭建FTP服务
|
弹性计算 缓存 安全
阿里云服务器Linux实例搭建FTP站点教程!
vsftpd 是 Linux 下的一款小巧轻快、安全易用的 FTP 服务器软件。本教程以 CentOS 7.2 64位操作系统为例,说明如何在 Linux 实例上安装并配置 vsftpd。
2166 0
|
存储 弹性计算 安全
阿里云服务器 Windows实例搭建FTP站点教程
本文介绍了如何使用Windows实例搭建FTP站点。此方法适用于Windows Server 2008及以上系统,本文以Windows Server 2008 R2为例。
1388 0
|
弹性计算 网络协议 Linux
ECS训练营进阶版第一天-基于ECS搭建FTP服务
利用阿里云云产品资源ECS搭建FTP服务,配置了CentOS 7.7的ECS实例(云服务器)并配置了弹性公网IP。
ECS训练营进阶版第一天-基于ECS搭建FTP服务