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

推荐订阅源

G
GRAHAM CLULEY
博客园_首页
博客园 - Franky
Engineering at Meta
Engineering at Meta
雷峰网
雷峰网
The GitHub Blog
The GitHub Blog
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
C
Cisco Blogs
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
MyScale Blog
MyScale Blog
Apple Machine Learning Research
Apple Machine Learning Research
宝玉的分享
宝玉的分享
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
F
Full Disclosure
Cloudbric
Cloudbric
J
Java Code Geeks
C
Cybersecurity and Infrastructure Security Agency CISA
Last Week in AI
Last Week in AI
The Hacker News
The Hacker News
量子位
T
The Blog of Author Tim Ferriss
T
Threatpost
Cisco Talos Blog
Cisco Talos Blog
C
Check Point Blog
AWS News Blog
AWS News Blog
Blog — PlanetScale
Blog — PlanetScale
T
Threat Research - Cisco Blogs
Project Zero
Project Zero
Scott Helme
Scott Helme
N
Netflix TechBlog - Medium
A
About on SuperTechFans
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
T
Tenable Blog
S
Schneier on Security
T
Tor Project blog
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
Hacker News: Ask HN
Hacker News: Ask HN
MongoDB | Blog
MongoDB | Blog
Y
Y Combinator Blog
H
Hackread – Cybersecurity News, Data Breaches, AI and More
H
Heimdal Security Blog
T
Tailwind CSS Blog
P
Privacy International News Feed
爱范儿
爱范儿
Google DeepMind News
Google DeepMind News
D
DataBreaches.Net
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
博客园 - 叶小钗
人人都是产品经理
人人都是产品经理
The Last Watchdog
The Last Watchdog

博客园 - 护卫神

腾讯云如何在安全组开放端口 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