Linux服务器安全配置是保障系统稳定运行和数据安全的核心环节,需从系统基础防护、访问控制、服务优化、日志审计及漏洞管理等多维度综合加固,以下为详细配置方案:

(图片来源网络,侵删)
系统基础加固
- 最小化安装:仅安装必要的软件包,减少攻击面,可通过
Minimal Install选项或使用yum groupremove命令移除无用组(如“Development Tools”)。 - 用户与权限管理:
- 禁用或删除默认账户(如
ubuntu、test),使用useradd创建强密码策略的用户,并分配sudo权限而非直接使用root。 - 配置
/etc/sudoers文件,限制sudo命令范围,username ALL=(ALL) /usr/bin/apt, /usr/bin/systemctl。
- 禁用或删除默认账户(如
- 密码策略:通过
/etc/login.defs设置密码最小长度(PASS_MIN_LEN 12)、过期时间(PASS_MAX_DAYS 90),并启用pam_cracklib模块强制复杂度(如大小写、数字、特殊字符组合)。
访问控制与防火墙
- SSH安全配置:编辑
/etc/ssh/sshd_config,禁用root登录(PermitRootLogin no)、更改默认端口(如Port 2222)、禁用密码认证改用密钥认证(PasswordAuthentication no),并限制允许登录的用户(AllowUsers user1 user2)。 - 防火墙规则:使用
firewalld或ufw限制入站流量,仅开放必要端口(如SSH 2222、HTTP 80、HTTPS 443),示例:sudo ufw default deny incoming sudo ufw allow 2222/tcp sudo ufw enable
服务与进程优化
- 关闭不必要服务:通过
systemctl list-unit-files --type=service查看服务,使用systemctl disable停用无用服务(如telnet、rsh、vsftpd等)。 - 文件系统权限:设置关键目录权限(如
/etc权限750,/var/log权限755),使用chattr锁定重要文件(如chattr +i /etc/passwd防止篡改)。
日志与监控
- 日志审计:启用
rsyslog收集系统日志,配置日志轮转(/etc/logrotate.d/rsyslog),并定期分析/var/log/auth.log(或/var/log/secure)中的异常登录记录。 - 入侵检测:安装
fail2ban监控SSH暴力破解,自动封禁恶意IP:[sshd] enabled = true port = 2222 maxretry = 3 bantime = 3600
漏洞与补丁管理
定期更新系统:yum update -y或apt update && apt upgrade -y,并使用lynis进行安全审计:lynis audit system,根据报告修复高危项。
相关问答FAQs
Q1: 如何检查Linux服务器是否存在未授权用户?
A1: 可通过以下命令排查:
- 查看
/etc/passwd文件,识别异常用户(如UID为0的非root用户); - 使用
last命令查看登录历史,检查未知IP的登录记录; - 运行
who或w命令,查看当前活跃会话,确认用户合法性。
Q2: 服务器被入侵后,如何快速恢复安全?
A2: 恢复步骤如下:
- 立即断开网络连接,防止数据泄露;
- 备份关键数据(如数据库、配置文件),避免覆盖原始证据;
- 使用干净的系统镜像重装系统,而非修复被入侵的系统;
- 修改所有密码(包括SSH、数据库、应用后台等),并检查SSH密钥、
.ssh/authorized_keys文件是否被篡改; - 分析入侵日志(如
/var/log/auth.log、/var/log/wtmp),定位入侵途径并加固相应环节。

(图片来源网络,侵删)
