前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >利用腾讯云搭建wordPress个人站(四)

利用腾讯云搭建wordPress个人站(四)

原创
作者头像
困惑的三文鱼
修改2022-04-11 10:48:42
6420
修改2022-04-11 10:48:42
举报

续接上一篇,本编之后都是对wordPress站点进行的额外配置,选择喜好看个人了。

首先,重要的话说三遍:

保证wordPress版本最新,插件,主题最新才是重中之重!

保证wordPress版本最新,插件,主题最新才是重中之重!

保证wordPress版本最新,插件,主题最新才是重中之重!

这里本篇推荐一些配置用来增加wordPress的安全性,以尽量减少插件的使用来做。这里推荐一个本地远程工具,wpscan来在云主机上对系统安全性进行扫描。

安装wpscan

确认系统上已经安装了ruby。远程连接到自己的云主机。首先添加个人用户的ruby环境。执行命令:

代码语言:shell
复制
vim ./.bashrc

在文件末尾添加两行:

代码语言:shell
复制
export GEM_HOME="$(ruby -e 'puts Gem.user_dir')"
export PATH="$PATH:$GEM_HOME/bin"

保存退出后,开始安装wpscan。执行命令:

代码语言:shell
复制
sudo apt install ruby-dev
gem install --user-install wpscan

等待安装完成后,去官网根据提示注册账号,可以申请一个api Token,用来显示扫描结果。使用前确认系统在线,即可开启扫描。可以执行下述命令确认系统在线(本地回环):

代码语言:javascript
复制
curl -X GET -i http://127.0.0.1

第一次使用记得更新wpscan,之后再进行扫描

代码语言:javascript
复制
wpscan --update
wpscan --url http://127.0.0.1 --api-token YOUR_TOKEN

把其中的YOUR_TOKEN修改为自己的TOKEN。

针对扫描结果进行修改:1. 隐藏登录界面

这里首先隐藏自己的登录界面。在自己的后台,依次打开工具->主题文件编辑器,在右侧编辑栏选择模板函数,在最下面添加:

代码语言:php
复制
// Redirect WP-Login.php
add_action('login_enqueue_scripts','tb_wp_login_protection');
function tb_wp_login_protection(){
    if( !isset($_GET['12345']) ){
        header( 'Location: ' . home_url() );
        exit;
    }
}

其中,12345更换为自己喜欢的字符串。这样直接访问wp-login.php会被跳转到主页,而真正后台页面地址为wp-login.php?12345。

针对扫描结果进行修改:2. 限制对部分文件的访问

主要用来限制对xmlrpc.php以及wp-cron.php的直接访问。

注意:如无法更新wordpress版本请取消对wp-cron.php的屏蔽。

执行命令:

代码语言:shell
复制
vim /etc/nginx/sites-available/default

在service_name 行下面添加:

代码语言:javascript
复制
location ~* /xmlrpc.php{
    allow 127.0.0.1;
    return 403;
}

location ~* /wp-cron.php{
    allow 127.0.0.1;
    return 403;
}

保存后并执行:

代码语言:shell
复制
sudo nginx -t

确认配置文件正确,并重新加载Nginx

代码语言:shell
复制
sudo systemctl reload nginx

针对扫描结果进行修改:3. 隐藏版本信息

同第一条,在模板函数末尾,添加:

代码语言:php
复制
// remove version from head
remove_action('wp_head','wp_generator');

// remove version from rss
add_filter('the_generator','__return_empty_string');

// remove verion from script and styles
function remove_version_from_wordpress($src){
	if(strpos($src,'ver=')){
		$src = remove_query_arg('ver',$src);
	}
	return $src;
}
add_filter('style_loader_src','remove_version_from_wordpress');
add_filter('script_loader_src','remove_version_from_wordpress');

保存退出即可。此条只能从访问发送的数据中尽可能隐藏版本信息,但仍然能使用wpscan扫描得到版本信息。如需要增加反wpscan的扫描,需要配置自己的防火墙,也可以询问自己的服务提供商。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 安装wpscan
  • 针对扫描结果进行修改:1. 隐藏登录界面
  • 针对扫描结果进行修改:2. 限制对部分文件的访问
  • 针对扫描结果进行修改:3. 隐藏版本信息
相关产品与服务
网站建设
网站建设(Website Design Service,WDS),是帮助您快速搭建企业网站的服务。通过自助模板建站工具及专业设计服务,无需了解代码技术,即可自由拖拽模块,可视化完成网站管理。全功能管理后台操作方便,一次更新,数据多端同步,省时省心。使用网站建设服务,您无需维持技术和设计师团队,即可快速实现网站上线,达到企业数字化转型的目的。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档