ss panel v3
ss panel v3

注册邮箱白/黑名单

前言

设置的注册有送流量和天数,然后就发现有些人使用临时邮箱注册薅羊毛,自然就想到了设置白/黑名单来放行/拦截特定的邮箱后缀。虽然人家可以注册一些常见的邮箱继续薅,但总归是提高了他们薅羊毛所花费的时间成本了是不是(

思路

通过翻阅源代码我们可以定位到检查邮箱地址是否合法(规范的意思)的文件在网站根目录/app/Utils/Check.php。关于phpfilter_var()函数具体详见这里这里。那么放行/拦截自然要在这里做文章

    public static function isEmailLegal($email)
    {
        if (filter_var($email, FILTER_VALIDATE_EMAIL)) {
                    return true;
            }
        } else {
            return false;
        }
    }

步骤

建立黑白名单。白名单:

qq.com,vip.qq.com,gmail.com,outlook.com,hotmail.com,126.com,139.com,163.com,sina.cn,sina.com,sohu.com

黑名单,常见临时邮箱:

sawoe.com,chacuo.net,027168.com

然后创建一个数组

        $whitelist = array("qq.com", "vip.qq.com", "gmail.com", "outlook.com", "hotmail.com", "126.com", "139.com", "163.com", "sina.cn", "sina.com", "sohu.com"); #白名单
        $blocklist = array("sawoe.com", "chacuo.net", "027168.com"); #黑名单

获取邮箱后缀

            $Mailbox_Suffix = explode('@', $email)[1]; #获取邮箱后缀

根据需要配置规则。白名单机制:邮箱后缀在白名单则放行,规则如下

			if(in_array("$Mailbox_Suffix",$whitelist)){
				return true;
			}

示例配置如下

https://sspanel3.com/wp-content/uploads/2018/05/registered-email-white-or-block-list-1.png

黑名单机制:邮箱后缀不在黑名单则放行,规则如下

			if(!in_array("$Mailbox_Suffix",$blocklist)){
				return true;
			}

示例配置如下

https://sspanel3.com/wp-content/uploads/2018/05/registered-email-white-or-block-list-2.png

然后改提示语。编辑网站根目录/app/Controllers/AuthController.php文件,改一下200行和228行的提示语。我的是

            $res['msg'] = "邮箱无效。您可能填入了不规范的邮箱地址,或是使用了不被允许的临时邮箱。";

然后自己打开浏览器的隐身模式,访问自己的站点,随便编一个邮箱前缀和后缀,然后尝试注册,看看是否符合你设置的白/黑名单拦截规则

效果

https://sspanel3.com/wp-content/uploads/2018/05/registered-email-white-or-block-list-3-300x85.png

发表回复

textsms
account_circle
email

ss panel v3

注册邮箱白/黑名单
前言 设置的注册有送流量和天数,然后就发现有些人使用临时邮箱注册薅羊毛,自然就想到了设置白/黑名单来放行/拦截特定的邮箱后缀。虽然人家可以注册一些常见的邮箱继续薅,但总归是提高…
扫描二维码继续阅读
2018-05-20