Como instalar mod_geoip para apache em rhel e centos
- 776
- 201
- Enrique Crist
Mod_geoip é um módulo Apache que pode ser usado para obter a localização geográfica do IP endereço do visitante no Apache servidor web. Este módulo permite que você determine o visitante país, organização, e localização. É especialmente útil para AD GEO SERVIÇÃO, Conteúdo alvo, Luta de spam, Detecção de fraude, Redirecionando/bloqueando visitantes baseados em seu país e muito mais.
O módulo Geoip permite que os administradores do sistema redirecionem ou bloqueam o tráfego da Web de acordo com a localização geográfica do cliente. A localização geográfica é aprendida através do endereço IP do cliente.
Mod_geoip tem duas versões diferentes, uma é Livre E outro é Pago e usa maxmind Geoip / Geocidade bancos de dados.
- Versão gratuita: Na versão gratuita, o Cidade Geo e Bancos de dados do país estão disponíveis com 99.5% precisão.
- Versão paga: Na versão paga, você receberá os dois bancos de dados com 99.8% precisão com alguns detalhes mais avançados sobre IP endereço.
Se você gosta de verificar, mais diferenças entre o Livre e Pago Versão, por favor visite Maxmind.com.
Este artigo explica como configurar e instalar o Mod_geoip módulo para apache em RHEL e CENTOS usando o EPEL Repositório com o Yum Package Manager Utility.
Assumimos que você já está correndo RHEL e CENTOS sistema com um trabalho LÂMPADA (Linux, Apache, Mysql, e Php) configurar. Caso contrário, leia nossos artigos em que mostramos a instalação de ambos os sistemas operacionais com LÂMPADA.
Instalação de Rhel/CentOS
- Instalação do RHEL 7 e CENTOS 7 Mínimo.
- Instalação do RHEL 8 e CENTOS 8 Mínimo.
Configuração da lâmpada no RHEL/CENTOS
- Como instalar Lamp (Linux, Apache, MySQL, PHP) no RHEL e CENTOS 7
- Como instalar o Apache, MySQL/Mariadb e PHP no RHEL e CENTOS 8
Ativar repositório EPEL em Rhel e Centos
Por padrão mod_geoip não está disponível em RHEL / CENTOS repositório oficial, por isso precisamos instalar e ativar terceiros EPEL repositório.
# yum installel-lançamento # yum install https: // dl.FedoraProject.org/pub/epel/epel-latest-8.Noarch.RPM [no RHEL 8]
Instale mod_geoip em rhel e centos
Depois de você EPEL repositório ativado no seu sistema, você pode simplesmente instalar mod_geoip Ao executar o seguinte comando com seus pacotes de dependência.
# yum install mod_geoip geoip geoip-devel geoip-data zlib-devel
Baixe o último banco de dados Geo City and Country
É uma boa ideia baixar as últimas Cidade Geo e Banco de dados do país para se manter atualizado.
# cd/usr/share/geoip/ # mv geoip.dat geoip.dat_org # wget http: // geolite.maxmind.com/download/geoip/banco de dados/geolite2-country.alcatrão.gz # wget http: // geolite.maxmind.com/download/geoip/banco de dados/geolite2-city.alcatrão.gz # gunzip geolite2-country.alcatrão.gz # gunzip geolite2-city.alcatrão.gz
Ativar mod_geoip em apache
Depois que o módulo foi instalado, abra e edite o principal arquivo de configuração do módulo, com um editor de texto da linha de comando, como vi, e ativar o módulo em todo o servidor, como ilustrado no trecho abaixo.
# vi/etc/httpd/conf.D/Geoip.conf
Defina a linha geoipenável de Desligado para Sobre. Além disso, adicione o caminho absoluto ao arquivo de banco de dados Geoip.
Geoipenable em geoipdbfile/usr/share/geoip/geoip.DAT MemoryCache
Reinicie o Apache Serviço para refletir mudanças.
# Systemctl Reiniciar httpd ou # serviço httpd reinicialização
No entanto, não é recomendável ativar o módulo Geoip em todo o servidor. Você deve ativar o módulo GeoIP apenas em ou
blocos onde você realmente executaria o redirecionamento ou o bloqueio do tráfego.
Módulo MOD_GEOIP de teste
Para testar o mod_geoip O módulo está funcionando corretamente com o Apache, precisamos criar um Php arquivo chamado TestGeoIP.php sob Apache diretório raiz (e.g. /var/www/html).
# vi/var/www/html/testgeoip.php
Insira a seguinte parte do código PHP.
Qual é o meu endereço IP - determinar ou recuperar meu endereço IP Seu país: $ country ($ country_code) "; ?>
Agora, tente ligar para o arquivo usando um navegador da web (e.g. http: // localhost/testgeoip.php). Você vai conseguir seu endereço de IP e País detalhes.
Atualizando o banco de dados GeoIP
O banco de dados GeoIP é atualizado a partir de cada mês. Portanto, é muito importante manter o banco de dados Geoip atualizado. Para baixar a versão mais recente do banco de dados, use o seguinte comando.
# cd/usr/share/geoip/ # mv geoip.dat geoip.dat_org # wget http: // geolite.maxmind.com/download/geoip/banco de dados/geolite2-country.alcatrão.gz # wget http: // geolite.maxmind.com/download/geoip/banco de dados/geolite2-city.alcatrão.gz # gunzip geolite2-country.alcatrão.gz # gunzip geolite2-city.alcatrão.gz
Atualização automática de banco de dados GeoIP
Escrevemos um pequeno script de shell que baixará automaticamente a versão mais recente do banco de dados GeoIP todos os meses. Basta colocar qualquer um dos seguintes scripts em /etc/cron.por mês.
Script 1
# Atualização automática de banco de dados GeoIP #!/bin/sh cd/usr/share/geoip mv geoip.dat geoip.dat_org wget -q http: // geolite.maxmind.com/download/geoip/banco de dados/geolite2-country.alcatrão.gz gzip -d -f geolite2 -country.alcatrão.gz
Script 2
#!/bin/sh geoip_mirror = "http: // geolite.maxmind.com/download/geoip/banco de dados "geoipdir =/usr/share/geoip tmpdir = bancos de dados =" geolitecity geolitecountry/geoip asnum/geoipasnum geoipv6 "se [-d" $ geoipdir "]; "$ Bancos de dados"]; então tmpdir = $ (mktemp -d geoipupdate.Xxxxxxxxxxxx) echo "Atualizando bancos de dados GeoIP ..." para DB em bancos de dados $; do fname = $ (nome da base $ db) wget - -no -verbose -t 3 -t 60 "$ geoip_mirror/$ db.dat.gz "-o" $ tmpdir/$ fname.dat.gz "gunzip -fdc" $ tmpdir/$ fname.dat.gz ">" $ tmpdir/$ fname.dat "mv" $ tmpdir/$ fname.dat "" $ geoipdir/$ fname.dat "chmod 0644" $ geoipdir/$ fname.dat "done [-d" $ tmpdir "] && rm -rf $ tmpdir fi fi
Redirecionando usuários com base no país
O código de exemplo abaixo vai redirecionar os usuários com base no código do país para o qual definimos COMO (Ásia). Dessa forma, você pode redirecionar todos os usuários com base no código do condado deles.
Geoipenable em geoipdbfile/usr/share/geoip/geoip.Dat # Redirecionar um país reescreviEngine no rewritetond %Env: geoip_country_code ^COMO$ Rewriturele ^(.*) $ https: // www.Tecmint.com$ 1 [r, l]
Bloqueando os usuários com base no país
Este exemplo bloqueará os usuários com base no código do país que geoip conjunta. O exemplo abaixo vai impedir os usuários de COMO (Ásia) e NÓS (Estados Unidos) países.
Geoipenable em geoipdbfile/usr/share/geoip/geoip.dat setenvif geoip_country_code COMO Blockcountry setenvif geoip_country_code NÓS Blockcountry #… Coloque mais países aqui negar de Env = Blockcountry
Permitindo usuários com base no país
Este exemplo abaixo permitirá apenas usuários de países abaixo mencionados.
Geoipenable em geoipdbfile/usr/share/geoip/geoip.dat setenvif geoip_country_code COMO Permitir o SetEnvif Geoip_Country_Code NÓS Permitir que os países de alvo #… coloque mais países aqui negar de todos permitir de Env = allowCountry
Para mais informações sobre mod_geoip e seu uso pode ser encontrado em http: // www.maxmind.com/app/mod_geoip. Se você está tendo algum problema em configurar um módulo mod_geoip, informe -nos por meio de comentários e não se esqueça de compartilhá -lo com seus amigos.
- « 10 Melhor software de fluxograma e diagrama para Linux
- Como instalar e configurar o GitLab no CentOS 8/7 »