网络要求
本节详细说明 SUSE Multi-Linux Manager 的网络和端口要求。
|
容器化安装将启用 IP 转发。 这意味着 SUSE Multi-Linux Manager 服务器和代理将作为路由器工作。 此行为由 podman 直接完成。 如果禁用 IP 转发,Podman 容器将无法运行。 您可以考虑根据您的策略实现 SUSE Multi-Linux Manager 环境的网络隔离。 |
1. 完全限定的域名 (FQDN)
SUSE Multi-Linux Manager 服务器必须正确解析其 FQDN。 如果无法解析 FQDN,可能会导致多个不同组件出现严重问题。
2. 主机名和 IP 地址
为了确保 SUSE Multi-Linux Manager 域名可以被其客户端解析,服务器和客户端机器必须连接到一个正常工作的 DNS 服务器。 您还需要确保反向查找已正确配置。
有关设置 DNS 服务器的更多信息,请参见 https://documentation.suse.com/sles/15-SP7/html/SLES-all/cha-dns.html。
3. 重新启用路由器通告
当使用 mgradm install podman 或 mgrpxy install podman 安装 SUSE Multi-Linux Manager 时,它会设置 Podman,从而启用 IPv4 和 IPv6 转发。
这对于容器外部的通信是必要的。
但是,如果您的系统之前将 /proc/sys/net/ipv6/conf/eth0/accept_ra 设置为 1,它将停止使用路由器通告。
因此,路由不再通过路由器广告获取,默认的 IPv6 路由缺失。
要恢复 IPv6 路由的正常功能,请执行以下步骤:
-
服务器和代理基于 15 SP7(无 Network Manager)
-
服务器和代理基于 SL Micro 6.1(有 Network Manager)
在
/etc/sysctl.d中创建一个文件,例如99-ipv6-ras.conf。向文件中添加以下参数和值:
net.ipv6.conf.eth0.accept_ra = 2重引导。
|
当没有 wicked 时,网络管理无法正常工作。 |
使用
nmcli connection show列出您的连接。创建或修改文件
/etc/NetworkManager/system-connections/<name of connection>.nmconnection以添加此设置:[ipv6] addr-gen-mode=eui64重引导。
输出应如下所示:
[connection] id=Wired connection 1 type=ethernet interface-name=eth0 [ethernet] [ipv4] dns-priority=20 method=auto [ipv6] addr-gen-mode=eui64 method=auto
4. 在 HTTP 或 HTTPS OSI 七层代理后部署
某些环境通过 HTTP 或 HTTPS 代理强制进行互联网访问。 这可能是一个 Squid 服务器或类似的。 要在这种配置中允许 SUSE Multi-Linux Manager 服务器访问互联网,您需要配置以下内容。
-
要进行操作系统互联网访问配置,请根据需求修改
/etc/sysconfig/proxy:PROXY_ENABLED="no" HTTP_PROXY="" HTTPS_PROXY="" NO_PROXY="localhost, 127.0.0.1" -
要进行
Podman容器互联网访问配置,请根据需求修改/etc/systemd/system/uyuni-server.service.d/custom.conf。 例如,进行如下设置:[Service] Environment=TZ=Europe/Berlin Environment="PODMAN_EXTRA_ARGS=" Environment="https_proxy=user:password@http://192.168.10.1:3128" -
要进行 Java 应用程序的互联网访问配置,请根据需求修改
/etc/rhn/rhn.conf。 在容器主机上,执行mgrctl term以在服务器容器内打开命令行:-
根据需要修改
/etc/rhn/rhn.conf。 例如,进行如下设置:# Use proxy FQDN, or FQDN:port server.satellite.http_proxy = server.satellite.http_proxy_username = server.satellite.http_proxy_password = # no_proxy is a comma seperated list server.satellite.no_proxy =
-
-
在容器主机上,重启服务器以强制应用新配置:
systemctl restart uyuni-server.service
6. 所需的网络端口
本节提供了 SUSE Multi-Linux Manager 中各种通信使用的端口的综合列表。
您不需要打开所有这些端口。 只有在使用需要它们的服务时,某些端口才需要打开。
6.2. 外部入站服务器端口
必须打开外部入站端口,以在 SUSE Multi-Linux Manager 服务器上配置防火墙,以保护服务器免受未经授权的访问。
打开这些端口将允许外部网络流量访问 SUSE Multi-Linux Manager 服务器。
| 端口号 | 协议 | 使用对象 | 备注 |
|---|---|---|---|
67 |
TCP/UDP |
DHCP |
仅在客户端请求服务器的 IP 地址时需要。 |
69 |
TCP/UDP |
TFTP |
如果服务器用作 PXE 服务器以进行自动客户端安装,则需要。 |
80 |
TCP |
HTTP |
在某些引导储存库和自动安装过程中暂时需要。 |
443 |
TCP |
HTTPS |
处理 Web UI、客户端、服务器和代理 ( |
4505 |
TCP |
Salt |
需要接受来自客户端的通信请求。 客户端发起连接,并保持打开状态以接收来自 Salt 主控的命令。 |
4506 |
TCP |
Salt |
需要接受来自客户端的通信请求。 客户端发起连接,并保持打开状态以将结果报告回 Salt 主控。 |
5432 |
TCP |
PostgreSQL |
需要访问报告数据库。 |
5556 |
TCP |
Prometheus |
需要抓取 Taskomatic JMX 指标。 |
5557 |
TCP |
Prometheus |
需要抓取 Tomcat JMX 指标。 |
9100 |
TCP |
Prometheus |
需要抓取 Node exporter 指标。 |
9187 |
TCP |
Prometheus |
需要抓取 PostgreSQL 指标。 |
9800 |
TCP |
Prometheus |
需要抓取 Taskomatic 指标。 |
6.3. 外部出站服务器端口
必须打开外部出站端口,以在 SUSE Multi-Linux Manager 服务器上配置防火墙,以限制服务器可以访问的内容。
打开这些端口将允许来自 SUSE Multi-Linux Manager 服务器的网络流量与外部服务通信。
| 端口号 | 协议 | 使用对象 | 备注 |
|---|---|---|---|
80 |
TCP |
HTTP |
所需的 SUSE Customer Center。 端口 80 不用于提供 Web UI。 |
443 |
TCP |
HTTPS |
所需的 SUSE Customer Center。 |
6.4. 内部服务器端口
内部端口由 SUSE Multi-Linux Manager 服务器内部使用。
内部端口仅可从 localhost 访问。
大多数情况下无需调整这些端口。
| 端口号 | 备注 |
|---|---|
2828 |
卫星搜索 API,由 Tomcat 和 Taskomatic 中的 RHN 应用程序使用。 |
2829 |
Taskomatic API,由 Tomcat 中的 RHN 应用程序使用。 |
8005 |
Tomcat 关闭端口。 |
8009 |
Tomcat 到 Apache HTTPD (AJP)。 |
8080 |
Tomcat 到 Apache HTTPD (HTTP)。 |
9080 |
Salt-API,由 Tomcat 和 Taskomatic 中的 RHN 应用程序使用。 |
32000 |
与运行 Taskomatic 和卫星搜索的 Java 虚拟机 (JVM) 的 TCP 连接端口。 |
端口 32768 及以上用作临时端口。 这些端口通常用于接收 TCP 连接。 当收到 TCP 连接请求时,发送方将选择这些临时端口号中的一个以匹配目标端口。
可使用以下命令来确定哪些端口是临时端口:
cat /proc/sys/net/ipv4/ip_local_port_range
6.5. 外部入站代理端口
必须打开外部入站端口,以在 SUSE Multi-Linux Manager 代理 上配置防火墙以保护代理免受未经授权的访问。
打开这些端口将允许外部网络流量访问 SUSE Multi-Linux Manager 代理。
| 端口号 | 协议 | 使用对象 | 备注 |
|---|---|---|---|
22 |
仅在用户希望通过 Salt SSH 管理代理主机时需要。 |
||
67 |
TCP/UDP |
DHCP |
仅在客户端请求服务器的 IP 地址时需要。 |
69 |
TCP/UDP |
TFTP |
如果服务器用作 PXE 服务器以进行自动客户端安装,则需要。 |
443 |
TCP |
HTTPS |
Web UI、客户端、服务器和代理 ( |
4505 |
TCP |
Salt |
需要接受来自客户端的通信请求。 客户端发起连接,并保持打开状态以接收来自 Salt 主控的命令。 |
4506 |
TCP |
Salt |
需要接受来自客户端的通信请求。 客户端发起连接,并保持打开状态以将结果报告回 Salt 主控。 |
8022 |
ssh-push 和 ssh-push-tunnel 联系方式所需。连接到代理的客户端在服务器上发起签到并跳转到客户端。 |
6.6. 外部出站代理端口
必须打开外部出站端口,以在 SUSE Multi-Linux Manager 代理 上配置防火墙用于限制代理可访问的内容。
打开这些端口将允许来自 SUSE Multi-Linux Manager 代理 的网络流量与外部服务通信。
| 端口号 | 协议 | 使用对象 | 备注 |
|---|---|---|---|
80 |
用于访问服务器。 |
||
443 |
TCP |
HTTPS |
所需的 SUSE Customer Center。 |
4505 |
TCP |
Salt |
需要直接或通过代理连接到 Salt 主控。 |
4506 |
TCP |
Salt |
需要直接或通过代理连接到 Salt 主控。 |
6.7. 外部客户端端口
必须打开外部客户端端口,以在 SUSE Multi-Linux Manager 服务器及其客户端之间配置防火墙。
大多数情况下无需调整这些端口。
| 端口号 | 方向 | 协议 | 备注 |
|---|---|---|---|
22 |
入站 |
SSH |
ssh-push 和 ssh-push-tunnel 联系方式所需。 |
80 |
出站 |
用于访问服务器或代理。 |
|
443 |
出站 |
用于访问服务器或代理。 |
|
4505 |
出站 |
TCP |
需要直接或通过代理连接到 Salt 主控。 |
4506 |
出站 |
TCP |
需要直接或通过代理连接到 Salt 主控。 |
9090 |
出站 |
TCP |
Prometheus 用户界面所需。 |
9093 |
出站 |
TCP |
Prometheus 警报管理器所需。 |
9100 |
出站 |
TCP |
Prometheus 节点导出器所需。 |
9117 |
出站 |
TCP |
Prometheus Apache 导出器所需。 |
9187 |
出站 |
TCP |
Prometheus PostgreSQL 所需。 |
6.8. 所需的 URL
有一些 URL SUSE Multi-Linux Manager 必须能够访问,以注册客户端并执行更新。 在大多数情况下,允许访问这些 URL 就足够了:
-
scc.suse.com -
updates.suse.com -
installer-updates.suse.com -
registry.suse.com -
registry-storage.suse.com -
opensuse.org
此外,您可能需要访问以下非 SUSE 产品的 URL:
-
download.nvidia.com -
public.dhe.ibm.com -
nu.novell.com
您可以在以下文章中找到有关将指定 URL 及其关联 IP 地址列入白名单的更多详细信息: 在防火墙和/或代理后访问 SUSE Customer Center 和 SUSE 仓库。
如果您使用非 SUSE 客户端,您可能还需要允许访问提供特定软件包的其他服务器。 例如,如果您有 Ubuntu 客户端,您将需要能够访问 Ubuntu 服务器。
有关非 SUSE 客户端故障排除防火墙访问的更多信息,请参见 防火墙查错。