CloudFlareを通したApacheでIPアドレスを復元する
Cloudflare経由のApacheで、アクセス元のIPアドレスを取得するための設定メモ。
過去の記事(Qiitaから移行)
この記事は公開当時の知識・環境に基づいて書いたものです。現在の仕様に合わせた更新・動作確認は行っておらず、内容の正確性や動作を保証するものではありません。
環境
Ubuntu 20.04.3 Apache 2.4.41
テスト環境の作成
<?php
$ip = $_SERVER['REMOTE_ADDR'];
$host = gethostbyaddr($ip);
echo 'IP:'.$ip.'<br>HOST:'.$host;
このファイルをサーバー上に配置することで、IPアドレスを確認することができます。 セットアップしてすぐの状態ではリモートIPは表示されず、CloudFlareのIPが表示されてしまうので、今回はこれを修正していきます。
なおしていく!!
参考
参考サイトと違うのは3つ目のコマンドにsudoがあるだけです。
ひたすらコマンドを実行
$ sudo apt-get install apache2-dev libtool git
$ git clone https://github.com/cloudflare/mod_cloudflare.git; cd mod_cloudflare
$ sudo apxs -a -i -c mod_cloudflare.c
$ sudo apachectl restart; apache2ctl -M|grep cloudflare
=> cloudflare_module (shared)
最後の表示があれば成功です。