Go Back   vb.org Archive > vBulletin Modifications > vBulletin 4.x Modifications > vBulletin 4.x Add-ons
FAQ Community Calendar Today's Posts Search

Reply
 
Thread Tools
IPDeny: Country Block List Details »»
IPDeny: Country Block List
Version: 1.01, by Hostboard Hostboard is offline
Developer Last Online: Oct 2023 Show Printable Version Email this Page

Category: Administrative and Maintenance Tools - Version: 4.2.0 Rating:
Released: 12-06-2012 Last Update: 02-05-2014 Installs: 22
Re-useable Code Additional Files  
No support by the author.

There have always been a lot of requests on how to block certain countries from accessing sites due to SPAMMERS, and while there are various modifications here to help weed these wonderful individuals out, they are not fool proof and or cause too many false positives for some.

Another method is to utilize blocking of IP addresses. Unfortunately vBulletin does not support IP prefixes thus you have to either use wild cards or enter each and every IP address you want to block.

So we are left with utilizing .htaccess files as ultimately this might be the most secure way to block these individuals as they will never reach your site. You can even provide them with a custom message if you so desire as well. Of course this also can be circumvented with the use of open Proxy servers but at least we are making them jump through some hoops and possibly making them go find an easier target.

I have taken the zone files from regional IP space providers and listed them into a singular .htaccess file listing each country individually. By default nothing is blocked. All you need to do is to un-remark any country or singular IP address block. Typically what I do is when a spammer registers I look at the IP address then lock out that block trying not to limit the entire country.

This will work with ANY web site that is running an Apache web server or that can utilize a .htaccess file.

Zone files are typically 99.5% accurate and rarely change. I have made every attempt to be careful in compiling this into a single file. However I am human and do make mistakes so I take no responsibility if there is a bad entry or two in there.

7/12/2012
Initial release

2/5/2014
File updated with Gargamello's fixes to my typos.

Download Now

File Type: zip htaccess.zip (366.5 KB, 140 views)

Show Your Support

  • This modification may not be copied, reproduced or published elsewhere without author's permission.
2 благодарности(ей) от:
gargamello, Max Taxable

Comments
  #12  
Old 12-07-2012, 02:43 PM
djbaxter djbaxter is offline
 
Join Date: Aug 2006
Location: Ottawa, Canada
Posts: 2,601
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

How often do you plan to update this list of IP addresses? Because you ARE going to need to do this - often.

Here's a better solution: https://vborg.vbsupport.ru/showthread.php?t=205044
Reply With Quote
  #13  
Old 12-07-2012, 04:01 PM
Hostboard's Avatar
Hostboard Hostboard is offline
 
Join Date: May 2002
Location: CT
Posts: 843
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by djbaxter View Post
How often do you plan to update this list of IP addresses? Because you ARE going to need to do this - often.

Here's a better solution: https://vborg.vbsupport.ru/showthread.php?t=205044
I checked unsupported for a reason... I may update it as my time permits...

Just another solution, whether it is better is up to each individual. Mine is usable across ANY website on ANY platform and is NOT dependent on anything other then the ability to use a .htaccess file.
Reply With Quote
  #14  
Old 12-08-2012, 07:20 AM
doctorsexy's Avatar
doctorsexy doctorsexy is offline
 
Join Date: Mar 2011
Location: earth
Posts: 383
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Smashin....:up:
Reply With Quote
  #15  
Old 01-21-2013, 07:56 AM
firstimecaller's Avatar
firstimecaller firstimecaller is offline
 
Join Date: Feb 2004
Posts: 48
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

will try this out.

anybody else find the avatars in the first two posts kinda hilarious / ironic?

Jesus... looking right, green death looking left... lulz

edit:
Just a tip: If generating a .htaccess deny block is the goal, perhaps it might be easier to use this tool: http://ipinfodb.com/ip_country_block_htaccess.php

If, like me, you need to block just about everybody BUT Europe and the Americas, it's easier than editing and removing a bunch of ampersands, even if you use find/replace in selections in your favorite text editor, since you'll be doing quite a bit of selecting, paging down, etc.

Plus you'll end up with a much smaller file to parse. I don't know what the overhead is for a bunch of comments in a .htaccess file. Another tip would be to put this into your Apache config file if possible to avoid it being loaded/parsed with each and every server request. I know not everyone has access to this on shared server accounts.
Reply With Quote
  #16  
Old 01-21-2013, 11:52 AM
Hostboard's Avatar
Hostboard Hostboard is offline
 
Join Date: May 2002
Location: CT
Posts: 843
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by firstimecaller View Post
will try this out.

anybody else find the avatars in the first two posts kinda hilarious / ironic?

Jesus... looking right, green death looking left... lulz

edit:
Just a tip: If generating a .htaccess deny block is the goal, perhaps it might be easier to use this tool: http://ipinfodb.com/ip_country_block_htaccess.php

If, like me, you need to block just about everybody BUT Europe and the Americas, it's easier than editing and removing a bunch of ampersands, even if you use find/replace in selections in your favorite text editor, since you'll be doing quite a bit of selecting, paging down, etc.

Plus you'll end up with a much smaller file to parse. I don't know what the overhead is for a bunch of comments in a .htaccess file. Another tip would be to put this into your Apache config file if possible to avoid it being loaded/parsed with each and every server request. I know not everyone has access to this on shared server accounts.
That is funny...
Again this is a stand alone .htaccess file. The site you point to utilizes access to their server(s)
  • If his servers go down, this part of the modification will not work.
  • If he decides to close shop this part of the modification will not work.
  • If he decides not to offer the service, this part of the modification will not work.
  • For those on limited bandwidth, it is using their quota up (even minimally)
  • Potential slowdowns with retrieving the information, whether it be many connections to his server or a few too many hops between you and them, or even 1 hop experiencing high latency.
Yes you could put this into your Apache config file and it is wiser to do such but like you said no everyone has that level of access.



I use EditPad Pro as it easily adds or removes prefixes to lines.
Reply With Quote
  #17  
Old 01-21-2013, 12:21 PM
firstimecaller's Avatar
firstimecaller firstimecaller is offline
 
Join Date: Feb 2004
Posts: 48
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

my link simply points to a script which generates the deny block for an .htaccess file. You generate your .htaccess and copy and paste it into your .htaccess appropriately.

there is no linking to another server, or reliance upon anyone else. it is in YOUR .htaccess. It's just a tool to generate the info that you are providing. I found it simpler in my case, so I was just sharing it in case it helped anyone else.

Thanks again for the idea for this, cheers!
Reply With Quote
  #18  
Old 02-01-2014, 09:40 PM
AdjusterGuru AdjusterGuru is offline
 
Join Date: Jan 2014
Posts: 18
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Hostboard, your htaccess file is massive. Will is work on vb 5.0.5?

Would that code be copy pasted in the .htaccess file in the root folder of VB5.0.5 below the following last default entry: </IfModule> ?

Will an htaccess that large slow down the website for users?
Reply With Quote
  #19  
Old 02-02-2014, 04:38 AM
K4GAP K4GAP is offline
 
Join Date: Mar 2008
Posts: 1,255
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by djbaxter View Post
How often do you plan to update this list of IP addresses? Because you ARE going to need to do this - often.

Here's a better solution: https://vborg.vbsupport.ru/showthread.php?t=205044
That "better solution" is for vb 3.8.
Reply With Quote
  #20  
Old 02-02-2014, 08:18 PM
Hostboard's Avatar
Hostboard Hostboard is offline
 
Join Date: May 2002
Location: CT
Posts: 843
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by AdjusterGuru View Post
Hostboard, your htaccess file is massive. Will is work on vb 5.0.5?

Would that code be copy pasted in the .htaccess file in the root folder of VB5.0.5 below the following last default entry: </IfModule> ?

Will an htaccess that large slow down the website for users?
.htaccess is a Linux thing, so as long as you are running some flavor of Linux, it is usable. As for the size vs slow down, there are too many variables to answer this. Best is to try and see what happens
Reply With Quote
  #21  
Old 02-03-2014, 06:57 PM
AdjusterGuru AdjusterGuru is offline
 
Join Date: Jan 2014
Posts: 18
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Thanks Hostboard, I will experiment with that once I go live with the forum. I am on a linux server. How often would it be suggested to update that list?

Question, it looks like the list is a list of ip addresses within each country to block.

Is there a way to block the entire country? Or is there a way to only allow USA visitors in the htaccess file?

FYI, theWordPress plugin "IQ-Block-Country" uses a GeoIP.dat file. I am wondering if that is a list of IP addresses like in your file, but I was unable to open it with MS Office, Visual Studio, DreamWeaver and other programs. Do you know of any free programs to view a .dat file with? (I was unable to upload it with this post).

Thanks again so much!
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 06:55 PM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2024, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.06444 seconds
  • Memory Usage 2,344KB
  • Queries Executed 26 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)ad_showthread_beforeqr
  • (4)bbcode_quote
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)modsystem_post
  • (1)navbar
  • (4)navbar_link
  • (120)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (2)pagenav_pagelink
  • (11)post_thanks_box
  • (2)post_thanks_box_bit
  • (11)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (1)post_thanks_postbit
  • (11)post_thanks_postbit_info
  • (10)postbit
  • (1)postbit_attachment
  • (11)postbit_onlinestatus
  • (11)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open
  • (1)tagbit_wrapper 

Phrase Groups Available:
  • global
  • inlinemod
  • postbit
  • posting
  • reputationlevel
  • showthread
Included Files:
  • ./showthread.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/functions_reputation.php
  • ./includes/functions_post_thanks.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • showthread_start
  • showthread_getinfo
  • forumjump
  • showthread_post_start
  • showthread_query_postids
  • showthread_query
  • bbcode_fetch_tags
  • bbcode_create
  • showthread_postbit_create
  • postbit_factory
  • postbit_display_start
  • post_thanks_function_post_thanks_off_start
  • post_thanks_function_post_thanks_off_end
  • post_thanks_function_fetch_thanks_start
  • fetch_musername
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • post_thanks_function_fetch_thanks_bit_start
  • post_thanks_function_show_thanks_date_start
  • post_thanks_function_show_thanks_date_end
  • post_thanks_function_fetch_thanks_bit_end
  • post_thanks_function_fetch_post_thanks_template_start
  • post_thanks_function_fetch_post_thanks_template_end
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_attachment
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • pagenav_page
  • pagenav_complete
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete