[Webサイト運営] GoAccessでアクセス国を表示するためにGeoLite2をインストールする

昨日の記事に書いたGoAccessでは、アクセス元の国名を併せて表示することができる。そのためにはGeoIPデータベースをインストールしなければならないのだが、幸いなことに無料で提供されているGeoIPデータベースがある。今回はそのインストール手順を覚え書き。

GoAccessの設定ファイル

GoAccessの設定ファイルを見ると以下のように書かれている。

geoip-databaseにGeoIP LegacyまたはGeoIP2のデータベースを指定しろということらしい。ただし、GeoIP Legacyは既に配布終了となっている模様。ということは、選択肢はGepIP2だけ、ということか。

GeoIP2の無料データベースを取得する

設定ファイルに記載されているリンクにアクセス。

GeoLite2 Free Geolocation Data
https://dev.maxmind.com/geoip/geoip2/geolite2/

無料版はGeoLite2という名称らしい。ダウンロードには無料のGeoLite2アカウントが必要とのこと。

GeoLite2 Sign Up | MaxMind
https://www.maxmind.com/en/geolite2/signup

必要事項を記入するとメールが来るので、メール本文のリンクをクリックしてログインし、パスワードを設定したらアカウント作成は完了。

サイドメニューからGeoIP2/GeoLite2 -Download Filesページに移動すると、データベースがダウンロードできる。今回はアクセス元IPの国情報が欲しいので、GeoLite2 Country (tar.gz形式) をダウンロードする。

GoAccess用のセットアップ

ダウンロードしたアーカイブを解凍して、.mmdbファイルを適当なディレクトリに配置する。

あとはGoAccessの設定ファイルでGeoIPデータベースのパスを指定するだけ。

GoAccessを実行して解析ページを生成してみる。[VISITOR HOSTNAME AND IPS]セクションに[COUNTRY]カラムが表示されるようになった。

参考サイト

Industry leading IP Geolocation and Online Fraud Prevention | MaxMind
https://www.maxmind.com/en/home

GoAccess – Visual Web Log Analyzer
https://goaccess.io/