Я новичок в решении GeoIP. Некоторые вещи изменились в отношении устаревших баз данных GeoIP, что сделало его немного сложнее.
Я использую AWS Linux
Я установил 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
Я установил учетную запись на веб-сайте maxmind и заполнил /etc/GeoIP.conf следующим образом:
СНИП
AccountID удален
LicenseKey отредактирован
EditionIDs GeoLite2-ASN GeoLite2-City GeoLite2-Country
КОНЕЦ СНИП
Ошибки, которые я вижу в / var / log / httpd / error_log, выглядят следующим образом:
Ошибка при открытии файла /usr/share/GeoIP/GeoIP.mmdb
Ошибка при открытии файла /usr/share/GeoIP/GeoIP.mmdb
Ошибка при открытии файла /usr/share/GeoIP/GeoIP.mmdb
Ошибка обхода базы данных для ipnum = 886277125 - Возможно, база данных повреждена?
Ошибка обхода базы данных для ipnum = 886277125 - Возможно, база данных повреждена?
Ошибка обхода базы данных для ipnum = 168300841 - Возможно, база данных повреждена?
Ошибка обхода базы данных для ipnum = 168300643 - Возможно, база данных повреждена?
Ошибка обхода базы данных для ipnum = 168300841 - Возможно, база данных повреждена?
Ошибка обхода базы данных для ipnum = 0 - возможно, база данных повреждена?
Итак, я проверил, могу ли я извлечь информацию из базы данных:
mmdblookup --file /usr/share/GeoIP/GeoLite2-Country.mmdb --ip xxx.xxx.xxx.x названия стран en
"Ирландия"
Итак, теперь мы знаем, что база данных GeoIP содержит данные; мы знаем, что он правильно определяет страну происхождения IP-адреса нашего тестового сервера. Проблема в том, что apache все еще не может загрузить базу данных GeoIP.
Мне не ясно, что делать дальше по устранению неполадок.
Кроме того, я не уверен, насколько это важно, но он устанавливается на сервере Jira / Confluence, поэтому служба apache / httpd прослушивает 443, а затем передает трафик экземпляру java. Я не думаю, что это действительно важно, потому что трафик сначала попадает в apache. Похоже, что apache по какой-то причине не может получить доступ к базе данных geoip. Я попытался сменить владельца базы данных на apache: apache от root, и это тоже не сработало.
Что делать дальше?
[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