Soy nuevo en la solución GeoIP. Algunas cosas han cambiado con respecto a las bases de datos GeoIP heredadas, lo que lo ha hecho parecer un poco más complicado.
Estoy en AWS Linux
He instalado 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 es:
rpm -qa |grephttpd
httpd24-2.4.41-1.88.amzn1.x86_64
httpd24-herramientas-2.4.41-1.88.amzn1.x86_64
Configuré una cuenta en el sitio web de maxmind y completé /etc/GeoIP.conf de esta manera:
RECORTE
ID de cuenta redactado
Clave de licencia redactada
ID de edición GeoLite2-ASN GeoLite2-Ciudad GeoLite2-País
FINALIZAR RECORTE
Los errores que veo en /var/log/httpd/error_log son así:
Error al abrir el archivo /usr/share/GeoIP/GeoIP.mmdb
Error al abrir el archivo /usr/share/GeoIP/GeoIP.mmdb
Error al abrir el archivo /usr/share/GeoIP/GeoIP.mmdb
Error al atravesar la base de datos para ipnum = 886277125: ¿Quizás la base de datos está dañada?
Error al atravesar la base de datos para ipnum = 886277125: ¿Quizás la base de datos está dañada?
Error al atravesar la base de datos para ipnum = 168300841: ¿Quizás la base de datos está dañada?
Error al atravesar la base de datos para ipnum = 168300643: ¿Quizás la base de datos está dañada?
Error al atravesar la base de datos para ipnum = 168300841: ¿Quizás la base de datos está dañada?
Error al atravesar la base de datos para ipnum = 0: ¿Quizás la base de datos está dañada?
Entonces verifiqué si puedo extraer información de la base de datos:
mmdblookup --file /usr/share/GeoIP/GeoLite2-Country.mmdb --ip xxx.xxx.xxx.x nombres de países es
"Irlanda"
Entonces, ahora sabemos que la base de datos GeoIP contiene datos; Sabemos que está identificando correctamente el país de origen de la dirección IP de nuestro servidor de prueba. El problema en este punto es que Apache aún no puede cargar la base de datos GeoIP.
No tengo claro cuáles podrían ser los próximos pasos para solucionar el problema.
Además, no estoy seguro de cuánto importa esto, pero se está instalando en un servidor Jira/Confluence, por lo que el servicio apache/httpd escucha en 443 y luego pasa el tráfico a la instancia de Java. Realmente no creo que importe porque el tráfico llega primero a Apache. Parece que Apache no puede acceder a la base de datos geoip por algún motivo. Intenté cambiar la propiedad de la base de datos a apache:apache desde la raíz y tampoco funcionó.
¿Cuáles son los próximos pasos?
[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