2.3. 集成远程 ISC DHCP 服务器
如果您的网络中有一个 ISC DHCP 服务器,但没有在与 Satellite 服务器相同的主机上,您可以将该服务集成到 Satellite 服务器中。该集成可让您继续使用现有的 DHCP 服务器,Satellite 在置备主机期间管理 DHCP 服务器上的 IP 租期和引导配置。
通过这种集成,Satellite 使用对象管理应用程序编程接口(OMAPI)密钥来更新租期和网络文件系统(NFS)协议来访问 ISC DHCP 服务器的配置文件和租期数据库。
2.3.1. 在 ISC DHCP 中启用 OMAPI 身份验证 复制链接链接已复制到粘贴板!
现有远程 ISC DHCP 服务的集成需要您在 DHCP 服务中启用对象管理应用程序编程接口(OMAPI)。Satellite 使用 OMAPI 远程管理 DHCP 服务器对象。
先决条件
- ISC DHCP 服务已部署且可以正常工作。
- DHCP 服务器上的防火墙允许访问 DHCP 服务(端口 67/UDP)。
流程
创建安全令牌:
tsig-keygen -a hmac-md5 omapi_key
# tsig-keygen -a hmac-md5 omapi_key
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 请注意,Satellite 仅支持 OMAPI 验证的
hmac-md5
算法。输出示例:
key "omapi_key" { algorithm hmac-md5; secret "4z1jwYO0RGUTJbWDepFBdg=="; };
key "omapi_key" { algorithm hmac-md5; secret "4z1jwYO0RGUTJbWDepFBdg=="; };
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 编辑
/etc/dhcp/dhcpd.conf
文件,并附加以下设置:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 示例中指定的设置包括:
key omapi_key
-
定义密钥、算法和加密密码。在这个指令中使用
tsig-keygen
命令的输出。 OMAPI-port 7911;
- 在 ISC DHCP 中启用 OMAPI 协议,并定义协议的端口。
omapi-key omapi_key
-
定义 OMAPI 接口使用的密钥的名称。该名称必须与您在
tsig-keygen
命令中指定的名称匹配。
重启
dhcpd
服务:systemctl restart dhcpd
# systemctl restart dhcpd
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在
firewalld
服务中打开 OMAPI 端口:firewall-cmd --add-port=7911/tcp
# firewall-cmd --add-port=7911/tcp
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 使更改具有持久性:
firewall-cmd --runtime-to-permanent
# firewall-cmd --runtime-to-permanent
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.3.2. 通过 NFS 共享 DHCP 配置文件和租期数据库 复制链接链接已复制到粘贴板!
现有远程 ISC DHCP 服务的集成需要您通过网络共享服务的配置文件和租期数据库。例如,您可以使用 NFS 服务。然后,Satellite 使用 NFS 访问配置设置,如子网定义。对租期数据库的读取访问权限可确保有效访问所有租期信息,这些信息无法通过 ISC DHCP 对象管理应用程序编程接口(OMAPI)提供。
先决条件
- ISC DHCP 服务已部署且可以正常工作。
流程
在 Satellite 服务器上,确定
foreman-proxy
用户的 UID 和主 GID:id -u foreman-proxy id -g foreman-proxy
# id -u foreman-proxy # id -g foreman-proxy
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 下一步需要这些 ID。
在 DHCP 服务器上,通过 NFS 共享 DHCP 服务和租期数据库:
使用与 Satellite 服务器上相同的组 ID 创建
foreman-proxy
组:groupadd -g My_User_ID foreman-proxy
# groupadd -g My_User_ID foreman-proxy
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 使用与 Satellite 服务器上相同的用户 ID 和主组 ID 创建
foreman-proxy
用户:useradd -u My_User_ID -g My_Group_ID -s /sbin/nologin foreman-proxy
# useradd -u My_User_ID -g My_Group_ID -s /sbin/nologin foreman-proxy
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 确保
foreman-proxy
组的成员可以访问 DHCP 服务的配置文件:chgrp -R foreman-proxy /etc/dhcp/ chmod g+rx /etc/dhcp/ chmod g+r /etc/dhcp/dhcpd.conf
# chgrp -R foreman-proxy /etc/dhcp/ # chmod g+rx /etc/dhcp/ # chmod g+r /etc/dhcp/dhcpd.conf
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 安装
nfs-server
软件包:dnf install nfs-utils
# dnf install nfs-utils
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 编辑
/etc/exports
文件,并为/etc/dhcp/
和/var/lib/dhcpd/
目录附加共享条目:/etc/dhcp satellite.example.com(ro) /var/lib/dhcpd satellite.example.com(ro)
/etc/dhcp satellite.example.com(ro) /var/lib/dhcpd satellite.example.com(ro)
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以只读模式共享目录,仅与 Satellite 服务器或胶囊服务器共享。
启用并启动 NFS 服务器服务:
systemctl enable --now nfs-server
# systemctl enable --now nfs-server
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在
firewalld
服务中打开 NFSv4 端口:firewall-cmd --add-service=nfs
# firewall-cmd --add-service=nfs
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 使更改具有持久性:
firewall-cmd --runtime-to-permanent
# firewall-cmd --runtime-to-permanent
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
后续步骤
- 默认情况下,NFS 协议是未加密的。如果您需要加密连接,请在完成此步骤后通过 TLS 或 Kerberos 身份验证配置 NFS。如需更多信息,请参阅 Red Hat Enterprise Linux 9 配置和使用网络文件服务中的 使用 Kerberos 配置 NFS 服务器并使用 Kerberos 设置 NFS 服务器。https://docs.redhat.com/en/documentation/red_hat_enterprise_linux/9/html/configuring_and_using_network_file_services/deploying-an-nfs-server_configuring-and-using-network-file-services#configuring-an-nfs-server-with-tls-support_deploying-an-nfs-server
2.3.3. 配置 Satellite 服务器或 Capsule 服务器以用于 ISC DHCP 复制链接链接已复制到粘贴板!
准备 DHCP 服务器后,将 ISC DHCP 服务器集成到 Satellite 服务器或 Capsule 服务器中。
先决条件
- 您在 ISC DHCP 中启用了对象管理应用程序编程接口(OMAPI)身份验证。如需更多信息,请参阅 第 2.3.1 节 “在 ISC DHCP 中启用 OMAPI 身份验证”。
- 您可以通过 NFS 共享 DHCP 配置和租期数据库。如需更多信息,请参阅 第 2.3.2 节 “通过 NFS 共享 DHCP 配置文件和租期数据库”。
流程
安装所需的软件包:
satellite-maintain packages install nfs-utils
# satellite-maintain packages install nfs-utils
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 创建稍后挂载 NFS 共享的目录:
mkdir -p \ /srv/nfs/etc/dhcp \ /srv/nfs/var/lib/dhcpd
# mkdir -p \ /srv/nfs/etc/dhcp \ /srv/nfs/var/lib/dhcpd
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 编辑
/etc/fstab
文件,并为 NFS 共享添加条目,以便在系统引导时自动挂载它们:dhcp_server_fqdn:/etc/dhcp /srv/nfs/etc/dhcp nfs ro,auto,context="system_u:object_r:dhcp_etc_t:s0" 0 0 dhcp_server_fqdn:/var/lib/dhcpd /srv/nfs/var/lib/dhcpd nfs ro,auto,context="system_u:object_r:dhcpd_state_t:s0" 0 0
dhcp_server_fqdn:/etc/dhcp /srv/nfs/etc/dhcp nfs ro,auto,context="system_u:object_r:dhcp_etc_t:s0" 0 0 dhcp_server_fqdn:/var/lib/dhcpd /srv/nfs/var/lib/dhcpd nfs ro,auto,context="system_u:object_r:dhcpd_state_t:s0" 0 0
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 重新载入
systemd
,以便该服务使用更新的/etc/fstab
文件:systemctl daemon-reload
# systemctl daemon-reload
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 挂载 NFS 共享:
mount /srv/nfs/etc/dhcp/ mount /srv/nfs/var/lib/dhcpd/
# mount /srv/nfs/etc/dhcp/ # mount /srv/nfs/var/lib/dhcpd/
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 验证
foreman-proxy
用户可以访问 NFS 服务器上的文件。例如:显示
/srv/nfs/etc/dhcp/dhcpd.conf
文件的前 5 行:su - foreman-proxy -c 'head -5 /srv/nfs/etc/dhcp/dhcpd.conf'
$ su - foreman-proxy -c 'head -5 /srv/nfs/etc/dhcp/dhcpd.conf'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 显示
/srv/nfs/var/lib/dhcpd/dhcpd.leases
文件的前 5 行:su - foreman-proxy -c 'head -5 /srv/nfs/var/lib/dhcpd/dhcpd.leases'
$ su - foreman-proxy -c 'head -5 /srv/nfs/var/lib/dhcpd/dhcpd.leases'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
将 Satellite 服务器或 Capsule 服务器配置为使用 DHCP 服务器:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 对于每个受影响的胶囊,在卫星 Web UI 中更新该胶囊的配置。如需更多信息,请参阅 第 2.5 节 “将 DHCP 服务与子网关联”。