2. RHEL安装与初始化配置
RHEL 的安装与初始化并不是“把系统装上去”这么简单。真正决定一台服务器后续是否好维护、是否合规、是否能顺利接入企业网络的,是安装阶段做出的几个关键选择:安装模式、磁盘布局、网络参数、主机名与时间源、订阅状态、软件仓库来源,以及初始安全基线。本节围绕最小化安装、网络配置、主机名与时钟、订阅注册、仓库配置、基础安全加固六个环节展开,目标是交付一台“可注册、可更新、可远程管理、时间可信、攻击面收敛”的基础系统。
最小化安装与磁盘规划
生产服务器应优先选择 Minimal Install(最小化安装)。它只安装核心运行环境,不预装图形桌面、办公套件和大量无关服务,带来的直接收益是补丁面更小、启动更快、被攻击的入口更少。安装介质建议使用 RHEL 官方 ISO,并在引导菜单中通过 Install Red Hat Enterprise Linux 进入安装器。
磁盘分区推荐使用 LVM,便于后期在线扩容。一个可参考的示例布局(以 100 GB 系统盘为例,属于教学示例,实际应按业务调整):
| 挂载点 | 建议大小 | 说明 |
|---|---|---|
| /boot | 1 GiB | 存放内核与引导文件,标准分区 |
| / | 20 GiB | 根文件系统,LVM 逻辑卷 |
| /var | 30 GiB | 日志、缓存、容器镜像等增长快 |
| /home | 10 GiB | 普通用户数据 |
| swap | 4 GiB | 内存不足时的交换空间 |
安装过程中同时设置 root 密码,并创建一个具备 sudo 权限的普通管理账号,例如 opsadmin。生产环境应避免直接用 root 登录,日常运维通过普通账号提权,便于审计。
网络配置
服务器网络建议使用静态地址,避免 DHCP 租约变化导致服务中断。RHEL 8/9 使用 NetworkManager 管理连接,配置文件位于 /etc/NetworkManager/system-connections/,也可以用 nmcli 交互式配置。以下是一个示例(网卡名 ens160,参数为教学示例):
nmcli con mod ens160 ipv4.addresses 192.168.10.20/24
nmcli con mod ens160 ipv4.gateway 192.168.10.1
nmcli con mod ens160 ipv4.dns "192.168.10.2 223.5.5.5"
nmcli con mod ens160 ipv4.method manual
nmcli con mod ens160 connection.autoconnect yes
nmcli con up ens160
配置完成后用 ip addr show ens160 确认地址生效,用 ping 192.168.10.1 验证网关可达,用 ping www.redhat.com 验证 DNS 解析与外网连通。若解析失败但 IP 可达,问题通常出在 /etc/resolv.conf 或 DNS 参数上。
主机名与时钟
主机名应遵循企业命名规范,例如 web01.prod.example.com。使用 hostnamectl set-hostname web01.prod.example.com 设置,并同步在 /etc/hosts 中写入本机解析,避免依赖外部 DNS 才能解析自身。
时间同步对日志关联、证书校验、集群仲裁至关重要。RHEL 默认使用 chrony,配置文件为 /etc/chrony.conf。将默认的 pool 2.rhel.pool.ntp.org iburst 替换为企业内网 NTP 服务器,例如:
server ntp1.example.com iburst
server ntp2.example.com iburst
systemctl enable --now chronyd
chronyc sources -v
执行 chronyc tracking 可查看偏移量,正常情况下 System time 偏移应在毫秒级。若显示 Not synchronised,需检查 UDP 123 端口是否被防火墙或上游策略阻断。
订阅注册与仓库配置
RHEL 必须完成订阅注册才能访问官方仓库获取安全更新。使用 subscription-manager 注册:
subscription-manager register --username=<账号> --auto-attach
subscription-manager status
subscription-manager repos --list-enabled
注册成功后,dnf repolist 应能看到 rhel-9-for-x86_64-baseos-rpms 和 appstream-rpms 等仓库。若企业使用 Satellite 或内网镜像,则通过 subscription-manager config --rhsm.baseurl=... 指向内部源,或直接编写 /etc/yum.repos.d/ 下的 repo 文件。仓库配置完成后执行 dnf makecache 刷新元数据,再用 dnf update -y 完成首次补丁更新。
基础安全加固
系统上线前应完成最小化的安全基线:启用 firewalld 并只放行必要端口;保持 SELinux 为 enforcing;配置 SSH 禁止 root 直接登录并限制来源网段;启用 sudo 审计。示例命令:
systemctl enable --now firewalld
firewall-cmd --permanent --add-service=ssh
firewall-cmd --reload
getenforce
sed -i 's/^#PermitRootLogin.*/PermitRootLogin no/' /etc/ssh/sshd_config
systemctl restart sshd
修改 SSH 配置后务必保留一个已登录会话,另开终端验证新连接可用,再关闭旧会话,避免把自己锁在系统外。SELinux 若被临时设为 permissive,应尽快恢复 enforcing,否则容器、Web 服务等场景会出现权限行为不一致。
完成以上六步后,可以用一组命令做整体验收:hostnamectl 确认主机名,timedatectl 确认时间同步状态为 synchronized: yes,subscription-manager status 确认订阅为 Current,dnf repolist 确认仓库可用,firewall-cmd --list-all 确认放行策略,getenforce 确认 SELinux 为 Enforcing。这些检查项共同构成一台 RHEL 服务器的基础交付标准,也是后续部署企业网络服务的前提。