安全 博客

分享:Typecho博客系统防黑客教程(Typecho安全加固指南)

Posted on 2020-04-16,3 min read

网站如果被黑,心情是糟糕的,打算商业博客使用的是Typecho系统,php+mysql,php一般安全度不高,特别是使用多的博客系统。
简单做一下安全。设置教程
不得不说,Typecho有些模板真是好看。

1、删除安装文件
成功安装后删除install.php文件、install/文件夹。

2、修改后台地址
把admin修改为黑客猜不到的名字,例如bilibili,防止黑客穷举密码。

修改admin文件夹名称
修改admin文件夹名称为你喜欢的名称,例如bilibili

修改配置文件以适配修改后的admin路径
修改config.inc.php
修改为以下代码,我就当修改为bilibili了。

/** 后台路径(相对路径) */
define('TYPECHO_ADMIN_DIR', '/bilibili/');
好了。现在你可以访问你的域名/bilibili/了。这就是你的新的后台地址,原来的你的域名/admin/已经不能访问了。

3、屏蔽usr、var目录下php文件的访问
屏蔽usr、var目录下php文件的访问可以阻止黑客访问到他上传的php木马。
我们利用Rewrite伪静态机制来做。我这里以Apache服务器为例,大部分虚拟主机都是Apache。LiteSpeed Web Server也使用的是Apache的规则。
我们同时屏蔽config.inc.php和.htaccess的访问。
屏蔽原理就是把要屏蔽的请求重定向到首页文件,首页文件会当成文章名来解析,没有同名文章就会返回404未找到。所以就算黑客上传了木马也只会得到404未找到的响应。

文件名:.htaccess

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)$ index.php [E=PATH_INFO:$1]
    RewriteRule (var|usr)(.+ph*)$ index.php [E=PATH_INFO:$1]
    RewriteRule (config.inc.php|.htaccess)$ index.php [L,E=PATH_INFO:$1]
</IfModule>

我是如下设置的:1、屏蔽网址中带有index.php。2、做了www转跳到非www的根目录。3、安全。

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php/$1 [L]
RewriteRule (var|usr)(.+ph*)$ index.php [E=PATH_INFO:$1]
RewriteRule (config.inc.php|.htaccess)$ index.php [L,E=PATH_INFO:$1]
RewriteCond %{HTTP_HOST} ^www.***.net
RewriteRule (.*) https://***.net/$1 [R=301,L]
</IfModule>

新建.htaccess文件添加以上内容,上传到你typecho博客的根目录就可以了。

2019.07.14更新:新增Nginx规则
此规则原理同上,经测试Nginx和OpenResty下可用。

if (!-e $request_filename) {
    rewrite ^(.*)$ /index.php$1;
}
rewrite /(var|usr)(.+ph*)$ /index.php;
rewrite /(config.inc.php|.htaccess)$ /index.php last;

下一篇: 信心不足→