コンテナ側のApacheのアクセスログにリバースプロキシのIPではなく本来のアクセスIPを出力する方法
ホスト側Nginxからリバースプロキシ経由でApacheコンテナに接続する環境に対して、ブラウザからアクセスするとリバースプロキシのIPアドレスがアクセスログに出力されるが、これだと不正アクセスがあった場合等にIPアドレスが特定できない。そのため本来のアクセスIPアドレスをログ上に出力させる方法をメモ。
対応方法
docker-compose.yml
Apacheのコンテナ設定に以下を追加する。
# remoteipモジュールを有効化 command: sh -c "a2enmod remoteip && apache2-foreground"
vhost.conf
<VirtualHost *:80>~</VirtualHost>内に以下を追加する。
RemoteIPHeader X-Forwarded-For RemoteIPInternalProxy 127.0.0.1 10.0.2.2 172.17.0.1 10.89.0.0/16
確認方法
コンテナを再作成後、以下で確認できる。
# ログの確認 podman logs 【コンテナ名】 # リアルタイムで確認したい場合 podman logs -f 【コンテナ名】
関連記事
-
-
Podmanで作成したApache用コンテナにドメインを割り当て、ポート指定なしでアクセス可能にする方法
先日PodmanでWebサーバ用コンテナを作成したが、ブラウザからアクセスする際 ...
-
-
Podmanのapache-php8.4同梱版コンテナのPHPをアップデートする方法
PHPの現行バージョンにて致命な脆弱性が見つかったとのニュースを聞いた。かなり重 ...
-
-
Podmanで導入したapache-phpに各種PHPモジュールを追加する方法
先日Podmanでapache-php8.4を導入したが、phpinfoで確認す ...
-
-
ホスト側Nginx&コンテナ環境へのBasic認証、リダイレクト、リライト設定方法
先日コンテナのホスト側をApacheからNginxに変えたが、今度はコンテナ側へ ...
-
-
AlmaLinux9系にホスト側NginxとPodmanコンテナ環境を構築する方法
AlmaLinux8系から9系に移行し、さらにLAMP環境からPodmanコンテ ...