目的
Cloudflare WARP を Windows Server に無理矢理インストールして動かしてみます。
Windows Server は Cloudflare WARP の公式サポート対象外です。
そもそもサポート対象外の構成を取ることは非推奨です。
自己責任の範疇でご利用ください。
- Known limitations - WARP · Cloudflare Zero Trust docs
Windows Server
The WARP client does not run on Windows Server.
Refer to the downloads page for a list of supported operating systems.
確認した Windows Server OS バージョン
- Windows Server 2016
- Windows Server 2019
- Windows Server 2022
Cloudflare WARP 最新バージョンダウンロード
以下の PowerShell スクリプトで C:\Users\Administrator\Desktop
フォルダに Cloudflare WARP 最新(安定)バージョン をダウンロードできます。
[System.Net.ServicePointManager]::SecurityProtocol = @([System.Net.SecurityProtocolType]::Tls13,[System.Net.SecurityProtocolType]::Tls12)
$releases = Invoke-RestMethod -Uri "https://install.appcenter.ms/api/v0.1/apps/cloudflare/1.1.1.1-windows-1/distribution_groups/release/public_releases" -Method GET
$latest_release_id = ConvertFrom-Json $releases[0].id
$latest_release_json = Invoke-RestMethod -Uri "https://install.appcenter.ms/api/v0.1/apps/cloudflare/1.1.1.1-windows-1/distribution_groups/release/releases/${latest_release_id}" -Method GET
$latest_download_url = $latest_release_json.download_url
Invoke-WebRequest $latest_download_url -OutFile "C:\Users\Administrator\Desktop\Cloudflare_WARP_Release-x64.msi"
参考:普通にインストールすると起動失敗
ダウンロードした Cloudflare_WARP_Release-x64.msi
を起動するとインストール自体は完了しますが、起動時に The Cloudflare WARP service is not available. Try rebooting.
エラーが出ます。
このエラーはこのまま再起動しても状況は改善しないため、WLAN を有効化した上でインストールするようにしてください。
WLAN 有効化
以下の記事を見ると、
- WARP installed on server 2019 cant start the service - Zero Trust / WARP - Cloudflare Community
- How to install Cloudflare WARP (1.1.1.1) on Windows Server
- Installing Cloudfalre Warp on Windows Server - Tiernans Mini Blog
Windows Server のワイヤレス LAN (WLAN) サービス を有効化することで動かすことができるようなので、やってみます。
Windows Server のワイヤレス LAN (WLAN) サービスは、ワイヤレス ネットワークの構成、検出、接続を行うための機能です。
...
WLAN 機能は、既定では Windows Server にインストールされていません。
...
このサービスは、Windows クライアント デバイスに既にインストールされており、既定で有効になっています。
Install-WindowsFeature -Name Wireless-Networking
Success Restart Needed Exit Code Feature Result
------- -------------- --------- --------------
True Yes SuccessRest... {Wireless LAN Service}
WARNING: You must restart this server to finish the installation process.
再起動が必要なので、再起動します。
Restart-Computer -Force
インストール
その後 Cloudflare_WARP_Release-x64.msi
を起動してインストールしましょう。
インストール自体は問題なく進められます。
サービストークンを使ってサイレントインストールする場合は、以下のコマンドでインストールします。
PowerShell$CLIENT_ID='YOUR_CLIENT_ID' $CLIENT_SECRET='YOUR_CLIENT_SECRET' msiexec /i "Cloudflare_WARP_Release-x64.msi" /qn ` ORGANIZATION="your-team-name" ` SERVICE_MODE="warp" ` ONBOARDING="false" ` SWITCH_LOCKED="false" ` AUTO_CONNECT="0" ` AUTH_CLIENT_ID="${CLIENT_ID}" ` AUTH_CLIENT_SECRET="${CLIENT_SECRET}"
動作確認
普通にインストールしただけでは起動しなかった Cloudflare WARP が動作し始めました!
RDP 等でリモートから接続している場合には、すぐに WARP を ON にすると接続できなくなる可能性があります。
事前にプライベート IP から接続に切り替えるか、Zero Trust アカウントの WARP 設定で Split Tunnel としてリモート接続元 IP を追加しておきましょう。
Cloudflare Zero Trust アカウントにログインしてみます。
warp=on
、 gateway=on
として、問題なく動いている判定が得られました。
https://help.teams.cloudflare.com/ を見ても、動作状況を確認できます。
ログインした Cloudflare Zero Trust アカウントからデバイス情報を確認すると「Windows 10」と認識されているようです。
Windows Server 2019 以降では OS ビルド番号まで確認できます。
- Windows Server 2016 (OS Build 14393.6614) --> 10.0
- Windows Server 2019 (OS Build 17763.5329) --> 10.0.17763
- Windows Server 2022 (OS Build 20348.2227) --> 10.0.20348
他の機能については、そのまま動いているように見えます。
まとめ
サポート対象外の Windows Server で Cloudflare WARP を動かせることを確認しました。
一時的な利用や個人用途で Windows クライアント OS が手元にない場合などで使えることがあるかもしれません。
いつまで動かせるかすら保証はないですが、自責で動かせる(多少使えなくなっても特に困らない、使えたらラッキーくらいの)環境では良いのかもしれません。
参考リンク
- curl/PowerShellでHTTPアクセスいろいろ #PowerShell - Qiita
- PowerShell/テキスト処理/ConvertFrom-Json - curlからのJSONをパースする - yanor.net/wiki
参考:Chrome サイレントインストール
Start-BitsTransfer -Source https://dl.google.com/tag/s/appguid%3D%7B8A69D345-D564-463C-AFF1-A69D9E530F96%7D%26iid%3D%7B9CBC3BA0-0B21-CE75-59A4-7C679C244042%7D%26lang%3Dja%26browser%3D3%26usagestats%3D1%26appname%3DGoogle%2520Chrome%26needsadmin%3Dprefers%26ap%3Dx64-stable/dl/chrome/install/googlechromestandaloneenterprise64.msi
googlechromestandaloneenterprise64.msi /qn /norestart
参考:NTP 設定
w32tm /config /manualpeerlist:time.cloudflare.com /syncfromflags:MANUAL
Stop-Service w32time
Start-Service w32time
参考:タイムゾーン設定
tzutil /s "Tokyo Standard Time"
参考:サーバーマネージャーをログオン時に起動しない設定
REG ADD "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ServerManager" /v DoNotOpenServerManagerAtLogon /t REG_DWORD /d 1 /f