温馨提示×

CentOS Minimal系统优化技巧有哪些

小樊
48
2026-01-07 21:21:40
栏目: 智能运维

CentOS Minimal 系统优化技巧

一 基础与系统更新

  • 保持“最小化安装”思路:仅安装必需软件包,减少攻击面与后台常驻进程。
  • 更新系统与软件包:执行 yum update -y(或 dnf update -y),及时获取修复与性能改进。
  • 选择稳定文件系统与挂载选项:如 XFS/ext4;在 /etc/fstab 中为数据盘增加 noatime,nodiratime 以减少元数据写入;必要时使用 LVM 便于后续扩容。
  • 设置 NTP 时间同步:安装并启用 chrony 或 ntp,保证日志、证书与调度任务的时间一致性。

二 启动与服务精简

  • 使用 systemd 管理服务:通过 systemctl list-unit-files --type=service 查看,按“必须即启”的原则禁用不需要的服务(如示例:postfix、bluetooth 等),减少内存与 CPU 占用。
  • 运行级别与控制台:服务器建议长期运行在 多用户文本模式(runlevel 3);如为 CentOS 7/8,可通过 systemd 设置默认目标为多用户文本;如为 CentOS 6,可编辑 /etc/inittab 将默认运行级别设为 3,并减少 TTY 数量以降低资源占用。

三 内核网络与文件句柄优化

  • 典型 TCP 栈优化(写入 /etc/sysctl.conf 后执行 sysctl -p 生效):
    • 连接复用与回收:开启 net.ipv4.tcp_tw_reuse=1;在 NAT/负载均衡前端谨慎开启 net.ipv4.tcp_tw_recycle=1(可能引发跨主机时间戳问题);设置 net.ipv4.tcp_fin_timeout=30
    • 半开连接与队列:开启 net.ipv4.tcp_syncookies=1;提升 net.core.somaxconnnet.ipv4.tcp_max_syn_backlog,如 1024/4096 或更高(视并发而定);提升 net.core.netdev_max_backlog
    • 端口与保活:扩大 net.ipv4.ip_local_port_range(如 1024 65535);缩短 net.ipv4.tcp_keepalive_time(如 1200 秒)以更快清理僵死连接。
    • 文件句柄与内核内存:提升进程可打开文件数(如 ulimit -n 65536 或更高,并在 /etc/security/limits.conf 持久化);按需调整 net.core.rmem_default/wmem_defaultnet.ipv4.tcp_rmem/wmem 的读写缓冲区间。
  • 注意:不同业务与内核版本对参数敏感,建议逐项灰度并压测验证,避免一次性大幅改动。

四 安全加固与访问控制

  • 最小权限账户:创建 普通用户并配置 sudo,日常以普通用户登录,仅在必要时提权;禁用 root 远程登录/etc/ssh/sshd_configPermitRootLogin no)。
  • 强化 SSH:启用 密钥登录、禁用密码登录(PasswordAuthentication no);按需更改默认端口;关闭 GSSAPIAuthentication 可改善连接建立速度;使用 AllowUsers/AllowGroups 限制可登录账户或来源网段。
  • 防火墙与端口:启用 firewalldiptables,仅放行业务所需端口(如 22/80/443);对外最小化暴露。
  • 入侵防护:部署 fail2ban 自动封禁暴力破解来源 IP。
  • SELinux:生产环境建议保持 enforcing 并做策略调优;若确需关闭,编辑 /etc/selinux/configSELINUX=disabled 并重启(变更前请充分评估风险)。

五 监控维护与变更流程

  • 监控与巡检:部署 top/vmstat/iostat/sar 等工具,关注 CPU steal、load、iowait、TCP 重传、连接数 等关键指标;为关键路径设置 告警阈值
  • 日志与审计:集中采集与分析 /var/log/,设置 logrotate 控制日志体积;保留必要的审计信息(如 auditd)。
  • 变更与回滚:任何内核参数、服务、防火墙与 SSH 配置变更前先备份(如 /etc 目录快照或配置版本化);遵循“小步变更—灰度验证—可回滚”的流程,变更后观察 至少 24 小时 关键指标与业务日志。

0