Sou novo na solução GeoIP. Algumas coisas mudaram em relação aos bancos de dados GeoIP legados, o que fez com que tudo parecesse um pouco mais complicado.
Estou no AWS Linux
Eu instalei o GeoIP:
rpm -qa |grep GeoIP
GeoIP-devel-1.4.8-1.5.amzn1.x86_64
GeoIP-1.4.8-1.5.amzn1.x86_64
apache/httpd é:
rpm -qa |grep httpd
httpd24-2.4.41-1.88.amzn1.x86_64
httpd24-tools-2.4.41-1.88.amzn1.x86_64
Eu configurei uma conta no site maxmind e preenchi /etc/GeoIP.conf assim:
RECORTE
ID da conta redigido
LicenseKey redigida
IDs de edição GeoLite2-ASN GeoLite2-City GeoLite2-Country
FIM DO RECORTE
Os erros que vejo em /var/log/httpd/error_log são assim:
Erro ao abrir arquivo /usr/share/GeoIP/GeoIP.mmdb
Erro ao abrir arquivo /usr/share/GeoIP/GeoIP.mmdb
Erro ao abrir arquivo /usr/share/GeoIP/GeoIP.mmdb
Erro ao atravessar banco de dados para ipnum = 886277125 - Talvez o banco de dados esteja corrompido?
Erro ao atravessar banco de dados para ipnum = 886277125 - Talvez o banco de dados esteja corrompido?
Erro ao atravessar banco de dados para ipnum = 168300841 - Talvez o banco de dados esteja corrompido?
Erro ao atravessar banco de dados para ipnum = 168300643 - Talvez o banco de dados esteja corrompido?
Erro ao atravessar banco de dados para ipnum = 168300841 - Talvez o banco de dados esteja corrompido?
Erro ao atravessar banco de dados para ipnum = 0 - Talvez o banco de dados esteja corrompido?
Então verifiquei se consigo extrair informações do banco de dados:
mmdblookup --file /usr/share/GeoIP/GeoLite2-Country.mmdb --ip xxx.xxx.xxx.x nomes de países pt
"Irlanda"
Então, agora sabemos que o banco de dados GeoIP contém dados; sabemos que está identificando corretamente o país de origem do endereço IP do nosso servidor de teste. O problema neste ponto é que o Apache ainda não consegue carregar o banco de dados GeoIP.
Não está claro para mim quais serão as próximas etapas para solucionar o problema.
Além disso, não tenho certeza do quanto isso importa, mas está sendo instalado em um servidor Jira/Confluence, então o serviço Apache/httpd escuta em 443 e depois passa o tráfego para a instância java. Eu não acho que isso realmente importe porque o tráfego atinge o Apache primeiro. Parece que o Apache não consegue acessar o banco de dados geoip por algum motivo. Eu tentei mudar a propriedade do banco de dados para apache:apache do root e isso também não funcionou.
Quais são os próximos passos?
[Wed Jan 22 21:14:25.057803 2020] [so:warn] [pid 13168] AH01574: module ssl_module is already loaded, skipping
VirtualHost configuration:
*:443 redacted
(/etc/httpd/conf.d/ssl.conf:77)
*:80 redacted
(/etc/httpd/conf/httpd.conf:359)
ServerRoot: "/etc/httpd"
Main DocumentRoot: "/var/www/html"
Main ErrorLog: "/etc/httpd/logs/error_log"
Mutex default: dir="/var/run/httpd/" mechanism=default
Mutex mpm-accept: using_defaults
Mutex cache-socache: using_defaults
Mutex authdigest-opaque: using_defaults
Mutex watchdog-callback: using_defaults
Mutex proxy-balancer-shm: using_defaults
Mutex rewrite-map: using_defaults
Mutex ssl-stapling-refresh: using_defaults
Mutex authdigest-client: using_defaults
Mutex lua-ivm-shm: using_defaults
Mutex ssl-stapling: using_defaults
Mutex proxy: using_defaults
Mutex authn-socache: using_defaults
Mutex ssl-cache: using_defaults
PidFile: "/var/run/httpd/httpd.pid"
Define: DUMP_VHOSTS
Define: DUMP_RUN_CFG
User: name="apache" id=48
Group: name="apache" id=48