Redirecionar ou bloquear o tráfego com base na localização geográfica do país usando o apache mod_geoip

Redirecionar ou bloquear o tráfego com base na localização geográfica do país usando o apache mod_geoip

Nesta configuração, você aprenderá a bloquear ou redirecionar o tráfego da web com base na localização geográfica do país do visitante usando o Apache's Geoip mod.

Apache MOD_GEOIP Instalação

Supondo que você já tenha o servidor da web do Apache instalado e executando, começamos pela instalação de mod_geoip:

Ubuntu/debian # apt-get install libapache2-mod-geoip centos/redhat/fedora (apenas habilitado epel) # yum install mod_geoip.x86_64 

Confirme isso Geoip e reescrever Módulo está ativado:

# apache2ctl -m | grep -e "geoip | rewrite" geoip_module (compartilhado) rewrite_module (compartilhado) 

Se o comando acima não produzir nenhuma saída ou apenas um único mod estiver listado, ative o módulo ausente com o seguinte comando linux:

# a2enmod geoip reescrita Módulo de habilitação geoip. Ativar reescrita do módulo. 

Para ativar a nova configuração, você precisa executar:

# Service Apache 2 reiniciar 

e reinicie o servidor da Web Apache para aplicar as alterações:

# Service Apache 2 reiniciar 

Redirecionar o tráfego com base na localização geográfica do país

Agora que temos mod_geoip Ativado, podemos editar o arquivo de configuração de um site relevante localizado em /etc/apache2/sites-disponível/ ou correspondente .htaccess arquivo para redirecionar o tráfego com base na localização geográfica. No exemplo abaixo, vamos redirecionar todo o tráfego de entrada da China e da Índia para um novo URL http: // Exemplo.com:

RewriteEngine no rewritetond %Env: geoip_country_code ^(cn | in) $ rewriture ^(.*) $ http: // Exemplo.com/$ 1 [l] 

Observe que, se você inserir a configuração acima no arquivo de configuração do site, você será necessário para reiniciar seu servidor da web do Apache para aplicar alterações:

# Serviço Apache2 Recarregar 

Bloquear o tráfego com base na localização geográfica do país

Se você decidir bloquear o tráfego recebido com base na localização geográfica do país, poderá fazê -lo editando o arquivo de configuração de um site relevante localizado em /etc/apache2/sites-disponível/. A configuração abaixo MOD_GEOIP bloqueará os países da China e da Índia:

 Setenvif geoip_country_code cn blockcountry setEnvif geoip_country_code no blockcountry negar de Env = blockcountry  

A Apache Recload é necessária para aplicar as alterações acima. Como alternativa, você também pode inserir as seguintes linhas em sua correspondência .htaccess arquivo:

Setenvif geoip_country_code cn blockcountry setEnvif geoip_country_code no blockcountry negar de Env = blockcountry 

Apêndice

Códigos do país ISO 3166

Lista de códigos do país ISO 3166 a serem usados ​​com o módulo Geoip Apache:

A1 - "Proxy anônimo" A2 - "Provedor de satélite" O1 - "Other Country" Ad - "Andorra" AE - "Emirados Árabes Unidos" AF - "Afeganistão" AG - "Antígua e Barbuda" Ai - "Anguilla" Albânia "AM -" Armênia "Ao -" Angola "AP -" Região da Ásia/Pacífico "AQ -" Antarctica "AR -" Argentina "como -" American Samoa "em -" Áustria "Au -" Austrália "Aw -" Aruba "Ax -" Aland Islands "AZ -" Azerbaijão "Ba -" Bósnia e Herzegovina "BB -" Barbados "BD -" Bangladesh "Be -" Bélgica "BF -" Burkina Faso "BG -" Bulgaria "Bh -" Bahrain " BI - "Burundi" BJ - "Benin" Bl - "Saint Bartelemey" BM - "Bermuda" Bn - "Brunei Darussalam" Bo - "Bolívia" BQ - "Bonaire - Saint Eustatius e Saba" Br - "Brasil" BS - " Bahamas "Bt -" Butão "Bv -" Bouvet Island "BW -" Botswana "por -" Bielorrússia "BZ -" Belize "CA -" Canadá "CC -" Ilhas Cocos (Keeling) do "cf -"República da África Central" CG - "Congo" Ch - "Suíça" CI - "Cote d'Voire" CK - "Cook Islands" Cl - "Chile" CM - "Camarões" CN - "China" Co - "Colombia" Cr - "Costa Rica" Cu - "Cuba" CV - "Cape Verde" CW - "Curacao" CX - "Ilha Christmas" Cy - "Chipre" Cz - "República Tcheca" de - "Alemanha" DJ - "Djibouti" DK - "Dinamarca" DM - "Dominica" Do - "República Dominicana" DZ - "Argélia" EC - "Equador" EE - "Estônia", por exemplo - "Egito" eh - "Sahara Ocidental" Er - "Eritreia" es - "Espanha" ET - "Etiópia" UE - "Europa" Fi - "Finlândia" FJ - "Fiji" FK - "Ilhas das Malvinas (Malvinas)" FM - "Micronésia - Estados federados de" Fo - "Faroe Islands" FR - "France" Ga - "Gabão" GB - "Reino Unido" GD - "Grenada" Ge - "Georgia" GF - "Guiana Francesa" GG - "Guernsey" GH - "Gana" Gi - "Gibraltar" Gl - "Greenland" GM - "Gambia "GN -" Guiné "GP -" Guadalupe "GQ -" Guiné Equatorial "Gr -" Grécia "GS -"Geórgia do Sul e as Ilhas Sandwich do Sul" GT - "Guatemala" Gu - "Guam" GW - "Guiné -Bissau" Gy - "Guiana" Hk - "Hong Kong" Hm - "Heard Island e McDonald Islands" Hn - "Honduras "HR -" Croácia "HT -" Haiti "Hu -" Hungria "ID -" Indonésia "IE -" Irlanda "IL -" Israel "IM -" Ilha de Man "em -" Índia "io -" Território do Oceano Índico Britânico "Britânico" "IQ -" Iraque "Ir -" Irã - República Islâmica de "Is -" Islândia "It -" Itália "JE -" Jersey "JM -" Jamaica "Jo -" Jordan "JP -" Japão "Ke -" Kenya " KG - "Quirguistão" KH - "Camboja" Ki - "Kiribati" KM - "Comoros" Kn - "Saint Kitts e Nevis" KP - "Coréia - República Popular Democrática do" Kr - "Coréia - República" KW - "Kuwait "Ky -" Ilhas Cayman "KZ -" Cazaquistão "LA -" República Democrática Popular do Lao "LB -" Líbano "LC -" Saint Lucia "Li -" Liechtenstein "Lk -" Sri Lanka "LR -" Liberia "Ls -" Lesoto "LT -" Lituânia "Lu -" Luxemburgo "LV -"Letônia" Ly - "Líbia Jamahiriya" Ma - "Marrocos" MC - "Monaco" MD - "Moldávia - República de" Me - "Montenegro" MF - "Saint Martin" Mg - "Madagascar" MH - "Marshall Islands" Mk - "Macedônia" ML - "Mali" MM - "Myanmar" Mn - "Mongolia" Mo - "Macau" MP - "Ilhas Marianas do Norte" MQ - "Martinique" Mr - "Mauritania" MS - "Montserrat" Mt - " Malta "Mu -" Maurício "MV -" Maldivas "MW -" Malawi "MX -" México "My -" Malásia "MZ -" Moçambique "Na -" Namibia "NC -" Nova Caledônia "NE -" Niger "NF - "Norfolk Island" ng - "Nigéria" ni - "Nicarágua" NL - "Holanda" Não - "Noruega" NP - "Nepal" nr - "Nauru" nu - "niue" nz - "Nova Zelândia" Om - "Omã" PA - "Panamá" PE - "Peru" PF - "Polinésia francesa" PG - "Papua Nova Guiné" Ph - "Filipinas" PK - "Paquistão" PL - "Polônia" PM - "Saint Pierre e Miquelon" Pn - "Pitcairn "PR -" Porto Rico "PS -" Território Palestino "PT -" Portugal "PW -"Palau" py - "Paraguai" qa - "qatar" re - "Reunião" Ro - "Romênia" RS - "Sérvia" RU - "Federação Russa" RW - "Ruanda" SA - "Arábia Saudita" SB - "Solomon Islands "SC -" Seychelles "SD -" Sudão "Se -" Suécia "SG -" Cingapura "SH -" Saint Helena "Si -" Eslovênia "SJ -" Svalbard e Jan Mayen "SK -" Eslováquia "SL -" Sierra Leone "SM -" San Marino "SN -" Senegal "Então -" Somália "Sr -" Suriname "SS -" Sudão do Sul "St -" São Tome e Principe "SV -" El Salvador "SX -" Sint Maarten "Sy - "República Árabe da Síria" SZ - "Suazilândia" TC - "Ilhas Turks e Caicos" TD - "Chad" TF - "Territórios do Sul da Francesa" TG - "Togo" th - "Tailândia" TJ - "Tajiquistão" Tk - "Tokelau" TL - "Timor -Leste" TM - "Turkmenistan" TN - "Tunísia" para - "Tonga" Tr - "Turquia" TT - "Trinidad e Tobago" TV - "Tuvalu" Tw - "Taiwan" TZ - "Tanzania - United - United República da "UA -" Ucrânia "UG -" Uganda "um -"Ilhas Menoras Estados dos Estados Unidos" EUA - "Estados Unidos" Uy - "Uruguai" Uz - "Uzbequistão" Va - "Santa See (Estado da cidade do Vaticano)" VC - "Saint Vincent e as Granadinas" ve - "Venezuela" VG - "Ilhas Virgens - British" VI - "Ilhas Virgens - U.S."VN -" Vietnã "Vu -" Vanuatu "Wf -" Wallis e Futuna "WS -" Samoa "Ye -" Iemen "Yt -" Mayotte "Za -" África do Sul "Zm -" Zambia "ZW -" Zimbabwe " 

Tutoriais do Linux relacionados:

  • Como ativar sessões no PHP com cookies
  • Coisas para instalar no Ubuntu 20.04
  • Como atualizar o CentOS
  • Como grep corretamente para texto em scripts de bash
  • Coisas para fazer depois de instalar o Ubuntu 20.04 fossa focal linux
  • Como instalar Yum no Linux
  • Crie redirecionar e reescrever regras para .htaccess no apache…
  • Como migrar de CentOS para Almalinux
  • Coisas para instalar no Ubuntu 22.04
  • Uma introdução à automação, ferramentas e técnicas do Linux