AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 1018621
Accepted
Philipp Claßen
Philipp Claßen
Asked: 2020-05-26 06:14:03 +0800 CST2020-05-26 06:14:03 +0800 CST 2020-05-26 06:14:03 +0800 CST

为 Ubuntu 20.04 EC2 实例打开所需的传出端口(除了 TCP 80/443)

  • 772

我正在强化在默认 Ubuntu 20.04 AMI 上运行的 EC2 实例的安全组。关闭除 TCP 80 和 TCP 443 之外的所有传出端口后,哪些系统服务会中断?(我假设应用程序所需的所有端口也都是打开的。我担心的是破坏操作系统提供的隐式服务。)

我的理解是,允许 TCP 80/443 对于基本的操作系统服务就足够了。例如,apt-get更新应该有效。还是我错过了 Ubuntu 或 AWS 一直希望开放的端口?


旁注:我想知道时间同步是如何工作的。默认情况下,我看不到默认 Ubuntu AMI 上预安装的任何 NTP 或 chrony 服务。否则,UDP 端口 123 也应该打开。我的假设是 VM 提供的(来宾)硬件时钟已经由主机(由 AWS 操作)同步。除此之外,我想不出从操作系统的角度来看需要允许的任何端口。

根据应用程序将使用的 AWS 服务,需要更多端口,例如 ElastiCache (Redis) 需要 6379。然而,我担心并非源自已部署应用程序的 API 调用。您可以假设应用程序的要求是已知的。环境(操作系统和 EC2 基础设施)的要求更加棘手。

ubuntu amazon-web-services security-groups
  • 2 2 个回答
  • 827 Views

2 个回答

  • Voted
  1. Best Answer
    Philipp Claßen
    2020-06-04T07:21:35+08:002020-06-04T07:21:35+08:00

    在 Ubuntu 20.04 中,允许传出 http 和 https 流量就足够了。但是,我遇到了 NTP 的问题。我尝试打开 UDP 端口 123 失败。我不知道为什么,但为了解决它,我最终从 AWS 切换到内部时间同步服务:

    $ cat /etc/systemd/timesyncd.conf
    [Time]
    NTP=169.254.169.123
    

    如果时钟正在同步,您应该得到以下输出:

    $ timedatectl
    ...
    System clock synchronized: yes                        
    ...
    

    如果没有,请通过以下方式检查日志:

    $ journalctl --unit=systemd-timesyncd
    

    ntp.ubuntu.com:123就我而言,即使在打开端口 UDP 123 之后(我什至也尝试打开 TCP 123),连接到 时我仍然超时。使用 AWS 服务,它在没有打开这些传出端口的情况下工作。

    • 1
  2. Chris
    2020-06-01T04:26:04+08:002020-06-01T04:26:04+08:00

    您需要为此使用 NACL,因为安全组只能处理传入流量并允许所有内容传出。您需要考虑临时端口。这意味着当您开始https://my-apt-repo.com对目标端口的请求时,由于 HTTPS,将是 443,但在您的实例上发起请求的源端口可以是从端口 ~10000 到 ~65000 的任何地方。您必须注意允许传入和传出端口,因为 NACL 是无状态的。如果您只允许在某些端口上传出而不允许传入,则响应将无法返回。

    要查看您的系统将哪些端口用作临时端口,请运行:

    sysctl net.ipv4.ip_local_port_range
    

    /etc/sysctl.conf您可以通过编辑文件来更改端口范围。如果您不想重新启动以使更改生效,请运行以下命令来获取配置:

    sysctrl -p /etc/sysctl.conf .
    

    有关更多信息,请查看这篇文章。

    • 0

相关问题

  • 无法通过 Ubuntu VPN 访问外部网络

  • ubuntu apt-get upgrade - 如何在 shell 中单击确定?

  • VirtualBox 上 Ubuntu 的访客优化技巧 [关闭]

  • 外部硬盘上的 virtualbox 虚拟硬盘驱动器(Vista 主机上的 ubuntu 客户机)

  • 如何在 Ubuntu 上挂载 LVM 分区?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve