阿里云七天打卡day01

简介: 根据阿里云使用,基于ECS搭建FTP课程实验项目过程编写此文章具体过程有1. 创建资源2. 远程连接ECS服务器3. 安装vsftpd4. 配置vsftpd5. 客户端测试

创建资源

  1. 在页面左侧,单击 云产品资源 下拉菜单,查看本次实验资源。
  2. 单击 免费开通 创建所需资源。
    image.png

得到一上图片即为成功创建实例

远程连接服务器

接下来即可开始第二步
yu
远程连接ECS服务器 推荐使用XShell
此文章中使用windows自带的CMD实现

在CMD中输入 ssh -V可查看是否拥有ssh,如下图所示例
image.png

否则需要只能装openSSH
链接https://www.mls-software.com/files/setupssh-8.2p1-1.exe?spm=a2c6h.13858378.0.0.5f2992d3oUyHvH&file=setupssh-8.2p1-1.exe

然后在终端中输入连接命令 ssh [username]@[ipaddress]。将其中的 username 和 ipaddress 替换为云产品资源提供的ECS服务器的 用户和 弹性IP。例如:ssh root@123.123.123.123

示例image.png
输入yes(注意 不是y)

image.png
如上即为连接成功 其中 输入密码时 密码不会显示 注意正确性

安装vsftpd

接下来进行安装vsftp

yum install -y vsftpd

如图所示即成功

image.png

配置FTP启动服务(注意是开机自启动)

image.png

systemctl enable vsftpd.service

接下来启动ftp

systemctl start vsftpd.service

运行以下代码实现查看启动状态

image.png
可以看到端口是21

配置vsftpd

image.png

# Example config file /etc/vsftpd/vsftpd.conf
#
# The default compiled in settings are fairly paranoid. This sample file
# loosens things up a bit, to make the ftp daemon more usable.
# Please see vsftpd.conf.5 for all compiled in defaults.
#
# READ THIS: This example file is NOT an exhaustive list of vsftpd options.
# Please read the vsftpd.conf.5 manual page to get a full idea of vsftpd's
# capabilities.
#
# Allow anonymous FTP? (Beware - allowed by default if you comment this out).
anonymous_enable=YES
#
# Uncomment this to allow local users to log in.
# When SELinux is enforcing check for SE bool ftp_home_dir
local_enable=YES
#
# Uncomment this to enable any form of FTP write command.
write_enable=YES
#
# 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
#
# Uncomment this to allow the anonymous FTP user to upload files. This only
# has an effect if the above global write enable is activated. Also, you will
# obviously need to create a directory writable by the FTP user.
# When SELinux is enforcing check for SE bool allow_ftpd_anon_write, allow_ftpd_full_access

即可查看文件

按i即可进入编辑模式

文章中已经写了

#anon_upload_enable=YES

所以去掉前面的#号即可

接下来按ESC退出文件编辑模式

:wq

前面一定有 : 号 (注意)

然后更改目录权限,为FTP用户添加写权限

image.png

chmod o+w /var/ftp/pub/

做完之后重启FTP服务。如下图。

systemctl restart vsftpd.service

image.png

为FTP服务创建一个Linux用户。

adduser ftptest

并且设置密码

image.png

创建一个供FTP服务使用的文件目录。
这个地方要注意,否则上传会出问题

更改/var/ftp/test目录的拥有者为ftptest。

新建一个文件夹供使用

image.png
配置FTP为主动模式执行如下命令:
image.png

我这里使用的是主动模式,如图
被动和主动已经放在这里了
配置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=<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 #设置被动模式下,建立数据传输可使用的端口范围的最大值

文件创建编写之前已经做过了

这个文件有个关键点,他可以为空,但是必须有

再次重启服务

systemctl restart vsftpd.service

客户端测试

这里使用的是命令行,也可以使用Chrome浏览器
我在浏览器测试的时候是没有反应的,可能是因为一下浏览器设置的原因
image.png

目录
相关文章
|
10月前
|
缓存 监控 前端开发
如何确保动态导入的模块被正确加载?
通过以上这些方法的综合运用,可以有效地确保动态导入的模块被正确加载,提高应用的稳定性、性能和用户体验。在实际开发过程中,要根据项目的具体情况和需求,灵活运用这些方法,并不断进行测试和优化。
214 4
|
人工智能 搜索推荐
AIGC在学生测试评估中的应用
AIGC在学生测试评估中的应用
398 3
AIGC在学生测试评估中的应用
|
机器学习/深度学习 人工智能 监控
深度学习在图像识别中的革命性应用
在数字时代的浪潮中,深度学习技术以其强大的数据处理能力,在图像识别领域掀起了一场革命。从简单的物体识别到复杂的场景解析,深度学习模型不断突破人类视觉的极限,为自动驾驶、医疗诊断、安全监控等多个行业带来前所未有的变革。本文将深入探讨深度学习在图像识别领域的应用,揭示其背后的技术原理,并展望其未来的发展趋势。
|
算法 关系型数据库 Java
【C++】红黑树(下)
【C++】红黑树(下)
|
Linux C语言 Windows
操作系统课程设计:新增Linux驱动程序(重制版)(三)
操作系统课程设计:新增Linux驱动程序(重制版)
321 0
操作系统课程设计:新增Linux驱动程序(重制版)(三)
|
数据可视化 JavaScript 前端开发
手把手教你用Bokeh进行可视化数据分析(附源码)
手把手教你用Bokeh进行可视化数据分析(附源码)
手把手教你用Bokeh进行可视化数据分析(附源码)
|
前端开发 程序员
BUG之虐之吐槽篇
BUG之虐之吐槽篇
144 0
BUG之虐之吐槽篇
|
BI 开发者
员工管理的表单搭建|学习笔记
快速学习员工管理的表单搭建
225 0
员工管理的表单搭建|学习笔记