Ubuntu服务器Web服务安全配置实践
在Linux服务器环境中,Web服务是最重要的攻击面之一。本文将通过具体案例展示如何在Ubuntu服务器上实施Web服务安全配置。
1. Nginx安全加固配置
首先,编辑nginx.conf文件进行基础安全加固:
sudo nano /etc/nginx/nginx.conf
添加以下安全配置项:
# 隐藏服务器信息
server_tokens off;
# 禁用不必要HTTP方法
if ($request_method !~ ^(GET|POST|HEAD|OPTIONS)$ ) {
return 405;
}
# 防止目录遍历攻击
location ~ /\. {
deny all;
}
2. SSH安全强化
Ubuntu服务器默认SSH服务需要额外加固:
sudo nano /etc/ssh/sshd_config
配置项如下:
# 禁用root直接登录
PermitRootLogin no
# 使用密钥认证
PasswordAuthentication no
PubkeyAuthentication yes
# 更改默认端口
Port 2222
# 限制登录尝试次数
MaxAuthTries 3
重启SSH服务:
sudo systemctl restart sshd
3. 防火墙规则配置
启用ufw防火墙并设置安全策略:
# 启用ufw
sudo ufw enable
# 允许必要端口
sudo ufw allow 2222/tcp
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
# 拒绝其他所有连接
sudo ufw default deny incoming
4. 定期安全检查脚本
创建安全检查脚本:
#!/bin/bash
# /usr/local/bin/security-check.sh
# 检查开放端口
netstat -tlnp | grep LISTEN
# 检查SSH配置
sshd -t
# 检查系统更新状态
apt list --upgradable
通过以上配置,可以显著提升Ubuntu服务器Web服务的安全性。建议定期执行安全检查并及时更新系统补丁。

讨论