LINUX

Linux 新服务器初始化与安全加固

用户权限、SSH、防火墙、自动更新与审计日志的一次性基线。

加固原则#

新服务器上线前先降低暴露面,再安装业务。目标不是堆叠安全软件,而是让每个入口都有负责人、最小权限、日志和恢复方法。

账户与 SSH#

bash
adduser deploy
usermod -aG sudo deploy
install -d -m 700 -o deploy -g deploy /home/deploy/.ssh
install -m 600 -o deploy -g deploy /tmp/deploy.pub /home/deploy/.ssh/authorized_keys
sshd -t

确认新账户可以登录并执行必要命令后,再调整 sshd_config:

conf
PermitRootLogin prohibit-password
PasswordAuthentication no
PubkeyAuthentication yes
MaxAuthTries 4
AllowUsers deploy

防火墙与自动更新#

bash
ufw default deny incoming
ufw default allow outgoing
ufw allow 22/tcp
ufw allow 80/tcp
ufw allow 443/tcp
ufw enable
ss -lntup
apt install unattended-upgrades fail2ban auditd
检查项合格标准
公网监听只有 SSH、HTTP、HTTPS
SSH密钥可登录,root 密码登录关闭
更新安全更新自动安装并有重启计划
时间时区正确,NTP 同步
备份已做一次异机恢复演练

审计与日常检查#

bash
systemctl --failed
journalctl -p warning --since "24 hours ago"
last -a | head -20
lastb -a | head -20
find /etc -xdev -type f -mtime -1 -ls

加固完成后记录开放端口、管理员、公钥指纹、备份位置和回滚方式。没有文档的安全配置,往往会在下一次紧急变更中被绕过。

GK / OPS NOTES
把每一次变更写成可以复现的步骤

示例命令请先在测试环境验证,再根据自己的系统版本、网络和备份策略调整。

讨论区 19

分享你的经验、补充或不同观点。支持 Markdown 基础语法。

讨论区暂时为空,欢迎分享你的经验。