Apache Ubuntu如何防止攻击
Ubuntu 上加固 Apache 的实用清单
想让你的 Apache 服务器在 Ubuntu 上更坚不可摧吗?下面这份清单,从基础到进阶,帮你一步步筑起安全防线。记住,安全是一个过程,而非一劳永逸的状态。
免费影视、动漫、音乐、游戏、小说资源长期稳定更新! 👉 点此立即查看 👈
一 基础加固
万丈高楼平地起,安全加固也得从最根本的地方开始。这一步的目标是收紧默认配置,减少不必要的暴露面。
- 保持系统与软件为最新:这是老生常谈,但至关重要。定期执行
sudo apt update && sudo apt upgrade,及时修补已知漏洞,堵上最容易被利用的缺口。 - 隐藏服务器标识:别轻易告诉别人你用什么。在主配置中设置
ServerTokens Prod与ServerSignature Off,能有效减少信息泄露,让潜在攻击者少一些“线索”。 - 禁用目录列表:对于公开目录,使用
Options -Indexes。这能避免目录结构被一览无余,防止敏感文件被意外发现。 - 仅启用必要模块:用
apache2ctl -M列出所有模块,然后像清理房间一样,禁用那些用不上的。比如status、autoindex、info这类模块,在生产环境通常可以关掉,减少攻击面。 - 运行权限最小化:确保 Apache 以
www-data这类非特权用户和组运行。绝对要避免使用 root 权限,这是安全的基本原则。 - 文件与目录权限:对
/var/www及其子目录设置严格的拥有者和权限(例如750/640)。尤其要注意,上传目录绝对不能有脚本执行权限。 - 备份与变更留痕:在动手修改任何配置前,先备份。定期备份配置文件和网站数据,并且记录下每一次变更。这样,出了问题也能快速回滚。
二 网络与端口防护
服务器暴露在网络中,门禁和围墙必须牢固。这部分关注如何控制网络访问和传输安全。
- 边界防火墙:使用 UFW 这样的工具,只放行必要的流量。例如,只允许 HTTP(s) 和 SSH:
sudo ufw allow 80/tcp、sudo ufw allow 443/tcp、sudo ufw allow ssh。一个关键建议是:生产环境的管理端口(如SSH)尽量不要直接暴露在公网。 - 端口与监听:如果需要变更默认监听端口,编辑
/etc/apache2/ports.conf中的Listen 80/443指令即可。别忘了,改了端口之后,虚拟主机的配置和防火墙规则也要同步更新。 - 加密传输:如今,HTTPS 已是标配。启用
mod_ssl模块并部署有效的 TLS 证书。推荐使用 Let’s Encrypt 实现自动化签发与续期,一条命令搞定:sudo apt install certbot python3-certbot-apache && sudo certbot --apache。 - 访问控制:对于管理后台、备份目录、
.git等敏感路径,必须施加额外的访问限制。可以基于来源 IP(如Require ip 1.2.3.4)或使用基础的 HTTP 认证(AuthType Basic)来加固。
三 抗 DoS 与 Web 应用防火墙
基础防护到位后,就要应对更主动的攻击了。比如海量的请求(DoS)和针对应用层的漏洞利用。
- 连接与请求限制:在
/etc/apache2/apache2.conf或虚拟主机配置中,调整以下参数可以有效缓解资源耗尽型攻击。注意,示例值需要根据你的实际业务压力进行微调:Timeout 30:降低连接等待超时。KeepAliveTimeout 5:缩短长连接的空闲时间。MaxRequestWorkers 150:控制并发进程数,防止被瞬间打满。LimitRequestFields 50、LimitRequestFieldSize 8190:限制请求头的数量和大小,抑制异常请求。- 对文件上传目录设置
LimitRequestBody 524288:将请求体大小限制在 512KB,防止大文件攻击。
- 防 DoS/暴力:安装并启用
libapache2-mod-evasive模块,它能识别并暂时封禁疑似攻击的 IP。安装后,记得创建日志目录并配置合理的阈值(以下为示例):- 安装:
sudo apt-get install libapache2-mod-evasive - 创建日志目录:
sudo mkdir -p /var/log/apache2/evasive && sudo chown www-data:root /var/log/apache2/evasive - 配置(编辑
/etc/apache2/mods-a vailable/evasive.conf或相应文件):DOSHashTableSize 2048DOSPageCount 20、DOSPageInterval 1.0DOSSiteCount 300、DOSSiteInterval 1.0DOSBlockingPeriod 10.0DOSLogDir "/var/log/apache2/evasive"
- 安装:
- WAF 能力:想要更强大的防御,可以考虑 Web 应用防火墙。安装
libapache2-mod-security2并启用 OWASP Core Rule Set 等规则集,它能有效防御 SQL 注入、XSS、远程文件包含等常见的 Web 攻击。
四 运行监控与审计
安全不仅是配置,更是持续的监控和响应。建立监控机制,才能及时发现异常。
- 日志与告警:确保
access.log和error.log正常开启。使用tail -f /var/log/apache2/error.log可以实时跟踪错误。部署像logwatch这样的工具,能帮你做日报或周报分析,自动化发现可疑模式。 - 基线核查与语法:每次修改配置后,务必先执行
apache2ctl configtest检查语法,避免配置错误导致服务中断。定期审计服务器上启用的模块、虚拟主机配置和访问控制策略,确保没有多余的“后门”。 - 完整性校验:对
/etc/apache2这样的关键目录,可以使用 AIDE 或类似工具建立文件完整性校验基线。一旦核心配置文件被非法修改,能第一时间发出警报。
五 一键加固脚本示例
如果觉得手动操作太繁琐,这里提供一个整合了部分加固步骤的 Bash 脚本示例。你可以以此为蓝本,根据自身需求定制。
#!/usr/bin/env bash
set -e
# 0) 更新系统
apt update && apt -y upgrade
# 1) 基础加固:隐藏版本、禁用目录列表
sed -i 's/^ServerTokens .*/ServerTokens Prod/' /etc/apache2/conf-a vailable/security.conf
sed -i 's/^ServerSignature .*/ServerSignature Off/' /etc/apache2/conf-a vailable/security.conf
find /etc/apache2 -type f -name "*.conf" -exec sed -i '/|{s/Options \(.*\)Indexes\(.*\)/Options \1\2/g}' {} +
# 2) 禁用不必要模块(按需保留 CGI/SSL 等)
for m in status autoindex info; do
a2dismod "$m" 2>/dev/null || true
done
# 3) 启用 SSL 与自动证书(确保域名解析已指向本机)
a2enmod ssl
apt install -y certbot python3-certbot-apache
certbot --apache -n --agree-tos --redirect --email admin@example.com -d example.com,www.example.com || true
# 4) 抗 DoS:安装并配置 mod-evasive
apt install -y libapache2-mod-evasive
mkdir -p /var/log/apache2/evasive
chown www-data:root /var/log/apache2/evasive
cat >/etc/apache2/mods-a vailable/evasive.conf <<'EOF'
DOSHashTableSize 2048
DOSPageCount20
DOSPageInterval 1.0
DOSSiteCount300
DOSSiteInterval 1.0
DOSBlockingPeriod10.0
DOSLogDir "/var/log/apache2/evasive"
EOF
a2enmod evasive
# 5) 可选:WAF(mod-security2)
# apt install -y libapache2-mod-security2
# a2enmod security2
# 后续按所选规则集进行配置与调优
# 6) 检查并重载
apache2ctl configtest && systemctl reload apache2
echo "加固完成。请重启后复核:apache2ctl -M、ufw status、日志与证书状态。"
提示:此脚本为通用示例。在生产环境使用前,务必先在测试环境充分验证。请根据你的实际业务需求,仔细调整并发数、超时时间和 WAF 规则等参数,并始终准备好可靠的回滚方案。
游乐网为非赢利性网站,所展示的游戏/软件/文章内容均来自于互联网或第三方用户上传分享,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系youleyoucom@outlook.com。
同类文章
CentOS Syslog如何配置日志加密
CentOS系统Syslog日志加密全攻略:保障服务器日志安全的核心步骤 在当今网络安全威胁日益严峻的背景下,服务器日志作为记录系统运行状态、用户访问行为和异常事件的关键数据,其安全性至关重要。未加密的Syslog日志可能暴露敏感信息,导致严重的安全漏洞。本文将详细讲解如何在CentOS操作系统中为
Debian Hadoop安全漏洞如何防范
Debian Hadoop 安全漏洞防范清单 在数据驱动的时代,Hadoop集群承载着企业的核心数据资产。然而,一个配置不当或防护缺失的集群,无异于向外界敞开了数据宝库的大门。今天,我们就来系统梳理一下,在Debian系统上部署Hadoop时,那些必须筑牢的安全防线。这份清单旨在将常见威胁面一一封堵
Apache Ubuntu如何防止攻击
Ubuntu 上加固 Apache 的实用清单 想让你的 Apache 服务器在 Ubuntu 上更坚不可摧吗?下面这份清单,从基础到进阶,帮你一步步筑起安全防线。记住,安全是一个过程,而非一劳永逸的状态。 一 基础加固 万丈高楼平地起,安全加固也得从最根本的地方开始。这一步的目标是收紧默认配置,减
Linux Notepad如何实现文件加密功能
Linux系统文本文件加密的5种专业方法与实战指南 在Linux操作系统中处理机密文档、配置信息或敏感数据时,直接以明文形式存储存在显著安全风险。本文将系统介绍五种经过验证的文本文件加密方案,涵盖从命令行工具到编辑器内置功能的完整解决方案。需要明确的是,Linux原生环境并无类似Windows No
Debian漏洞利用的历史记录
Debian漏洞利用的历史记录概览 重大历史事件时间线 回顾Debian Linux发行版的安全历史,一系列标志性事件因其典型性或深远影响而成为关键案例,清晰地勾勒出不同时期安全威胁的演变轨迹。 2003年11月:Debian官方基础设施被入侵 这是一次经典的“步步为营”式渗透攻击。攻击者首先利用窃
- 日榜
- 周榜
- 月榜
1
2
3
4
5
6
7
8
9
10
相关攻略
2015-03-10 11:25
2015-03-10 11:05
2021-08-04 13:30
2015-03-10 11:22
2015-03-10 12:39
2022-05-16 18:57
2025-05-23 13:43
2025-05-23 14:01
热门教程
- 游戏攻略
- 安卓教程
- 苹果教程
- 电脑教程
热门话题

