从账户、SSH、防火墙、日志、权限、更新和服务最小化角度整理 Linux 加固清单,帮助初学者建立服务器安全基线。
写在前面:合法学习边界
本文只讨论在授权范围内加固自己管理或测试的系统。请不要在他人服务器上修改配置、关闭服务或尝试提权。所有操作都应以授权、可回滚和审计为前提。
一、加固目标
系统加固不是把所有东西都关掉,而是让系统只保留必要功能,并减少攻击面。
目标可以概括为:
1
2
3
4
5
6
| 减少暴露服务
限制登录入口
强化认证
保留日志
控制权限
及时更新
|
二、账户与权限
1. 禁用或限制默认账户
例如 root 直接远程登录要谨慎。
2. 强密码策略
要求长度、复杂度和更换周期。
3. 最小权限
普通用户只给完成任务所需权限。
4. 审计 sudo
只把必要用户加入 sudoers。
三、SSH 加固
建议:
1
2
3
4
5
| 限制来源 IP
使用密钥登录
禁用密码登录
禁用 root 直接登录
启用登录失败告警
|
可用命令检查:
四、防火墙和端口
只开放业务需要的端口。
检查监听端口:
检查防火墙状态:
五、日志与审计
关键日志位置:
1
2
3
4
5
| /var/log/auth.log
/var/log/syslog
/var/log/secure
/var/log/nginx/access.log
/var/log/nginx/error.log
|
建议保留:
1
2
3
4
5
| 登录日志
权限变更
服务启动
失败请求
配置变更
|
六、软件更新
及时更新系统和关键组件。
1
2
| sudo apt update
sudo apt upgrade
|
或:
七、文件权限
敏感文件不要公开可读。
示例:
1
2
| chmod 600 ~/.ssh/id_rsa
chmod 600 /etc/mysql/debian.cnf
|
八、服务最小化
不要运行不需要的服务。
查看服务:
1
| systemctl list-units --type=service
|
查看进程:
九、常见加固清单
1
2
3
4
5
6
7
8
9
| 关闭不必要端口
启用 MFA
限制远程登录来源
关闭匿名 FTP
关闭不必要的远程桌面
保留日志
定期补丁
定期备份
最小权限
|
十、小结
Linux 加固的核心是“最小暴露、最小权限、可审计”。不要为了安全把系统搞到无法运维,真正的目标是让系统更安全、更可管理。