Linux服务器安全防护配置指南:防止被入侵的10项核心措施

文章最后更新时间:2026-04-13 22:10:36

Linux服务器是互联网应用的基础,但互联网上每天都有大量扫描和攻击在寻找漏洞。服务器被入侵不仅会导致数据泄露,还可能被用于非法用途。本文分享Linux服务器安全防护的10项核心措施。

一、安全防护的黄金原则

安全防护的本质是减少攻击面、提高入侵成本:

  • 最小权限原则:只开放必要的端口和服务
  • 纵深防御:不依赖单一安全措施,多层防护
  • 及时更新:系统补丁及时修复已知漏洞

二、10项核心安全配置

措施1:禁用root直接登录

root是最高权限账户,一旦被破解后果严重。禁用root SSH登录,强制使用普通账户+sudo提权。

编辑 /etc/ssh/sshd_config
PermitRootLogin no
PasswordAuthentication no
PubkeyAuthentication yes

systemctl restart sshd

措施2:使用SSH密钥登录

生成密钥对,将公钥上传到服务器。

ssh-keygen -t ed25519
ssh-copy-id -i ~/.ssh/id_ed25519.pub user@server_ip

密钥比密码安全得多,暴力破解几乎不可能。

措施3:修改SSH默认端口

SSH默认端口22是大量扫描的目标,改为高位端口(如22222)可减少90%以上的扫描流量。

编辑 /etc/ssh/sshd_config
Port 22222
systemctl restart sshd

措施4:配置防火墙(UFW/firewalld)

只开放必要端口,拒绝其他所有入站连接。

# 使用 UFW(Ubuntu/Debian)
ufw default deny incoming
ufw default allow outgoing
ufw allow 22/tcp    # SSH
ufw allow 80/tcp    # HTTP
ufw allow 443/tcp   # HTTPS
ufw enable

措施5:安装fail2ban防止暴力破解

fail2ban自动封禁多次登录失败的IP。

apt install fail2ban -y
systemctl enable fail2ban
systemctl start fail2ban

默认配置即可生效,5次登录失败封禁10分钟。

措施6:禁用不必要的服务

检查并关闭不需要的服务,减少攻击面。

systemctl list-units --type=service --state=running
systemctl stop 服务名
systemctl disable 服务名

措施7:定期更新系统补丁

# Ubuntu/Debian
apt update && apt upgrade -y

# CentOS/RHEL
yum update -y

建议配置自动安全更新。

apt install unattended-upgrades -y
dpkg-reconfigure unattended-upgrades

措施8:配置SSH安全登录(两步验证)

配合Google Authenticator实现SSH登录两步验证。

apt install libpam-google-authenticator -y
google-authenticator
# 扫码绑定,保存备用验证码

措施9:隐藏服务器敏感信息

禁止SSH显示版本信息,减少信息泄露。

编辑 /etc/ssh/sshd_config
DebianBanner no
systemctl restart sshd

措施10:安装监控告警(OSSEC)

OSSEC是一款开源的主机入侵检测系统,可以发现异常登录、文件篡改等安全事件。

wget https://github.com/ossec/ossec-hids/archive/refs/heads/master.zip
unzip master.zip && cd ossec-hids-master
./install.sh

三、安全运维日常 checklist

建议每周检查:

  • 查看登录成功/失败的日志:last 和 lastb 命令
  • 检查新增的未知用户:cat /etc/passwd
  • 检查异常进程:top、ps aux
  • 检查开放端口:netstat -tulpn
  • 检查定时任务:crontab -l

查看登录日志:

cat /var/log/auth.log | grep -i "failed|error|invalid"
cat /var/log/auth.log | grep "Accepted"

四、备份与灾难恢复

即使做了所有防护,仍可能出事。备份是最后一道防线。

  • 重要配置文件:/etc、/var/www、/home
  • 数据库数据:每日自动备份
  • 异地备份:备份文件存放在另一台服务器或云存储
  • 定期测试恢复:备份是为了恢复,定期演练

五、常见问题

Q:服务器已经被入侵了怎么办?
A:立刻断开网络、保留现场(截图、日志)、重装系统、恢复备份、更换所有密码、排查入侵原因、修复漏洞。

Q:云服务器需要额外防护吗?
A:云服务器默认只提供基础防护,需要自行配置防火墙、安全组、SSH密钥等。云厂商的安全组不等于服务器防火墙。

Q:服务器密码还需要吗?
A:禁用密码登录,强制使用SSH密钥。但要保管好密钥文件,丢失意味着无法登录。

Q:如何发现服务器是否被入侵?
A:定期查看登录日志、监控异常进程、检查/etc/hosts.deny是否有异常记录、关注带宽异常飙升。

总结

服务器安全10项核心措施:禁用root登录、SSH密钥认证、改SSH端口、配置防火墙、安装fail2ban、禁用不必要服务、及时打补丁、两步验证、隐藏敏感信息、安装HIDS。安全无小事,做好防护,防患于未然。

瀚煜云提供服务器代维及安全加固服务。

© 版权声明
THE END
喜欢就支持一下吧
点赞11 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容