1
0

OpenWrt Windows Cloudflare WARP & WireGuard

Last updated at Posted at 2023-07-14

はじめに

初心者対応構成

  • スクリプトでの自動設定
  • UCIとLuCi及びWinSCPにて比較しながら作業がおススメ

PowerShellSSHアクセス

ssh root@192.168.1.1
ssh root@192.168.1.1のショートカット作成(デスクトップ)
powershell
$DESKTOP = ([Environment]::GetFolderPath("Desktop") + "\192.168.1.1.lnk")
$WshShell = New-Object -comObject WScript.Shell
$Shortcut = $WshShell.CreateShortcut("$DESKTOP")
$Shortcut.TargetPath = "C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe"
$Shortcut.Arguments = '-windowstyle hidden -ExecutionPolicy RemoteSigned "Start-Process ssh root@192.168.1.1"'
$Shortcut.IconLocation = "C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe,0"
$Shortcut.WorkingDirectory = "."
$Shortcut.Save()

  • 強制的に貼り付け
  • yes

SSHログイン出来ない場合:exclamation:

known_hostsクリア

  • C:\Users\yourusername\.ssh\known_hosts ※Windows隠しファイル
powershell
Clear-Content .ssh\known_hosts -Force


OpenSSHのインストール
※Windows 10 Fall Creators Update(1709)以降標準搭載

  • 機能の確認
powershell
Get-WindowsCapability -Online | Where-Object Name -like 'OpenSSH*'

  • 機能のインストール
powershell
Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0


前提条件

  • 参考ファームウェア:22.03
  • 参考デバイス:WXR-5950AX12 / WSR-6000AX8
  • 参考OS:Windows11 Intel CPU

Cloudflare WARP を使用して DPI (ディープ パケット インスペクション) をバイパスする方法

Windows11の設定

wgcf バイナリ リリースをダウンロード

リネーム
wgcf.exe

  • wgcf.exeを以下のフォルダに格納
    C:\Windows\System32

以下をWindowsのファイル名を指定して実行に入力

  • powershell start-process cmd
  • OK
コマンドプロンプト
C:\Windows\System32\wgcf.exe register

```bash:コマンドプロンプト
wgcf update

コマンドプロンプト
wgcf status

コマンドプロンプト
wgcf trace

コマンドプロンプト
"C:\Windows\SysWOW64\wgcf-profile.conf"

  • メモ帳等で開く

  • wgcf-profile.conf
    Cloudflare.private_key
    public_key

  • Windowsの上記に生成されたconfから2つのkeyを以下に入力

設定値

PRIVATEKEY='********'
PUBLICKEY='********'

設定

opkg update
opkg install luci-proto-wireguard
# network backup
cp /etc/config/network /etc/config/network.cloudflare.bak
# script
NET_IF="lan"
. /lib/functions/network.sh
network_flush_cache
network_get_ipaddr NET_ADDR "${NET_IF}"
# delete
uci -q delete dhcp.lan.dhcp_option
uci -q delete dhcp.lan.dns
# interface
uci set network.Cloudflare=interface
uci set network.Cloudflare.proto='wireguard'
uci set network.Cloudflare.private_key=${PRIVATEKEY}
uci set network.Cloudflare.mtu='1280'
uci add_list network.Cloudflare.addresses='172.16.0.2/32' #任意
uci add_list network.Cloudflare.addresses='2606:4700:110:876a:4734:8b50:27b8:203b/128' # 任意
uci add_list network.Cloudflare.dns='1.1.1.1'
uci add_list network.Cloudflare.dns='1.0.0.1'
uci add_list network.Cloudflare.dns='2606:4700:4700::1111'
uci add_list network.Cloudflare.dns='2606:4700:4700::1001'
# 
uci set network.wireguard_Cloudflare=wireguard_Cloudflare
uci set network.wireguard_Cloudflare.public_key=${PUBLICKEY}
uci set network.wireguard_Cloudflare.endpoint_host='engage.cloudflareclient.com'
uci set network.wireguard_Cloudflare.endpoint_port='2408'
uci set network.wireguard_Cloudflare.route_allowed_ips='1'
uci add_list network.wireguard_Cloudflare.allowed_ips='0.0.0.0/0'
uci add_list network.wireguard_Cloudflare.allowed_ips='::/0'
#
uci set network.route_wireguard=route
uci set network.route_wireguard.interface='Cloudflare'
uci set network.route_wireguard.target='0.0.0.0/0'
uci set network.route_wireguard.gateway=${NET_ADDR}
uci set network.route_wireguard.metric='1024'
# FW
ZOON_NO='1'
uci add_list firewall.@zone[${ZOON_NO}].network='Cloudflare'
# set 
uci commit
# restart
/etc/init.d/network restart

確認
1.1.1.1.png

OCNバーチャルコネクト、V6プラス、IPV6オプションの場合

. /lib/functions/network.sh
network_flush_cache
network_find_wan6 NET_IF6
network_get_device NET_L3D6 "${NET_IF6}"
# WAN
WAN6RA='wan6ra'
WANMAP='wanmap' # OCNバーチャルコネクトのみ
uci set network.Cloudflare.mtu='1420'
# WAN
uci set network.wan=interface
uci set network.wan.device=${NET_L3D6}
uci set network.wan.proto='dhcp'
uci set network.wan.auto='1'
# wan6ra
uci set network.${WAN6RA}.auto='0'
# wanmap
uci set network.${WANMAP}.auto='0' # OCNバーチャルコネクトのみ
# FW
ZOON_NO='1'
uci add_list firewall.@zone[${ZOON_NO}].network='wan'
# set
uci commit
# restart
/etc/init.d/network restart

レストア

レストア

  • network
# network
cp /etc/config/network.cloudflare.bak /etc/config/network
rm /etc/config/network.cloudflare.bak
# restart
/etc/init.d/network restart

WARPとWireGuard windows用

Installationからダウンロードしインストール

"C:\Windows\SysWOW64\wgcf-profile.conf"

  • Windowsの以下に生成されたwgcf-profile.conf.dpapiに上記の内容をコピー
    "C:\Program Files\WireGuard\Data\Configurations\wgcf-profile.conf.dpapi"

おまけ

確認

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