[专有网络VPC]ECS安全组配置案例

news2024/10/28 9:08:57

安全组是一种虚拟防火墙,能够控制ECS实例的出入站流量。安全组的入方向规则控制ECS实例的入站流量,出方向规则控制ECS实例的出站流量。

创建ECS实例时,您可以指定一个或多个安全组。如果您创建ECS实例时未指定安全组,将使用默认安全组。在决定ECS实例的流量能否通过时,与ECS实例关联的多个安全组的规则,将按固定的策略排序,共同生效。

您可以为安全组新增规则,修改或删除已有规则,这些规则变动会自动地作用于安全组中的所有ECS实例。更多信息,请参见安全组规则。您可以随时修改ECS实例关联的安全组,修改后安全组的规则将会自动地作用于ECS实例。ECS实例关联的安全组,其规则作用于ECS实例的主网卡。专有网络ECS实例的其他弹性网卡,可以指定与主网卡不同的安全组。在专有网络VPC下,安全组仅能在所属的VPC下使用,在创建VPC网络下的ECS实例时,您指定的虚拟交换机和安全组,必须属于同一个VPC。

组内互通和授权安全组访问,是安全组提供的两项重要特性。组内互通,是指安全组内的ECS实例内网互通。授权安全组访问,是指您可以添加授权对象为安全组的安全组规则,从而允许或拒绝另一个安全组中的ECS实例,通过内网访问该安全组中的ECS实例。安全组分为普通安全组和企业级安全组两种类型,两者均免费,适用于不同的使用场景。普通安全组支持组内互通功能,支持添加授权安全组访问的规则,但可容纳的私网IP数量小于企业级安全组。企业级安全组可以容纳更多的私网IP地址数量,但不支持组内互通功能,也不支持添加授权安全组访问的规则。在ECS实例关联到多个安全组时,同一块网卡只能使用一种类型的安全组。建议您根据自己的使用需求来选择安全组类型。更多信息,请参见普通安全组与企业级安全组。

在您使用DescribeSecurityGroups接口查询到安全组的ServiceManaged属性为True,或使用控制台看到安全组有类似云产品托管的安全组不支持修改操作的提示时,表示该安全组为托管安全组。托管安全组属于用户账号,但操作权限属于云产品,用户仅能查看不能操作。更多信息,请参见托管安全组。

在您使用DeleteSecurityGroup接口删除安全组时返回错误码InvalidOperation.DeletionProtection,或使用控制台删除安全组看到类似删除保护的提示时,说明该安全组开启了删除保护功能。在您创建ACK集群时,关联的安全组会开启删除保护功能,来防止误删除。删除保护功能无法手动关闭,只有在删除了关联的ACK集群后,才能够自动关闭。更多信息,请参见关闭安全组删除保护。

合理使用安全组可以有效提高实例的安全性,但提高实例安全性是一项系统的工作,您还可以结合更多其他做法。更多信息,请参见云服务器ECS安全性。

安全组使用的最佳实践

关于安全组的使用,为您提供以下最佳实践建议:

  • 规划

    您可以为安全组设置名称、描述,也可以设置安全组的标签、资源组,便于进行分类运维。建议您合理设置这些信息,方便快速识别安全组的用途,在管理较多安全组时更加清晰。

  • 以白名单的方式使用安全组

    即默认拒绝所有访问,添加允许规则来放通指定的端口范围和授权对象。

  • 添加安全组规则时遵循最小授权原则

    例如,开放Linux实例的22端口用于远程登录时,建议仅允许特定的IP访问,而非所有IP(0.0.0.0/0)。

  • 遵循最小权限原则

    在不需要普通安全组内ECS实例互相内网互通时,将普通安全组的组内连通策略设置为组内隔离。

  • 尽量保持单个安全组内规则的简洁

    按照用途将规则维护在多个安全组中,并将实例关联到这些安全组。单个安全组的规则数量过多,会增加管理复杂度。安全组规则的健康检查,提供了检测单个安全组冗余规则的能力,详情请参见查看安全组是否存在冗余规则。

  • 不同类型应用的实例加入不同的安全组,分别维护安全组规则

    例如,将允许公网访问的实例关联到同一个安全组,仅放通对外提供服务的端口,例如80、443等,默认拒绝其他所有访问。避免在允许公网访问的实例上提供其他服务,例如MySQL、Redis等,建议将内部服务部署在不允许公网访问的实例上,并关联其他的安全组。

  • 避免直接修改线上环境使用的安全组

    可以先克隆一个安全组在测试环境调试,确保修改后实例流量正常,再对线上环境的安全组规则进行修改。

当您创建VPC类型的ECS实例时,可以使用系统提供的默认安全组规则,也可以选择VPC中已有的其他安全组。安全组是一种虚拟防火墙,用来控制ECS实例的出站和入站流量。

本文档介绍常用VPC类型的ECS实例的安全组设置。

案例一:私网互通

VPC类型的ECS实例互通分以下两种情况:

  • 同一VPC内的相同安全组下的ECS实例,默认互通。
  • 不同VPC内的ECS实例,无法互通。首先需要使用高速通道、VPN网关、云企业网等产品打通两个VPC之间的通信,然后确保两个VPC内的ECS实例的安全组规则允许互相访问,如下表所示。
    安全组规则规则方向授权策略协议类型和端口范围授权类型授权对象
    VPC 1中的ECS实例的安全组配置入方向允许

    Windows: RDP

    3389/3389

    地址段访问要访问的VPC2中的ECS实例的私网IP。

    说明

    如果允许任意ECS实例登录,填写0.0.0.0/0。

    入方向允许

    Linux: SSH

    22/22

    地址段访问
    入方向允许

    自定义TCP

    自定义

    地址段访问
    VPC 2中的ECS实例的安全组配置入方向允许

    Windows: RDP

    3389/3389

    地址段访问要访问的VPC1中的ECS实例的私网IP。

    说明

    如果允许任意ECS实例登录,填写0.0.0.0/0。

    入方向允许

    Linux: SSH

    22/22

    地址段访问
    入方向允许

    自定义TCP

    自定义

    地址段访问

案例二:拒绝特定IP或特定端口的访问

您可以通过配置安全组拒绝特定IP或特定端口对VPC类型的ECS实例的访问,如下表所示。

安全组规则规则方向授权策略协议类型和端口范围授权类型授权对象
拒绝特定IP地址段对ECS实例所有端口的入站访问入方向拒绝

全部

-1/-1

地址段访问

要拒绝访问的IP地址段,如10.0.0.1/32。

拒绝特定IP地址段对ECS实例TCP 22端口的入站访问入方向拒绝

SSH(22)

22/22

地址段访问

要拒绝访问的IP地址段,如10.0.0.1/32。

案例三:只允许特定IP远程登录ECS实例

如果您为VPC中的ECS实例配置了公网IP,如EIP、公网NAT网关等。您可以根据具体情况,添加如下安全组规则允许Windows远程登录或Linux SSH登录。

安全组规则规则方向授权策略协议类型和端口范围授权类型授权对象
允许Windows远程登录入方向允许

RDP

3389/3389

地址段访问允许登录ECS实例的指定IP地址。

说明

如果允许任意公网IP登录ECS,填写0.0.0.0/0。

允许Linux SSH登录入方向允许

SSH

22/22

地址段访问允许登录ECS实例的指定IP地址。

说明

如果允许任意公网IP登录ECS实例,填写0.0.0.0/0。

案例四:允许公网访问ECS实例部署的HTTP或HTTPS服务

如果您在VPC类型的ECS实例上部署了一个网站,通过EIP、公网NAT网关对外提供服务,您需要配置以下安全组规则允许用户从公网访问您的网站。

安全组规则规则方向授权策略协议类型和端口范围授权类型授权对象
允许来自HTTP 80端口的入站访问入方向允许

HTTP

80/80

地址段访问0.0.0.0/0
允许来自HTTPS 443端口的入站访问入方向允许

HTTPS

443/443

地址段访问0.0.0.0/0
允许来自TCP 80端口的入站访问入方向允许

TCP

80/80

地址段访问0.0.0.0/0

安全组规则规则方向授权策略协议类型和端口范围授权类型授权对象 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2225331.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Centos7.9安装MySQL(二进制)

安装包 https://downloads.mysql.com/archives/community/ mysql-8.0.39-linux-glibc2.17-x86_64.tar.xz 1.卸载MariaDB 查看 rpm -qa|grep mariadb卸载 可能名称不一样,记得替换 rpm -e --nodeps mariadb-libs-5.5.68-1.el7.x86_64rpm -qa|grep mariadb 执行…

leetcode228:汇总取件

步骤1:定义题目的计算问题性质 题目要求从一个无重复元素且有序的整数数组 nums 中,找出所有恰好覆盖数组中所有数字的最小区间范围列表。这意味着每个数字都必须被某个区间包含,且没有多余的数字在区间内。 输入:一个有序整数数…

Github 2024-10-28 开源项目周报 Top15

根据Github Trendings的统计,本周(2024-10-28统计)共有15个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量Python项目6JavaScript项目4TypeScript项目4Jupyter Notebook项目2C++项目1C#项目1Svelte: 一种新的Web应用程序构建方法 创建周期:2899 天开发…

软件分享丨ImTip输入状态

ImTip软件介绍 ImTip是一款实用的输入法状态跟踪提示工具,官网为https://imtip.aardio.com。 它具有诸多优势,体积小巧仅696KB且免费开源,是单文件绿色软件,无外部依赖,能在多种流行桌面操作系统上流畅运行。其核心…

软硬件开发面试问题大汇总篇——针对非常规八股问题的提问与应答(代码规范与生态管理)

软硬件开发,对于编码规范、生态管理等等综合问题的考察尤为重要。 阐述下环形缓冲区的用途 环形缓冲区(Ring Buffer)是一种固定大小的数据结构,常用于实现数据的流式传输或临时存储。在环形缓冲区中,当到达缓冲区的末尾…

react18中的合成事件与浏览器中的原生事件

React 通过将事件 normalize 以让他们在不同浏览器中拥有一致的属性。 合成事件 SyntheticEvent 实例将被传递给你的事件处理函数,它是浏览器的原生事件的跨浏览器包装器。除兼容所有浏览器外,它还拥有和浏览器原生事件相同的接口,包括 stopP…

Atlas800昇腾服务器(型号:3000)—SwinTransformer等NPU推理【图像分类】(九)

服务器配置如下: CPU/NPU:鲲鹏 CPU(ARM64)A300I pro推理卡 系统:Kylin V10 SP1【下载链接】【安装链接】 驱动与固件版本版本: Ascend-hdk-310p-npu-driver_23.0.1_linux-aarch64.run【下载链接】 Ascend-…

华为配置 之 STP

目录 简介: STP: RSTP: 如何改变根网桥: (1)改变优先级: (2)改变root: 各端口的状态: 总结: 简介: STP(Spanning Tree Protoco…

【数据分析】Power BI的使用教程

目录 1 Power BI架构1.1 Power BI Desktop1.2 Power BI服务1.3 Power BI移动版 2 Power Query2.1 Power Query编辑器2.2 Power Query的优点2.3 获取数据2.4 数据清洗的常用操作2.4.1 提升标题2.4.2 更改数据类型2.4.3 删除错误/空值2.4.4 删除重复项2.4.5 填充2.4.6 合并列2.4.…

JAVA面试八股文(五)

#1024程序员节|征文# 在1024程序员节这个特别的日子里,首先,我想对每一位程序员表示最诚挚的祝贺!祝愿大家在未来的日子里,能够继续热爱编程、追求卓越,携手共创更美好的科技未来!让我们共同庆祝…

基于Django+python的酒店客房入侵检测系统设计与实现

项目运行 需要先安装Python的相关依赖:pymysql,Django3.2.8,pillow 使用pip install 安装 第一步:创建数据库 第二步:执行SQL语句,.sql文件,运行该文件中的SQL语句 第三步:修改源…

Luma API 的使用

Luma 是一个专注于高质量视频生成的平台,用户只需上传素材,即可根据不同的风格和效果自动生成高质量的视频。该 AI 视频生成器是由来自知名科技公司的团队开发,旨在让每个人在不使用复杂编辑工具的情况下,轻松制作优秀的视频。 然…

docker sameersbn/bind dns服务器

1. 安装 #下载docker 镜像 docker pull sameersbn/bind#运行 53端口若被占用会启动失败 docker run --name dns -d --restartalways \ --publish 53:53/tcp \ --publish 53:53/udp \ --publish 10000:10000/tcp \ -v /etc/localtime:/etc/localtime \ -v /data/bind/:/data \…

Semantic Kernel进阶:创建和管理聊天(ChatCompletion)历史记录对象(四)

一、引言 在构建基于Semantic Kernel的AI应用时,聊天历史记录对象(Chat History)是维护对话上下文和连续性的关键。本文将一步步指导你如何创建和管理聊天历史记录对象,从而为你的AI代理提供一个强大的对话管理工具。 二、聊天…

java平方根计算 C语言指针变量

1. public static void main(String[] args) { Scanner scnew Scanner(System.in);System.out.println("请输入你的数&#xff1a;"); int numsc.nextInt();for (int i 1; i < num; i) {if (i*inum){System.out.println(i"就是"num"的平方根"…

基于Python的B站视频数据分析与可视化

基于Python的B站视频数据分析与可视化 爬取视频、UP主信息、视频评论 功能列表 关键词搜索指定帖子ID爬取指定UP主的主页爬取支持评论爬取生成评论词云图支持数据存在数据库支持可视化 部分效果演示 爬取的UP主信息 关键词搜索爬取 指定UP主的主页爬取 指定为黑马的了 爬取视…

ubuntu2204配置cuda

ubuntu2204配置cuda ✅系统版本&#xff1a;ubuntu22.04 LTS ✅显卡&#xff1a;英伟达2070S ✅CPU&#xff1a;i9 10900 ✅主板&#xff1a;戴尔品牌机 教程&#x1f4a8;&#x1f4a8;&#x1f4a8;&#x1f4a8;&#xff1a; ps&#xff1a;本人按照该方法一遍成功&#…

Python的协程与传统的线程相比,是否能更有效地利用计算资源?在多大程度上,这种效率是可测量的?如何量化Python协程的优势|协程|线程|性能优化

目录 1. 协程与线程的基本概念 1.1 线程 1.2 协程 2. 协程的实现原理 2.1 基本示例 3. 协程与线程的效率对比 3.1 资源利用率 3.2 性能测试 4. 使用场景分析 4.1 适用场景 4.2 不适用场景 5. 性能监测与测量 5.1 使用时间记录 5.2 使用第三方库 6. 总结与展望 P…

移情别恋c++ ദ്ദി˶ー̀֊ー́ ) ——15.C++11(1)

1. 自动类型推导 (auto) C11 引入了 auto 关键字&#xff0c;可以根据初始值的类型自动推导变量的类型&#xff0c;从而减少了手动声明类型的繁琐。例如&#xff1a; std::vector<int> vec {1, 2, 3, 4}; auto it vec.begin(); // 自动推导类型为 std::vector<in…

C++类和对象 (中)

文章目录 前言一. 类的默认成员函数1.1 构造函数概念特点 1.2 析构函数定义与特点作用注意 1.3 拷贝构造函数概念特性 2. 赋值运算符重载2.1 运算符重载特性注意 2.2 赋值运算符重载定义特性 2.3 流运算符重载概念注意 3. 日期类实现4. const成员函数概念注意 5. 取地址运算符重…