読者です 読者をやめる 読者になる 読者になる

OpenVPN使おう:DocomoのSPモードだとPPTPでVPNできないじゃん

Android VPN

【スポンサーリンク】

追記 2013/6/30 以下のめんどくさいことしなくてもSoftEther VPNで簡単に設定できます。
SoftEther VPNでOpenVPN/IPsecが簡単にできた - You give me all I need.

以下古い記事

前回MNPしてau回線からドコモ回線にして気づいたのですがPPTPVPNがつながりませぬ。
SPモードはIPがプライベートなのが原因のようです。
moperaならグローバルIPくれるようですが、スマホテザリングするとなんかAPNがSPモードになるようです。
じゃあもぺら契約しても意味無いじゃん…

ということで他に手段がないか調べるとOpenVPNが使えそうです。
常時稼動してるXPマシンがあるのでとりあえずそれを使ってなんとかしてみる。

あとOpenVPNはルーティングとブリッジの2つが選べますが
共有ファイルも見えてブリッジの方が楽です。
でもAndroid用 Clientがブリッジ無理そうなのでルーティングでやります。(なんかエラーが出るのだ)

用意するもの
・お好みのDDNS
・PC用 OpenVPN http://openvpn.net/index.php/open-source/downloads.html
・PC用 OpenVPN Client http://www.openvpn.net/index.php/openvpn-client/downloads.html
AndroidOpenVPN Client https://play.google.com/store/apps/details?id=net.openvpn.openvpn
・常時稼動できる鯖

やったよVPNできたよ
非Rootで使えます


お金がある人向け。SPモードでも使えるらしい
RTX1200がdocomo SPモードでのL2TP/IPsec VPN接続に対応 - 情報技術の四方山話

機器構成

[ルータ]-------(ネット)-----[茸SPモード] 
  |                   | 
  +-[XP鯖]====(VPN)=====+-[ギャラS3] 
  +-[サンバ]

Atermルータ 192.168.0.1
■XP鯖 192.168.0.160 / VPN用:10.66.0.1
■サンバ 192.168.0.xxx
■ギャラS3 VPN用:10.66.0.xxx

動作確認したもの

とりあえず接続確認できたのはこれ。
NetBIOS名での指定はできないので接続は全部IP指定でします。
テザリングでノートパソコンを使う場合はノートパソコン側でClientを走らせます

NAS4Freeで稼働中のsambaファイルサーバ
(Windowsの共有はブリッジ接続じゃないので見えない。WINSがあればいけるの?)
・hp iLO3
・UltraVNC
Windowsリモートデスクトップ

手順

OpenVPN設定ですがいろいろあってめんどいです。詳しくはよそのサイト見てください
とりあえず参考になるのがイカでしょうか

EarthRiZE <MCT-Lab_Master@rNote> - 第0回:無料で立てるSSL-VPNサーバ:目次
http://freescitech.net/2/wiki/index.php?FrontPage
OpenVPN 2.0 HOWTO Japanese Translation

手順?

1.家のPCのIPを固定にする
2.OpenVPNをインストール
3.とりあえず証明書を作成します
4.configファイルを書き書きする
5.server / clientそれぞれに証明書とconfigをばらまく
6.server / clientのファイヤーウォールやUAC等をなんとかする
7.serverのレジストリ書き換えてIPルーティングを有効にするOpenVPN設定備忘録
8.家のルータの設定
 ・ポートマッピング設定 外部からの UDP 1194 宛を 192.168.0.160 に転送
 ・静的ルーティング 内部の10.66.0.0 宛を 192.168.0.160 に転送
9.server / clientでOpenVPN動かす
10.つかれたので寝る

サーバ側設定ファイル

上記環境用サーバ側設定ファイルです

#OpenVPNサーバ設定ファイル

#tls-authを有効にする
tls-auth tls-auth.key 0

#256bit AESを有効にする
cipher AES-256-CBC

#通信ポートの設定
port 1194

#UDPを使用
proto udp

#ルーティングモード
dev tun

#CA証明書ファイル名
ca ca.crt

#サーバ証明書ファイル名
cert server.crt

#サーバ鍵ファイル名
key server.key

#Diffie hellman パラメータ ファイル名
dh dh1024.pem

#最大クライアント数
max-clients 2

#ルーティング用
server 10.66.0.0 255.255.255.0

# クライアントへ通知するルーティングを定義します。
# 192.168.0.0/24 宛はOpenVPNサーバへ送る
push "route 192.168.0.0 255.255.255.0"

#クライアントに割り当てたIPを記録
ifconfig-pool-persist ipp.txt

#生存確認 タイムアウト120秒
keepalive 10 120

#LZO圧縮の利用
comp-lzo

#再起動時の復旧用に状態記憶
persist-key
persist-tun

#ステータスログの指定
status openvpn-status.log

#ログレベルの指定
verb 3

クライアント側設定ファイル

上記環境用クライアント側設定ファイルです
Androidアプリで読み込み場合はUTF8で保存されてる必要がある?
追記1 key-directionでエラー出るのでコメントに

#OpenVPNクライアント設定ファイル

#クライアントの設定ファイル
client

#Authenticate,Decrypt packet erro,TLS Errorが出るので入れた
#key-direction 1

#tls-authを有効にする
tls-auth tls-auth.key 1

#256bit AESを有効にする
cipher AES-256-CBC

#ルーティング
dev tun

#UDPを使用
proto udp

#サーバのアドレスと接続先ポート
remote [DNSアドレス] [ポート番号1194]

#CA証明書ファイル名
ca ca.crt

#クライアント証明書ファイル名(client1)
cert client1.crt

#クライアント鍵ファイル名(client1)
key client1.key

#サーバホスト名の名前解決を永遠に試みる
resolv-retry infinite

#特定なローカルポート番号をバインドしない
nobind

#再起動時の復旧用に状態記憶
persist-key
persist-tun

#LZO圧縮の利用
comp-lzo

#ログレベルの指定
verb 3

#Vista以降対策?
route-method exe
route-delay 2

もっと簡単かとおもったのでけっこうめんどい…

追記 2013/4/3

iOS(iPad/iPhone/iPod touch)向けのOpenVPNアプリ公開されましたが使えます。
OpenVPN Connect

追記 2013/6/25 Windows8を鯖にしたときのメモ

WindowsXPをサーバーにしてたがいつまでもXPなのはいかんので鯖を1200円で買ったWindows8にしてみた。
だが鯖へVNCでつながらない。pingがserver→client は通るが、pingがclient→server は通らない。
また他のIPのsambaのファイルサーバとかには問題なくアクセスできるという現象がおこる…(serverだけがつながらない)
色々調べましたがICMPのecho requestがないとこうなるようです。
(よくわからんけどこんなのわかんねーよ)
https://forums.openvpn.net/topic12479.html

ファイアーウォールでecho requestするようにすれば。client→server 方向にもping通るようになった。

Inbound ICMPv4 Echo Requests設定
コントロールパネル→Windows→ファイアーウォール→詳細設定→セキュリティが強化されたWindowsファイアーウォール
1.[受信の規則] を右クリックし、[新しい規則] をクリックします。
2.[規則の種類] ページで [カスタム] をクリックし、[次へ] をクリックします。[プログラム] ページで、[次へ] をクリックします。
3.[プロトコルおよびポート] ページの [プロトコルの種類] で [ICMPv4] をクリックし、[カスタマイズ] をクリックします。
4.[ICMP 設定のカスタマイズ] ダイアログ ボックスで、[特定の種類の ICMP] をクリックし、[エコー要求] を選択して [OK] をクリックします。
5.[次へ] をクリックします。[スコープ] ページで [次へ] をクリックします。
6.[操作] ページで [次へ] をクリックします。[プロファイル] ページで、[次へ] をクリックします。
7.[名前] ページの [名前] に「Inbound ICMPv4 Echo Requests」(名前なのでなんでもいい)と入力し、[完了] をクリックします。


ファイアーウォールのその他の設定はここを参考にした。
OpenVPN Windows8に構築Ⅳ 《OpenVPN GUI(ルーティング)の設定》 : 英四郎


あと鯖につなぐときは、IPを192.168.0.160ではなく10.66.0.1でないとつながらない…
XPのときはどっち(192.168.0.160 or 10.66.0.1)で指定してもつながった気がするが外部から操作できるのでもうこれでいいや…

広告を非表示にする