如何让WordPress博客变得更加安全
![]() | ![]() | ![]() | ![]() |
| 【性价之王】 | 【线路之王】 | 【价格之王】 | 【配置之王】 |
| 【免费之王】 | 【香港首推】 | 【梯子之王】 | 【独服之王】 |

虽然WordPress占据着世界上用户最多的建站程序的头把交椅。但是用的人多,想尽办法破解,攻击行为就会非常多。
自己辛辛苦苦建立的WordPress博客被黑客攻击、植入后门。
我们不该责怪 WordPress,它本身并没有错。通常都是我们所做的防范措施太少,导致黑客轻松就侵入。
那么怎么样才能有效防范黑客的破坏行为?
内容 1 锁掉登录页面防范暴力攻击 1.1 1)对多次错误登录的行为进行监控和禁止 1.2 2)用 Email 地址而不是用户名登录 1.3 3)改掉登录页面的 URL 1.4 4)更换更强的的密码 2 安装 WordPress 时不要用默认的 WordPress_ 前缀 3 定期备份网站 4 阻止文件目录浏览(Directory Browse) 5 隐藏 config.php 6 阻止上传文件夹内的任何 php 文件执行 7 不用来历不明的免费主题和插件 8 使用 SSL 加密数据 8.1 相关文章锁掉登录页面防范暴力攻击
WordPress的标准后台登录页面为 /wp-admin/ 以及 /wp-login.php ,如果你使用的是宝塔面板,你可以查询一下这个页面,每天要被多少次攻击。
所以WordPress搭建后的第一件事情就是更换后台登录页面的地址。
关于后台登录页面,要做到以下几点:
1)对多次错误登录的行为进行监控和禁止
很多暴力破解的攻击手段都是不停的更换密码来尝试登录进 WordPress 后台。
我建议安装插件:Login LockDown,它在这方面的安全性做得很不错。如果某个访问者尝试不同的密码错误次数超过设定值,那么该 IP 会被记录,并且 IP 被拦截,禁止访问网站。
2)用 Email 地址而不是用户名登录
WordPress 默认是用 username 来登录,显然这个并不够安全。有些不够安全的主题,通过在域名后面加上 /?author=1 来访问的方式,会暴露 WordPress 的后台登录用户名。
而且很多博主可能用户名跟域名有关,甚至用admin 来作为用户名,使得黑客很容易就能猜测并暴力尝试。
可以使用更安全的方式:Email 地址作为用户名来登录。就是你安装 WordPress 或注册用户的时候填写的邮箱地址。你可以用 WordPress Email Login 插件来实现,它配置很简单,激活后几乎无需任何配置。
3)改掉登录页面的 URL
相当多的博主,在安装完后没有更改登录页面的 URL。这也是非常不安全。
将的 WordPress 主题文件夹里面的 functions.php 文件下载到本地,备份。编辑functions.php,在最底下,粘贴以下代码
//保护后台登录add_action('login_enqueue_scripts','login_protection'); function login_protection(){ if(($_GET['admin'] != 'whoareyou') || ($_GET['password'] != 'iamnobody'))header('Location: https://photocdn.sohu.com/20151012/mp35170363_749_8.jpeg');}然后保存并上传到空间将老的functions.php 替换。从现在开始,想要登录后台,所有人必须都通过访问
https://www.xx.com/WordPress-login.php?admin=whoareyou&password=iamnobody这个唯一的 URL 页面地址来访问你的网站后台了。即:
在原来的 WordPress-login.php 的后面多加了两个变量 admin 和 password,这两个变量和变量值组合构成唯一的一个页面URL。(admin 和 password 不要写你登录的账号和密码)。
如果 URL 输入错误,就会跳转到凤姐的照片欣赏地址(当然你也可以把该地址换成你想转向的网址)
4)更换更强的的密码
千万不要用12345678之类,IP也不可以用。尽量使用自动生成密码。自己做备份就可以了。
WordPress 用户密码 和 数据库用户密码 最好分开设置成不一样的密码。
安装 WordPress 时不要用默认的 WordPress_ 前缀
这个前缀在安装页面,提交的时候就要把表前缀进行修改..
如果你已经安装过了,想修改前缀,可以使用 WordPress-DBManager 插件即可修改 WordPress 数据表前缀。修改之后你可以再删除插件。
定期备份网站
关于备份数据库,你可以使用 WordPress Database Backup 插件来定期备份数据库。如果想要备份整个网站,那么推荐使用 BackUpWordPress 或 Duplicator 插件,它基本上可以把网站文件和数据库都备份好。
如果你用的是 VPS,如 Linode,那么我建议你还可以考虑开通 BackUp 服务,每个月 2.5 美金,定期备份整个磁盘,生成快照。不要嫌贵,如果你整个网站文件和数据库被删除,你就知道整盘备份这功能是多么重要了。
阻止文件目录浏览(Directory Browse)
大部分的虚拟主机对于文件目录浏览的权限都是开放的,这并不安全。浏览者可以看到你目录里有哪些文件,文件名称是什么。如下图所示:
显然这是相当不安全的。一般是由于当前目录下没有主页文件引起的。有两种解决办法:
每个文件目录下放一个空的 index.html 或 index.php 文件修改 .htaccess 配置文件不显示文件目录前一种方式操作很简单,就是稍微有点麻烦,我们用第二种方法。
点击 public_html 找到你的网站目录,在网站根目录下找 .htaccess 文件。
找到以后,在文件上点击右键,选择菜单中的 “Code Edit”。
会出现一个对话框,只需点击“编辑”按钮继续,编辑器将在新窗口中打开。
编辑完成后,保存即可。
隐藏 config.php
WordPress 根目录下的 WordPress-config.php 文件中记录了我们的 wordpress 使用的 mysql 数据库表名、用户、以及明文的密码!
// ** MySQL 设置 ** //define('DB_NAME', 'xxxxxxxxxxxxxxxxxxxx');define('DB_USER', 'xxxxxxxxxxxxxxxxxxxx');define('DB_PASSWORD', 'xxxxxxx明文的密码xxxxxxxx');define('DB_HOST', 'localhost');define('DB_CHARSET', 'utf8');define('DB_COLLATE', '');如果不加限制,WordPress-config.php 很容易就被黑客获取了。未加保护的 WordPress-config.php 文件,很容易被网络爬虫抓取到了
所以,我们必须把 WordPress-config.php 文件保护起来,我们需要修改 .htaccess 文件。
直接编辑 .htaccess 文件,加上以下代码:
<files WordPress-config.php>order allow,denydeny from all;</files>这样一来,就阻止了各类恶意网络爬虫抓取文件。
阻止上传文件夹内的任何 php 文件执行
通常你被黑之后都能在 WordPress-content/uploads/ 文件夹下发现一个可疑的 php 文件,这是黑客上传的控制文件,我们要关闭访问任何 .php 文件的权限。
在网站根目录的 .htaccess 文件中添加代码。代码如下:
RewriteEngine on RewriteCond % !^$RewriteRule uploads/(.).(php)$ – [F]注意:代码写在 <IfModule mod_rewrite.c> </IfModule> 内。
OK,结合上面的一些我们需要添加到 .htaccess 文件中的代码,完整的添加代码有 3 处,截图如下:
记得点保存,然后在网站首页按 ctrl+F5 强制刷新生效。
我们来测试一下,我们上传一个 test.php文件,此文件内我们写入 <?php echo phpinfo(); ?> ,此函数会显示 php 服务器信息。然后我们来访问看看:
没有添加截图 2 的代码时,显示了主机的详细信息:
稍微懂点 php 的人都知道,这个信息是黑客/攻击者最想获取的服务器信息,里面记录各种配置参数、路径、版本等等。
我们添加截图中代码 2 以后,再访问此 php 文件,显示 403 不允许访问,拒绝访问一切 php 文件!
至此,你已经成功地配置了防御措施。
如果你是 VPS LNMP 环境的话,需要在虚拟主机配置文件 conf 中定义 ( 路径:/usr/local/nginx/conf/vhost/www.abc.com.conf ) 。添加在 Server 段:
location /WordPress-content/uploads/ {location ~ .*.(php)?$ {deny all;}}记得重启 nginx。 /etc/init.d/php-fpm restart
不用来历不明的免费主题和插件
当年为了能免费使用 themeforest 上的那些高大上的英文主题,我在百度里搜索,在国内一些主题免费下载站下载了一些国外主题。一开始不知道,后来偶然才发现这些英文主题里 functions.php 文件里竟然有一些伪装得很好的恶意代码,可以让人获得 uploads 文件夹的权限,我 TM 吓出一身冷汗~ 从此再也不用这些下载站的主题。
不管是免费还是付费的主题和插件,都尽量通过 WordPress 官方或者后台去获取安装。
使用 SSL 加密数据
用 SSL(安全套接层协议)证书不只是为了浏览器地址栏上那个绿色的小锁,更是为了安全。并且 SSL证书也会影响 Google 对你网站的信任度。Google 对没有启用 SSL 的网站都认为安全级别不够高,所以不久的将来 https 协议肯定会逐渐取代 http。
SSL 可以确保用户浏览器和服务器之间的安全数据传输,使黑客很难破坏连接信息。获取 SSL 证书不是问题,可以到阿里云、七牛等网站都提供
[WordPress]历史优惠活动内容
猜你可能想看的VPS
- HKServerSolution→424 元 月 2 核 2G 内存 2虚拟空间(主机)
- 免费主机 iON→1G 空间 25G 流量免费 WordPress 空间虚拟空间(主机)
- DedeCMS 后台模块管理空白不显示列表的解决办法全球[VPS测评]
- 超值推荐腾讯云秒杀→2 核 CPU 4G 内存 50G 硬盘 6M 带宽全球[VPS测评]
- GigsGigsCloud→$104.25 月香港服务器-E3 1230香港VPS[主机]
- webuploader 如何判断文件是否上传成功?全球[VPS测评]
- 便宜 $1.08 月 256M 内存 15G 硬盘 1.5T 流量@1G全球[VPS测评]
- 抗投诉服务器 $180 每月 I3-3240 8G 内存 500G 硬盘全球[VPS测评]
- 搬瓦工 $33.83 季 2 核 1GB 20GB SSD 1TB@2.全球[VPS测评]
- EGIHosting→圣何塞服务器每月 60 美元起 1G 无限流量服务全球[VPS测评]
- DMIT 美国 CN2 特价 VPS→原生 IP 可 Netflix 1美国VPS[主机]
- STSDUST→$25 月 2 核 2GB 内存 20GB 空间 10T虚拟空间(主机)
- 百度网盘开源高速下载神器 :BaiduCDP全球[VPS测评]
- SpartanHost(斯巴达)西雅图机房,Cera联通CUVIP线路,全球[VPS测评]
- 华纳云 香港CN2GIA线路 1G内存50G硬盘2M小带宽半年付280元香港VPS[主机]
- BugetNode → 7G内存 70G储存 7T流量 荷兰高配鸡 月付全球[VPS测评]
- Mansora 2018圣诞优惠全球[VPS测评]
- 上新优惠: UOVZ 莞港IPLC 1G 内存 20G SSD 100G全球[VPS测评]
- Linux系统下安装Java JDK全球[VPS测评]
- 免备案服务器对权重和网站排名有影响吗?全球[VPS测评]
- CMCUCT:2核2GB/20GB香港ntt线路vps 6TB流量/1G香港VPS[主机]
- ExCloud:1核256M存/8GB SSD空间/100GB流量/OV虚拟空间(主机)
- 快速云:云计算分类和云计算的特点全球[VPS测评]
- 2021硅云新年献礼活动:香港企业级云服务器2核4G5M仅2888元/5香港VPS[主机]
- 腾讯会议故障了 提示:会议发生异常请重新加入会议全球[VPS测评]
- TabbyCloud:1核512MB内存/20GB/500GB流量/KV香港VPS[主机]
- 尊云:河南BGP云服务器2核4G仅68.6元/月,823.2元/年;香港香港VPS[主机]
- 蓝米云:美国cera vps/香港cn2vps套餐,1核2G/40G/1美国VPS[主机]
- 众创逸云:国庆中秋节大促销优惠,不限流量香港CN2线路VPS 5.9元/香港VPS[主机]
- HostXen:香港/美国/日本直连线路,支持windows系统,送20WINDOWS
转载请注明原文地址:http://140.238.13.167:12355/read-224073.html











