HCE OS安装部署与安全漏洞配置
本实验主要介绍了在华为云上购买ECS及以镜像的方式部署华为云欧拉操作系统(HCE OS);然后新建私有REPO源并制作安全RPM。
1.1 登录华为云
1.1.1创建弹性云服务器ECS
步骤 1 注册并登录华为云
在华为云官网地址: https://www.huaweicloud.com/点击右上角登录按钮。选择IAM用户登录,输入华为云账号、IAM用户名及IAM用户密码后点击登录按钮。
步骤 2 创建虚拟私有云
点击右上角控制台,选择Region为“华东北京四”。鼠标放到左侧服务列表符号,点击网络部分第一个服务:虚拟私有云 VPC。点击右上角“创建虚拟私有云”。
输入参数如下:
VPC名称:vpc-hce
子网名称:subnet-hce
其他选项保持默认,点击右下角“立即创建”。
创建完成后可在列表中查看到此VPC。
步骤 3 创建安全组
点击左侧网络控制台中的访问控制,点击“安全组”。点击右上角“创建安全组”。
修改安全组名称为sg-hce,其他选项保持默认后点击确定。
可以在列表中查看到该安全组,后续会有步骤涉及到安全组的规则变更。
步骤 4 购买ECS
在左侧服务列表中选择计算类服务第一项:弹性云服务器ECS。击右上角“购买弹性云服务器”。
ECS具体配置参数如下:
计费模式:按需计费
区域:华东-北京四
可用区:随机分配
规格:任意 2vCPUs | 4GiB 实例均可,如规格: 通用计算型,s6.large.2
说明:由于平台限制,购买超过2v4G规格的实例平台将自动销毁
网络:vpc-hce | subnet-hce | 自动分配IP地址
镜像:Huawei Cloud EulerOS 2.0 标准版 64位
系统盘:高IO 40G
安全组:sg-hce
弹性公网IP:现在购买
线路:全动态BGP
公网带宽:按带宽计费
带宽大小:5Mbit/s
云服务器名称:ecs-hce
登录凭证:密码
密码:Huawei12#$ (密码必须保持一致)
确认密码:Huawei12#$
高级选项:保持默认
确认配置无误后勾选“我已阅读并同意镜像声明”,点击“立即购买”。
云服务器名称与密码必须保持一致
返回弹性云服务器列表可以看到该ECS的状态为运行中。
步骤 5 登录弹性云服务器。点击“远程登陆”。通过CloudShell登录ecs-hce。
输入密码后,点击“链接”。
或选择VNC方式登录。点击“立即登录”。
输入localhost login: root与密码即可成功登录。(root/Huawei12#$)
1.2 HCE-OS安全漏洞配置管理
步骤 1 将hostname改为ecs-hce
hostnamectl set-hostname ecs-hce
bash
步骤 2 安装rpm-build
搜索rpm-build,安装rpm-build,输入y确认安装,回显”Complete!”安装完毕。
yum search rpm-build
yum install rpm-build
步骤 3 安装rpm-devel rpmdevtools工具包
以同样的步骤安装rpm-devel rpmdevtools工具包,回显Complete!安装完毕。
yum install -y rpm-devel rpmdevtools
步骤 4 生成rpm开发目录
rpmdev-setuptree
步骤 5 创建源码路径
cd /root/rpmbuild/SOURCES
mkdir hce2-helloworld-1.0.0
步骤 6 创建源码文件并修改权限
touch hce2-helloworld-1.0.0/hce2-helloworld
chmod 755 hce2-helloworld-1.0.0/hce2-helloworld
步骤 7 源码文件中写入代码
在新创建的源码文件中写入如下代码,按“ecs”推出编辑模式,按“shift”+“:”输入wq保存并推出
vim hce2-helloworld-1.0.0/hce2-helloworld
!/bin/sh echo Hello World!
步骤 8 压缩源码
tar zcvf hce2-helloworld-1.0.0.tar.gz hce2-helloworld-1.0.0/
步骤 9 进入/root/rpmbuild/SPECS路径生成.spec文件,需要输入y确认
cd /root/rpmbuild/SPECS/
yum install -y git
rpmdev-newspec hce2-helloworld.spec
步骤 10 将spec文件中的原有代码删除并添加如下代码
vim hce2-helloworld.spec
Name: hce2-helloworldVersion: 1.0.0Release: 1%{?dist}Summary: hce2-helloworld
Group: Development/Tools
License: GPL
#URL:
Source0: %{name}-%{version}.tar.gz
#BuildRequires:
#Requires:
%description
%prep
%setup -q
%build
%install
mkdir -p $RPM_BUILD_ROOT/usr/bin
cp $RPM_BUILD_DIR/%{name}-%{version}/hce2-helloworld $RPM_BUILD_ROOT/usr/bin/
%clean
rm -rf $RPM_BUILD_ROOT
%files
%defattr(-,root,root,-)
%doc
/usr/bin/hce2-helloworld
%changelog
步骤 11 执行编译命令,生成rpm包
拷贝代码rpmbuild --nodebuginfo -ba hce2-helloworld.spec
步骤 12 查看生成路径
拷贝代码ls /root/rpmbuild/RPMS/x86_64/hce2-helloworld-1.0.0-1.x86_64.rpm
步骤 13 选择一个本地私有REPO源的文件目录
例如可以选择用/home/private/目录(手动创建一个目录) 将步骤10中的rpm包,拷贝到该目录下。
拷贝代码mkdir /home/private
拷贝代码cp /root/rpmbuild/RPMS/x86_64/hce2-helloworld-1.0.0-1.x86_64.rpm /home/private/
步骤 14 安装createrepo工具,需输入y确认
拷贝代码yum install createrepo
步骤 15 在/home/private路径下执行createrepo 命令,生成repo源相关信息
拷贝代码cd /home/private
拷贝代码createrepo .
步骤 16 编辑repo配置文件,repo配置文件中增加repo源hce2-test
拷贝代码vi /etc/yum.repos.d/hce.repo
拷贝代码[hce2-test]name=hce2-testbaseurl=file:///home/private/enabled=1gpgcheck=0
步骤 17 生效repo源
拷贝代码yum makecache
步骤 18 安装hce2-helloworld-1.0.0.rpm,需要输入y确认
拷贝代码yum install hce2-helloworld
步骤 19 制作安全补丁rpm ,拷贝生成新的源码包
拷贝代码cd /root/rpmbuild/SOURCES/
拷贝代码cp -r hce2-helloworld-1.0.0 hce2-helloworld-1.1.0
拷贝代码tar zcvf hce2-helloworld-1.1.0.tar.gz hce2-helloworld-1.1.0/
步骤 20 修改hce2-helloworld.spec版本号
将Version:1.0.0修改为1.1.0。其他内容保持不变。
拷贝代码cd ../SPECS/
拷贝代码vim hce2-helloworld.spec
步骤 21 编译生成新的RPM包,并拷贝到/home/private/目录下
拷贝代码rpmbuild --nodebuginfo -ba hce2-helloworld.spec
步骤 22 /home/private/目录下增加updateinfo.xml
按a进入插入模式,新增如下代码
拷贝代码cd /home/private
拷贝代码touch updateinfo.xml
拷贝代码vim updateinfo.xml
拷贝代码<?xml version="1.0" encoding="UTF-8"?><updates><update author="Huawei Cloud EulerOS" from="Huawei Cloud EulerOS" status="stable" type="security" version="1.0"><id>HCE2-SA-2022:0001</id><title>HCE2-SA-2022:0001: hce2-helloworld security update (Important)</title><issued date="2022-04-09"/><updated date="2022-04-09" timestamp="1612697870"/><rights>Copyright (C) 2020-2021 Huawei Cloud EulerOS</rights><release>Huawei Cloud EulerOS 2</release><severity>Important</severity><summary>hce2-helloworld security update</summary><description>Package updates are available for Huawei Cloud EulerOS 2 that fix the following vulnerabilities:CVE-2021-21261: Just for test</description><references><reference href="" id="HCE2-SA-2022:0001" type="HCE2-SA"/><reference href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-21261" cvss3="8.8/CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H" id="CVE-2021-21261" type="cve"/></references><pkglist><collection short="hce2"><name>Huawei Cloud EulerOS 2</name><package arch="x86_64" epoch="" name="hce2-helloworld" version="1.3.0" release="1.3.0" src=""><filename>hce2-helloworld-1.3.0-1.x86_64.rpm</filename></package></collection></pkglist></update><updates>
步骤 23 更新repo源
拷贝代码modifyrepo updateinfo.xml repodata/
拷贝代码yum makecache
步骤 24 检查更新信息可以看到有新的更新提示
拷贝代码yum updateinfo
步骤 25 可以通过yum updateinfo -list查看详情
拷贝代码yum updateinfo --list