Forum Moderators: phranque
#1 # block visitors referred from indicated domains
RewriteCond %{HTTP_REFERER} semalt\.com [NC,OR]
RewriteCond %{HTTP_REFERER} buttons\-for\-website\.com [NC,OR]
RewriteCond %{HTTP_REFERER} make\-money\-online\.7makemoneyonline\.com [NC,OR]
RewriteCond %{HTTP_REFERER} darodar\.com [NC,OR]
RewriteCond %{HTTP_REFERER} econom\.co [NC,OR]
RewriteCond %{HTTP_USER_AGENT} libwww-perl
RewriteRule .* – [F]
"GET / HTTP/1.1" 500 That should be a 403, but we don't know how you have set up your 403s, somewhere it is not quite right. Although a 500 error prevents access, they may try longer than if they got a 403. 217.69.128.0 - 217.69.135.255
MAILRU-NET
deny from 217.69.128.0/20 http://www.blackmoreops.com/2014/12/19/darodar-com-referrer-spam/#tc-comment-title
179.110.3.28 - - [12/Dec/2014:13:46:34 -0700] "GET / HTTP/1.1" 200 10974 "http://make-money-online.7makemoneyonline.com/money.php?u=http://pintotours.net" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/32.0.1700.107 Safari/537.36"
"HTTP/1.1" 500" in your logs. It might be helpful to clear up the errors that are preventing your efforts from serving a 403 if you do post your htaccess file, with the domain name replaced with example.com. You can post lines from your access logs also - again with your domain replaced using "example.com". Just don't dump the whole thing as it is messy to clean up. Best practice is to use [ code ] tags so it doesn't mess up the format. 217.69.133.251 - - [07/Dec/2014:00:12:05 -0700] "GET /robots.txt HTTP/1.1" 200 365 "-" "Mozilla/5.0 (compatible; Linux x86_64; Mail.RU_Bot/2.0; +http://go.mail.ru/help/robots)"
217.69.133.248 - - [07/Dec/2014:00:12:07 -0700] "GET /Pinto/insurance.html HTTP/1.1" 200 3311 "-" "Mozilla/5.0 (compatible; Linux x86_64; Mail.RU_Bot/2.0; +http://go.mail.ru/help/robots)"
217.69.133.21 - - [07/Dec/2014:00:12:10 -0700] "GET /Asia/Indonesia/RamadaBintangMap.html HTTP/1.1" 200 1614 "-" "Mozilla/5.0 (compatible; Linux x86_64; Mail.RU_Bot/2.0; +http://go.mail.ru/help/robots)"
First, it turns out that all this ...ilovevitaly business is just a fake that hits GA without ever accessing my site.
186.225.34.29 - - [20/Dec/2014:14:16:47 -0700] "GET / HTTP/1.1" 500 561 "http://make-money-online.7makemoneyonline.com/money.php?u=http://pintotours.net" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/36.0.1985.143 Safari/537.36"
#Use PHP5.4 Single php.ini as default
AddHandler application/x-httpd-php54s .php
#
AddType text/x-component .htc
#Do not allow access to the directories -For security reasons, Option followsymlinks cannot be overridden.
Options -Indexes +SymLinksIfOwnerMatch
RewriteEngine on
#1 # block visitors referred from indicated domains
RewriteCond %{HTTP_REFERER} semalt\.com [NC,OR]
RewriteCond %{HTTP_REFERER} buttons\-for\-website\.com [NC,OR]
RewriteCond %{HTTP_REFERER} make\-money\-online\.7makemoneyonline\.com [NC,OR]
RewriteCond %{HTTP_USER_AGENT} libwww-perl
RewriteRule .* – [F]
#2 bandwidth theft
RewriteCond %{HTTP_REFERER} !^http://example\.net/
RewriteRule .*\.(jpe?g|gif|png|bmp)$ - [F]
#3 redirects from file that changed name
#3a
RewriteRule ^Pinto/oldindex\.html http://example.net/Pinto/oldindex.php [R=301,L]
# 3b
RewriteRule ^Asia/Indonesia/bali\.html http://example.net/Asia/Indonesia/bali.php [R=301,L]
# 3c
RewriteRule ^Asia/Indonesia/indonesia\.html http://example.net/Asia/Indonesia/indonesia.php [R=301,L]
# 3d
RewriteRule ^Americas/DomRepublic/DomRepublic\.html http://example.net/Americas/DomRepublic/StoDomingo.php [R=301,L]
#4a index redirect
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /([^/]+/)*index\.html
RewriteRule ^(.*)index\.html http://example.net/$1 [R=301,L]
#4b domain-name canonicalization redirect
RewriteCond %{HTTP_HOST} !^(example\.net)?$ [NC]
RewriteRule ^(.*)$ http://example.net/$1 [R=301]
#5
# BEGIN EXPIRES
<IfModule mod_expires.c>
ExpiresActive On
ExpiresDefault "access 1 week"
ExpiresByType text/css "access plus 1 week"
ExpiresByType css/js "access plus 1 week"
ExpiresByType text/plain "access plus 1 week"
ExpiresByType image/gif "access plus 1 month"
ExpiresByType image/png "access plus 1 month"
ExpiresByType image/jpg "access plus 1 month"
ExpiresByType image/jpeg "access plus 1 month"
ExpiresByType application/x-javascript "access plus 1 month"
ExpiresByType text/javascript "access plus 2 month"
ExpiresByType application/javascript "access plus 1 week"
ExpiresByType application/x-icon "access plus 1 year"
</IfModule>
# END EXPIRES
<IfModule mod_deflate.c>
<FilesMatch "\.(js|css|html|php)$">
SetOutputFilter DEFLATE
</FilesMatch>
</IfModule>
#Set charset
<filesMatch "\.(htm|html|css|js|php)$">
AddDefaultCharset UTF-8
</filesMatch>
[edited by: qimqim at 9:54 pm (utc) on Dec 27, 2014]
Here goes the current htaccess
semalt,buttons and makemoneyonline are returning all 500
've been looking at the files in my root directory and there are some files that I inherited from the Host when I joined. They are 400, 401,403,404, and 500 all .shtml and the 500 in .php also
Could this be related to the fact that these blocks are returning 500 instead of 403?
ErrorDocument 403 /yourFileName.html
ErrorDocument 404 /yourFileName.html
ErrorDocument 410 /yourFileName.html
also require an adjustment in CP to designate your NEW custom-error-pages.
Your htaccess does NOT include any
ErrorDocument 403 /yourFileName.html
ErrorDocument 404 /yourFileName.html
ErrorDocument 410 /yourFileName.html
Thus they are being denied, however most likely going into a loop for the non-existent files.
ErrorDocument 403 /forbidden.html
ErrorDocument 404 /missing.html Allow from all, precisely so the server can send out the 403 document even if the request would otherwise be blocked. These lines, assuming they exist, are in the server config file. You can't change them, but you can override them if you know what you are doing. [edited by: phranque at 9:05 pm (utc) on Dec 28, 2014]
[edit reason] no personal domains please [/edit]
RewriteCond: NoCase option for non-regex pattern '-d' is not supported and will be ignored. Which is why we blocks 'em, wherever they claims to be from
the referer listed in GA contains the GA-code in the subdoman-name
RewriteCond: NoCase option for non-regex pattern '-d' is not supported and will be ignored.
Didn't I say something about [NC] earlier? Here fortunately it only means that the flag will be ignored, not the entire line-- or entire RewriteRule, or entire htaccess. But you're racking up an awful lot of this category of error, since the lines have to be read on every request.
#1 # block visitors referred from indicated domains
RewriteCond %{HTTP_REFERER} semalt\.com [NC,OR]
RewriteCond %{HTTP_REFERER} buttons\-for\-website\.com [NC,OR]
RewriteCond %{HTTP_REFERER} make\-money\-online\.7makemoneyonline\.com [NC,OR]
RewriteCond %{HTTP_USER_AGENT} libwww-perl
RewriteRule .* – [F]
The MAIN error_log is a shared log meaning that errors from all websites hosted on the server will be displayed as well as those for your website, be sure to reference your IP when searching this log
I also see what looks like someone at 187.17.106.abc trying to use you as an email proxy. I don't know anything about the IP except that it's in Brazil.
also require an adjustment in CP to designate your NEW custom-error-pages.
I did not get totally the last bit of your post.
There is also recurring refererence to mod_rbl and one ModSecurity. This may explain the 500 errors: If your host uses mod_rbl and/or mod_security to deny requests, it's their choice what error code to return. They might well choose "500".
On what url did you see 500 error? I went to mod security and whitelisted the rule. Can you retry please?
What do they mean by whitelisting the rule?
Your error logs do contain some useful information, though, notably lines such as
RewriteCond: NoCase option for non-regex pattern '-d' is not supported and will be ignored.
Didn't I say something about [NC] earlier? Here fortunately it only means that the flag will be ignored, not the entire line-- or entire RewriteRule, or entire htaccess. But you're racking up an awful lot of this category of error, since the lines have to be read on every request.
RewriteCond %{HTTP_REFERER} semalt\.com [NC,OR]
RewriteCond %{HTTP_REFERER} buttons\-for\-website\.com [NC,OR]
RewriteCond %{HTTP_REFERER} make\-money\-online\.7makemoneyonline\.com [NC,OR]
RewriteCond %{HTTP_USER_AGENT} libwww-perl
RewriteRule .* – [F]
#1a block visitors from indicated IPs
order allow,deny
deny from 78.110.60.230.
allow from all
I don't understand why the range you mentioned. I would have thought the next step would be to deny his host.
Incidentally, I eem to have a dot at the end of the IP address. Should I take it out?
RewriteCond %{HTTP_REFERER} semalt\.com [NC,OR]
RewriteCond %{HTTP_REFERER} buttons\-for\-website\.com [NC,OR]
RewriteCond %{HTTP_REFERER} make\-money\-online\.7makemoneyonline\.com [NC,OR]
RewriteCond %{HTTP_USER_AGENT} libwww-perl
RewriteRule .* – [F]
#1a block visitors from indicated IPs
order allow,deny
deny from 78.110.48.0/24
allow from all