1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

CloudflareAdvent Calendar 2022

Day 3

Web サーバの local スタッツをリモートから見る(cloudflared の GUI 設定で、サクッと)

Posted at

はじめに

最近、Cloudflare で Proxy しているオリジンサーバのスタッツをリモートから見たい状況がありました。

しばらく技術職から離れていたところ、cloudflared が GUI から展開できるようになってましたので、それを使ってみました。

やりたいことは

  1. Public のホスト名でアクセス
  2. Access で認証認可
  3. Tunnel (cloudflared) でオリジンサーバのローカルポートへ誘導(Apache の /server-status)
  4. Tunnel は GUI で設定する

というような構成です。

Access の設定

まず外からアクセスするホスト名を決めて、Access を設定します。
(Access の認証認可ポリシーや Proxy するための DNS などの設定はここでは省きます)
Screen Shot 2022-12-03 at 15.41.07.png

Tunnel の設定

次に Tunnel の設定を行います。

Tunnel の名前を指定

Screen Shot 2022-11-19 at 16.44.46.png

環境の選択と自動導入コマンドの表示

作成時のウィザードではどれでもいいです、あとで選んで使います。
Screen Shot 2022-11-19 at 16.45.25.png

Public Hostnames をトンネルに誘導

ブラウザからの接続: https://stats.example.com/server-status
オリジンサーバへの接続: http://localhost:80/server-status
Screen Shot 2022-12-03 at 15.44.32.png

追加設定は2項目を適用しています。

  • Host ヘッダの変更

オリジンサーバへのリクエストで HTTP Host ヘッダを stats.example.com でなく localhost で渡したいのでオプションを変更
Screen Shot 2022-12-03 at 15.46.26.png

  • Access と関連付け

Tunnel が開設され Active になったときの無防備な公開を回避するため、開設前に先に Access 保護をかけておきます。

Screen Shot 2022-12-03 at 15.47.29.png

Tunnel 開設

表示されるコマンドをオリジンサーバーにコピペすると、cloudflared が繋がります。
Screen Shot 2022-12-03 at 16.09.50.png

Screen Shot 2022-12-03 at 16.12.04.png

接続

Access の画面へリダイレクトされるので、IDP を選択し、認証します。
Screen Shot 2022-12-03 at 16.13.59.png

IDP 認証がうまくいき、Access の認可も通ると、オリジンサーバのスタッツが表示されます。
Cloudflare で Proxy しながら、オリジンサーバの情報を横目に見ることができました。
Screen Shot 2022-12-03 at 15.30.42.png

ついでに cloudflared の metrics

cloudflared トンネルのスタッツも cloudflared がアウトプットしてます。それも見てみます。
cloudflared.log をみると起動時に metrics という行を見ることができると思います。

Screen Shot 2022-12-03 at 16.20.29.png

ここに http でアクセスすると統計情報がとれます。
デフォルトでは起動ごとにポートが変わるので、リモートから取るには面倒です。

metrics サーバ Listen IP/Port の固定

起動時にリッスンする IP と Port を指定できるので、それを使って固定します。
CLI では設定ファイルでも指定できますが、今回は GUI 経由で設定していますので起動ファイルの引数で指定してみます。(metrics を上記のコピペにて設定されたデフォルト値から変更しています)
https://developers.cloudflare.com/cloudflare-one/connections/connect-apps/install-and-setup/tunnel-guide/remote/remote-management/#linux

Screen Shot 2022-12-03 at 16.25.23.png

Tunnel の設定

ブラウザからの接続: https://stats.example.com/metrics
オリジンサーバへの接続: http://localhost:11111/metrics
(オプション設定については Apache status と同じ2項目を追加)

Screen Shot 2022-12-03 at 16.28.03.png

こちらも無事に情報を取れました。

Screen Shot 2022-12-03 at 15.30.10.png

ただ、文字の羅列なので、人には優しくないです。
これは、Grafana でいい感じに可視化することができそうです。
https://developers.cloudflare.com/cloudflare-one/connections/connect-apps/do-more-with-tunnels/grafana/

こちらについては今後ということで。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?