質問: アクセス元のIPアドレスをELBのproxyProtocolを有効にして取得する際に BadRequestが発生してそもそもページが表示できません。 ■ ELBのリスナー 80(TCP) -> 80(TCP) 443(SSL) -> 80(TCP) ※proxyProtocolは80に対して有効にしています ■ アクセスログについて(**個人的にはここが怪しいと思いますが、何をどう調査すればいいのかわかりません・・・**) 現在、 **$status** の中身が 『PROXY TCP4 .....』となっています。 他の参考サイト様をみると、『GET ....』となるのが正常のようです。 アクセス元のIPアドレスを取りたいということが目的で、Teratailにも質問を上げています。 現在の設定ファイルの内容はTeratailを見ていただければと思います。 何かご存知の方がいらっしゃいましたら、ご教授願います。 (こういう調べ方をした方がいいんじゃない?等のご助言でも有りがたいです。) よろしくお願い致します。
回答: ELBのProxyプロトコルを有効にし、サーバ側でもProxyプロトコルに対応させて実現することも不可能では無いかもしれませんが、かなり特殊な方法になります。 一般的には、 Webアプリから元のIPを知る:HTTPヘッダの X-Forwarded を確認する ログに元のIPを残す:WebサーバのログではなくELBのログを利用する or Webサーバのログ設定を変更してHTTPヘッダの X-Forwarded を追加する というのが簡単です。 また、sshをELBを使って振り分けさせるのは適切ではないため、sshは各EC2インスタンスそれぞれに直接アクセスするのが良いかと思います。