

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 在 Lightsail 中使用防火墙控制实例流量
<a name="understanding-firewall-and-port-mappings-in-amazon-lightsail"></a>

Amazon Lightsail 控制台中的防火墙充当虚拟防火墙，用于控制允许通过其公有 IP 地址连接到您的实例的流量。您在 Lightsail 中创建的每个实例都有两个防火墙；一个用于 IPv4 地址，另一个用于地址。 IPv6每个防火墙均包含一组规则来过滤进入实例的流量。两个防火墙彼此独立；必须为 IPv4 和 IPv6分别配置防火墙规则。可以通过添加和删除允许或限制流量的规则，来随时编辑实例的防火墙。

## Lightsail 防火墙
<a name="understanding-firewalls"></a>

每个 Lightsail 实例都有两个防火墙；一个用于 IPv4 地址，另一个用于地址。 IPv6所有进出您的 Lightsail 实例的互联网流量都要通过其防火墙。实例的防火墙控制允许流入实例的 Internet 流量。但是，防火墙不控制流出实例的流量，而是允许所有出站流量。可以通过添加和删除允许或限制传入流量的规则，来随时编辑实例的防火墙。请注意，两个防火墙彼此独立；必须为 IPv4 和 IPv6分别配置防火墙规则。

防火墙规则始终是允许型的；您无法创建拒绝访问的规则。可以向实例的防火墙添加规则以允许流量到达实例。向实例的防火墙添加规则时，您可以指定要使用的协议、要打开的端口以及允许连接到您的实例的 IPv4 和 IPv6 地址，如以下示例（对于 IPv4）所示。您还可以指定应用层协议类型，这是一种预设，根据您计划在自己实例上使用的服务来为你指定协议和端口范围。

![\[IPv4 Lightsail 控制台中的防火墙\]](http://docs.aws.amazon.com/zh_cn/lightsail/latest/userguide/images/firewall-rule-example.png)


**重要**  
防火墙规则仅影响通过实例的公有 IP 地址传入的流量。它不会影响通过实例私有 IP 地址流入的流量，该地址可以来自您账户中的 Lightsail 资源，也可以来自 AWS 区域同一个对等虚拟私有云 (VPC) 中的资源。 AWS 区域

本指南接下来的几个部分将说明防火墙规则及其可配置的参数。

## 创建防火墙规则
<a name="creating-firewall-rules"></a>

您可以创建防火墙规则，以使客户端能够与您的实例或其上运行的应用程序建立连接。例如，要使所有 Web 浏览器都能连接到您的实例上的 WordPress 应用程序，您需要配置一条防火墙规则，允许从任意 IP 地址通过端口 80 使用传输控制协议 (TCP)。如果您的实例的防火墙上已经配置了此规则，则可以将其删除以阻止 Web 浏览器连接到您的实例上的 WordPress 应用程序。

**重要**  
您可以使用 Lightsail 控制台一次最多添加 30 个源 IP 地址。要一次最多添加 60 个 IP 地址，请使用 Lightsail API、 AWS Command Line Interface (AWS CLI) 或 SD AWS K。对于 IPv4 规则和 IPv6 规则，此配额是单独实施的。例如，防火墙可以有 60 条入站 IPv4 流量规则和 60 条入站 IPv6 流量规则。建议您将单个 IP 地址整合到 CIDR 范围内。有关更多信息，请参阅本指南的[指定源 IP 地址](#specifying-source-ip-addresses)部分。

您还可以允许 SSH 客户端连接到实例并在服务器上执行管理任务，方法是配置一个防火墙规则，该规则仅从需要建立连接的计算机的 IP 地址，通过端口 22 上启用 TCP。在这一使用情形中，您应该不希望任意 IP 地址都与您的实例建立 SSH 连接；因为这可能会给实例带来安全风险。

**注意**  
此部分中描述的防火墙规则示例可能默认存在于您实例的防火墙中。有关更多信息，请参阅本指南后面的[默认防火墙规则](#default-lightsail-firewall-rules)。

如果特定端口有多条规则，我们会使用最宽松的规则。例如，如果添加一个允许从 IP 地址 192.0.2.1 访问 TCP 端口 22 (SSH) 的规则。然后，添加另一个允许每个人访问 TCP 端口 22 的规则。结果就是每个人都能访问 TCP 端口 22。

## 指定协议
<a name="specifying-protocols"></a>

协议是在两台计算机之间传输数据的格式。Lightsail 允许您在防火墙规则中指定以下协议：
+ **传输控制协议（TCP）**主要用于建立和维持客户端与实例上运行的应用程序之间的连接，直到数据交换完成。它是一种广泛使用的协议，您可能经常在防火墙规则中指定该协议。TCP 可保证不会丢失任何已传输的数据，并且已发送的数据都将发送给预期的接收者。它最适用于需要高可靠性且传输时间相对不太重要的网络应用程序，例如 Web浏览、金融交易和文本消息传递。这些使用情形中，如果部分数据丢失，将造成重大价值损失。
+ **用户数据报协议 (UDP)** 主要用于在客户端和实例上运行的应用程序之间建立低延迟的容损连接。它最适用于所感知的延迟至关重要的网络应用程序，例如游戏、语音和视频通信。这些使用情形可承受某种程度的数据丢失，而不会对所感知的质量产生负面影响。
+ **Internet 控制消息协议（ICMP）**主要用于诊断网络通信问题，例如，确定数据是否及时到达预期目的地。它最适用于 Ping 实用程序，可以使用该实用程序来测试本地计算机和实例之间的连接速度。它会报告数据到达实例并返回到本地计算机所花费的时间。
**注意**  
当您使用 Lightsail 控制台向实例的 IPv6 防火墙添加 ICMP 规则时，该规则会自动配置为使用。 ICMPv6有关更多信息，请参阅*维基百科 IPv6*上的[互联网控制消息协议](https://en.wikipedia.org/wiki/Internet_Control_Message_Protocol_for_IPv6)。
+ **所有**用于允许所有协议流量流入实例。当不确定要指定哪个协议时，请指定此协议。这包括所有 Internet 协议；而不仅仅是上面指定的协议。有关更多信息，请参阅*互联网编号分配机构网站*上的[协议编号](https://www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml)。

## 指定端口
<a name="specifying-ports"></a>

与计算机上的物理端口（允许计算机与键盘和鼠标等外围设备进行通信）类似，网络端口将充当实例的 Internet 通信终端节点。当计算机寻求与您的实例连接时，它会公开一个端口来建立通信。

可在防火墙规则中指定的端口范围是 0 到 65535。在创建防火墙规则以允许客户端与实例建立连接时，可以指定将使用的协议（本指南前面已介绍）以及可用于建立连接的端口号。还可以指定允许使用协议和端口建立连接的 IP 地址；本指南的下一部分将介绍这一点。

以下是一些常用端口以及使用它们的服务：
+ 通过文件传输协议 (FTP) 进行的数据传输操作使用端口 20。
+ FTP 命令控制使用端口 21。
+ Secure Shell（SSH）使用端口 22。
+ Telnet 远程登录服务，以及未加密的文本消息使用端口 23。
+ 简单邮件传输协议 (SMTP) 电子邮件路由使用端口 25。
**重要**  
要在实例上启用 SMTP，您还必须为实例配置反向 DNS。否则，您的电子邮件可能会受到 TCP 端口 25 的限制。有关更多信息，请参阅[在 Amazon Lightsail 实例上为电子邮件服务器配置反向 DNS](amazon-lightsail-configuring-reverse-dns.md)。
+ 域名系统 (DNS) 服务使用端口 53。
+ Web 浏览器用来连接到网站的超文本传输协议 (HTTP) 使用端口 80。
+ 电子邮件客户端用来从服务器检索电子邮件的邮局协议 (POP3) 使用端口 110。
+ 网络新闻传输协议 (NNTP) 使用端口 119。
+ 网络时间协议 (NTP) 使用端口 123。
+ 用于管理数字邮件的 Internet 消息访问协议 (IMAP) 使用端口 143。
+ 简单网络管理协议 (SNMP) 使用端口 161。
+ 网络浏览器 TLS/SSL 用来建立与网站的加密连接的 HTTP 安全 (HTTPS) HTTP over 使用端口 443。

有关更多信息，请参阅*互联网编号分配机构网站*上的[服务名称和传输协议端口号注册表](https://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xhtml)。

## 指定应用层协议类型
<a name="specifying-application-layer-protocol-types"></a>

可以在创建防火墙规则时指定应用层协议类型，它是一种预设，用于根据要在实例上启用的服务为您指定规则的协议和端口范围。这样一来，您便无需搜索要用于像 SSH、RDP、HTTP 这样的服务以及其他服务的通用协议和端口。您只需选择这些应用层协议类型即可为您指定协议和端口。如果您想指定自己的协议和端口，则可以选择**自定义规则**应用层协议类型，这样您便能控制这些参数。

**注意**  
您只能使用 Lightsail 控制台来指定应用层协议类型。您无法使用 Lightsail API、 AWS Command Line Interface (AWS CLI) 或指定应用层协议类型。 SDKs

Lightsail 控制台中提供了以下应用层协议类型：
+ **自定义** - 选择此选项可指定您自己的协议和端口。
+ **所有协议** - 选择此选项可指定所有协议，并指定您自己的端口。
+ **所有 TCP** - 选择此选项可使用 TCP 协议，但不指定要开放哪个端口。这将在所有端口 (0-65535) 上启用 TCP。
+ **所有 UDP** - 选择此选项可使用 UDP 协议，但您不指定要开放哪个端口。这将在所有端口 (0-65535) 上启用 UDP。
+ **所有 ICMP** - 选择此选项可指定所有 ICMP 类型和代码。
+ **自定义 ICMP** - 选择此选项可使用 ICMP 协议并定义 ICMP 类型和代码。有关 ICMP 类型和代码的更多信息，请参阅 *Wikipedia* 上的[控制消息](https://en.wikipedia.org/wiki/Internet_Control_Message_Protocol#Control_messages)。
+ **DNS** - 如果要在实例上启用 DNS，请选择此选项。这将在端口 53 上启用 TCP 和 UDP。
+ **HTTP** - 如果要使 Web 浏览器能够连接到实例上托管的网站，请选择此选项。这将在端口 80 上启用 TCP。
+ **HTTPS** - 如果您要使 Web 浏览器能够与实例上托管的网站建立加密连接，请选择此选项。这将在端口 443 上启用 TCP。
+ **MySQL/aurora** - 选择此选项可使客户端连接到实例上托管的 MySQL 或 Aurora 数据库。这将在端口 3306 上启用 TCP。
+ **Oracle-RDS** - 选择此选项可使客户端连接到实例上托管的 Oracle 或 RDS 数据库。这将在端口 1521 上启用 TCP。
+ **Ping (ICMP)** - 选择此选项可使您的实例响应使用 Ping 实用程序发出的请求。在 IPv4 防火墙上，这将启用 ICMP 类型 8（回声）和代码 -1（所有代码）。在 IPv6 防火墙上，这将启用 ICMP 类型 129（回声回复）和代码 0。
+ **RDP** - 选择此选项可使 RDP 客户端连接到您的实例。这将在端口 3389 上启用 TCP。
+ **SSH** - 选择此选项可使 SSH 客户端连接到您的实例。这将在端口 22 上启用 TCP。

## 指定源 IP 地址
<a name="specifying-source-ip-addresses"></a>

默认情况下，防火墙规则允许所有 IP 地址通过指定的协议和端口连接到实例。这最适用于像通过 HTTP 和 HTTPS 传输的 Web 浏览器流量等情形。但是，这会给 SSH 和 RDP 等流量带来安全风险，因为您不希望允许所有 IP 地址使用这些应用程序连接到您的实例。因此，您可以选择将防火墙规则限制为 IPv4 或 IPv6地址或 IP 地址范围。
+ **对于 IPv4 防火墙**-您可以指定单个 IPv4地址（例如，203.0.113.1）或地址范围。 IPv4 在 Lightsail 控制台中，可以使用破折号（例如 192.0.2.0-192.0.2.255）或 CIDR 块表示法（例如 192.0.2.0/24）来指定范围。有关 CIDR 块表示法的更多信息，请参阅 *Wikipedia* 上的[无类域间路由](https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)。
+ **对于 IPv6 防火墙**-您可以指定单个 IPv6地址（例如，2001:0 db 8:85 a 3:0000:00:8 a2e: 0370:7334）或地址范围。 IPv6在 Lightsail 控制台中，只能使用 CIDR 区块表示法来指定 IPv6 范围（例如，2001:db8:: /32）。*有关 IPv6 CIDR 区块表示法的更多信息，请参阅维基百科上的 [IPv6CIDR 块](https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing#IPv6_CIDR_blocks)。*

## Lightsail 的默认防火墙规则
<a name="default-lightsail-firewall-rules"></a>

创建新实例时，其 IPv4 和 IPv6 防火墙会预先配置以下一组默认规则，允许对您的实例进行基本访问。默认规则因您创建的实例的类型而异。这些规则将以应用程序、协议、端口和源 IP 地址的方式列出（例如，应用程序 - 协议 - 端口 - 源 IP 地址）。

**AlmaLinux、Amazon Linux 2、Amazon Linux 2023、CentOS、Debian、FreeBSD、openSUSE 和 Ubuntu（基础操作系统）**  
SSH - TCP - 22 - 所有 IP 地址  
HTTP - TCP - 80 - 所有 IP 地址

**WordPress，幽灵，Joomla！ PrestaShop、和 Drupal（内容管理系统应用程序）**  
SSH - TCP - 22 - 所有 IP 地址  
HTTP - TCP - 80 - 所有 IP 地址  
HTTPS - TCP - 443 - 所有 IP 地址

**cPanel 和 WHM（CMS 应用程序）**  
SSH - TCP - 22 - 所有 IP 地址  
DNS (UDP) - UDP - 53 - 所有 IP 地址  
DNS (TCP) - TCP - 53 - 所有 IP 地址  
HTTP - TCP - 80 - 所有 IP 地址  
HTTPS - TCP - 443 - 所有 IP 地址  
自定义 - TCP - 2078 - 所有 IP 地址  
自定义 - TCP - 2083 - 所有 IP 地址  
自定义 - TCP - 2087 - 所有 IP 地址  
自定义 - TCP - 2089 - 所有 IP 地址

**LAMP、Django、Node.js、MEAN GitLab 和 Nginx（开发堆栈）**  
SSH - TCP - 22 - 所有 IP 地址  
HTTP - TCP - 80 - 所有 IP 地址  
HTTPS - TCP - 443 - 所有 IP 地址

**Magento（电子商务应用程序）**  
SSH - TCP - 22 - 所有 IP 地址  
HTTP - TCP - 80 - 所有 IP 地址  
HTTPS - TCP - 443 - 所有 IP 地址

**Redmine（项目管理应用程序）**  
SSH - TCP - 22 - 所有 IP 地址  
HTTP - TCP - 80 - 所有 IP 地址  
HTTPS - TCP - 443 - 所有 IP 地址

**Plesk（托管堆栈）**  
SSH - TCP - 22 - 所有 IP 地址  
HTTP - TCP - 80 - 所有 IP 地址  
HTTPS - TCP - 443 - 所有 IP 地址  
自定义 - TCP - 53 - 所有 IP 地址  
自定义 - UDP - 53 - 所有 IP 地址  
自定义 - TCP - 8443 - 所有 IP 地址  
自定义 - TCP - 8447 - 所有 IP 地址

**Windows Server 2022、Windows Server 2019 和 Windows Server 2016**  
SSH - TCP - 22 - 所有 IP 地址  
HTTP - TCP - 80 - 所有 IP 地址  
RDP - TCP - 3389 - 所有 IP 地址

**SQL Server Express 2022、SQL Server Express 2019 和 SQL Server Express 2016**  
SSH - TCP - 22 - 所有 IP 地址  
HTTP - TCP - 80 - 所有 IP 地址  
RDP - TCP - 3389 - 所有 IP 地址

# 向 Lightsail 实例添加防火墙规则
<a name="amazon-lightsail-editing-firewall-rules"></a>

您可以在 Amazon Lightsail 实例的 IPv4 和 IPv6 防火墙中添加规则，以控制允许连接到该实例的流量。添加防火墙规则时，您可以指定应用层协议类型、协议、端口以及允许连接到您的实例的一个 IPv4 或 IPv6 多个源地址。有关防火墙的更多信息，请参阅[防火墙和端口](understanding-firewall-and-port-mappings-in-amazon-lightsail.md)。

## 添加和编辑实例防火墙规则
<a name="firewall-adding-rules"></a>

完成以下步骤，在 Lightsail 控制台中添加或编辑防火墙规则。

1. 登录 [Lightsail 控制台](https://lightsail.aws.amazon.com/)。

1. 在左侧导航窗格中，选择 **Instances (实例)**。

1. 选择要为其添加或编辑防火墙规则的实例的名称。

1. 选择实例的管理页面上的 **Networking (联网)** 选项卡。

   **网络**选项卡显示您的实例的公有和私有 IP 地址，以及您的实例的已配置 IPv4 或 IPv6 防火墙。
**注意**  
只有在您为实例启用 IPv6 IPv6 防火墙后，才会显示防火墙。有关更多信息，请参阅[启用或禁用 IPv6](amazon-lightsail-enable-disable-ipv6.md)。

1. 根据规则的源 IP 是否为 IPv4 或 IPv6 地址，完成以下步骤之一：
   + 要添加 IPv4 防火墙规则，请向下滚动到页面的**IPv4防火墙**部分，然后选择**添加规则**。
   + 要添加 IPv6 防火墙规则，请向下滚动到页面的**IPv6防火墙**部分，然后选择**添加规则**。

   也可以在要编辑的防火墙的现有规则旁边，选择 **Edit (编辑)**（铅笔图标）来编辑它。

1. 在 **Application (应用程序)** 下拉菜单中选择应用层协议类型。

   在选择应用层协议类型时，系统会为您指定一组协议和端口预设。示例值包括 **Custom (自定义)**、**All TCP (所有 TCP)**、**All UDP (所有 UDP)**、**Custom ICMP (自定义 ICMP)**、**SSH** 和 **RDP**。

   您可以根据选择的应用程序层协议类型配置以下可选设置：
   + （可选）如果选择 **Custom (自定义)** 选项，则可以在 **Protocol (协议)** 下拉菜单中选择一个值。可用的协议值包括 **TCP** 和 **UDP**。

     您还可以在 **Port (端口)** 字段中输入单个端口号或端口号范围（例如 7000-8000）。
   + （可选）如果选择 **Custom ICMP (自定义 ICMP)** 选项，则可以在 **Type (类型)** 字段中指定 ICMP 类型，并在 **Code (代码)** 字段中指定 ICMP 代码。有关 ICMP 类型和代码的更多信息，请参阅 *Wikipedia* 上的[控制消息](https://en.wikipedia.org/wiki/Internet_Control_Message_Protocol#Control_messages)。
**注意**  
当您使用 Lightsail 控制台向实例的 IPv6 防火墙添加 ICMP 规则时，该规则会自动配置为使用。 ICMPv6有关更多信息，请参阅*维基百科 IPv6*上的[互联网控制消息协议](https://en.wikipedia.org/wiki/Internet_Control_Message_Protocol_for_IPv6)。
   + （可选）选择 **Restrict to IP address (限制为 IP 地址)** 可将指定协议和端口的访问限制为某个特定的 IP 地址或 IP 地址范围。将此选项保持未选中状态可为指定协议和端口允许所有 IP 地址。

     您可以输入单个 IPv4 地址（例如，`203.0.113.1`）或 IPv4 地址范围。可以使用短划线（例如，`192.0.2.0-192.0.2.255`）或 CIDR 块表示法（例如，`192.0.2.0/24`）来指定范围。有关 CIDR 块表示法的更多信息，请参阅 *Wikipedia* 上的[无类域间路由](https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing#CIDR_notation)。
   + （可选）如果您选择 **SSH** 或 **RDP** 应用层协议类型，然后选择**限制为 IP 地址**，则可以选择**允许 Lightsail 浏览器 SSH/RDP，以允许使用 Lightsail 控制台中提供的基于浏览器**的 SSH 和 RDP 客户端连接到您的实例。将此选项保持未选中状态可阻止通过这些基于浏览器的客户端进行的访问。

1. 选择 **Create (创建)** 将规则添加到防火墙。

   等待一段时间后，防火墙规则就添加好了。

# 删除防火墙规则
<a name="firewall-deleting-rules"></a>

除了添加和编辑防火墙规则外，您可能还需要删除 Amazon Lightsail 实例的现有规则。如果您不再要求允许某些入站流量进入您的实例，则可能需要移除防火墙规则。删除 IPv4 和 IPv6 防火墙规则的过程非常简单，可以直接通过 Lightsail 控制台完成。完成以下步骤可在 Lightsail 控制台中删除实例防火墙规则。

1. 登录 [Lightsail 控制台](https://lightsail.aws.amazon.com/)。

1. 在左侧导航窗格中，选择 **Instances (实例)**。

1. 选择要为其删除防火墙规则的实例的名称。

1. 选择实例的管理页面上的 **Networking (联网)** 选项卡。

1. 根据规则的源 IP 是 IPv4 还是 IPv6 地址，完成以下步骤之一：
   + 要删除 IPv4 防火墙，请向下滚动到页面的 **IPv4 Firewall (IPv4 防火墙)** 部分，并选择现有规则旁边的 **Delete (删除)**（垃圾桶图标）以将其删除。
   + 要删除 IPv6 防火墙，请向下滚动到页面的 **IPv6 Firewall (IPv6 防火墙)** 部分，并选择现有规则旁边的 **Delete (删除)**（垃圾桶图标）以将其删除。
**重要**  
防火墙规则仅影响通过实例的公有 IP 地址传入的流量。它不会影响通过实例的私有 IP 地址传入的流量，私有 IP 地址可能来自您账户中位于同一 AWS 区域 的 Lightsail 资源，或者来自同一 AWS 区域 中某个对等虚拟私有云（VPC）中的资源。例如，假设您从实例防火墙中删除了 SSH 规则（TCP 端口 22），则同一 Lightsail 账户中的其他实例，以及同一 AWS 区域 中的其他实例，可继续指定实例的私有 IP 地址以通过 SSH 连接到该实例。

   等待一段时间后，防火墙规则就删除了。

# Lightsail 实例的防火墙规则参考
<a name="amazon-lightsail-firewall-rules-reference"></a>

您可以向 Amazon Lightsail 实例的防火墙添加反映该实例角色的规则。例如，配置作为 Web 服务器的实例需要允许入站 HTTP 和 HTTPS 访问的防火墙规则。数据库实例需要允许数据库类型访问的规则，例如，对 MySQL 允许通过端口 3306 进行访问。有关防火墙的更多信息，请参阅 [Lightsail 中的实例防火墙](understanding-firewall-and-port-mappings-in-amazon-lightsail.md)。

本指南提供了各种防火墙规则示例，您可以将这些规则添加到实例防火墙以进行特定类型的访问。除非另行说明，否则这些规则将以应用程序、协议、端口和源 IP 地址的方式列出（例如，应用程序 - 协议 - 端口 - 源 IP 地址）。

**内容**
+ [Web 服务器规则](#firewall-web-server-rules)
+ [用于从计算机连接到实例的规则](#firewall-connect-to-instance)
+ [数据库服务器规则](#firewall-database-server-rules)
+ [DNS 服务器规则](#firewall-dns-server)
+ [SMTP 电子邮件](#firewall-smtp)

## Web 服务器规则
<a name="firewall-web-server-rules"></a>

以下入站规则允许 HTTP 和 HTTPS 访问。

**注意**  
某些 Lightsail 实例默认配置了以下防火墙规则。有关更多信息，请参阅[防火墙和端口](understanding-firewall-and-port-mappings-in-amazon-lightsail.md)。

**HTTP**  
HTTP - TCP - 80 - 所有 IP 地址

**HTTPS**  
HTTPS - TCP - 443 - 所有 IP 地址

## 用于从计算机连接到实例的规则
<a name="firewall-connect-to-instance"></a>

要连接到您的实例，请添加允许 SSH 访问（适用于 Linux 实例）或 RDP 访问（适用于 Windows 实例）的规则。

**注意**  
默认情况下，所有 Lightsail 实例都配置了以下任一防火墙规则。有关更多信息，请参阅[防火墙和端口](understanding-firewall-and-port-mappings-in-amazon-lightsail.md)。

**SSH**  
SSH - TCP - 22 - 计算机的公有 IP 地址或本地网络中的 IP 地址范围（采用 CIDR 块表示法）

**RDP**  
RDP - TCP - 3389 - 计算机的公有 IP 地址或本地网络中的 IP 地址范围（采用 CIDR 块表示法）

## 数据库服务器规则
<a name="firewall-database-server-rules"></a>

以下入站规则是您可以为数据库访问添加的规则示例，具体取决于您的实例上运行的数据库类型。

**SQL Server**  
自定义 - TCP - 1433 - 计算机的公有 IP 地址或本地网络中的 IP 地址范围（采用 CIDR 块表示法）

**MySQL/Aurora**  
MySQL/Aurora - TCP - 3306 - 计算机的公有 IP 地址或本地网络中的 IP 地址范围（采用 CIDR 块表示法）

**PostgreSQL**  
PostgreSQL - TCP - 5432 - 计算机的公有 IP 地址或本地网络中的 IP 地址范围（采用 CIDR 块表示法）

**Oracle-RDS**  
Oracle-RDS - TCP - 1521 - 计算机的公有 IP 地址或本地网络中的 IP 地址范围（采用 CIDR 块表示法）

**Amazon Redshift**  
自定义 - TCP - 5439 - 计算机的公有 IP 地址或本地网络中的 IP 地址范围（采用 CIDR 块表示法）

## DNS 服务器规则
<a name="firewall-dns-server"></a>

如果您已将实例设置为 DNS 服务器，则必须确保 TCP 和 UDP 流量可通过端口 53 到达您的 DNS 服务器。

**DNS (TCP)**  
DNS (TCP) - TCP - 53 - 计算机的公有 IP 地址或本地网络中的 IP 地址范围（采用 CIDR 块表示法）

**DNS (UDP)**  
DNS (UDP) - UDP - 53 - 计算机的公有 IP 地址或本地网络中的 IP 地址范围（采用 CIDR 块表示法）

## SMTP 电子邮件
<a name="firewall-smtp"></a>

要在您的实例上启用 SMTP，您必须配置以下防火墙规则。

**重要**  
配置以下规则后，您还必须为实例配置反向 DNS。否则，您的电子邮件可能会受到 TCP 端口 25 的限制。有关更多信息，请参阅[为电子邮件服务器配置反向 DNS](amazon-lightsail-configuring-reverse-dns.md)。

**SMTP**  
自定义 - TCP - 25 - 与实例进行通信的主机的 IP 地址