
# 安全组配置示例
本章节为您介绍一些常用的安全组的配置示例，包括远程登录云服务器，对外提供网站访问、不同安全组内实例内网互通等。
通常情况下，安全组默认拒绝所有来自外部的请求。您需要遵循白名单原则添加安全组入方向规则，允许来自外部的特定请求访问安全组内实例。具体示例如下：
- [从本地服务器远程登录云服务器]
- [在本地服务器远程连接云服务器上传或者下载文件]
- [在云服务器上搭建网站对外提供Web服务]
- [使用ping命令验证网络连通性]
- [不同安全组内实例内网网络互通]
- [云服务器提供数据库访问服务]
- [限制云服务器访问外部网站]
 
安全组的出方向规则一般默认全部放通，即允许安全组内实例访问外部的所有请求出去，配置说明如[表1]所示。
 表1安全组默认出方向规则 
| 规则方向  | 优先级 | 策略 | 类型   | 协议端口 | 目的地址      | 描述                                |
|:---|:---|:---|:---|:---|:---|:---|
| 出方向规则 | 100 | 允许 | IPv4 | 全部   | 0.0.0.0/0 | 针对全部IPv4协议，允许安全组内的实例可访问外部IP的所有端口。 |
| 出方向规则 | 100 | 允许 | IPv6 | 全部   | ::/0      | 针对全部IPv6协议，允许安全组内的实例可访问外部IP的所有端口。 |
   
 #### 从本地服务器远程登录云服务器
安全组默认拒绝所有来自外部的请求，如果您需要从本地服务器远程登录云服务器，那么需要根据您的云服务器操作系统类型，在安全组入方向添加对应的规则。
- 通过SSH远程登录Linux云服务器，需要放通SSH(22)端口，请参见[表2]。
- 通过RDP远程登录Windows云服务器，需要放通RDP(3389)端口，请参见[表3]。
   表2通过SSH远程登录Linux云服务器 
  | 规则方向  | 优先级 | 策略 | 类型   | 协议端口       | 源地址            |
  |:---|:---|:---|:---|:---|:---|
  | 入方向规则 | 1   | 允许 | IPv4 | 自定义TCP: 22 | IP地址：0.0.0.0/0 |
     
   表3通过RDP远程登录Windows云服务器 
  | 规则方向  | 优先级 | 策略 | 类型   | 协议端口         | 源地址            |
  |:---|:---|:---|:---|:---|:---|
  | 入方向规则 | 1   | 允许 | IPv4 | 自定义TCP: 3389 | IP地址：0.0.0.0/0 |
     
  ![](https://support.huaweicloud.com/usermanual-hecs/public_sys-resources/notice_3.0-zh-cn.png)
  源地址设置为0.0.0.0/0表示允许所有外部IP远程登录云服务器，为了确保安全，建议您遵循最小原则，根据实际情况将源IP设置为特性的IP地址，配置示例请参见[表4]。
   表4通过特定IP地址远程登录云服务器 
  | 云服务器类型      | 规则方向  | 优先级 | 策略 | 类型   | 协议端口         | 源地址                 |
  |:---|:---|:---|:---|:---|:---|:---|
  | Linux云服务器   | 入方向规则 | 1   | 允许 | IPv4 | 自定义TCP: 22   | IP地址：192.168.0.0/24 |
  | Windows云服务器 | 入方向规则 | 1   | 允许 | IPv4 | 自定义TCP: 3389 | IP地址：10.10.0.0/24   |
     
  
 
 #### 在本地服务器远程连接云服务器上传或者下载文件
安全组默认拒绝所有来自外部的请求，如果您需要在本地服务器远程连接云服务器上传或者下载文件，那么您需要开通FTP(20、21)端口。
表5在本地服务器远程连接云服务器上传或者下载文件 
| 规则方向  | 优先级 | 策略 | 类型   | 协议端口          | 源地址            |
|:---|:---|:---|:---|:---|:---|
| 入方向规则 | 1   | 允许 | IPv4 | 自定义TCP: 20-21 | IP地址：0.0.0.0/0 |
   
![](https://support.huaweicloud.com/usermanual-hecs/public_sys-resources/notice_3.0-zh-cn.png)
您需要在弹性云服务器上先安装FTP服务器程序，再查看20、21端口是否正常工作。安装FTP服务器的操作请参见[搭建FTP站点（Windows）](https://support.huaweicloud.com/bestpractice-ecs/zh-cn_topic_0109733866.html)、[搭建FTP站点（Linux）](https://support.huaweicloud.com/bestpractice-ecs/zh-cn_topic_0115828034.html)。
 #### 在云服务器上搭建网站对外提供Web服务
安全组默认拒绝所有来自外部的请求，如果您在云服器上搭建了可供外部访问的网站，则您需要在安全组入方向添加对应的规则，放通对应的端口，例如HTTP(80)、HTTPS(443)。
表6云服务器上搭建网站对外提供Web服务 
| 规则方向  | 优先级 | 策略 | 类型   | 协议端口        | 源地址            |
|:---|:---|:---|:---|:---|:---|
| 入方向规则 | 1   | 允许 | IPv4 | 自定义TCP: 80  | IP地址：0.0.0.0/0 |
| 入方向规则 | 1   | 允许 | IPv4 | 自定义TCP: 443 | IP地址：0.0.0.0/0 |
   
 #### 使用**ping**命令验证网络连通性
安全组默认拒绝所有来自外部的请求，如果您需要在云服器上使用**ping**命令验证网络的连通性，则您需要在安全组入方向添加对应的规则，放通ICMP端口。
表7使用ping命令验证网络连通性 
| 规则方向  | 优先级 | 策略 | 类型   | 协议端口     | 源地址            |
|:---|:---|:---|:---|:---|:---|
| 入方向规则 | 1   | 允许 | IPv4 | ICMP: 全部 | IP地址：0.0.0.0/0 |
| 入方向规则 | 1   | 允许 | IPv6 | ICMP: 全部 | IP地址：::/0      |
   
 #### 不同安全组内实例内网网络互通
同一个VPC内，位于不同安全组内的实例网络不通。如果您需要在同一个VPC内的实例之间共享数据，比如安全组sg-A内的云服务器访问安全组sg-B内的MySQL数据库，您需要通过在安全组sg-B中添加一条入方向规则，放通MySQL (3306)端口，允许来自安全组sg-A内云服务器的请求进入。
表8不同安全组内实例内网互通 
| 规则方向  | 优先级 | 策略 | 类型   | 协议端口         | 源地址      |
|:---|:---|:---|:---|:---|:---|
| 入方向规则 | 1   | 允许 | IPv4 | 自定义TCP: 3306 | 安全组：sg-A |
   
 #### 云服务器提供数据库访问服务
安全组默认拒绝所有来自外部的请求，如果您在云服器上部署了数据库服务，允许其他云服务器通过内网访问数据库服务，则您需要在部署数据库云服务器所在的安全组内，添加入方向规则，放通对应的端口，例如MySQL(3306)、Oracle(1521)、MS SQL(1433)、PostgreSQL(5432)、Redis(6379)。
表9云服务器提供数据库访问服务 
| 规则方向  | 优先级 | 策略 | 类型   | 协议端口         | 源地址                 | 描述                                                 |
|:---|:---|:---|:---|:---|:---|:---|
| 入方向规则 | 1   | 允许 | IPv4 | 自定义TCP: 3306 | 安全组：sg-A            | 允许安全组sg-A内云服务器访问MySQL数据库服务。                        |
| 入方向规则 | 1   | 允许 | IPv4 | 自定义TCP: 1521 | 安全组：sg-B            | 允许安全组sg-B内云服务器访问Oracle数据库服务。                       |
| 入方向规则 | 1   | 允许 | IPv4 | 自定义TCP: 1433 | IP地址：172.16.3.21/32 | 允许私网IP地址为172.16.3.21的云服务器访问MS SQL数据库服务。            |
| 入方向规则 | 1   | 允许 | IPv4 | 自定义TCP: 5432 | IP地址：192.168.0.0/24 | 允许私网IP地址属于192.168.0.0/24网段的云服务器访问PostgreSQL数据库服务。  |
| 入方向规则 | 1   | 允许 | IPv4 | 自定义TCP: 6379 | IP地址组：ipGroup-A     | 允许私网IP地址属于IP地址组ipGroup-A范围内的云服务器访问PostgreSQL数据库服务。 |
   
![](https://support.huaweicloud.com/usermanual-hecs/public_sys-resources/notice_3.0-zh-cn.png)
本示例中源地址提供的配置仅供参考，请您根据实际需求设置源地址。
 #### 限制云服务器访问外部网站
安全组的出方向规则一般默认全部放通，默认规则如[表11]所示。如果您需要限制服务器只能访问特定网站，则按照如下要求配置：
1. 首先，您需要遵循白名单规则，在安全组出方向规则中添加指定的端口和IP地址。
   表10不同安全组内实例内网互通 
   | 规则方向  | 优先级 | 策略 | 类型   | 协议端口        | 源地址                |
   |:---|:---|:---|:---|:---|:---|
   | 出方向规则 | 1   | 允许 | IPv4 | 自定义TCP: 80  | IP地址：132.15.XX.XX  |
   | 出方向规则 | 1   | 允许 | IPv4 | 自定义TCP: 443 | IP地址：145.117.XX.XX |
      
   
2. 其次，删除安全组出方向中原有放通全部流量的规则，如[表11]所示。
    表11安全组默认出方向规则 
   | 规则方向  | 优先级 | 策略 | 类型   | 协议端口 | 目的地址      | 描述                                |
   |:---|:---|:---|:---|:---|:---|:---|
   | 出方向规则 | 100 | 允许 | IPv4 | 全部   | 0.0.0.0/0 | 针对全部IPv4协议，允许安全组内的实例可访问外部IP的所有端口。 |
   | 出方向规则 | 100 | 允许 | IPv6 | 全部   | ::/0      | 针对全部IPv6协议，允许安全组内的实例可访问外部IP的所有端口。 |
      
   
 
