Featured image of post 宝塔与WordPress网站基础安全配置指北

宝塔与WordPress网站基础安全配置指北

尽管网站可能会没有什么人看,但是免不得哪天被无聊的人盯上

TLS安全配置

1994年网景公司推出HTTPS协议,再到1999年公布TLS1.0标准—RFC2246,近年谷歌将未配置SSL证书的网站标识为不安全,网站上的小绿锁头为所有网站绕不过去的一个坎,同时他保证了用户到服务器之间的安全传输。
不安全示例
但是可以在宝塔中可以之间在网站设置上申请并安装证书,在网站-设置-SSL中可以直接申请免费的证书 同时建议关闭网站的TLS1.0与1.1标准,开启强制HTTPS

SSL 由于以往发现的漏洞,已经被证实不安全。而 TLS1.0 与 SSL3.0 的区别实际上并不太多,并且 TLS1.0 可以通过某些方式被强制降级为 SSL3.0。

由此,支付卡行业安全标准委员会(PCI SSC)强制取消了支付卡行业对 TLS 1.0 的支持,同时强烈建议取消对 TLS 1.1 的支持。

在网站-配置文件中找到21行的“ssl_protocols”行中删除TLSv1.1,如果有也删除1.0协议版本。
同时亚数信息的HTTPS配置指南中提到Strict-Transport-Security中的max-age的时间不能小于15552000,以开启HSTS,目前宝塔7.9.6在站点配置中默认设置为31536000,可不做调整。

CDN

大多数站点建议开启CDN来加速并一定程度上隐藏服务器的IP地址,源站的IP泄露容易被直接DDOS攻击。

如果碰巧,财力雄厚也可以购买DDoS高防来隐藏源站IP

同时在CDN的控制台中关闭TLS1.0与1.1标准,如可以需要开启HSTS

宝塔

同时建议开启流量限制,在网站设置-流量限制中设置
虽然宝塔的防火墙软件需要开通会员,不过有活菩萨网友提供了免费的Nginx防火墙,Apache服务器暂不支持

在软件商店-第三方安装中可配置

安装后打开Nginx防火墙,使用了CDN的站点需要在站点配置中勾选CDN选项防误封和IP检测错误 同时在全局配置中设置CC请求类型规则,中文博客站点还是建议开启除中国与美国、日本地区的人机验证,以个人经验上看,国外地区的终端攻击占比相对高一点。同时为了访问体验没有选择美日地区。

受到大量攻击时可以把请求类型修改成IP
同时在全局配置中同步蜘蛛池的配置列表,一定程度上避免搜索引擎蜘蛛被屏蔽。

Wordpress安全配置

后台地址修改

WordPress默认的后台登录地址为wp-login.php,以免被暴力破解用户名和密码,可以修改后台登录地址

一、在宝塔文件管理中的网站根目录中找到wp-login.php,双击编辑并将该文件wa-admin.php中出现的字符wp-login.php全部改为你需要设置的后台地址,如wp-example.php,在wp-login.php共有11行需要修改,其中有3处为注释,改不改看你心情。并重命名为你设置的后台地址,保留.php的文件后缀

二、找到根目录下的wp-includes/general-template.php文件,同上搜索并替换你需要的后台地址。

除439行的此处代码

1
	$login_url = site_url( 'wp-login.php', 'login' );

编辑后保存即可,随后可注销WordPress的后台账号,在浏览器访问你的网站/你设置的后台地址.php访问即可,访问wp-admin会出现404报错。

此外个人认为除非密码太过简单,基本上不好爆破后台地址,故不建议安装登录限制的插件。

其他

数据库表不建议使用默认的wp前缀,如果已经使用可以使用Change Table Prefix,安装启用后可以在设置中找到,输入你想修改的前缀并应用

修改数据库可能会造成不可挽回的错误,修改前需要备份数据库文件和wp-config.php文件



此外,WordPress的系统文件不需要被搜索引擎索引,建议在robots.txt文件,增加一行

1
Disallow: /wp-*