很多黑客整天在网上搜索WordPress的登陆地址,然后用各种暴力破解或者扫描工具进行扫描WordPress站点,所以很多时候担心WordPress登陆被攻破,该怎么防护呢?其实通过将Cloudflare Turnstille纳入您的WordPress登录表,您可以通过有效区分人类用户和机器人来提高安全性,而无需让用户承担解决验证码的繁琐任务。这个额外的保护层验证了试图登录的个人的真实性,有效地挫败了暴力攻击。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/wg/51635.html
这些攻击包括自动脚本无情地猜测密码,这可能导致用户账户受损,未经授权访问敏感数据,甚至是完全接管网站。有了Turnstille,你可以加强你WordPress网站的防御,防止这些恶意活动。本教程搬主题将向您展示如何在不使用任何插件的情况下将Cloudflare Turnstile添加到您的WordPress登录表单中的图文教程。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/wg/51635.html
将Cloudflare Turnstile功能添加到WordPress登录表格中
第1步:获取Site Key和Secret Key
在您的网站登录表上实施 Cloudflare Turnstile 的第一步是获得所需的密钥。首先,从注册页面创建一个Cloudflare账户。而一旦你登录了,在Cloudflare仪表板上,点击Turnstile菜单,开始添加你的网站。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/wg/51635.html
在添加网站页面,添加你的网站名称和网站域名,然后选择小工具模式的管理选项。一旦你填写了所有必要的字段,点击 "创建 "按钮即可获得钥匙。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/wg/51635.html
现在,您的Site Key和Secret Key已经准备好,可以在您的网站上设置Cloudflare Turnstile。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/wg/51635.html
第2步:
下一步是添加自定义代码和你从上一步获得的密钥,在你的网站登录表上实现Cloudflare Turnstile。从你的WordPress仪表板导航到外观→主题文件编辑器,然后选择 functions.php 文件。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/wg/51635.html
在你开始向你的主题文件添加这些片段之前,你可能想备份你的网站,以避免破坏你的主题。或者,你可以使用一个子主题或自己为这些片段创建一个插件,以避免在你更新或改变主题时丢失你的改动。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/wg/51635.html
一旦编辑器打开,在文件编辑器的底部添加以下代码,然后将代码中的 "your-site-key "和 "your-secret-key "替换为你之前获得的Site Key和秘密密钥。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/wg/51635.html
// Add CF Turnstile JavaScript on login page
function wpp_login_script() {
wp_register_script('login-turnstile', 'https://challenges.cloudflare.com/turnstile/v0/api.js', false, NULL);
wp_enqueue_script('login-turnstile');
}
add_action('login_enqueue_scripts', 'wpp_login_script');
// Add CF Turnstile on login page
function add_turnstile_on_login_page() {
echo '<div class="cf-turnstile" data-sitekey="your-site-key"></div>';
}
add_action('login_form','add_turnstile_on_login_page');
// Validating CF Turnstile on login page
function turnstile_login_check($user, $password) {
$postdata =$_POST['cf-turnstile-response'];
//add secret key
$secret = 'your-secret-key';
$headers = array(
'body' => [
'secret' => $secret,
'response' => $postdata
]
);
$verify = wp_remote_post('https://challenges.cloudflare.com/turnstile/v0/siteverify', $headers);
$verify = wp_remote_retrieve_body($verify);
$response = json_decode($verify);
if($response->success) {
$results['success'] = $response->success;
} else {
$results['success'] = false;
}
if(empty($postdata)){
wp_die(__("<b>ERROR: </b><b>Please click the challenge checkbox.</b><p><a href='javascript:history.back()'>« Back</a></p>"));
} elseif(!$results['success']){
wp_die(__("<b>Sorry, spam detected!</b>"));
} else {
return $user;
}
}
add_action('wp_authenticate_user', 'turnstile_login_check', 10, 2);
一旦带有您的Site Key和Secret Key的代码设置保存后,请点击更新文件按钮,让Cloudflare Turnstile启动并运行,以保护您的登录表。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/wg/51635.html
最后总结
在您的WordPress登录表上实施Cloudflare Turnstile可以帮助您防止暴力攻击,这种攻击涉及自动化脚本无情地猜测密码,这可能导致用户账户受损,未经授权访问敏感数据,甚至完全接管网站。而这一切都不需要让用户承担解决验证码的繁琐任务。本教程向您展示如何在不使用任何插件的情况下,将Cloudflare Turnstile应用于您的WordPress登录表单。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/wg/51635.html