Forum Replies Created

Viewing 12 replies - 1 through 12 (of 12 total)
  • Hi.
    To know the name of the robot and the IP I wrote a small topic that is really helpfful to me.
    https://www.ads-software.com/support/topic/site-lockout-notifications-2/?view=all#post-12736470
    May be It could help to identify them and block some.

    The method that I describe does not replace the security implemented with All In One Security, it’s really just a complement. Very useful for me (and many others who use it) but thanks to this method I was able to identify a lot of robots to block and I blocked them by following.
    Otherwise, you have to look at the site access log files and see if there are “200” results in requests to access the admin page.
    If there are “200” results, it means that they were able to access the admin.

    I Often have the same problem. I noticed it since a long time, but, as far as I don’t have other problems, I didn’t care about it.
    May be I’m wrong.

    Hi,
    Reading this post, I see a problem with the wrong robots.
    For that, I found a solution, initially given for Prestashop, by Webbax, but which I use in exactly the same way on WordPress, and it works of thunder.
    For this to work, you must have access to the site’s log files, in order to find the user agents of the bots. In Notepad ++ (for example), I look for the words “bot” or else “crawl” to find them. Then, I just add them in the code that I put you
    And it is acting directly at the level of the index.php file in order to act above all

    You must replace the entire index.php file with the content of the code I give you after (in fact, the code I put you contains all the code to put: that of Webbax + riginal code of the file “index.php “WordPress), that’s why you have to replace all the content. If you are afraid of making a mistake, first save your original index.php file.

    In production, at the root of the site, a “RobotsDebug.txt” file will be created which will list all the robot connections. Compared to the method of Webbax, I added a code allowing to recover in addition, the IP address of the robot, in order, possibly, to be able to make precise blockings of robots & hackers (even if they use proxy servers …)

    <?php
    /**
     * Front to the WordPress application. This file doesn't do anything, but loads
     * wp-blog-header.php which does and tells WordPress to load the theme.
     *
     * @package WordPress
     */
    
    /**
     * Tells WordPress to load the WordPress theme and output it.
     *
     * @var bool
     */
    
    /* Webbax - TUTO 69 - Sécurité antibots */
    $logs = true;
    if($logs){
        $filename = "robotsDEBUG.txt";
        $log_file = fopen($filename, "a+") or die("Unable to open file!");
    }
    
    $bad_bots = array('AhrefsBot','SEOkicks','SemrushBot','MJ12bot','YandexBot','istellabot','Seekport Crawler','MegaIndex','ZoominfoBot','Sogou web spider','CCBot','Go-http-client','SearchAtlas','SeznamBot','Nimbostratus-Bot','SEOkicks','AspiegelBot','serpstatbot','CATExplorador','MojeekBot','crawler4j','https://sar-pravo.ru/','https://avtolombard-voronezh.ru/','https://go.mail.ru/help/robots','VelenPublicWebCrawler','Specificfeeds','SiteLockSpider','Datanyze','Dataprovider','Pandalytics','rc-crawler','AlphaBot','google-xrawler','zgrab','alibaba');
    $user_agent = $_SERVER['HTTP_USER_AGENT']."\n";
    $ip = $_SERVER["REMOTE_ADDR"];
     if ($deep_detect) {
                if (filter_var(@$_SERVER['HTTP_X_FORWARDED_FOR'], FILTER_VALIDATE_IP))
                    $ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
                if (filter_var(@$_SERVER['HTTP_CLIENT_IP'], FILTER_VALIDATE_IP))
                    $ip = $_SERVER['HTTP_CLIENT_IP'];
            }
            
    if($logs){
        fwrite($log_file,date('Y-m-d H:i:s').' - '.$user_agent. $ip.' - ');
        fclose($log_file);
    }
    
    foreach($bad_bots as $bad_bot){
        if(strpos($user_agent,$bad_bot)!==false){
            if($logs){
                $log_file = fopen($filename,"a+") or die("Unable to open file!");
                fwrite($log_file,date('Y-m-d H:i:s').' - '."BLOCKED : ".$bad_bot."\n");
                fclose($log_file);
            }
            die('blocked bot');
        }
    }
    /* --- */ 
    
    require(dirname(__FILE__).'/config/config.inc.php');
    Dispatcher::getInstance()->dispatch();
    

    In the code, there is the line $bad_bots = array('AhrefsBot','SEOkicks','SemrushBot','MJ12bot','YandexBot','istellabot','Seekport Crawler','MegaIndex','ZoominfoBot','Sogou web spider','CCBot','Go-http-client','SearchAtlas','SeznamBot','Nimbostratus-Bot','SEOkicks','AspiegelBot','serpstatbot','CATExplorador','MojeekBot','crawler4j','https://sar-pravo.ru/','https://avtolombard-voronezh.ru/','https://go.mail.ru/help/robots','VelenPublicWebCrawler','Specificfeeds','SiteLockSpider','Datanyze','Dataprovider','Pandalytics','rc-crawler','AlphaBot','google-xrawler','zgrab','alibaba');

    This is where the robots to be blocked are listed.
    When you have a robot to block, at the end of the last one – alibaba in my list – you only have to add a comma, then, the quotes of key 4, the name of the bot to block then close the quotes, which gives for example:, ‘bot’
    For example, if I wanted to add Google to the list of robots to block – but do not do that if you value your SEO – the code in this line would become:
    $bad_bots = array('AhrefsBot','SEOkicks','SemrushBot','MJ12bot','YandexBot','istellabot','Seekport Crawler','MegaIndex','ZoominfoBot','Sogou web spider','CCBot','Go-http-client','SearchAtlas','SeznamBot','Nimbostratus-Bot','SEOkicks','AspiegelBot','serpstatbot','CATExplorador','MojeekBot','crawler4j','https://sar-pravo.ru/','https://avtolombard-voronezh.ru/','https://go.mail.ru/help/robots','VelenPublicWebCrawler','Specificfeeds','SiteLockSpider','Datanyze','Dataprovider','Pandalytics','rc-crawler','AlphaBot','google-xrawler','zgrab','alibaba','google');

    Regularly monitor the RobotsDEBUG.txt file because it will quickly become huge (it all depends on the number of visitors to your site).
    Leave the file for example, over a week to see which bots are passing on your site in order to block it.
    In the robotsDEBUG.txt file, you will find lines like this:

    2020-04-20 01:24:49 - Mozilla/5.0 (compatible; YandexBot/3.0; +https://yandex.com/bots)
    2020-04-20 01:24:49 - BLOCKED : YandexBot

    At the bottom, the name of the blocked robot and above, the list of blockings of this robot.
    Add all the robots you want to block here.
    When you think you have them all, in the code in the index.php file, replace $logs=true; with $logs=false;. This will stop event logging and the robotsDEBUG.txt file will no longer grow.

    There are regular new bots, so re-enable the robotsDEBUG.txt file from time to time to find the new bots.
    As you see in the example that I use on one of my client sites, we can also block url directly (usually from Russia or China)

    Si vous voulez lire l’article et voir la vidéo (en Fran?ais – Suisse), je vous mets le lien.
    Ces explications seront plus claires que les miennes surement.
    Mais en tout ca, ca fonctionne parfaitement bien.

    If you want to read the article and see the video (in French – Switzerland), I put the link.
    These explanations will be clearer than mine surely (https://www.webbax.ch/2019/02/14/prestashop-1-7-boostez-hebergement-ep-69/)
    But in all of that, it works perfectly well (and don’t foreget : he explains for Prestashop, but it also works with WordPress).

    Yep, something else: once you have finished modifying your index.php file, save it because each time WordPress is updated, you will have to restore it since WordPress, when updating, remits its own index.php file.
    Well, I hope it will help some.

    Thread Starter jgd24

    (@jgd24)

    May be because I’m the only one to watch logs… I don’t know.
    I enabled all the feature. I Saw the problem, so I Thought I’ve done something wrong. For this reason, I used Reset plugin.
    So I set-up AIOSWP once again and I enabled all the features.
    And in the logs I have this :
    [2020-04-10 22:31:01] – NOTICE : block_fake_googlebots(): IP address = 66.249.66.200

    So I don’t know what happen.
    And since I have reset the plguin, I keep getting 500 errors. However, I followed, step by step, each of the reset steps.

    I have already done this on other sites and the reset went very well. So I don’t think the problem comes from this step.

    There may be a compatibility problem with one of the other plugins I use, I don’t know, but it’s annoying.

    I spend between half an hour and an hour to log into the site administration each time. I still have to do some work on the .htaccess, tweak it, to finally manage to connect.

    Most of the time I do this by removing the cache rules that go into htaccess. But I tried with several different cache plugins, and the problem always returns regardless of the plugin (WP Total Cache, LS cache, HummingBird, W3C Total cache, etc).
    The only times when I don’t have a connection problem is when I deactivate AIOSWP.
    However, there is no reason to do so. The plugin works perfectly well on all the other sites I use.

    Whenever I am on the site, I re-record each stage of AIOSWP. I am trying to connect from another browser to another computer and everything is fine.

    And the next day or the day after that, when I try to come back to the site, I am again overcome with connection problems.

    I do not know what to do.

    Regards,
    Jerome

    jgd24

    (@jgd24)

    Hello,
    I encounter the same problem on my wordpress, but when I try to follow the instructions mentioned above, the AIOWPS Resset plugin denies me access, telling me that I do not have permission to access this page. However, I am the only user with the administrator role.

    I can not do a reset.

    What manipulations can I follow to solve my problem?

    I thank you in advance for your help.

    Jer?me

    jgd24

    (@jgd24)

    Yes, excuse me, it works for me too.
    But there is a new problem…
    The plugin can’t be found any more on WordPress!
    Or, if you have a link?….
    It will be welcome!

    Hello,
    I’d like to do something like that too.
    Has anybody the answer to this problem?

    Thanks for help

    May be you choose recaptcha. If you did you have to set it with google ap key.
    If you don’t set the google ap key (private and public) the button remains hidden

    May be you choose recaptcha.
    If you did you have to set it with google ap key.
    If you don’t set the googla ap key (private and public) the button remains hidden

    Thread Starter jgd24

    (@jgd24)

    In know that, but ther is a problem.
    As I wrote, i’m loking for a plugin that can Insert the name of the sucbscriber into the image, or, if you prefer, a plugin that can create a new image including the name of the subscriber?
    MailPoet, I already tried can’t do that.
    But thank for the suggestion.

    I’ve had the same problem.
    It a problem with the account. You should have another account to log in wordpress. An administrator account.
    Use this one to log in wordpress and you should be able to access to the administration

    Hi,

    I had the same problem.
    I applied the replacement, and it works.
    But a new problem appeared in the “contact form” section in WordPress panel andminsitration.
    I had these message :
    Warning: require_once(/homepages/32/d328899264/htdocs/wp2014/wp-content/plugins/easy-contact-forms/styles//easy-contact-forms-getstyle.php): failed to open stream: No such file or directory in /homepages/32/d328899264/htdocs/wp2014/wp-content/plugins/easy-contact-forms/easy-contact-forms.php on line 554

    Fatal error: require_once(): Failed opening required ‘/homepages/32/d328899264/htdocs/wp2014/wp-content/plugins/easy-contact-forms/styles//easy-contact-forms-getstyle.php’ (include_path=’.:/usr/lib/php5.5′) in /homepages/32/d328899264/htdocs/wp2014/wp-content/plugins/easy-contact-forms/easy-contact-forms.php on line 554

    Can anyone help?

Viewing 12 replies - 1 through 12 (of 12 total)