云服务器(Elastic Compute Service, 简称ECS),是一种简单高效,处理能力可以弹性伸缩的计算服务。ECS的相关术语说明如下:
.远程登录到ECS服务器。使用 实验资源 提供的ECS服务器的 弹性IP,用户名 和 密码。
ECS云服务器已安装部署了WEB环境。执行以下命令,修改WEB服务器显示的页面信息。
# vim /alidata/www/default/index.html
Welcome to use Aliyun ECS
完成后,在键盘上点击 esc按钮,然后输入指令:wq
,保存修改信息并退出文件。
:wq
拷贝ECS实例的 弹性IP,打开一个新的浏览页面,并粘贴拷贝的公网IP地址。访问WEB服务器,查看到页面显示“Welcome to use Aliyun ECS”。
在ECS控制台页面的左侧,点击 实例,进入实例页面。然后选择 实验资源 提供的ECS实例 地域。之后在顶部的搜索栏中,左侧关键字下拉框选择 实例ID,输入 实验资源 提供的ECS 实例ID。之后可以在下端的主页面中查看到一台ECS实例。点击此ECS实例右侧的操作栏下的 管理,进入此台ECS实例的管理界面。
在左侧栏中,点击 本实例磁盘,可以查看到此实例中包含的两个磁盘:20G的数据盘和40G的系统盘。
点击左侧栏中的 实例详情,进入实例操作界面,在主页面左侧 基本信息 栏中,点击 更多 下的菜单 重置实例密码 。
在 实例详情 页面,点击右侧的 重启。在弹出的对话框中,选择 重启,点击 确定。在 实例详情 的页面中,可以看到实例的状态从 停止中,启动中,变为运行中,此时证明ECS实例已正常运行。
远程登录到 基础服务器(Linux) ECS服务器。点击 实验资源 ,在弹出的资源列表中,查看本实验提供的ECS服务器的 外网地址 、用户 和 密码 。
输入如下命令,查询当前系统中的数据盘。
# fdisk -l
# fdisk /dev/vdb
在弹出的命令行中需要输入的参数是:
Command(m for help)输入n;
Command action输入p;
Partition number(1-4,default 1)输入1;
First cylinder和Last cylinder处直接输入回车,使用默认的配置;
Command(m for help)输入w,从而使上面的配置生效。
# fdisk -l
# mkfs.ext3 /dev/vdb1
# mkdir /alidata
然后,使用如下命令,将磁盘挂载上去。
# mount /dev/vdb1 /alidata
# df -h
cd /alidata
然后,在数据盘上创建一个文件 test.txt,并往文件里面写入内容:
# >test.txt
# echo “Hello Aliyun”>test.txt
在阿里云RAM登录界面,输入本次实验分配的 子用户名称 和 子用户密码 。然后,点击 登录 ,进入阿里云管理控制台。
在阿里云的管理控制台页面,点击顶部菜单栏的 产品与服务,依次选择 云计算基础服务 —> 弹性计算 —> 云服务器ECS ,进入阿里云ECS管理控制台。
在ECS管理控制台界面,首先,点击左侧导航栏的 实例,进入实例列表。然后,在页面顶部,选择 实验资源 提供的 地域 ,例如 华东2 等。之后,在 实例名称 右侧的搜索栏中,输入本次实验分配的ECS实例(基础环境(Linux))的 实例名称 ,点击 搜索 ,就可以查看到本次实验分配的实验资源。最后,在下方搜索结果中,点击ECS实例右侧的 管理 ,进入此台ECS实例的管理界面。
在ECS实例的管理页面中,点击左侧栏的 本实例云盘 ,右侧界面显示ECS实例挂载的磁盘信息:一块数据盘和一块系统盘。点击 磁盘属性 为 数据盘 的磁盘右侧 创建快照 。
点击左侧导航栏中的 本实例快照 ,页面显示ECS实例的快照列表。查看新建快照 sl001-ss 的创建进度,等待3-5分钟,点击 刷新 ,快照的状态显示为 完成。
#rm -f test.txt
#ls
此时,可以通过快照回滚的方式,将磁盘恢复到包含删除数据的时间点,从而将数据恢复出来。回滚磁盘需要ECS是停止的状态,因此,首先,返回ECS实例的管理页面,点击左侧导航栏的 实例详情 ,可以查看到ECS实例的基本信息。然后,点击右上角的 停止 ,即可停止ECS实例。
当ECS实例停止成功后,首先,在实例的左侧栏中,点击 本实例快照 ,进入ECS的快照页面。然后,在右侧快照列表中,找到已创建的数据盘快照,点击 回滚磁盘 进行磁盘数据的回滚。
当ECS实例启动成功后,重新远程登录到ECS实例中,并重新使用如下命令,将数据盘挂载到挂载点 /alidata。
mount /dev/vdb1 /alidata
然后,使用如下命令,将会看到误删除的数据 **test.txt** 文件已经恢复。
ls /alidata
1)点击页面左侧 实验资源 ,下拉框中点击 点击 前往控制台 ,
2)依次输入 实验资源 提供的 子用户名称 、子帐号密码 ,然后点击 登录 。
3)顶部导航栏处点击 产品与服务 ,下拉菜单中,在数据库中选择 云数据库RDS版 ,进入阿里云RDS管理控制台。
1)在顶部地址栏,选择 实验资源 提供的 地域 信息。
2)在搜索栏中,输入 实验资源 提供的 云数据库RDS实例 的 实例ID ,并点击 搜索 。
3)在下方搜索结果中,点击实例右侧的 **管理 ,**进入RDS实例的管理控制台。
1)在RDS实例的管理页面,点击左侧栏的 账号管理 ,进入数据库账号管理页面。
2)在 用户账号 页面,点击 创建账号 。
说明:如下参数的具体说明,烦请参考 背景知识 小节中 RDS 数据库帐号 的 创建数据库帐号 部分。
1)数据库账号:请根据 输入框 下端的 命名规则 ,输入 数据库账号名称,例如:lab_user ,账号类型选择普通账号。
2)密码 :请根据 输入框 下端的 密码规则 ,输入 密码,例如:Passw0rd;
3)确认密码:再次输入创建的密码。
4)完成如上信息后,点击 确定 。
1)点击左侧栏的 数据库管理 ,进入数据库管理页面。
2)在右侧的 数据库管理 页面,点击右侧的 创建数据库 ,进入创建页面**。**
说明:如下参数的具体说明,烦请参考 背景知识 小节中 RDS 数据库 的 创建数据库 部分。
1)数据库(DB)名称:请根据 输入框 下端的 命名规则 ,输入 数据库名称,例如:lab_db 。
2)支持字符集:默认设为 utf8 。
3)授权帐号:选择新建数据库账号 lab_user。
4)账号类型:默认设置为 读写 。
\2. 通过如下步骤,查看登录的 网路地址:端口 的信息:
1)返回RDS管理控制台,点击左侧 基本信息 。
2)点击 内网地址 并复制 ,拷贝RDS实例的内网连接地址。
3)查看 内网端口 为 3306 。
1)第一行:信息已经默认输入 内网地址:3306 。
2)第二行:输入 新建数据库账号 ,lab_user 。
3)第三行:输入 新建数据库账号密码 ,Passw0rd 。
4)点击 登录 ,登录到数据库管理系统。
1)点击页面顶部的 数据方案 。
2)在弹出的下拉菜单中,点击 导入 。
1)点击本小节页面左侧的 附件下载 ,然后下载文件 lab.sql 作为测试数据到本地。
2)返回 数据库管理控制台 的 导入 页面,点击 新增任务 ,创建导入数据任务。
3)在 附件 栏右侧,点击 选择附件 ,并选择下载 lab.sql 文件的本地保存路径。
4)完成后,点击底部的 **开始 ,**导入测试数据。
5)等待几秒钟,查看到导入 进度 为 100% ,证明导入成功。
在 导入历史列表 中,可以查看到状态为 完成 的任务。
通过如下步骤,查看导入表的信息:
1)在左侧栏的左上角下拉框中,可以查看当前数据库为 新建数据库 :lab_db 。
说明:若不是,点击下拉按钮,并选择对应需要查看的数据库名称。
2)点击数据库显示右侧的 刷新 键,刷新数据库信息,可以查看到通过sql文件导入的表信息。
3)点击 表名 ,例如:admin_app_version ,可以查看到所有对表的操作,例如:SQL操作数据、打开表 等等
1)点击顶部 性能 。
2)在下拉菜单中,点击 诊断报告 。
1)点击顶部 性能 。
2)在下拉菜单中,点击 诊断报告 。
3)重新加载 页面(刷新),查看诊断报告的 状态 变为 诊断完成 。
1)点击诊断报告右侧的 查看报告 ,弹出诊断报告页面。
2)可以在页面中,查看到如下的诊断报告信息:
说明:远程连接的详细操作步骤,请参考 帮助文档 的 远程连接服务器ECS 中 远程访问Linux系统。登录时,请使用 我的实验资源 提供ECS实例的 弹性IP ,用户 和 密码 。
mysql -u root -p
Enter password: (输入123456,输入的密码不会显示)
1)执行如下命令,查看数据库信息。
mysql> show databases;
2)执行如下命令,切换数据库为bakery:
mysql> use bakery;
3)执行如下命令,查看表中数据:
mysql> show columns from customer;
mysql> show columns from product;
mysql> select * from customer;
mysql> select * from product;
1)点击页面左侧导航栏处的 实验资源 。
2)点击 前往控制台 ,进入阿里云管理控制台RAM登录界面。
3)依次输入 实验资源 提供的 子用户名称 ,子用户密码 。
4)点击 登录 ,进入阿里云管理控制台
5)顶部导航栏点击产品与服务,下拉菜单中,数据库中选择云数据库RDS版,进入阿里云RDS管理控制台。
1)在顶部地址栏,选择 实验资源 提供的 地域 信息。
2)在搜索栏中,输入 实验资源 提供的 目标数据库 的 实例ID ,并点击 搜索 。
3)在下方搜索结果中,点击实例右侧的 管理 ,进入RDS实例的管理控制台。
1)在RDS实例的管理页面,点击左侧栏的 账号管理 ,进入数据库账号管理页面
1)数据库账号:请根据 输入框 下端的 命名规则 ,输入 数据库账号名称,例如:lab_user 。
2)密码 :请根据 输入框 下端的 密码规则 ,输入 密码,例如:Passw0rd;
3)确认密码:再次输入创建的密码。
4)完成如上信息后,点击 确定 。
1)点击左侧栏的 数据库管理 ,进入数据库管理页面。
1)数据库(DB)名称:请根据 输入框 下端的 命名规则 ,输入 数据库名称,例如:lab_db 。
2)支持字符集:默认设为 utf8 。
3)授权帐号:选择新建数据库账号 lab_user。
4)账号类型:默认设置为 读写 。
5)完成如上配置信息后,点击底部的 确定 ,完成数据库的创建。
6)在 数据库管理 页面中,等待1分钟左右,点击右上角的 刷新 ,可以查看到数据库 lab_db 的 数据库状态 为 运行中 ,且 绑定账号 为 新建数据库账号 lab_user 。
1)点击页面右上角的 导入数据库 。进入 数据迁移服务 的管理页面。
1)点击页面右上角的 导入数据库 。进入 数据迁移服务 的管理页面。
[removed][removed]
2)实例类型:选择 有公网IP的自建数据库 。
3)实例地区: 选择 实验资源 中分配的 地域 ,例如:华东1
4)数据库类型:选择 MySQL 。
5)主机名或IP地址:输入 实验资源 中分配的 MySQL源数据库 ECS实例的 弹性IP。
6)端口:使用默认端口号 3306
7)数据库账号:输入ECS上自建MySQL的 数据库账号 ,root;数据库密码:自建MySQL的访问密码,123456
8)完成如上配置后,点击右侧的 测试链接 ,测试自建MySQL数据库的连通性,若显示 测试通过 ,证明连接成功。否则,请检查如上配置信息是否正确。
1)实例类型:选择 RDS实例
2)实例地区:选择 实验资源 中分配的 地域 ,例如:华东1
3)RDS实例ID :选择 实验资源 中提供的 目标数据库 的 实例ID
4)数据库账号:输入RDS实例中新建的 数据库账号 ,lab_user ;数据库密码:新建数据库的密码,Passw0rd
5)完成如上配置后,点击右侧的 测试链接 ,测试RDS账号的连通性,若显示 测试通过 ,证明连接成功。否则,请检查如上配置信息是否正确。
6)完成如上的配置后,点击右下角的 授权白名单并进入下一步 。
说明:若预检查未通过,请根据错误提示和如上的操作步骤,核对迁移任务的配置是否正确。
1)链路地域:使用默认地域
2)**链路规格:**选择 small
3)勾选 《数据传输(按量付费)服务条款》
4)完成如上配置后,点击 立即购买
8.此时,页面迁移任务的状态为 迁移中 ,等待3-4分钟,状态变为 已完成 。
2)在弹出的页面中,输入如下的信息:
网络地址:端口:请输入 实验资源 中,RDS 目标数据库 提供的 链接地址 以及端口号 3306。
例如:提供的RDS 链接地址为
rm-uf6l90d950j1o7890.mysql.rds.aliyuncs.com
,则输入信息为:
rm-uf6l90d950j1o7890.mysql.rds.aliyuncs.com:3306
用户名:输入新建数据库账号 lab_user
密码:输入新建数据库密码 Passw0rd
完成后,点击 登录 。
# cd /alidata/www/default
然后执行如下命令,删除当前目录中的所有“.png”文件,也就是,图片分享网站中读取的4张图片01.png, 02.png, 03.png 和 04.png。
# rm -rf *.png
执行查看文件命令,查看当前目录中无图片文件,证明图片已删除。
# ls
注意:若访问页面仍旧可以显示图片,可能是由于浏览器缓存问题,建议清理下浏览器的缓存或者换一个浏览器查看ECS服务器主页。
返回OSS管理控制台,进入云中沙箱 实验资源 分配的 Object路径 中,获取图片的URL访问地址。点击 01.png ,找到并点击右侧弹出框的 复制文件 URL。
执行如下命令返回ECS服务器的**/alidata/www/default**目录下,并进入服务器访问首页 index.html 的编辑界面。
# cd /alidata/www/default
# vim index.html
在** **下,找到第一张图片的链接参数 src=“01.png”,删除01.png,并粘贴上面步骤中复制的上传到OSS 01.png 图片的访问 地址。 同理,修改 02.png,03.png,04.png的链接地址为OSS的存储地址。
完成所有图片的修改后,点击 esc键 退出编辑状态,执行以下命令保存并退出编辑页面。
:wq
OSS 上传方式分为两类:简单上传和分块上传;其中,简单上传由于不支持断点续传,适合用于上传小文件;而分块上传支持断点续传,适合上传比较大的文件,一般超过100MB 的文件都推荐使用分块上传。 本小节中,使用OSS Python SDK 调用 OSS API,将用户本地的小文件上传到本次实验分配的 Object路径 中。
首先,远程登录到 OSS Python环境 的ECS服务器,请使用本实验提供的ECS服务器的 外网地址 ,用户名 和 密码 。
登录到 ECS 服务器后,在使用 OSS API 进行文件上传和下载之前,用户需配置阿里云账号的 AccessKeyID, AccessKeySecret 和 Endpoint 信息(均可从 实验资源 获取),以便于通过 OSS 的权限验证。在 ECS 命令行中,使用命令 cd aliyun-lab 进入 aliyun-lab 目录。 然后,使用命令 vim configure.json ,configure.json 文件用于提供调用 OSS API 时所需的公共参数。
id-参数值为本实验中,实验资源 分配的AK ID;
secret-参数值为本实验中,实验资源 分配的AK Secret;
endpoint-参数值为本实验中,实验资源 的“地域”对应的“外网Endpoint”数值。比如:提供的“地域”为“华东 1(杭州)”,则选择“华东 1(杭州)”的“外网Endpoint”。
OSS 地域与外网 Endpoint 的对应关系如下表:
地域 | 外网Endpoint |
---|---|
华东 1 (杭州) | oss-cn-hangzhou.aliyuncs.com |
华东 2 (上海) | oss-cn-shanghai.aliyuncs.com |
华北 1 (青岛) | oss-cn-qingdao.aliyuncs.com |
华北 2 (北京) | oss-cn-beijing.aliyuncs.com |
华南 1 (深圳) | oss-cn-shenzhen.aliyuncs.com |
注意:
with open(__file_name,'rb') as fileobj:
bucket.put_object(__object_name, fileobj)
python object_upload.py lab.txt /lab_object.txt
输入命令 cat lab.txt ,查看上传到OSS指定路径的文件内容:Hello first object! 。
返回 OSS 管理控制台,并进入 实验资源 分配的 Bucket 和该 Bucket 的 Object 路径下,点击右上角的 刷新 ,刷新 Object 管理页面。此时,在 Object 径下,查看到通过Python SDK上传的文件 lab_object.txt 。
在真实的工作环境中,存储在 OSS 环境下的文件资源,可能由于业务需求,需要下载到本地,进行审计等。本小节将介绍如何将 OSS 中的对象文件通过 API 下载到本地服务器。
返回 ECS 服务器访问终端,在 ECS 的 aliyun-lab 目录下,执行命令 vim object_download.py ,修改脚本文件 object_download.py 。此脚本通过调用 OSS API,下载 OSS的 bucket 中名称为 __object_name 的 object 到本地,并重命名为 __local_name 。在代码的 #调用OSS API的get_object_to_file()下载object 下方。添加如下的代码,完成修改后,保存脚本。
bucket.get_object_to_file(__object_name, __local_name)
python object_download.py /lab_object.txt lab_local.txt
1)点击左侧导航栏处的 实验资源 ,下拉框中点击 控制台url ,
2)输入实验提供的 子用户名称 和 子用户密码 ,完成后点击 登录 。登录阿里云管理控制台。
3)在阿里云管理控制台中,点击左侧导航栏的 产品与服务 ,在弹出的页面中点击 负载均衡 ,进入负载均衡控制台。
1)点击左侧栏的实例管理。
2)在地域信息栏中,选择本实验的 实验资源 提供的 地域 。
3)在 模糊搜索 右侧的搜索输入框中,输入本实验的 实验资源 提供的 负载均衡 实例的 实例ID。
4)在下端的搜素结果中,点击实例右侧的 点我开始配置,进入负载均衡实例的管理页面。
1)在弹出的页面中,选择负载均衡协议为HTTP,监听端口为 80;然后点击高级配置右侧的修改按钮:
2)在展开的高级配置中,查看到默认会话保持的状态为关闭。不做任何修改,直接点击下一步;
3)选择默认服务器下方的继续添加,将两台已创建的ECS实例添加到SLB后端。
4)在弹出的页面中勾选两台已创建的ECS实例,并点击下一步;
6)选择已添加的ECS实例的端口为 80,并点击下一步:
5.配置完成后,点击提交。
跳转到实例管理页面,查看到新创建的监听配置,处于运行中状态。
\1. 在实例管理页面,点击SLB的实例名称进入实例管理页面;并在监听页面中点击修改监听配置。
\2. 在弹出页面中,点击 高级配置 右侧的修改, 设置 开启保持 的状态为 已开启 ,点击 下一步 和 提交。
\3. 提交修改后,SLB实例的会话保持显示已开启的状态。
\4. 在浏览器中,打开新的空白页面,输入负载均衡服务实例的公网IP地址,多次的刷新此IP地址,页面显示的图片相同。证明负载均衡服务的会话保持功能已开启,该用户发送的所有请求均发送到负载均衡后端的某一台ECS服务器上。
在阿里云管理控制台左上角的 产品与服务 中,选择 安全(云盾)模块下的 云安全中心(安骑士),进入安骑士管理控制台。
在云安全中心的管理控制台中,点击左侧栏中的 资产中心。右侧页面进入资产列表,可以查看当前帐户下有两台ECS实例:实验资源 提供的ECS实例(以 实例ID 命名)和一台以 hacker-server 命名的新建ECS实例。两台实例均已安装安骑士( 保护状态 为 在线 ),并且没有检测到漏洞和风险。
由于安骑士检测到非白名单登录后,会以短信的方式发送给用户,为防止用户正确登录而被安骑士检测为异地登录,并短信告警带来的不便,可以通过添加白名单的方式来避免该问题。
(1)查询 本地IP 。通过浏览器打开网址 www.ip138.com 来查询 本地IP ,并复制下来以备用。
(2)找到安骑士加入白名单界面,界面路径 安骑士→安全配置→登录IP拦截加白。
(3)将本地IP加入白名单,点击添加。
在云安全中心管理控制台的 资产中心 页面中,点击 站点服务器 右侧的 查看 ,配置常用登录地址,当前没有异常登录记录。
在弹出的 登录安全设置 界面,在 常用登录地 右侧点击 添加 。
在弹出的对话框中,配置如下信息:
设置 常用登录地 为实验资源提供的 地域,如提供的地域为 华东2,则添加常用登录地为 上海,则做如下操作
· 添加的常用登录地:中国 、上海市 、上海市;这样,只有使用上海的IP地址,远程登陆到设置常用登陆地的ECS实例,才会记录为 正常访问。而其余地域远程登陆均被记录为 异地登录。
.使用攻击者服务器 hacker-server异地登录 站点服务器。
远程登录ECS服务器 hacker-server ,( IP地址 和 用户名/密码 可以在实验资源列表中找到),登录成功后,在该终端SSH登录 站点服务器,使用 实验资源 提供的站点服务器的 弹性IP地址,用户 和 密码 远程登录ECS。
返回云安全中心的管理控制台,总览 页面,看到 待处理告警 下有 1个 异常登录 记录,点击红框中的数字 1 ,进入异常登录页面。
说明:由于安骑士的拦截记录是从ECS服务器中获取,因此,等待时间可能较长,建议学员可以直接浏览下面的安骑士功能介绍章节,稍后返回查看实验结果。
用户可以查看到如下信息:状态为 异地登录 的 实验资源 提供的ECS实例。这是由于 hacker-server 没有设置 常用登录地。因此,本地使用SSH登录的记录 状态 为 正常登录。
云监控不仅可以对阿里云中的云资源进行监控,也可以使用云监控对自建Nginx服务器的站点进行监控,并设置报警规则,通过设置报警规则,及时发现站点异常现象,并对其处理。
**说明:**用户不仅可以对自己的站点进行监控,也可以对百度等网站进行监控。
首先,在云监控管理控制台中,点击左侧栏的 站点管理,进入 站点监控 页面,点击右上角的 新建监控任务,弹出创建对话框,开始创建站点监控。
在 创建监控点 的对话框中,站点类型 选择 HTTP;监控点的名称 输入 Nginx服务器;监控地址 输入 实例资源 提供的 负载均衡器的 IP地址;监控频率 设为 1分钟。其余为默认设置,完成后,点击 确定。如上配置,可以实现每分钟监控负载均衡的访问IP地址的状态。
在 设置报警规则 中,使用默认配置:状态码>=400,也就是当网站访问异常的时候,触发报警规则。完成后,点击 下一步。
在 设置通知对象 中,配置如下参数:连续几次超过阈值后报警,选择 1;报警方式选择 多检测点独立报警,也就是若在 创建站点监控 时,填写多个站点信息,只要一个站点异常,就会触发报警,而 多检测点组合报警,只有所有监测点均异常,才会报警;联系人通知组 勾选 EcsOps。完成后,点击 确定”。
对话框提示 已完成了1个站点的报警规则设置,点击 关闭。完成报警规则的创建。
在 站点监控 页面,可以查看到一个新建监控站点 Nginx服务器,等待1-2分钟后,可以查看到不同地域监控点的监控信息。
此时,停止负载均衡后端的ECS实例,模拟网站服务器异常,导致站点不可访问。点击顶部导航栏的 产品与服务 ,下拉列表依次选择 云计算基础服务 —> 弹性计算 —> 云服务器ECS,返回ECS管理控制台。点击左侧栏中 实例,在顶层栏中,选择云中沙箱 实验资源 提供的 地域,比如 华南1 。点击实例右侧的 更多,在弹出的下拉菜单中,点击 实例状态–>停止。
在弹出的对话框中,选择 强制停止,并勾选 确定要强制停止。完成后,点击 确定。
等待1分钟,ECS状态变为 已停止。此时,在浏览器中访问 实验资源 提供的 负载均衡器 的 IP地址,页面显示 504 错误。