├── nginx ├── nginx_spamhaus_drop_list.conf └── drop_list.conf ├── nginx-drop-fetch └── README.md /nginx/nginx_spamhaus_drop_list.conf: -------------------------------------------------------------------------------- 1 | #-*- mode: nginx; mode: flyspell-prog; mode: autopair; ispell-local-dictionary: "american" -*- 2 | 3 | ### Configuration for blocking all the netblocks listed on the 4 | ### spamhaus DROP and EDROP lists. See http://www.spamhaus.org/drop. 5 | 6 | geo $is_spamhaus_drop { 7 | default 0; 8 | ## Including the list. 9 | include drop_list.conf; 10 | } 11 | -------------------------------------------------------------------------------- /nginx-drop-fetch: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | ### Simple shell script to create a list of IPs suitable for the Nginx 4 | ### geo module http://nginx.org/en/docs/http/ngx_http_geo_module.html 5 | ### based on the Spamhaus DROP and EDROP lists. See 6 | ### http://www.spamhaus.org/drop. 7 | 8 | SCRIPTNAME=${0##*/} 9 | CURL=$(command -v curl) || exit 0 10 | 11 | ## The lists URIs and respective filenames. 12 | DROP_URI=http://www.spamhaus.org/drop/drop.txt 13 | DROP_FILENAME=$(basename $DROP_URI) 14 | EDROP_URI=http://www.spamhaus.org/drop/edrop.txt 15 | EDROP_FILENAME=$(basename $EDROP_URI) 16 | 17 | function print_usage() { 18 | echo "Usage: $SCRIPTNAME [output file]" 19 | } 20 | 21 | ## Get the drop list using cURL. 22 | ## $1: the list URI. 23 | function get_drop_list() { 24 | $CURL -s -O $1 25 | } 26 | 27 | ## Get the expire date in UNIX epoch format. 28 | ## $1: the list file. 29 | function get_list_expire_date() { 30 | echo $(date --date="$(sed -n 's/^.*Expires:\(.*\)$/\1/p' $1)" '+%s') 31 | } 32 | 33 | ## Get the list date. 34 | ## $1: the list file. 35 | function get_list_date() { 36 | echo $(date --date="$(sed -n 's/^.*Last-Modified:\(.*\)$/\1/p' $1)" '+%s') 37 | } 38 | 39 | ## Format the list according to Nginx geo module format. 40 | ## $1: the list file. 41 | function format_geo_ips() { 42 | sed -e '/^;/d' -e 's/;/1; #/g' $1 43 | } 44 | 45 | ## Get the list headers. Last-Modified and Expires date. 46 | ## $1: the list file. 47 | function print_list_headers() { 48 | sed -n 's/^; \(.*\)$/# \1/p' $1 49 | } 50 | 51 | ## Process each list. 52 | ## $1: output filename. 53 | ## $2: list filename. 54 | ## $3: list URI. 55 | function process_lists() { 56 | get_drop_list $3 57 | ## Write the DROP/EDROP list file for Nginx geo. 58 | if [ "$4" = "append" ]; then 59 | print_list_headers $2 >> $1 60 | else 61 | print_list_headers $2 > $1 62 | fi 63 | format_geo_ips $2 >> $1 64 | } 65 | 66 | ## Echo the number of added lines to a particular file. 67 | ## #1: drop list file. 68 | function print_added_lines() { 69 | echo $(wc -l $1) | awk '{print "File " $2 " adding " $1 - 3 " networks"}' 70 | } 71 | 72 | ## Check the number of arguments. 73 | if [ $# -gt 1 ]; then 74 | print_usage 75 | exit 1 76 | fi 77 | 78 | ## Get the output filename. 79 | OUTPUT_FILE=${1-/etc/nginx/drop_list.conf} 80 | WRITTEN_FILE="no" 81 | 82 | ## If the file doesn't exist create it and process the lists. 83 | if [ ! -f $OUTPUT_FILE ]; then 84 | process_lists $OUTPUT_FILE $DROP_FILENAME $DROP_URI 85 | print_added_lines $DROP_FILENAME 86 | process_lists $OUTPUT_FILE $EDROP_FILENAME $EDROP_URI "append" 87 | print_added_lines $EDROP_FILENAME 88 | WRITTEN_FILE="yes" 89 | fi 90 | 91 | ## Grab the drop files if the Expire date of the current list has 92 | ## passed already. 93 | if [ "$(get_list_expire_date $DROP_FILENAME)" -lt "$(date '+%s')" ]; then 94 | process_lists $OUTPUT_FILE $DROP_FILENAME $DROP_URI 95 | print_added_lines $DROP_FILENAME 96 | WRITTEN_FILE="yes" 97 | fi 98 | 99 | ## Ditto for the extended drop list. 100 | if [ "$(get_list_expire_date $EDROP_FILENAME)" -lt "$(date '+%s')" ]; then 101 | process_lists $OUTPUT_FILE $EDROP_FILENAME $EDROP_URI "append" 102 | print_added_lines $EDROP_FILENAME 103 | WRITTEN_FILE="yes" 104 | fi 105 | 106 | ## Write a message about the writing of the file. 107 | if [ "$WRITTEN_FILE" = "yes" ]; then 108 | echo "File $OUTPUT_FILE written." 109 | fi 110 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Nginx configuration for using the Spamhaus DROP list 2 | 3 | ## Introduction 4 | 5 | This is a simple shell script that downloads the Spamhaus 6 | [DROP and EDROP](http://www.spamhaus.org/drop/) lists and creates a 7 | file that is used by Nginx 8 | [`geo`](http://nginx.org/en/docs/http/ngx_http_geo_module.html#geo) 9 | directive. 10 | 11 | It's up to you to handle the **reloading** of the configuration so that 12 | new netblocks are taken in consideration. The script obeys the lists 13 | **expiration** date. So when you run the script new lists are 14 | downloaded if the expiration has already passed. 15 | 16 | The `geo` directive is only allowed at the `http` level context. So 17 | you have to include the file `nginx/nginx_spamhaus_drop_list.conf` at 18 | that level: 19 | 20 | http { 21 | 22 | ... 23 | 24 | ## Include the Spamhaus DROP lists. 25 | include nginx_spamhaus_drop_list.conf; 26 | 27 | ... 28 | } 29 | 30 | If using a debian like architecture where there's a `/etc/nginx` the 31 | `nginx_spamhaus_drop_list.conf` file should be in `/etc/nginx`. As 32 | per the file with the list I recommend that you place it also 33 | there. This way only a **privileged** user can update the list. 34 | 35 | ## Installation 36 | 37 | 1. Clone the repository: 38 | 39 | git clone git://github.com/perusio/nginx-spamhaus-drop.git 40 | 41 | 2. Invoke the script: 42 | 43 | ./nginx-drop-fetch 44 | 45 | This creates a file `drop_list.conf` in `/etc/nginx`. Note that 46 | you need to be **root** (or use `sudo`) to do this. 47 | 48 | 3. Include the file in your Nginx configuration at the `http` 49 | level. 50 | 51 | 4. For **each** vhost that you wish to be blocked by requests coming 52 | from the netblocks listed in the Spamhaus DROP lists add the 53 | following at the `server` level: 54 | 55 | if ($is_spamhaus_drop) { 56 | return 444; 57 | } 58 | 59 | This will make Nginx **close the connection** for all requests 60 | that come from IPs listed in the Spamhaus DROP list. 61 | 62 | ## Updating the list 63 | 64 | Updating the list requires **reloading** the Nginx configuration. If 65 | you run a **high-traffic** site reloading the configuration will make 66 | Nginx 67 | [creates new workers](http://nginx.org/en/docs/control.html#reconfiguration) 68 | and opens new sockets while servicing the requests in progress. Hence 69 | **reloading** the configuration is **expensive** and shouldn't be 70 | taken lightly. 71 | 72 | My suggestion is to do it automatically once a day by 73 | a cronjob if your site is a low traffic site. Otherwise do it 74 | whenever you need to do it, manually. 75 | 76 | There's no one size fits all for the reloading (updating the 77 | configuration) it depends on your needs and setup. 78 | 79 | Another aproach is to use [monit](http://mmonit.com) with the 80 | [`timestamp`](http://mmonit.com/monit/documentation/monit.html#timestamp_testing) 81 | test and do a reload if the timestamp on the file changes. It assumes 82 | that the DROP list updated either automatically or manually. As soon 83 | as the timestamp of `drop_list.conf` changes the Nginx configuration 84 | is reloaded. 85 | 86 | ## Placing the DROP list elsewhere 87 | 88 | By default the `drop_list.conf` file is written on `/etc/nginx` if you 89 | wish to place it elsewhere than pass it to the script. 90 | 91 | ./nginx-drop-fetch /path/to/drop_list.conf 92 | 93 | You have to adjust the line in `nginx_spamhaus_drop_list.conf` to 94 | reflect the new path. Use an **absolute path**. For example: 95 | 96 | geo $is_spamhaus_drop { 97 | default 0; 98 | ## Including the list. 99 | include /path/to/drop_list.conf; 100 | } 101 | 102 | ## TODO 103 | 104 | Include example monit config for reloading Nginx. 105 | 106 | 107 | ## License 108 | 109 | Copyright (C) 2012 António P. P. Almeida 110 | 111 | Redistribution and use in source and binary forms, with or without 112 | modification, are permitted provided that the following conditions 113 | are met: 114 | 115 | 1. Redistributions of source code must retain the above copyright 116 | notice, this list of conditions and the following disclaimer. 117 | 118 | 2. Redistributions in binary form must reproduce the above copyright 119 | notice, this list of conditions and the following disclaimer in the 120 | documentation and/or other materials provided with the distribution. 121 | 122 | THIS SOFTWARE IS PROVIDED BY AUTHOR AND CONTRIBUTORS "AS IS" AND ANY 123 | EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 124 | IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 125 | PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL AUTHOR OR CONTRIBUTORS BE 126 | LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 127 | CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 128 | SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR 129 | BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 130 | WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE 131 | OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN 132 | IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 133 | -------------------------------------------------------------------------------- /nginx/drop_list.conf: -------------------------------------------------------------------------------- 1 | # Spamhaus DROP List 09/23/12 - (c) 2012 The Spamhaus Project 2 | # Last-Modified: Fri, 21 Sep 2012 10:48:09 GMT 3 | # Expires: Mon, 24 Sep 2012 05:01:19 GMT 4 | 5.34.242.0/24 1; # SBL154880 5 | 14.192.0.0/19 1; # SBL123577 6 | 14.192.48.0/21 1; # SBL131019 7 | 14.192.56.0/22 1; # SBL131020 8 | 31.11.43.0/24 1; # SBL113323 9 | 31.14.103.0/24 1; # SBL139458 10 | 31.42.128.0/19 1; # SBL109886 11 | 31.131.248.0/21 1; # SBL154982 12 | 31.131.255.0/24 1; # SBL153883 13 | 31.135.0.0/21 1; # SBL137007 14 | 31.184.242.0/24 1; # SBL152105 15 | 31.222.200.0/21 1; # SBL111681 16 | 37.9.58.0/24 1; # SBL136890 17 | 37.148.216.0/21 1; # SBL134712 18 | 37.230.212.0/24 1; # SBL144147 19 | 58.83.8.0/22 1; # SBL67465 20 | 62.122.32.0/21 1; # SBL73243 21 | 62.122.72.0/23 1; # SBL89541 22 | 62.182.152.0/21 1; # SBL83337 23 | 64.15.0.0/20 1; # SBL84899 24 | 64.28.176.0/20 1; # SBL146309 25 | 64.44.0.0/16 1; # SBL90974 26 | 64.112.0.0/17 1; # SBL90972 27 | 64.112.128.0/18 1; # SBL90973 28 | 66.231.64.0/20 1; # SBL108610 29 | 67.210.0.0/20 1; # SBL146308 30 | 67.211.208.0/20 1; # SBL74177 31 | 67.213.128.0/20 1; # SBL72074 32 | 67.218.208.0/20 1; # SBL79149 33 | 68.232.96.0/20 1; # SBL135536 34 | 72.13.16.0/20 1; # SBL83151 35 | 72.50.192.0/19 1; # SBL69515 36 | 78.31.184.0/21 1; # SBL83336 37 | 79.110.16.0/20 1; # SBL83334 38 | 79.110.48.0/20 1; # SBL81903 39 | 79.110.160.0/20 1; # SBL67820 40 | 79.110.176.0/20 1; # SBL79067 41 | 79.174.0.0/19 1; # SBL95007 42 | 81.22.152.0/23 1; # SBL92875 43 | 84.22.96.0/19 1; # SBL99505 44 | 85.120.94.0/23 1; # SBL118978 45 | 85.121.39.0/24 1; # SBL111502 46 | 85.202.160.0/20 1; # SBL95006 47 | 85.202.192.0/20 1; # SBL83332 48 | 85.255.112.0/20 1; # SBL146300 49 | 86.55.140.0/24 1; # SBL134477 50 | 86.55.210.0/23 1; # SBL97433 51 | 88.135.16.0/20 1; # SBL112063 52 | 89.45.14.0/24 1; # SBL110099 53 | 89.114.9.0/24 1; # SBL88575 54 | 89.114.97.0/24 1; # SBL94487 55 | 91.193.110.0/23 1; # SBL137424 56 | 91.193.192.0/22 1; # SBL95467 57 | 91.194.0.0/23 1; # SBL92210 58 | 91.194.214.0/23 1; # SBL121324 59 | 91.195.10.0/23 1; # SBL123624 60 | 91.195.254.0/23 1; # SBL153480 61 | 91.196.216.0/22 1; # SBL117725 62 | 91.196.232.0/22 1; # SBL60122 63 | 91.197.96.0/22 1; # SBL67504 64 | 91.198.109.0/24 1; # SBL87568 65 | 91.198.127.0/24 1; # SBL91051 66 | 91.200.164.0/22 1; # SBL83164 67 | 91.200.176.0/22 1; # SBL129227 68 | 91.200.240.0/22 1; # SBL99794 69 | 91.200.248.0/22 1; # SBL83326 70 | 91.201.4.0/22 1; # SBL87569 71 | 91.201.124.0/22 1; # SBL82375 72 | 91.201.236.0/22 1; # SBL94054 73 | 91.203.92.0/22 1; # SBL65512 74 | 91.204.40.0/21 1; # SBL102591 75 | 91.208.162.0/24 1; # SBL68740 76 | 91.208.228.0/24 1; # SBL85021 77 | 91.209.14.0/24 1; # SBL69636 78 | 91.209.48.0/24 1; # SBL74708 79 | 91.209.58.0/24 1; # SBL73115 80 | 91.209.63.0/24 1; # SBL103115 81 | 91.209.183.0/24 1; # SBL80244 82 | 91.209.184.0/24 1; # SBL71669 83 | 91.209.186.0/24 1; # SBL73228 84 | 91.209.238.0/24 1; # SBL92238 85 | 91.210.172.0/22 1; # SBL71956 86 | 91.211.64.0/22 1; # SBL70438 87 | 91.211.88.0/22 1; # SBL71163 88 | 91.212.41.0/24 1; # SBL89313 89 | 91.212.45.0/24 1; # SBL73397 90 | 91.212.65.0/24 1; # SBL73329 91 | 91.212.107.0/24 1; # SBL82098 92 | 91.212.123.0/24 1; # SBL78564 93 | 91.212.135.0/24 1; # SBL97610 94 | 91.212.198.0/24 1; # SBL79300 95 | 91.212.201.0/24 1; # SBL76662 96 | 91.212.220.0/24 1; # SBL87278 97 | 91.213.29.0/24 1; # SBL80031 98 | 91.213.72.0/24 1; # SBL78805 99 | 91.213.93.0/24 1; # SBL78807 100 | 91.213.94.0/24 1; # SBL78806 101 | 91.213.121.0/24 1; # SBL80042 102 | 91.213.157.0/24 1; # SBL110199 103 | 91.213.174.0/24 1; # SBL83028 104 | 91.213.175.0/24 1; # SBL88767 105 | 91.213.217.0/24 1; # SBL93912 106 | 91.216.3.0/24 1; # SBL89504 107 | 91.216.11.0/24 1; # SBL90610 108 | 91.216.73.0/24 1; # SBL94964 109 | 91.216.122.0/24 1; # SBL94367 110 | 91.216.190.0/24 1; # SBL106144 111 | 91.217.162.0/24 1; # SBL99838 112 | 91.217.178.0/24 1; # SBL125774 113 | 91.217.200.0/24 1; # SBL136032 114 | 91.217.249.0/24 1; # SBL97861 115 | 91.220.62.0/24 1; # SBL137409 116 | 91.220.90.0/24 1; # SBL102674 117 | 91.228.39.0/24 1; # SBL154879 118 | 91.228.132.0/24 1; # SBL123625 119 | 91.229.46.0/23 1; # SBL125626 120 | 91.229.156.0/22 1; # SBL136999 121 | 91.229.248.0/24 1; # SBL150034 122 | 91.230.111.0/24 1; # SBL122290 123 | 91.230.143.0/24 1; # SBL127897 124 | 91.230.147.0/24 1; # SBL137132 125 | 91.235.2.0/24 1; # SBL153758 126 | 91.236.120.0/24 1; # SBL147831 127 | 91.236.121.0/24 1; # SBL155029 128 | 91.237.91.0/24 1; # SBL137000 129 | 91.237.92.0/23 1; # SBL137002 130 | 91.237.249.0/24 1; # SBL143626 131 | 91.238.82.0/24 1; # SBL154617 132 | 91.238.180.0/23 1; # SBL138982 133 | 91.239.15.0/24 1; # SBL151316 134 | 91.239.24.0/24 1; # SBL147711 135 | 91.240.165.0/24 1; # SBL151876 136 | 91.243.115.0/24 1; # SBL156443 137 | 92.249.0.0/18 1; # SBL110614 138 | 93.120.32.0/19 1; # SBL86549 139 | 93.168.18.0/23 1; # SBL86334 140 | 93.168.20.0/23 1; # SBL86333 141 | 93.168.22.0/23 1; # SBL86332 142 | 93.168.24.0/23 1; # SBL86331 143 | 93.174.164.0/24 1; # SBL90816 144 | 93.175.240.0/20 1; # SBL83333 145 | 93.188.160.0/21 1; # SBL146305 146 | 94.60.121.0/24 1; # SBL112755 147 | 94.60.122.0/23 1; # SBL112756 148 | 94.61.247.0/24 1; # SBL117693 149 | 94.63.146.0/24 1; # SBL105877 150 | 94.63.147.0/24 1; # SBL127815 151 | 94.63.149.0/24 1; # SBL108102 152 | 94.63.150.0/23 1; # SBL107641 153 | 94.63.240.0/24 1; # SBL98156 154 | 94.63.241.0/24 1; # SBL99919 155 | 94.63.243.0/24 1; # SBL103029 156 | 94.63.244.0/24 1; # SBL103030 157 | 94.63.245.0/24 1; # SBL96901 158 | 94.63.246.0/24 1; # SBL101918 159 | 94.63.247.0/24 1; # SBL98154 160 | 94.130.0.0/15 1; # SBL83315 161 | 94.154.128.0/18 1; # SBL67819 162 | 94.158.240.0/20 1; # SBL81904 163 | 94.232.248.0/21 1; # SBL73242 164 | 95.64.11.0/24 1; # SBL110202 165 | 95.64.13.0/24 1; # SBL105179 166 | 95.64.37.0/24 1; # SBL111503 167 | 95.64.38.0/24 1; # SBL111504 168 | 95.64.39.0/24 1; # SBL111505 169 | 95.64.98.0/23 1; # SBL90817 170 | 95.215.140.0/22 1; # SBL98152 171 | 95.216.0.0/15 1; # SBL83308 172 | 103.10.68.0/22 1; # SBL131017 173 | 103.246.72.0/22 1; # SBL145399 174 | 109.94.208.0/20 1; # SBL84898 175 | 110.44.128.0/20 1; # SBL79386 176 | 110.232.160.0/20 1; # SBL79387 177 | 113.20.160.0/19 1; # SBL79384 178 | 116.197.152.0/21 1; # SBL131021 179 | 116.199.128.0/19 1; # SBL56563 180 | 121.46.64.0/18 1; # SBL72673 181 | 122.202.96.0/19 1; # SBL87493 182 | 128.168.0.0/16 1; # SBL51908 183 | 128.199.0.0/16 1; # SBL62478 184 | 129.76.64.0/18 1; # SBL101405 185 | 130.201.0.0/16 1; # SBL101200 186 | 130.222.0.0/16 1; # SBL101196 187 | 132.145.0.0/16 1; # SBL101575 188 | 132.232.0.0/16 1; # SBL9176 189 | 134.23.0.0/16 1; # SBL101571 190 | 134.33.0.0/16 1; # SBL7097 191 | 134.127.0.0/16 1; # SBL101572 192 | 134.172.0.0/16 1; # SBL101573 193 | 134.209.0.0/16 1; # SBL101574 194 | 136.228.0.0/16 1; # SBL89254 195 | 138.43.0.0/16 1; # SBL69354 196 | 139.167.0.0/16 1; # SBL64740 197 | 140.170.0.0/16 1; # SBL79701 198 | 141.136.16.0/24 1; # SBL126664 199 | 141.136.17.0/24 1; # SBL124450 200 | 141.136.22.0/24 1; # SBL115039 201 | 141.136.27.0/24 1; # SBL117320 202 | 143.49.0.0/16 1; # SBL7182 203 | 143.135.0.0/16 1; # SBL84946 204 | 146.185.218.0/24 1; # SBL135795 205 | 146.185.254.0/24 1; # SBL123243 206 | 147.50.0.0/16 1; # SBL156522 207 | 148.105.0.0/16 1; # SBL103491 208 | 148.178.0.0/16 1; # SBL79700 209 | 148.248.0.0/16 1; # SBL84763 210 | 150.126.0.0/16 1; # SBL156561 211 | 150.141.0.0/16 1; # SBL79702 212 | 151.123.0.0/16 1; # SBL89692 213 | 152.147.0.0/16 1; # SBL8847 214 | 155.190.0.0/16 1; # SBL89253 215 | 157.226.0.0/16 1; # SBL89693 216 | 157.231.0.0/16 1; # SBL154590 217 | 157.232.0.0/17 1; # SBL101404 218 | 157.232.0.0/16 1; # SBL154609 219 | 159.223.0.0/16 1; # SBL98308 220 | 162.125.0.0/16 1; # SBL101854 221 | 167.28.0.0/16 1; # SBL75680 222 | 167.97.0.0/16 1; # SBL12947 223 | 167.224.0.0/19 1; # SBL106073 224 | 170.67.0.0/16 1; # SBL8148 225 | 170.106.0.0/16 1; # SBL89688 226 | 170.113.0.0/16 1; # SBL102573 227 | 170.120.0.0/16 1; # SBL90515 228 | 171.25.190.0/24 1; # SBL131730 229 | 176.47.0.0/16 1; # SBL154643 230 | 176.98.56.0/21 1; # SBL137004 231 | 176.107.72.0/21 1; # SBL137005 232 | 176.112.80.0/21 1; # SBL137006 233 | 178.159.176.0/20 1; # SBL110616 234 | 178.218.128.0/20 1; # SBL109867 235 | 186.190.224.0/21 1; # SBL126282 236 | 188.211.24.0/23 1; # SBL139457 237 | 188.247.135.0/24 1; # SBL117319 238 | 188.247.230.0/24 1; # SBL122292 239 | 192.26.25.0/24 1; # SBL84941 240 | 192.31.212.0/23 1; # SBL84945 241 | 192.43.153.0/24 1; # SBL69615 242 | 192.43.154.0/23 1; # SBL69616 243 | 192.43.156.0/22 1; # SBL69617 244 | 192.43.160.0/24 1; # SBL69618 245 | 192.43.175.0/24 1; # SBL84942 246 | 192.43.176.0/21 1; # SBL84943 247 | 192.43.184.0/24 1; # SBL84944 248 | 192.67.16.0/24 1; # SBL6648 249 | 192.86.85.0/24 1; # SBL69619 250 | 192.101.200.0/21 1; # SBL97211 251 | 192.101.240.0/21 1; # SBL97209 252 | 192.101.248.0/23 1; # SBL97208 253 | 192.112.112.0/20 1; # SBL97012 254 | 192.160.44.0/24 1; # SBL9493 255 | 192.162.19.0/24 1; # SBL139674 256 | 192.171.64.0/19 1; # SBL106074 257 | 192.197.87.0/24 1; # SBL103493 258 | 192.219.120.0/21 1; # SBL103494 259 | 192.219.128.0/18 1; # SBL103497 260 | 192.219.192.0/20 1; # SBL103495 261 | 192.219.208.0/21 1; # SBL103496 262 | 192.223.64.0/18 1; # SBL85852 263 | 192.229.32.0/19 1; # SBL106075 264 | 193.0.146.0/23 1; # SBL149273 265 | 193.0.212.0/24 1; # SBL147352 266 | 193.16.100.0/24 1; # SBL61945 267 | 193.16.213.0/24 1; # SBL107116 268 | 193.23.126.0/24 1; # SBL96354 269 | 193.27.232.0/23 1; # SBL96584 270 | 193.27.246.0/23 1; # SBL70826 271 | 193.41.38.0/24 1; # SBL95370 272 | 193.43.134.0/24 1; # SBL89390 273 | 193.46.211.0/24 1; # SBL89393 274 | 193.104.12.0/24 1; # SBL90815 275 | 193.104.34.0/24 1; # SBL93305 276 | 193.104.41.0/24 1; # SBL82374 277 | 193.104.94.0/24 1; # SBL85667 278 | 193.104.110.0/24 1; # SBL82582 279 | 193.104.153.0/24 1; # SBL129917 280 | 193.104.176.0/24 1; # SBL86727 281 | 193.105.121.0/24 1; # SBL105184 282 | 193.105.141.0/24 1; # SBL87368 283 | 193.105.154.0/24 1; # SBL89482 284 | 193.105.184.0/24 1; # SBL87567 285 | 193.105.207.0/24 1; # SBL90339 286 | 193.105.245.0/24 1; # SBL90611 287 | 193.106.32.0/22 1; # SBL94569 288 | 193.107.16.0/22 1; # SBL96179 289 | 193.110.136.0/24 1; # SBL3399 290 | 193.111.235.0/24 1; # SBL105552 291 | 193.142.244.0/24 1; # SBL57948 292 | 193.148.47.0/24 1; # SBL89508 293 | 193.169.250.0/23 1; # SBL82277 294 | 193.178.172.0/24 1; # SBL97792 295 | 193.200.167.0/24 1; # SBL149013 296 | 193.201.192.0/23 1; # SBL97705 297 | 193.227.240.0/23 1; # SBL67369 298 | 193.228.145.0/24 1; # SBL59581 299 | 193.238.0.0/22 1; # SBL102113 300 | 193.243.166.0/24 1; # SBL123249 301 | 194.0.221.0/24 1; # SBL94509 302 | 194.1.184.0/24 1; # SBL148480 303 | 194.1.220.0/23 1; # SBL98808 304 | 194.28.44.0/22 1; # SBL90787 305 | 194.29.185.0/24 1; # SBL134638 306 | 194.44.4.0/24 1; # SBL154488 307 | 194.50.116.0/24 1; # SBL148074 308 | 194.54.156.0/22 1; # SBL90652 309 | 194.60.205.0/24 1; # SBL84134 310 | 194.60.242.0/24 1; # SBL150544 311 | 194.63.144.0/22 1; # SBL98807 312 | 194.110.160.0/22 1; # SBL60306 313 | 194.116.146.0/23 1; # SBL50590 314 | 194.126.193.0/24 1; # SBL58152 315 | 194.126.251.0/24 1; # SBL90537 316 | 194.140.229.0/24 1; # SBL92226 317 | 194.146.204.0/22 1; # SBL51152 318 | 194.165.4.0/23 1; # SBL74236 319 | 194.242.2.0/23 1; # SBL115030 320 | 195.2.212.0/23 1; # SBL71954 321 | 195.5.161.0/24 1; # SBL87267 322 | 195.14.112.0/23 1; # SBL94658 323 | 195.28.10.0/23 1; # SBL107661 324 | 195.43.128.0/24 1; # SBL151962 325 | 195.54.170.0/23 1; # SBL94502 326 | 195.74.88.0/23 1; # SBL53174 327 | 195.78.108.0/23 1; # SBL87005 328 | 195.85.204.0/24 1; # SBL102328 329 | 195.88.190.0/23 1; # SBL79119 330 | 195.88.226.0/23 1; # SBL77731 331 | 195.93.184.0/23 1; # SBL83327 332 | 195.93.208.0/23 1; # SBL80356 333 | 195.95.151.0/24 1; # SBL80032 334 | 195.95.155.0/24 1; # SBL84230 335 | 195.114.8.0/23 1; # SBL48773 336 | 195.149.88.0/24 1; # SBL96583 337 | 195.149.90.0/24 1; # SBL144930 338 | 195.162.6.0/23 1; # SBL72664 339 | 195.182.57.0/24 1; # SBL88206 340 | 195.184.86.0/23 1; # SBL118866 341 | 195.190.157.0/24 1; # SBL100863 342 | 195.191.102.0/23 1; # SBL100272 343 | 195.225.176.0/22 1; # SBL47622 344 | 195.226.197.0/24 1; # SBL97616 345 | 195.226.220.0/24 1; # SBL97864 346 | 195.234.159.0/24 1; # SBL57950 347 | 195.238.242.0/24 1; # SBL57947 348 | 195.246.200.0/24 1; # SBL152085 349 | 196.32.216.0/21 1; # SBL66614 350 | 198.13.0.0/20 1; # SBL97016 351 | 198.20.16.0/20 1; # SBL107773 352 | 198.23.32.0/20 1; # SBL101186 353 | 198.45.32.0/20 1; # SBL110170 354 | 198.57.64.0/20 1; # SBL101250 355 | 198.96.224.0/20 1; # SBL110171 356 | 198.151.152.0/22 1; # SBL23969 357 | 198.162.208.0/20 1; # SBL97027 358 | 198.181.64.0/19 1; # SBL106079 359 | 198.183.32.0/19 1; # SBL96708 360 | 198.186.25.0/24 1; # SBL23976 361 | 198.204.0.0/21 1; # SBL8179 362 | 198.205.64.0/19 1; # SBL106080 363 | 199.5.152.0/23 1; # SBL96745 364 | 199.33.145.0/24 1; # SBL103498 365 | 199.34.128.0/18 1; # SBL96704 366 | 199.46.32.0/19 1; # SBL96703 367 | 199.60.102.0/24 1; # SBL9159 368 | 199.71.192.0/20 1; # SBL147763 369 | 199.84.64.0/19 1; # SBL96702 370 | 199.88.32.0/20 1; # SBL109258 371 | 199.88.48.0/22 1; # SBL109259 372 | 199.120.163.0/24 1; # SBL6658 373 | 199.165.32.0/19 1; # SBL97023 374 | 199.166.200.0/22 1; # SBL6026 375 | 199.196.192.0/19 1; # SBL106606 376 | 199.198.160.0/20 1; # SBL96701 377 | 199.198.176.0/21 1; # SBL109341 378 | 199.198.184.0/23 1; # SBL109342 379 | 199.198.188.0/22 1; # SBL109343 380 | 199.200.64.0/19 1; # SBL107014 381 | 199.230.64.0/19 1; # SBL97024 382 | 199.230.96.0/21 1; # SBL97026 383 | 199.245.138.0/24 1; # SBL9923 384 | 199.246.137.0/24 1; # SBL113125 385 | 199.246.213.0/24 1; # SBL113126 386 | 199.246.215.0/24 1; # SBL103499 387 | 199.248.64.0/18 1; # SBL103438 388 | 200.3.128.0/20 1; # SBL107775 389 | 200.22.0.0/16 1; # SBL84896 390 | 200.50.192.0/19 1; # SBL77554 391 | 200.105.32.0/20 1; # SBL139955 392 | 201.7.208.0/20 1; # SBL122519 393 | 201.71.0.0/20 1; # SBL38197 394 | 202.61.108.0/24 1; # SBL98492 395 | 202.151.40.0/21 1; # SBL155253 396 | 203.31.88.0/23 1; # SBL8083 397 | 203.34.70.0/23 1; # SBL9682 398 | 203.34.71.0/24 1; # SBL7244 399 | 204.14.0.0/21 1; # SBL145670 400 | 204.44.192.0/20 1; # SBL116416 401 | 204.44.224.0/20 1; # SBL110044 402 | 204.52.255.0/24 1; # SBL13483 403 | 204.57.16.0/20 1; # SBL116417 404 | 204.89.224.0/24 1; # SBL11667 405 | 204.106.128.0/18 1; # SBL105808 406 | 204.106.192.0/19 1; # SBL106078 407 | 204.107.208.0/24 1; # SBL96699 408 | 204.126.244.0/23 1; # SBL96747 409 | 204.130.167.0/24 1; # SBL113127 410 | 204.147.240.0/20 1; # SBL109212 411 | 204.187.155.0/24 1; # SBL93877 412 | 204.187.156.0/22 1; # SBL93878 413 | 204.187.160.0/19 1; # SBL93879 414 | 204.187.192.0/19 1; # SBL93390 415 | 204.187.224.0/20 1; # SBL93880 416 | 204.187.240.0/21 1; # SBL93881 417 | 204.187.248.0/22 1; # SBL93882 418 | 204.187.252.0/23 1; # SBL93883 419 | 204.187.254.0/24 1; # SBL93884 420 | 204.194.184.0/21 1; # SBL95012 421 | 204.225.159.0/24 1; # SBL113128 422 | 204.225.210.0/24 1; # SBL113129 423 | 204.236.0.0/19 1; # SBL46767 424 | 205.137.0.0/20 1; # SBL116418 425 | 205.142.104.0/22 1; # SBL98307 426 | 205.144.0.0/20 1; # SBL96698 427 | 205.144.176.0/20 1; # SBL116419 428 | 205.159.180.0/24 1; # SBL113130 429 | 205.172.244.0/22 1; # SBL96743 430 | 205.175.160.0/19 1; # SBL104260 431 | 205.189.71.0/24 1; # SBL105802 432 | 205.189.72.0/23 1; # SBL105804 433 | 205.203.224.0/19 1; # SBL104251 434 | 205.214.128.0/19 1; # SBL104253 435 | 205.235.64.0/20 1; # SBL8558 436 | 205.236.189.0/24 1; # SBL9442 437 | 206.81.0.0/19 1; # SBL103439 438 | 206.197.28.0/24 1; # SBL14253 439 | 206.197.29.0/24 1; # SBL14251 440 | 206.197.175.0/24 1; # SBL14246 441 | 206.197.176.0/24 1; # SBL14250 442 | 206.197.177.0/24 1; # SBL14248 443 | 206.201.48.0/20 1; # SBL97028 444 | 206.203.64.0/18 1; # SBL103686 445 | 206.224.160.0/19 1; # SBL96697 446 | 206.227.64.0/18 1; # SBL96696 447 | 207.22.192.0/18 1; # SBL107317 448 | 207.183.192.0/19 1; # SBL104254 449 | 207.189.0.0/19 1; # SBL90975 450 | 208.81.136.0/21 1; # SBL61909 451 | 208.85.32.0/21 1; # SBL106700 452 | 208.90.0.0/21 1; # SBL83016 453 | 208.93.144.0/21 1; # SBL145671 454 | 208.93.151.0/24 1; # SBL145664 455 | 209.51.32.0/20 1; # SBL106609 456 | 209.95.192.0/19 1; # SBL107139 457 | 209.145.0.0/19 1; # SBL109583 458 | 209.148.64.0/19 1; # SBL121952 459 | 209.182.64.0/19 1; # SBL104261 460 | 209.198.176.0/20 1; # SBL106610 461 | 209.205.192.0/19 1; # SBL99209 462 | 209.205.224.0/20 1; # SBL96833 463 | 213.109.64.0/20 1; # SBL146307 464 | 213.109.96.0/22 1; # SBL80829 465 | 213.109.208.0/20 1; # SBL81091 466 | 216.151.192.0/20 1; # SBL99327 467 | 216.212.192.0/19 1; # SBL90976 468 | # Spamhaus EDROP List 09/23/12 - (c) 2012 The Spamhaus Project 469 | # Last-Modified: Fri, 21 Sep 2012 08:31:11 GMT 470 | # Expires: Mon, 24 Sep 2012 18:46:06 GMT 471 | 77.79.10.0/23 1; # SBL150131 472 | 81.94.43.0/24 1; # SBL131095 473 | 86.55.96.0/23 1; # SBL127796 474 | 91.201.196.0/22 1; # SBL86729 475 | 91.226.78.0/24 1; # SBL113609 476 | 91.228.111.0/24 1; # SBL156621 477 | 91.229.90.0/23 1; # SBL140352 478 | 91.232.235.0/24 1; # SBL124553 479 | 91.233.89.0/24 1; # SBL140805 480 | 112.111.188.0/24 1; # SBL139077 481 | 112.111.189.0/24 1; # SBL139078 482 | 112.111.190.0/24 1; # SBL139079 483 | 112.111.191.0/24 1; # SBL139080 484 | 188.247.232.0/24 1; # SBL122298 485 | 195.88.230.0/23 1; # SBL139549 486 | --------------------------------------------------------------------------------