2026年2月27日金曜日

cloudflareのトンネル利用

 これまで、cloudflareのプロキシーは利用していたが、グローバルIpアドレスをルータのものをDNSに設定していたので、Ipアドレスが変更になった途端、外部からアクセスできなくなった。自分では、自動更新の設定なっていたつもりだったけど、よく調べたら、なってなかったようで、結局は、トンネルを作らないとだめだったよう。cloudflareとraspiの間で独自プロトコルでトンネルを作り、常時接続状態にする仕組みのよう。早速、AIに聞きながらraspiにツールをいれ、設定変更。これで、Ipアドレス変更を気にしなくてもよくなり、だいぶ管理は楽になる。

※この方式にしたところ、外部からのアクセスログが正しく記録されなくなってしまった。いろいろ、試行錯誤した結果わかったことは。ヘッダー名: Cloudflareの仕様により、元のIPは CF-Connecting-IP という名前で送られてくるので、それを使うようにする設定が必要らしい。

sudo a2enmod remoteip

・トンネルでlocalhost:8080でbottleを指定したのがよくなかった。apacheのログを取りたい場合はapache経由のためlocalhost:80にする必要あった。

・ログ形式(apache2.conf)で

LogFormat "%v:%p %a %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" vhost_combined
LogFormat "%a %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%a %l %u %t \"%r\" %>s %O" common

内部設定(000-default.conf)で

RemoteIPHeader CF-Connecting-IP
RemoteIPInternalProxy 127.0.0.1

変更が必要。

sudo systemctl restart apache2 で再起動。


0 件のコメント:

コメントを投稿