阿里云高效计划第一天——基于ECS搭建FTP服务

简介: 基于ECS搭建FTP服务

本教程介绍如何在 Linux 实例上安装并配置 vsftpd。
作者:陈运智

安装vsftpd

  1. 运行以下命令安装vsftpd。
yum install -y vsftpd

返回如下图所示界面时,表示安装成功。

在这里插入图片描述

  1. 运行以下命令设置FTP服务开机自启动。
systemctl enable vsftpd.service
  1. 启动FTP服务。
systemctl start vsftpd.service
  1. 运行以下命令查看FTP服务监听的端口。
netstat -antup | grep ftp

出现如下图所示界面,表示FTP服务已启动,监听的端口号为 21。此时,vsftpd默认已开启匿名访问功能,您无需输入用户名密码即可登录FTP服务器,但没有修改或上传文件的权限。

在这里插入图片描述

配置vsftpd

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

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

匿名用户模式

  1. 修改配置文件vsftpd.conf。
vim /etc/vsftpd/vsftpd.conf

按 i 键进入编辑模式,将匿名上传权限 anon_upload_enable=YES 的注释解开。

在这里插入图片描述

  1. 按ESC键退出编辑模式,输入:wq 保存并退出vim。
  2. 更改/var/ftp/pub目录的权限,为FTP用户添加写权限。
chmod o+w /var/ftp/pub/
  1. 重启FTP服务。
systemctl restart vsftpd.service

本地用户模式

  1. 为FTP服务创建一个Linux用户。
adduser ftptest

为用户设置密码。

passwd ftptest

在这里插入图片描述

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

配置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 #设置本地用户登录后所在的目录

配置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 #设置本地用户登录后所在的目录

echo "pasv_enable=YES" >> /etc/vsftpd/vsftpd.conf #开启被动模式 echo
"pasv_address=" >> /etc/vsftpd/vsftpd.conf
本教程中为ECS服务器弹性IP echo "pasv_min_port=20" >> /etc/vsftpd/vsftpd.conf #设置被动模式下,建立数据传输可使用的端口范围的最小值 echo "pasv_max_port=21" >> /etc/vsftpd/vsftpd.conf #设置被动模式下,建立数据传输可使用的端口范围的最大值

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

使用vim命令编辑chroot_list文件,添加例外用户名单。此名单中的用户不会被锁定在主目录,可以访问其他目录。 vim /etc/vsftpd/chroot_list

说明: 没有例外用户时,也必须创建chroot_list文件,内容可为空。

  1. 重启FTP服务。
systemctl restart vsftpd.service

客户端测试

FTP客户端、Windows命令行工具或浏览器均可用来测试FTP服务器。(此步骤仅适用于本地用户,匿名模式无需进行测试操作)

说明:使用浏览器访问FTP服务器出错时,建议您清除浏览器缓存后再尝试。

  1. 打开Chrom浏览器,在地址栏中输入ftp://:FTP端口,FTP服务器公网IP地址为ECS服务器的弹性IP地址。例如:ftp://139.0.0.1:21。
  2. 在弹出的对话框中,输入用户名和密码。
    在这里插入图片描述
  3. 登录成功界面如下,此时可对FTP文件进行相应权限的操作。

本人博客:https://blog.csdn.net/weixin_46654114
本人b站求关注:https://space.bilibili.com/391105864
转载说明:跟我说明,务必注明来源,附带本人博客连接。

请给我点个赞鼓励我吧
在这里插入图片描述

相关实践学习
2分钟自动化部署人生模拟器
本场景将带你借助云效流水线Flow实现人生模拟器小游戏的自动化部署
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
3月前
|
安全 网络协议 网络安全
Windows Server 2003 FTP服务器搭建
Windows Server 2003 FTP服务器搭建
|
3月前
|
弹性计算 关系型数据库 网络安全
阿里云国际版无法连接和访问Windows服务器中的FTP服务
阿里云国际版无法连接和访问Windows服务器中的FTP服务
|
5月前
|
安全 Ubuntu Linux
在Linux中,如何进行FTP服务器配置?
在Linux中,如何进行FTP服务器配置?
|
5月前
|
开发框架 前端开发 API
基于SqlSugar的开发框架循序渐进介绍(26)-- 实现本地上传、FTP上传、阿里云OSS上传三者合一处理
基于SqlSugar的开发框架循序渐进介绍(26)-- 实现本地上传、FTP上传、阿里云OSS上传三者合一处理
|
6月前
|
网络协议 Unix 网络安全
FTP服务器怎么搭建?Windows server搭建FPT服务器
FTP服务器是按照FTP协议提供文件传输服务的计算机。它用于在两台计算机间安全地传输文件,支持用户权限管理和跨平台操作。FTP使用控制连接处理命令,数据连接传输文件,有PORT和PASV模式。要搭建FTP服务器,首先在Windows Server 2008 R2上安装IIS,确保选中FTP服务。接着,创建FTP文件夹作为站点根目录,通过IIS管理器添加FTP站点,配置站点信息、身份验证和权限。测试客户端通过telnet和浏览器访问FTP服务器,确认能成功登录及浏览文件。FTP常用于文件共享和管理,可通过专用工具如FlashFXP上传下载文件。
223 0
FTP服务器怎么搭建?Windows server搭建FPT服务器
|
7月前
|
存储 数据库连接 数据库
如何使用Python上传文件到FTP服务器
如何使用Python上传文件到FTP服务器
117 1
|
8月前
|
安全 网络协议 网络安全
在Windows7搭建FTP服务器详细教学
在Windows7搭建FTP服务器详细教学
474 0
|
弹性计算 网络协议 安全
阿里云ECS7天训练营-Day1 搭建FTP服务
阿里云ECS7天训练营-Day1 搭建FTP服务
1168 0
阿里云ECS7天训练营-Day1 搭建FTP服务
|
17天前
|
弹性计算 数据挖掘 应用服务中间件
阿里云轻量应用服务器68元与云服务器99元和199元区别及选择参考
目前阿里云有三款特惠云服务器,第一款轻量云服务器2核2G68元一年,第二款经济型云服务器2核2G3M带宽99元1年,第三款通用算力型2核4G5M带宽199元一年。有的新手用户并不是很清楚他们之间的区别,因此不知道如何选择。本文来介绍一下它们之间的区别以及选择参考。
308 87
|
10天前
|
存储 弹性计算 应用服务中间件
阿里云轻量应用服务器出新品通用型实例了,全球26个地域可选
近日,阿里云再度发力,推出了首款全新升级的轻量应用服务器——通用型实例。这款服务器实例不仅标配了200Mbps峰值公网带宽,更在计算、存储、网络等基础资源上进行了全面优化,旨在为中小企业和开发者提供更加轻量、易用、普惠的云计算服务,满足其对于通用计算小算力的迫切需求。目前,这款新品已在全球26个地域正式上线,为全球用户提供了更加便捷、高效的上云选择。
106 27
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等