やまざきさん、こんにちは。
VPNと言う性格上、仕事先でないとテストできず、時差の関係で返事が遅くなりました。
TLS-Auth関係がクサいとご指摘を受けましたので試してみましたがまだ動きません。
まずサーバのコンフィグファイルで
tls-auth chromebook-server-keys/ta.key
1 # This file is secret
と、方向(コメントによればサーバ側は「0」、クライアント側は「1」が正しく、事実他のサーバ・クライアントの組み合わせではそのようにして動いている)を逆にしてみたログです。
MULTI: multi_create_instance called
クライアント側ファイアウォールグローバルIPアドレス:ポート番号 Re-using SSL/TLS context
クライアント側ファイアウォールグローバルIPアドレス:ポート番号 LZO compression initialized
クライアント側ファイアウォールグローバルIPアドレス:ポート番号 Control Channel MTU parms [ L:1542 D:166 EF:66 EB:0 ET:0 EL:0 ]
クライアント側ファイアウォールグローバルIPアドレス:ポート番号 Data Channel MTU parms [ L:1542 D:1450 EF:42 EB:135 ET:0 EL:0 AF:3/1 ]
クライアント側ファイアウォールグローバルIPアドレス:ポート番号 Local Options hash (VER=V4): 'd81d562e'
クライアント側ファイアウォールグローバルIPアドレス:ポート番号 Expected Remote Options hash (VER=V4): '79fd358d'
クライアント側ファイアウォールグローバルIPアドレス:ポート番号 TLS: Initial packet from クライアント側ファイアウォールグローバルIPアドレス:ポート番号, sid=278d0667 456827c4
read UDPv4 [ECONNREFUSED]: Connection refused (code=111)
read UDPv4 [ECONNREFUSED]: Connection refused (code=111)
read UDPv4 [ECONNREFUSED]: Connection refused (code=111)
read UDPv4 [ECONNREFUSED]: Connection refused (code=111)
read UDPv4 [ECONNREFUSED]: Connection refused (code=111)
次は、TLS-Authが追加的なセキュリティ目的ということなので、サーバのコンフィグファイルの件の行をコメントアウトした結果のログです。
MULTI: multi_create_instance called
クライアント側ファイアウォールグローバルIPアドレス:ポート番号 Re-using SSL/TLS context
クライアント側ファイアウォールグローバルIPアドレス:ポート番号 LZO compression initialized
クライアント側ファイアウォールグローバルIPアドレス:ポート番号 Control Channel MTU parms [ L:1542 D:138 EF:38 EB:0 ET:0 EL:0 ]
クライアント側ファイアウォールグローバルIPアドレス:ポート番号 Data Channel MTU parms [ L:1542 D:1450 EF:42 EB:135 ET:0 EL:0 AF:3/1 ]
クライアント側ファイアウォールグローバルIPアドレス:ポート番号 Local Options hash (VER=V4): '530fdded'
クライアント側ファイアウォールグローバルIPアドレス:ポート番号 Expected Remote Options hash (VER=V4): '41690919'
クライアント側ファイアウォールグローバルIPアドレス:ポート番号 TLS: Initial packet from クライアント側ファイアウォールグローバルIPアドレス:ポート番号, sid=47074820 f0631e32
クライアント側ファイアウォールグローバルIPアドレス:ポート番号 TLS Error: reading acknowledgement record from packet
read UDPv4 [ECONNREFUSED]: Connection refused (code=111)
クライアント側ファイアウォールグローバルIPアドレス:ポート番号 TLS Error: reading acknowledgement record from packet
read UDPv4 [ECONNREFUSED]: Connection refused (code=111)
方向を変えてみたときと基本的に変わらないようです。どちらの場合もこれらのログのブロックが何回か表示されたのち諦めています(「 [ECONNREFUSED]」の行の出現回数は変化)。
Android
では、正しい方向(「0」)と、client.confファイルのca、cert、keyのインクルード行を当該ファイルのPEM表現の内容で置換するこ
とで生成したovpnファイルであっさり動いたのですが(Windowsも同様)、Chromebookのインプリメンテーションは、P12ファイルを使うことなど、まったく別物の印象を受けます。
高校生の娘が放課後スタバでクラスメートと宿題勉強をする時に自宅のデスクトップにアクセスさせてやろうとしているのですが、残念です。
なお、Chromebookにバンドルの「Chrome Remote Desktop」は、RDPでアクセスしたいリモート側も「Chrome
Remote Desktop」を走らせている必要がある(つまり独自プロトコル?)らしく、サードパーティの「Chrome
RDP」ならWindowsのネイティブRDP(Terminal Service)を使えるのでこちらの方がお薦めです。
また、拙宅の
ファイアウォールではDDNSベースで外部クライアントからのVPNを含む接続にパケットフィルタリングを施してセキュリティを高めているのですが、
Chromebook用のDDNSクライアントも見つかりません。唯一「
namecheap.com」と言うところの「FreeDNS」と言うサービスが
Chromebook用のDDNSクライアントを提供していると主張しているのですが、サブスクライブしたところ「FreeDNS」自体が設定UIと説明
がが非常にお粗末で成功していません。この件は最悪の場合、拙宅のウェブサーバ(フィルタリングなし)に手動でアクセスして現在のIPアドレスからの
VPN接続を許可するような仕組みも考えています。
と言うわけで、Chromebookはまだ前途多難ですが、もし何かヒントなどがあればぜひお願いします。
hiro