活用術/使い方/マニュアル

高校でWindowsPCを使いたい
自分の高校でBYOD制度で全員が端末を持ってきて良いことになっていますが、許可されているのがiPadとChromebookのみ。自分はiPad 9genを使っているのですが、iOSの謎仕様があったり、RAMが3GBしかなくブラウザのタブが落ちるなどちゃんと作業するならやっぱりWindows一択になります。
Windows Proには標準で高機能なRemote Desktopを有効化できる機能があるのですが、通信プロトコルがtcp/udpであったり、外部からアクセスするにはポート解放が必要だったりします。ポート解放せずとも外部から通信できるようなものはSecure Share Netなどがありますが、やったどころで通信がtcpなのでほとんどブロックされます。なのでOpenVPNでブロック回避してSecure Share Net経由でPCに接続となり、2台のサーバーを踏み台にしてアクセスすることになるのでレイテンシ増加と通信速度の低下が結構現れます。しかもPCを再起動するとSecure Share Netが切れるから接続できなくなります。
そこで、Cloudflare Zero Trustを使ってPC起動時に自動的にトンネル作成(実質ポート開放)+ポート番号固定をしました。家では接続しましたが、学校に行くと、、、
接続できない
なので、これは1年半ほど勝手に再起動したときの応急処置としてスマホから再度Secure Share Netを起動するために使っていました(ちなみにスマホは校則で校内使用禁止)。
そしてここ最近、Cloudflareベースで何とかならないかいろいろ試していたところ...
Cloudflare Zero Trustの接続方式を変更したら、VPN接続できました。

Cloudflare Zero Trustとは
ネットワークの内側、外側を問わずにセキュリティチェックをしながら、ローカルネットワーク内のサービスへのアクセスを実現できるサービスです。Secure Share NetのようなURL+ポートで誰でもアクセスできるタイプと違い、特定のデバイスやアカウントのみの接続にできるのでセキュリティ面もかなり良いです。
無料プランでも帯域制限はなく、大抵のことはできるので金欠高校生にはありがたいです。
Cloudflare Zero Trustで設定したWindows Remote Desktopにアクセスできる仕組みは
CloudflaredがCloudflare ZTNAにトンネル(ネットワーク通信経路)を掘り、クライアント側に許可があればトンネルに接続し家のネットワークに入ってリモートPCにアクセスできます。
構築のやり方
必要なもの
- メールアドレス
- クレジットカード
- PC
この三つが必要です。クレジットカードがない場合は、070、080、090から始まる電話番号さえあればプリペイド式のクレジットカードを無料で作れるのでそれで作ってください。
1. Cloudflareのアカウント作成とプラン選択
上記の公式サイトでアカウントを作成できます。
さすがにスクショは取ってありませんでした。画面の通りに作成してください。
ダッシュボードでプランの選択と組織名の設定があります。無料プランでも十分ですがここら辺は自由に設定してください。
プラン登録の際にクレジットカード情報が必要になります。無料プランでも必要です。
そしたらアクセスできるユーザーの設定が促されるはずです。ログイン側もメアドは必要です。
2. 接続元にCloudflare Oneを入れる
iOS、Android、Windows、Linuxなど大抵のOSは対応しています。スマホ系OSはストアからDLできます。
インストールしたらZero Trustの組織名を求められるので先ほど作成したアカウントの組織名を入力します。

次にZero Trustに登録済みのメアドでログインします。出来たら一旦終了です。

3. トンネルを作成&PCにCloudflaredをインストール
ネットワークタブ > Tunnelsでトンネルを作成します。トンネル名はわかれば何でもいいです。(例はDell Vostro 5590にしています。)

名前を入力したらこのような画面になります。ここで接続先PCのOSとCPUのアーキテクチャーを選択します。大抵のPCは64bitです。
そうするとOSごとにインストールと実行の欄に手順が出るのでそれに従って接続先PCにインストールしてください。

接続先PCとCloudflareの接続が確認されると以下のようになり続行を押せるようになります。

押したらTunnelsにさっき作ったトンネル名が追加されているので、それをクリックしさらにルートを選択。

Windows標準のリモートデスクトップの場合、外部からローカルIPに繋ぐのでプライベートCIDRを追加でリモートPCのローカルIPアドレスをCIDR形式で入力。/32で1つのIPだけを指すという意味になる。
そうしたらトンネルはとりあえず完成。

4. ローカルIPを家の方のネットワークにブリッジさせる
トンネルから適切に転送されなければ、192.168.11.113のような別ネットワークのローカルIPを指定しても接続できません。なのでデバイスプロファイルを作成して転送させるようにします。(既にrdpというプロファイルがあるのは気にしないでください)

新しいプロフィールの作成でプロファイル名、どのデバイス(ユーザー)に適用させるか、接続方式(プロトコル)の設定などがあります。メアドは接続元の端末で使うメアドを入れておいてください。
MASQUEはHTTP/3でWebサイトと同じ通信形式を利用します。
WireGuardはUDPベースです。


プロファイルを作成したらデバイスプロファイルの画面に戻されるので、先ほど作成したプロファイルを開きます。
そうしたらデバイス トンネル プロトコルの下側にスプリットトンネルの欄が追加されているので「IPアドレスとドメインを含める」に変更して保存して、デバイスプロファイルの画面に戻ります。

戻ったら右の・・・をクリックしてスプリットトンネルの編集でスプリットエントリを追加します。
スプリット トンネルエントリを追加でリモートPCのローカルIPを入力してリスト追加&エントリを保存をします。

そして、またデバイスプロファイルの画面に戻り、作ったものを一番上にドラッグして優先順位を一番上にします。

これにて構築完成です。
Cloudflare経由で接続する
まずは接続元でCloudflare Zero TrustをONにします。

接続できたらWindows Remote desktopを開いて、リモートPCのローカルIPを指定して接続します。

接続できる場合は、何かを見落としている可能性があります。デバイスプロファイルがちゃんと設定されているか、トンネルは生きているかなど確認してください。
net start termservice
接続できたらGGです。

RemoteDesktopの注意点
まず、ネットの速度がgmだと操作も厳しいです。Cloudflareにつないだ状態で数Mbps出ていれば使い物になりますが、数百kbpsだとウインドウを最小化するだけで10秒近く待たされます。
あとDirect input非対応なのでMinecraftやValorantなどマウスが何ポイント動いたかを直接見るゲーム等では視点移動が盛大にバグり散らかします。
またバージョンによっては拡大率を指定できないので、環境によってはウィンドウサイズが変わってしまう可能性があります。(大抵は大丈夫ですが)
まとめ
学校でも安定したリモートデスクトップ環境が使える(ただし回線速度の影響を受ける)
- 手動でトンネル作成&ポート番号控えがいらない
- PC再起動しても大丈夫
- セキュリティ良
- 通信速度制限なし
- 低レイテンシ
- VPNとしても使える
- できることが多い
- 管理画面がころころ変わる
- 設定が難しい
評価
関連商品
商品情報
- メーカー
- Cloudflare
- 製品名
- Zero Trust





というかiPadかchromebookを指定してくる学校って尖ってますね……
管理が楽とかっていう理由なんですかね……?