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?

Cloudflare Zero Trust Tunnel経由とローカルアクセスでのHTTPSサービスを動かすときにSSL関連でつまずいたこと

Last updated at Posted at 2025-06-30

概要

自宅で動いているNextcloudサーバへIPv6アドレスを使って内部と外部から接続されるように構築していましたが、もちろんIPv4ではアクセスできないことをどうにかしようとして、いろいろと調べたところ、cloudflareという神サービスを見つけてそれを使ってみたときの試行錯誤です。

一晩で使えるようになるだろ…という甘い考えだった。

cloudflare利用前後の構成図

  • 直接接続(前)
    image.png

  • Cloudflare
    image.png

Cloudflareの設定

もろもろの作業

以下の作業については、ほかの方々がわかりやすい内容でまとめているので検索してください。

  • Cloudflareの無料枠でアカウント作成
  • DNS移管
  • Cloudflare One(Access - Zero Trust)
    • Cloudflared tunnel
    • アプリケーションの作成
      • パブリックホスト(セルフホスト)の設定

トンネルの設定

自分の環境ではマルチドメインで運用しているので、それぞれのドメイン毎のパブリックホストを作成しました。

  1. パブリックホストのホスト名
    • 外部に公開するホスト名(URL)を設定する
  2. サービス
    • タイプはHTTPS
    • URLはWeb(nextcloud)サーバのプライベートIPアドレス

その他のアプリケーション設定(ここがキモ)

  • TLS
    • オリジンサーバ名を適切なもの(もともと持っているSSL証明書のCN)にする
      image.png

つまずいていた事

nextcloudのtrusted_domainにはじかれる

トンネルパブリックホストのサービスURLにIPアドレスを入れると、設定されていないホスト名でアクセスされているとエラー画面が出て使えなかった

trusted_domainをサービスURLに設定すると。。。

参照ループで大変なことに

サーバはHTTPにして、SSLはcloudflareでする

これだといくらトンネルとはいえHTTPで外と通信することになったり、自宅でのアクセス時にHTTPアクセスになるのでURLが変わってしまい、外出時と在宅時で使い分けは現実的ではない

Proxmoxに追加したDNSサーバについて

ローカルアクセスはcloudflareを経由しないように、unboundで自宅内完結するようにしています
これをしなくてもアクセスはできますが、大回りアクセスになってパフォーマンスが出ないことと、アップロード制限に引っ掛かりやすくなるのでこれに準じた構成がいいと思います。

謝辞

公式ドキュメント

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?