在部署应用前,对一台新的 欧拉操作系统(openEuler) 服务器进行安全加固和基础配置是非常关键的步骤。以下是一套推荐的操作清单,涵盖系统初始化、安全加固及运维准备等方面:
一、基础系统配置
1. 系统更新
确保系统为最新状态,修复已知漏洞:
sudo dnf update -y
2. 设置主机名与网络
-
设置有意义的主机名:
sudo hostnamectl set-hostname your-server-name
-
配置静态 IP(如需要),修改
/etc/sysconfig/network-scripts/ifcfg-xxx 或使用 nmcli (若使用 NetworkManager)。
3. 配置时区与时间同步
sudo timedatectl set-timezone Asia/Shanghai
sudo dnf install chrony -y
sudo systemctl enable--now chronyd
二、用户与权限管理
4. 禁用或删除不必要的账户
-
删除或锁定无用账户(如 games , ftp 等)。
-
禁用 root 远程登录(见 SSH 配置)。
5. 创建普通运维用户 + sudo 权限
useradd -m -s /bin/bash opsuser
passwd opsuser# 授予 sudo 权限
echo "opsuser ALL=(ALL) NOPASSWD: ALL">> /etc/sudoers
6. 配置强密码策略(可选但推荐)
安装并配置 PAM 密码复杂度:
sudo dnf install pam_pwquality -y
编辑
/etc/security/pwquality.conf ,例如:
minlen = 12
minclass = 3
dcredit = -1 # 至少一个数字
ucredit = -1 # 至少一个大写
lcredit = -1 # 至少一个小写
ocredit = -1 # 至少一个特殊字符
三、SSH 安全加固
7. 修改 SSH 配置(/etc/ssh/sshd_config)
PermitRootLoginno
PasswordAuthentication no# 强烈建议使用密钥认证
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
AllowUsers opsuser # 仅允许特定用户
Protocol 2
ClientAliveInterval 300
ClientAliveCountMax 2
MaxAuthTries 3
重启 SSH 服务:
sudo systemctl restart sshd
注意:务必先测试密钥登录成功后再禁用密码!
四、防火墙与网络防护
8. 启用并配置 firewalld
sudo systemctl enable --now firewalld
# 仅开放必要端口,例如 22(SSH)、80、443 等
sudo firewall-cmd --permanent --add-service=ssh
sudo firewall-cmd --permanent --add-port=8080/tcp
sudo firewall-cmd --reload
9. 禁用 IPv6(如不需要)
编辑 /etc/default/grub ,添加 ipv6.disable=1 到 GRUB_CMDLINE_LINUX ,然后:
sudo grub2-mkconfig -o /boot/grub2/grub.cfg
五、日志与审计
10. 启用 auditd(系统审计)
sudo dnf installaudit -y
sudo systemctl enable--now auditd
可配置关键文件监控(如 /etc/passwd , /etc/shadow , /etc/ssh/sshd_config )。
11. 配置 rsyslog 远程日志(可选)
将日志发送到集中日志服务器,防止本地篡改 。
六、内核与系统安全参数
12. 调整 sysctl 安全参数
编辑 /etc/sysctl.conf 或新建
/etc/sysctl.d/99-security.conf :
# 防止 SYN flood
net.ipv4.tcp_syncookies = 1
# 禁用 ICMP 重定向
net.ipv4.conf.all.accept_redirects = 0
net.ipv4.conf.default.accept_redirects = 0
# 启用反向路径过滤
net.ipv4.conf.all.rp_filter = 1
# 禁用源路由
net.ipv4.conf.all.accept_source_route = 0
生效:
sudo sysctl -p /etc/sysctl.d/99-security.conf
七、文件系统与服务最小化
13. 禁用不必要的服务
systemctl list-unit-files --type=service | grep enabled
# 禁用如 avahi-daemon, cups, bluetooth 等非必要服务
sudo systemctl disable --now avahi-daemon
14. 设置关键文件权限
chmod 600 /etc/shadow
chmod 644 /etc/passwd
chmod 600 /etc/ssh/sshd_config
chown root:root /etc/shadow
15. 挂载点安全(如 /tmp, /var/tmp)
在 /etc/fstab 中为临时目录添加 noexec,nosuid,nodev :
tmpfs /tmp tmpfs defaults,noexec,nosuid,nodev 00
八、安装安全工具(可选但推荐)
-
fail2ban :防暴力破解
sudo dnf install fail2ban -y
sudo systemctl enable--now fail2ban
-
ClamAV (如需病毒扫描)
-
AIDE :文件完整性检测
sudo dnf install aide -y
sudo aide --initsudo cp /var/lib/aide/aide.db.new.gz /var/lib/aide/aide.db.gz




