ECS七天训练营进阶班 DAY1

本文涉及的产品
云服务器 ECS,每月免费额度200元 3个月
云服务器ECS,u1 2核4GB 1个月
简介: 基于ECS搭建FTP服务,学习如何使用CentOS系统搭建FTP服务

1 使用SSH登录ECS

系统 | 版本
CentOS | 7.7

直接申请免费体验,使用时间为一个小时。 

在申请后,打开cmd使用 ssh root@<ECS IP> 进行连接。
b63625b7653da9ed7c989a313e17f5a.png
a43094f8f0fe440787efe5acd6a7a1c.png

2 在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
2.启动FTP服务
systemctl start vsftpd.service
3.查看FTP使用的网络端口
netstat -antup | grep ftp
如下结果表明FTP正在监听21端口

706252c2cf1d0363368bd05be9e8a23.png

3 配置vsftpd

1.使用编辑器编辑 /etc/vsftpd/vsftpd.conf ,删除 #anon_upload_enable=YES 前的#,开启匿名上传权限。
b1f0a7cd672551fff26a350ee15f057.png
2.按ESC键退出编辑模式,输入 :wq 保存并退出vim。更改 /var/ftp/pub 目录的权限,为FTP用户添加写权限。
chmod o+w /var/ftp/pub/
1.重启FTP服务。
systemctl restart vsftpd.service
本地用户模式
1.为FTP服务创建一个Linux用户。
adduser ftptest
2.为用户设置密码,这里我设置为123456。
passwd ftptest
fa5d70710022a985f233d080e7c583f.png
3.创建一个供FTP服务使用的文件目录。
mkdir /var/ftp/test
4.更改 /var/ftp/test 目录的拥有者为ftptest。
chown -R ftptest:ftptest /var/ftp/test
5.修改 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.配置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.在/etc/vsftpd目录下创建chroot_list文件,并在文件中写入例外用户名单。
vim /etc/vsftpd/chroot_list
2.重启FTP服务。
systemctl restart vsftpd.service

4 使用浏览器进行登录 

14fec6ea92e00df64eafc1eba0034d3.png

5 总结

学习如何使用CentOS系统搭建FTP服务
1.使用yum命令安装vsftpd
2.使用systemctl命令启用vsftpd
3.修改/etc/vsftpd/vsftpd.conf调整用户模式
4.使用adduser创建本地用户,mkdir创建新文件夹
5.使用systemctl restart vsftpd.service命令重启vsftpd使修改后的配置生效
6.使用浏览器进行登录

相关实践学习
一小时快速掌握 SQL 语法
本实验带您学习SQL的基础语法,快速入门SQL。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情:&nbsp;https://www.aliyun.com/product/ecs
相关文章
|
2月前
|
安全 Shell 网络安全
Git学习---Git快速入门、Git基础使用、Git进阶使用、Git服务器使用(IDEA集成GitHub、Gitee、GitLab)、GitHub Desktop客户端
Git学习---Git快速入门、Git基础使用、Git进阶使用、Git服务器使用(IDEA集成GitHub、Gitee、GitLab)、GitHub Desktop客户端
131 0
|
3月前
|
弹性计算 Ubuntu Linux
【进阶教程】基于阿里云ECS快速部署幻兽帕鲁服务器
如果您已经买好了阿里云ECS云服务器!本教程将指引您基于云服务器快速部署幻兽帕鲁游戏。按图索骥,畅快开玩!
【进阶教程】基于阿里云ECS快速部署幻兽帕鲁服务器
|
6月前
|
Linux 网络安全 开发工具
Git学习---Git快速入门、Git基础使用、Git进阶使用、Git服务器使用(IDEA集成GitHub、Gitee、GitLab)、GitHub Desktop客户端
Git学习---Git快速入门、Git基础使用、Git进阶使用、Git服务器使用(IDEA集成GitHub、Gitee、GitLab)、GitHub Desktop客户端
|
11月前
|
弹性计算 运维 Unix
《企业运维之弹性计算原理与实践》——ECS 进阶概念-运维——第三章(上):ECS 进阶概念-运维(1)
《企业运维之弹性计算原理与实践》——ECS 进阶概念-运维——第三章(上):ECS 进阶概念-运维(1)
142 0
|
11月前
|
弹性计算 运维 网络安全
《企业运维之弹性计算原理与实践》——ECS 进阶概念-运维——第三章(上):ECS 进阶概念-运维(2)
《企业运维之弹性计算原理与实践》——ECS 进阶概念-运维——第三章(上):ECS 进阶概念-运维(2)
154 0
|
11月前
|
弹性计算 运维 Shell
《企业运维之弹性计算原理与实践》——ECS 进阶概念-运维——第三章(上):ECS 进阶概念-运维(3)
《企业运维之弹性计算原理与实践》——ECS 进阶概念-运维——第三章(上):ECS 进阶概念-运维(3)
111 0
《企业运维之弹性计算原理与实践》——ECS 进阶概念-运维——第三章(上):ECS 进阶概念-运维(3)
|
11月前
|
弹性计算 运维 监控
《企业运维之弹性计算原理与实践》——ECS 进阶概念-运维——第三章(上):ECS 进阶概念-运维(4)
《企业运维之弹性计算原理与实践》——ECS 进阶概念-运维——第三章(上):ECS 进阶概念-运维(4)
79 0
|
11月前
|
弹性计算 运维 安全
《企业运维之弹性计算原理与实践》——ECS 进阶概念-运维——第三章(上):ECS 进阶概念-运维(5)
《企业运维之弹性计算原理与实践》——ECS 进阶概念-运维——第三章(上):ECS 进阶概念-运维(5)
159 0
|
11月前
|
弹性计算 运维 监控
《企业运维之弹性计算原理与实践》——ECS 进阶概念-运维——第三章(上):ECS 进阶概念-运维(6)
《企业运维之弹性计算原理与实践》——ECS 进阶概念-运维——第三章(上):ECS 进阶概念-运维(6)
70 0
|
11月前
|
Web App开发 弹性计算 运维
《企业运维之弹性计算原理与实践》——ECS 进阶概念-运维——第三章(中)实验 1:使用云助手自动化运维云服务器 ECS 实例(1)
《企业运维之弹性计算原理与实践》——ECS 进阶概念-运维——第三章(中)实验 1:使用云助手自动化运维云服务器 ECS 实例(1)
359 0
《企业运维之弹性计算原理与实践》——ECS 进阶概念-运维——第三章(中)实验 1:使用云助手自动化运维云服务器 ECS 实例(1)