typecho后台地址
装完Typecho,台地第一件事就是台地找后台在哪。默认情况下,台地后台入口就是台地你的域名后面加个/admin/,比如https://example.com/admin/。台地敲进去,台地登录框就出来了。台地这事简单到很多人压根没想过要改它。台地
但问题恰恰出在这里。台地所有Typecho站点的台地后台路径都是同一个,攻击者不需要扫描,台地直接拼/admin/就能找到你的台地登录页。暴力破解、台地撞库,台地全从这个口子来。台地我自己有个小站,日志里每天几百次尝试访问/admin/的记录,IP来自全球各地。它不挑你,自动脚本跑一遍就完事。
改后台地址,其实改的是目录名
Typecho没有内置的“后台地址修改”选项。想换路径,最直接的办法是改服务器上的目录名。把admin文件夹重命名成别的,比如myconsole或者一串随机字符,然后后台入口就变成了/myconsole/。
听起来很粗暴,但确实有效。操作也不复杂,SSH连上服务器,cd到Typecho根目录,执行mv admin myconsole就行。改完之后,原来的/admin/直接返回404,自动扫描的脚本碰一鼻子灰。
不过有几个坑得注意。
第一,Typecho程序内部有些地方硬编码了admin这个路径。比如登录后的跳转、某些AJAX请求的地址。你光改目录名,可能登录之后页面白屏或者样式丢失。得去数据库和主题文件里搜一遍,把残留的旧路径替换掉。我当时的做法是先在测试环境改,确认没问题再动生产站。
第二,.htaccess或者Nginx的rewrite规则里如果写了跟admin相关的规则,也得同步更新。否则可能出现改了目录但访问不了的情况。
第三,别忘了config.inc.php。这个文件在Typecho根目录下,里面有个__TYPECHO_ADMIN_DIR__常量,默认值是/admin/。你要把它改成新的目录名,不然程序自己找不到后台在哪。这个是最关键的一步,很多人改完目录发现登录不了,就是漏了这里。
不改目录名的替代方案
如果你不想动文件结构,还有别的路子。
用Nginx的话,可以加一段location规则,把对/admin/的访问直接拒绝掉,只允许特定IP访问。配置大概长这样:
location /admin/ { allow 你的IP; deny all; } 这样后台实际上还在/admin/,但除了你自己,别人访问全是403。简单,不用改代码,缺点是IP变了就得改配置。
还有一种玩法是用插件。Typecho社区有人写过隐藏后台的插件,原理是给你一个自定义的入口URL,访问这个URL才会设置一个cookie,然后才允许进入/admin/。没带cookie的请求一律挡掉。这个方案对新手友好一些,但插件质量参差不齐,得挑靠谱的用。
我自己的选择
我最后用的是改目录名加Nginx限制的组合。目录名改成了一串没什么规律的字符串,同时Nginx层面只允许我常用的几个IP段访问。两层防护,心里踏实点。
改完到现在大半年了,日志里那些自动扫描/admin/的请求全变成了404,偶尔有扫到我新路径的,也被Nginx挡在外面。不是说这样就绝对安全了,但至少把最无脑的那批攻击过滤掉了。
后台地址这东西,默认的能用,但最好别一直用。花十分钟改一下,比事后补救省心得多。









