阿里云 ECS 7 天实践训练营 - day01 - 基于 ECS 搭建 FTP 服务

简介: 阿里云 ECS 7 天实践训练营 - day01 - 基于 ECS 搭建 FTP 服务

       前段时间无意间看到了阿里云 7 天实践 ECS 训练营的活动,因为我本身自己也已经使用了两年的阿里云学生机,但是全凭自己的喜好来的,没有经过一个系统的训练,这次看到这个活动,便马上参加了,所以特在此记录每天的学习经历。

1. 前言

       文件传输协议(File Transfer Protocol,FTP)是用于在网络上进行文件传输的一套标
准协议,它工作在 OSI 模型的第七层,TCP 模型的第四层,即应用层,使用 TCP 传输而不是 UDP,客户在和服务器建立连接前要经过一个 “三次握手” 的过程,保证客户与服务器之间的连接是可靠的,而且是面向连接,为数据传输提供可靠保证。

2. 部署环境准备

  (1). 准备部署服务器

      可以在阿里云的 ECS 7 天训练营提供的 “基于 ECS 搭建 ftp" 的教程页面,选择免费体验即可获得一小时的体验时间,或者自行购买阿里云的 ECS 服务器,可自行选择,我这里采阿里云提供的实验环境。

  (2). 根据教程界面提示创建资源,等待创建成功后,打开 “putty” 远程连接软件,登录临时分配的体验服务器

putty 登录服务器

                                                        

3. 搭建 FTP 服务

  (1). 安装 vsftpd

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 #设置本地用户登录后所在的目录 
 
echo "pasv\_enable=YES" >> /etc/vsftpd/vsftpd.conf #开启被动模式 
echo "pasv\_address=<FTP服务器公网IP地址>" >> /etc/vsftpd/vsftpd.conf #本教程中为ECS服务器弹性IP 
echo "pasv\_min\_port=20" >> /etc/vsftpd/vsftpd.conf #设置被动模式下,建立数据传输可使用的端口范围的最小值 
echo "pasv\_max\_port=21" >> /etc/vsftpd/vsftpd.conf #设置被动模式下,建立数据传输可使用的端口范围的最大值

vftpd 安装完成

  (2). 运行一下命令设置 ftp 服务开机自启

systemctl enable vsftpd.service

  (3). 启动 ftp 服务 

systemctl start vsftpd.service

  (4). 运行以下命令查看 ftp 服务监听端口

netstat -antup | grep ftp

ftp 服务监听端口

4. 配置 FTP 服务 

使用本地用户模式配置 FTP 服务

  (1). 为 ftp 服务创建一个 Linux 用户

adduser chen

  (2). 为该用户设置密码

passwd chen

创建 ftp 本地用户

  (3). 创建一个供 ftp 使用的文件夹

mkdir /var/ftp/chen

  (4). 更改该目录的拥有者为 chen

chown -R chen:chen /var/ftp/chen

  (5). 修改 vsftpd.conf 配置文件

      配置为被动模式

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 #设置本地用户登录后所在的目录 
 
echo "pasv\_enable=YES" >> /etc/vsftpd/vsftpd.conf #开启被动模式 
echo "pasv\_address=<FTP服务器公网IP地址>" >> /etc/vsftpd/vsftpd.conf #本教程中为ECS服务器弹性IP 
echo "pasv\_min\_port=20" >> /etc/vsftpd/vsftpd.conf #设置被动模式下,建立数据传输可使用的端口范围的最小值 
echo "pasv\_max\_port=21" >> /etc/vsftpd/vsftpd.conf #设置被动模式下,建立数据传输可使用的端口范围的最大值

  (6). 在 / etc/vsftpd 目录下创建 chroot_list 文件,并在文件中写入例外用户名单

vim /etc/vsftpd/chroot\_list

  (7). 重启 FTP 服务

systemctl restart vsftpd.service

5. 测试 FTP 服务是否搭建成功 

     浏览器访问 ftp://106.14.23.189/,出现提示登录界面,输入之前建立的用户名和密码

ftp 登录界面

    回车登录,如果成功则返回一下界面

登陆成功

相关实践学习
通义万相文本绘图与人像美化
本解决方案展示了如何利用自研的通义万相AIGC技术在Web服务中实现先进的图像生成。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情:&nbsp;https://www.aliyun.com/product/ecs
相关文章
|
人工智能 自然语言处理 安全
Python构建MCP服务器:从工具封装到AI集成的全流程实践
MCP协议为AI提供标准化工具调用接口,助力模型高效操作现实世界。
1931 1
|
弹性计算 Linux 云计算
阿里云操作系统控制台——ECS操作及云计算应用实践
本文详细介绍了云服务器ECS的使用流程,包括开通服务、系统配置、权限管理、组件安装及内存全景诊断等关键步骤。通过开通阿里云操作系统服务、授予RAM用户权限和安装必要组件,可实现对服务器的有效管理与维护。在内存诊断部分,展示了如何发起诊断并解析结果,帮助精准定位内存问题。此外,文章还讲解了利用ECS训练模型的操作方法,从上传文件到终端命令执行,直至完成模型训练。最后总结指出,掌握这些技能不仅提升了对云服务器架构的理解,还为实际业务提供了高效解决方案,展现了ECS在数据处理与分析中的重要价值。
阿里云操作系统控制台——ECS操作及云计算应用实践
|
Kubernetes 监控 Serverless
基于阿里云Serverless Kubernetes(ASK)的无服务器架构设计与实践
无服务器架构(Serverless Architecture)在云原生技术中备受关注,开发者只需专注于业务逻辑,无需管理服务器。阿里云Serverless Kubernetes(ASK)是基于Kubernetes的托管服务,提供极致弹性和按需付费能力。本文深入探讨如何使用ASK设计和实现无服务器架构,涵盖事件驱动、自动扩展、无状态设计、监控与日志及成本优化等方面,并通过图片处理服务案例展示具体实践,帮助构建高效可靠的无服务器应用。
|
SQL 分布式计算 DataWorks
DataWorks常见问题之dataworks连接FTP服务器失败如何解决
DataWorks是阿里云提供的一站式大数据开发与管理平台,支持数据集成、数据开发、数据治理等功能;在本汇总中,我们梳理了DataWorks产品在使用过程中经常遇到的问题及解答,以助用户在数据处理和分析工作中提高效率,降低难度。
|
Ubuntu 安全 网络安全
在Ubuntu系统下使用vsftpd配置FTP服务器的步骤
以上就是在Ubuntu系统下使用vsftpd配置FTP服务器的步骤。这些步骤都是基础的,但足够让你建立一个简单的FTP服务器。如果你需要更高级的功能,例如SSL加密、虚拟用户等,你可能需要进一步研究vsftpd的配置选项。
974 13
|
安全 编译器 Linux
深入解析与防范:基于缓冲区溢出的FTP服务器攻击及调用计算器示例
本文深入解析了利用缓冲区溢出漏洞对FTP服务器进行远程攻击的技术,通过分析FreeFlow FTP 1.75版本的漏洞,展示了如何通过构造过长的用户名触发缓冲区溢出并调用计算器(`calc.exe`)。文章详细介绍了攻击原理、关键代码组件及其实现步骤,并提出了有效的防范措施,如输入验证、编译器保护和安全编程语言的选择,以保障系统的安全性。环境搭建基于Windows XP SP3和Kali Linux,使用Metasploit Framework进行攻击演示。请注意,此内容仅用于教育和研究目的。
768 4
|
安全 Ubuntu Linux
在Linux中,如何进行FTP服务器配置?
在Linux中,如何进行FTP服务器配置?
|
网络协议 文件存储 Windows
Windows Server 2019 FTP服务器搭建
Windows Server 2019 FTP服务器搭建
858 0
|
安全 网络协议 网络安全
Windows Server 2003 FTP服务器搭建
Windows Server 2003 FTP服务器搭建
435 0
|
弹性计算 关系型数据库 网络安全
阿里云国际版无法连接和访问Windows服务器中的FTP服务
阿里云国际版无法连接和访问Windows服务器中的FTP服务