惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

酷 壳 – CoolShell
酷 壳 – CoolShell
H
Hacker News: Front Page
P
Palo Alto Networks Blog
T
ThreatConnect
Apple Machine Learning Research
Apple Machine Learning Research
博客园_首页
T
True Tiger Recordings
P
Privacy & Cybersecurity Law Blog
B
Blog
IT之家
IT之家
Last Week in AI
Last Week in AI
F
Full Disclosure
Hacker News: Ask HN
Hacker News: Ask HN
C
Comments on: Blog
Microsoft Azure Blog
Microsoft Azure Blog
C
Cybersecurity and Infrastructure Security Agency CISA
Microsoft Security Blog
Microsoft Security Blog
博客园 - 【当耐特】
N
News and Events Feed by Topic
NISL@THU
NISL@THU
腾讯CDC
雷峰网
雷峰网
Security Latest
Security Latest
李成银的技术随笔
M
Microsoft Research Blog - Microsoft Research
L
LangChain Blog
L
Lohrmann on Cybersecurity
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
C
Check Point Blog
Y
Y Combinator Blog
Recent Announcements
Recent Announcements
博客园 - Franky
N
News | PayPal Newsroom
V
V2EX
A
About on SuperTechFans
The Register - Security
The Register - Security
月光博客
月光博客
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Google Online Security Blog
Google Online Security Blog
MyScale Blog
MyScale Blog
Cisco Talos Blog
Cisco Talos Blog
Vercel News
Vercel News
WordPress大学
WordPress大学
C
Cyber Attacks, Cyber Crime and Cyber Security
The Hacker News
The Hacker News
IntelliJ IDEA : IntelliJ IDEA – the Leading IDE for Professional Development in Java and Kotlin | The JetBrains Blog
IntelliJ IDEA : IntelliJ IDEA – the Leading IDE for Professional Development in Java and Kotlin | The JetBrains Blog
爱范儿
爱范儿
A
Arctic Wolf
L
LINUX DO - 最新话题
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More

博客园 - 护卫神

Windows服务器如何免费防篡改 服务器为什么要拦截恶意网址,如何拦截? Linux服务器如何进行安全加固,防止黑客攻击(Windows也适用) 如何拦截恶意IP访问服务器 当网站被黑时,应该怎么排查问题和漏洞 Chamilo存在命令注入漏洞(CNVD-2026-14971、CVE-2025-50196) Chamilo存在SQL注入漏洞(CNVD-2026-13257,CVE-2025-50190) ChurchCRM SQL注入漏洞(CNVD-2026-12565、CVE-2026-24854) 如何排查网站后门文件 网站流量异常暴增怎么办? ECShop存在逻辑缺陷漏洞(CNVD-2025-08499) 迅睿CMS最新SQL注入漏洞及解决方法(CNVD-2025-08495) YzmCMS最新跨站脚本漏洞及解决方法(CNVD-2025-08792、CVE-2025-3397) phpIPAM跨站脚本漏洞及解决方法(CNVD-2025-06929、CVE-2024-55093) 打开网站出现色情内容怎么办? 《筑牢服务器安全的“钢铁长城”》 PHPGurukul Men Salon Management System最新SQL注入漏洞及解决方法(CVE-2025-3370) Windows有哪些危险系统服务,如何关闭? WordPress Shuffle plugin SQL注入漏洞及解决办法(CNVD-2025-06478、CVE-2025-28873) MRCMS(蘑菇建站)跨站脚本漏洞及解决方法(CNVD-2025-05252、CVE-2025-2195) OneBlog最新模板注入漏洞(CNVD-2025-06047、CVE-2024-54954) WordPress防SQL注入攻击和XSS跨站脚本攻击方法 Linux服务器如何提升SSH安全,如何登录发送消息通知
Linux服务器如何防止网页被篡改
护卫神 · 2026-03-30 · via 博客园 - 护卫神

黑客入侵服务器后,为了利益最大化,多数都会对网站进行破坏,植入后门、植入非法页面、植入恶意代码等等。要防护黑客入侵,修复漏洞毫无疑问是最佳解决办法。然而梦想很美好,现实很残酷。很多时候我们根本不知道漏洞在哪里,就算知晓漏洞在哪里也无从下手,就算修复了漏洞也可能产生新的漏洞。为此对服务器做一些必要的防护措施,才是解决安全防护的上乘之道。防篡改,是防黑客入侵永远绕不开的话题,只要防住了篡改,就解决了大部分入侵问题。下面我们来讲讲如何在Linux上快速实现防篡改功能。

在 Linux服务器上防止网页被篡改,有三种简单办法:使用ACL策略、编写监测软件自动还原、使用专业的防篡改软件。下面我们分别介绍每种方法的实现方法及优缺点。

1、 使用ACL策略

即对文件设置只读权限,让黑客没法修改文件。有两种方法实现,一是设置444的权限,二是设置只读属性。推荐使用第二种,因为设置为444后,看起来只有读取权限,但所有者不受限制,仍然可以更改文件。

# 设置只读权限(对文件所有者无效)
chmod 444 -R /www/wwwroot/aa


# 设置只读属性
chattr -iR /www/wwwroot/aa

优点:简单

缺点:对于需要生成缓存文件或临时文件的网站,则会出现因为没有写权限导致网站无法运行,尤其是一些PHP网站。这种方法虽然防篡改效果很好,但如果影响网站访问那就不是好方法了。

2、 编写监测软件,自动还原

需要先将网站复制为一份副本(该副本是确定没有被篡改过的),然后写一个定期检查文件MD5值的脚本,对网站目录和副本目录的文件逐个进行比对,如果MD5值不一致,说明文件被篡改了,立即从副本复制文件进行覆盖。同时可以在该脚本里面排除掉缓存目录。具体脚本如下:

#!/bin/bash
# 监测文件,对比MD5的脚本

# 定义源目录和目标目录
SOURCE_DIR="/www/a.com"
BACKUP_DIR="/www/a.com_fuben"
EXCLUDE_DIR="caches"

# 创建临时文件存储文件列表
FILE_LIST=$(mktemp)

# 查找所有文件(排除caches目录)并保存到临时文件
find "$SOURCE_DIR" -type f -path "*/$EXCLUDE_DIR/*" -prune -o -print > "$FILE_LIST"

# 遍历文件列表
while IFS= read -r file; do
    # 计算相对路径(去掉SOURCE_DIR前缀)
    relative_path="${file#$SOURCE_DIR/}"
    
    # 跳过空路径(当file等于SOURCE_DIR时)
    if [ -z "$relative_path" ]; then
        continue
    fi
    
    # 构建备份文件的完整路径
    backup_file="$BACKUP_DIR/$relative_path"
    
    # 检查备份文件是否存在
    if [ ! -f "$backup_file" ]; then
        echo "警告: 备份文件不存在 - $backup_file"
        continue
    fi
    
    # 计算源文件和备份文件的MD5值
    source_md5=$(md5sum "$file" 2>/dev/null | awk '{print $1}')
    backup_md5=$(md5sum "$backup_file" 2>/dev/null | awk '{print $1}')
    
    # 比较MD5值
    if [ "$source_md5" != "$backup_md5" ]; then
        echo "发现差异: $file"
        echo "正在用备份文件覆盖..."
        
        # 创建目标目录(如果不存在)
        mkdir -p "$(dirname "$file")"
        
        # 覆盖文件
        cp -f "$backup_file" "$file"
        
        # 检查操作是否成功
        if [ $? -eq 0 ]; then
            echo "覆盖成功: $file"
        else
            echo "错误: 无法覆盖 $file"
        fi
    fi
done < "$FILE_LIST"

# 删除临时文件
rm -f "$FILE_LIST"

echo "同步完成"

优点:实现简单

缺点:严格来说这算不上防篡改,只是还原文件,具有滞后性。同时后期维护网站比较麻烦,需要上传到副本目录。

3、 使用防篡改软件

前两种方法都能解决防篡改,但都有不小的缺点,也没法结合起来使用,因此使用防篡改软件成了必然之选。并非随便一款防篡改软件就能满足需求,有的防篡改软件非常简单,没法对子目录或文件单独设置防篡改规则,对于需要生成缓存文件或临时文件的网站,仍然会出现因为没有写权限导致网站无法运行的情况。推荐使用【护卫神.防入侵系统】,该软件的篡改防护模块非常强大,可以对每个子目录、文件或者文件类型分别设置强大的防篡改规则,能满足所有网站的防篡改需求。同时其内置CMS防篡改模板,可以轻松给网站设置复杂的防篡改规则,既能保证网站不被篡改,又不会产生副作用。

强大的防篡改规则,设置cache目录允许写

强大的防篡改规则,单独设置cache目录可写

一键添加CMS防篡改规则

一键添加CMS防篡改规则

原文:https://www.hws.com/help/tech/1928.html