Linux 服务器安全加固指南:防止入侵的最佳实践

教学2周前更新 站长
16 0 0

文章推荐:

Linux 内核与主流发行版介绍 – 各类 Linux 系统优缺点分析 – 万站导航

Linux 服务器安全加固指南

1. 引言

Linux 服务器在企业中应用并不限于网站、数据库、云计算和软件开发环境等方面。然而难免地,那些惯于利用漏洞和违规访问系统的恶意浏览者总会寻找方式尝试添加入系统。因此,加强 Linux 服务器安全性,防止非法进入,显得十分重要。

本文将从多个方面讨论如何加固 Linux 服务器的安全,包括 SSH 访问系统、用户权限管理、防火墙配置、日志监控、入侵检测和 Web 服务器安全等。


2. SSH 访问安全优化

2.1 修改 SSH 端口

默认 SSH 端口为 22,容易成为攻击目标,可以将其修改为其他端口:

sudo nano /etc/ssh/sshd_config

找到 Port 22,修改为 2222 或其他非常用端口:

Port 2222

重启 SSH 服务:

sudo systemctl restart sshd

2.2 禁止 root 直接登录

sshd_config 中修改:

PermitRootLogin no

2.3 使用 SSH 密钥认证

在本地生成 SSH 密钥:

ssh-keygen -t rsa -b 4096

将公钥复制到服务器:

ssh-copy-id -i ~/.ssh/id_rsa.pub user@your-server-ip

禁止密码登录,修改 sshd_config

PasswordAuthentication no

3. 配置防火墙

3.1 使用 UFW (推荐)

sudo ufw allow 2222/tcp  # 允许 SSH 端口
sudo ufw allow 80/tcp  # 允许 HTTP 访问
sudo ufw allow 443/tcp  # 允许 HTTPS 访问
sudo ufw enable  # 启用防火墙

3.2 使用 iptables

sudo iptables -A INPUT -p tcp --dport 2222 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT
sudo iptables -A INPUT -j DROP  # 禁止其他端口

4. 用户与权限管理

4.1 创建独立用户

adduser newuser
usermod -aG sudo newuser  # 赋予 sudo 权限

4.2 使用最小权限原则

chmod 700 /root/
chmod 600 ~/.ssh/authorized_keys

5. 日志监控与入侵检测

5.1 检查 SSH 登录日志

cat /var/log/auth.log | grep "Failed password"

5.2 安装 fail2ban 防止暴力破解

sudo apt install fail2ban -y
sudo systemctl enable fail2ban
sudo systemctl start fail2ban

6. 结论

Linux 服务器安全加固是一个长期的迁展过程,具有不断的优化需求。通过优化 SSH 配置、安全权限管理、设置防火墙和强化日志监控,可以最大限度地减少被攻击的风险,提高服务器的安全性。

© 版权声明

相关文章

暂无评论

您必须登录才能参与评论!
立即登录
none
暂无评论...