MediaWiki extensions manual
Release status: beta
Implementation Special page , User identity , API
Description Allows IP addresses to be blocked on multiple wikis
Author(s) Andrew Garrett (Werdnatalk)
MediaWiki 1.13-alpha and later
Database changes Yes
Tables globalblocks
License GNU General Public License 2.0 or later
  • $wgGlobalBlockingDatabase
  • $wgGlobalBlockingBlockXFF
  • $wgGlobalBlockingAllowedRanges
  • $wgGlobalBlockRemoteReasonUrl
  • $wgApplyGlobalBlocks
  • $wgGlobalBlockingCIDRLimit
Quarterly downloads 30 (Ranked 128th)
Public wikis using 1,015 (Ranked 250th)
Translate the GlobalBlocking extension if it is available at translatewiki.net
Vagrant role globalblocking
Issues Open tasks · Report a bug

The GlobalBlocking extension allows a user with the appropriate permissions to block an IP address or IP address range (but not accounts) on all wikis in a group sharing the same globalblocking database. It is intended to be used for combating severe cross-wiki vandalism and spam.

Installation edit

  • Download and place the file(s) in a directory called GlobalBlocking in your extensions/ folder.
  • Add the following code at the bottom of your LocalSettings.php file:
    wfLoadExtension( 'GlobalBlocking' );
  • You will also need to create a dedicated database for this extension to work. At a minimum (all wikis running on the same host), you need to create a local database called 'globalblocking' (or specify a different name in $wgGlobalBlockingDatabase), and grant all database users that your wikis run as full permissions on that database (at a minimum, SELECT, UPDATE, INSERT, DELETE).
  • After creating the database, you should import the SQL from tables-generated-globalblocks.sql into the global blocking database.
  • You also need to run update.php on each of your local databases, or otherwise import the SQL schema in tables-generated-global_block_whitelist.sql to them.
  •   Done – Navigate to Special:Version on your wiki to verify that the extension is successfully installed.

Configuration edit

Whether to respect global blocks on this wiki. This is used so that global blocks can be set on one wiki, but not actually applied there (i.e. so people can contest them on that wiki).
The flag $wgGlobalBlockingBlockXFF, set to true by default, causes blocks to apply to all of the IP addresses in the X-Forwarded-For (XFF) header. Set this flag to false to disable this feature. For more details, see task T25343.

API edit

Two API modules are provided, one to (un)block users, and another to view existing global blocks. They are documented at Extension:GlobalBlocking/API.

Usage edit

The following requires appropriate permissions, assigned by default to stewards, which by default can be added or removed by bureaucrats. To make a global block:

  1. Go to Special:GlobalBlock.
  2. Enter the IPv4 address or range (up to /16) that you wish to block (or any IPv6 address or range up to /4 if you made the schema changes prescribed in the installation instructions section of this page or you have the latest revision), and decide if you want to only block anonymous users. To only block anonymous users, check the checkbox.
  3. Submit the form. The IP address or range is now globally blocked on your wikis that opt in to the global blocking. Account creation is blocked (even if you selected "anonymous users only": phab:T42190), and the blocked IP or range cannot edit any associated user talk pages on any wiki affected and opted in to the global block. If Extension:AbuseFilter is installed, globally blocked IP addresses are prohibited from viewing the abuse log if the particular wiki is opted in to the block.

To remove a global block:

  1. Go to Special:GlobalUnblock and click "Remove a global block".
  2. Enter the IP address or range to unblock and the reason, and submit the form. The IP address or range will no longer be globally blocked.

See also edit