文章目录
- 访问控制-安全组
- 什么叫安全组
- 安全组配置
- 默认安全组配置
- 安全组配置实例
- 安全组创建
- 安全组模板配置
- 安全组模板:通用Web服务器
- 配置安全组规则
- 安全组配置规则功能介绍
- 修改允许特定IP地址访问Web 80端口服务
- 建立仅允许访问特定目的地址的安全规则
- 配置网络ACL
- 对实例应用安全组
- 安全组和网络ACL规则验证测试
- 总结
华为云耀云服务器L实例访问控制实例教学
任何部署在公网的服务,服务均要实现可用性,机密性,完整性原则,而云服务器的访问控制实例,则最大程度确保服务器安全。
接下来我们将分享访问控制的实践操作:
访问控制-安全组
什么叫安全组
安全组是一个逻辑上的分组,为具有相同安全保护需求并相互信任的云服务器、云容器、云数据库等实例提供访问策略。安全组创建后,用户可以在安全组中定义各种访问规则,当实例加入该安全组后,即受到这些访问规则的保护。
华为云耀云服务器L实例 默认有两个安全组:
安全组配置
默认安全组配置
创建的华为云耀云服务器L实例默认在“sg-default-smb”安全组中。
默认安全组有六个规则,四个入方向,两个出方向。
安全组入方向规则
安全出方向规则
关联一个实例
安全组配置实例
现在我们新创建一个安全组,并命名为“hcss_esc_ubuntu”。
点击访问控制-安全组-创建安全组:
安全组创建
名称:名称自定义,我们命名为“hcss_esc_ubuntu”
模板:模板有三个:稍后我们会详细描述。
描述:对安全组进行适当描述,以方便识别安全组用途和使用范围。
安全组模板配置
安全组模板:通用Web服务器
入方向:开放了TCP协议的22、3389、80、443四个端口。基本上可以满足远程连接和Web服务需求。
出方向:
出方向默认开放了IPv4和IPv6允许所有的规则。
点击确定完成通用WEB服务器模板创建。如果我们需要对模板内的部分规则进行调整,则在确认后,对安全组重新进行配置规则。
配置安全组规则
安全组配置规则功能介绍
点击【配置规则】
点击【基本信息】查看规则名称、ID、描述。
点击【入方向规则】
该页面有三个功能:
- 添加规则 (添加一条新的规则)
- 快速添加规则 (快速添加规则与创建安全组时模块“快速添加规则”一致)
- 删除 (删除,需要先选中指定规则,并执行删除)
- 一键放通 (针对如果配置了复杂规则,影响服务,应急一键放通,确保业务可用)
修改允许特定IP地址访问Web 80端口服务
点击【修改】操作
策略仍然为允许策略
协议端口可选内容非常多,而且支持自定义。范例我们选择【常用协议端口】【HTTP(80)】
源地址选择【IP地址】,并输入允许外部IP地址:127.37.24.1/32 。
修改完成,确认无误后,点击【确认】。
非常点赞的一点,对安全组规则的修改,为避免无意的误操作,会有一次验证。我们选择手机短信验证。
这样,我们就完成了一次规则的修改,如下规则意思为:
仅允许127.37.24.1/32 地址可以远程访问实例的TCP 80端口。
建立仅允许访问特定目的地址的安全规则
点击【出方向规则】
默认的规则为IPv4和IPv6,并且全部为允许。这在正式环境中,其实并不安全。
我们会演示一个案例,仅允许华为云云耀云服务器L实例访问指定地址。并遵循最小权限原则。
添加一条仅允许访问public DNS的规则:
- 优先级:默认为1-100,我们设定为最高优先级“1”。
- 策略:允许策略
- 协议端口:为方便测试,我们选择ICMP协议。
- 目的地址:可以根据实际情况自定义,我们选择public DNS:8.8.8.8。
- 描述:描述内容
如果需要增加规则,可以点击【增加一条规则】
点击【确定】后,我们的这条规则就创建完成了。
我们这里创建了允许的规则,但是没有拒绝规则,出方向的流量即便与我们创建的规则不匹配,就会寻找下一条规则。所有,我们还需要创建一条拒绝的规则。
通常,拒绝的规则为最后一条,并且为拒绝所有。这样,我们外向的流量就变成白名单策略方式,可以达成我们最小权限原则。
为方便测试,我们把IPv4全部允许这条策略直接修改为全部拒绝即可。
修改完成后,点击【确认】
配置网络ACL
特别需要提醒,这里修改全部拒绝的规则后,我们还有一步很关键的步骤,增加允许访问的路由:
返回控制台,点击【访问控制】【网络ACL】【配置规则】
进入配置规则后,点击【出方向规则】
从截图我们可以看到,出方向的规则只有一条,并且是全部拒绝。
所以,基于我们测试需求,我们需要添加一条允许访问public DNS:8.8.8.8 的规则:
至此,网络ACL添加成功:
对实例应用安全组
回到控制台,更改安全组,进入【安全组】【更改安全组】选择我们刚才创建的安全组,并点击【确认】
查看更改安全组成功。
安全组和网络ACL规则验证测试
在前面的配置安全组规则中,我们创建了仅允许访问外部的public DNS:8.8.8.8,我们在console端进行验证测试。
测试DNS端口是否可以连接
root@hcss-ecs-7b7c:~# telnet 8.8.8.8 53
Trying 8.8.8.8... # 表示您正在尝试建立到IP地址 8.8.8.8 的 53 端口的TCP连接。
Connected to 8.8.8.8. # 连接成功,您已经与目标IP地址(8.8.8.8)建立了连接。
Escape character is '^]'. # 这一行告诉您可以通过在键盘上按下 Ctrl+] 键来终止Telnet会话。
Connection closed by foreign host. # 在短暂的时间后,连接被远程主机(在这种情况下是 8.8.8.8)关闭。
root@hcss-ecs-7b7c:~#
测试DNS端口可以正常连接。接着反向验证非DNS地址是否可以连接,我们用另外一个public DNS来测试:
root@hcss-ecs-7b7c:~# telnet 114.114.114.114 53
Trying 114.114.114.114... # 表示您正在尝试建立到IP地址 8.8.8.8 的 53 端口的TCP连接。
telnet: Unable to connect to remote host: Connection timed out # Telnet无法连接到远程主机,并且连接尝试已超时。
root@hcss-ecs-7b7c:~#
从以上两个测试,安全组出方向规则仅允许访问public DNS 8.8.8.8 规则创建成功并且生效。
总结
以上就是:华为云云耀云服务器L实例使用教学 | 访问控制-安全组配置规则 实例教学,希望对大家有所帮助。
整理使用过程,所有操作界面都清晰、系统不卡顿、配置生效及时、规则配置没有歧义。对新手或者运维能大大降低运维工作负载,个人认为非常值得选择。