Ubuntu
VPN
OpenVPN

図解!UbuntuでOpenVPNを使う:4. 接続確認

More than 1 year has passed since last update.


はじめに

図解!UbuntuでOpenVPNを使う:3. 設定の続きです.

前回まででVPN接続に必要な設定はすべて完了しています.いよいよVPNでの接続確認です^^


図解!UbuntuでOpenVPNを使う:目次



  1. 準備


    1. VPNの接続方式


    2. OpenVPN のインストール

    3. ファイアウォール設定

    4. VPNサーバ側のルータのグローバルIP確認

    5. ルータからVPNサーバへのポートフォワード設定




  2. 証明書と認証鍵の作成


    1. 簡易認証局(easy-rsa)関連

    2. VPNサーバ関連

    3. VPNクライアント関連




  3. 設定



    1. OpenVPN サーバ設定



    2. OpenVPN クライアント設定




  4. 接続確認 ← イマココ



    1. OpenVPNの起動

    2. 仮想tunデバイスの確認


    3. ping 確認


    4. netcat 確認




環境


  • OS: VPNサーバ/クライアント共に Ubuntu 14.04

  • VPNアプリケーション:OpenVPN 2.3.2


1. OpenVPN 接続確認

仮想tunデバイスの確認,pingnetcatによる双方からの接続確認を行います.


OpenVPNの起動

VPNサーバ/クライアント共に,下記コマンドを実行して下さい.


(command)

$ service openvpn start


サーバ側のログの最後に次のような表示が出れば,接続成功です.


(command)

$ cat /etc/openvpn/openvpn.log



(output)

(日付) mycli/210.150.14.177:58485 SENT CONTROL [mycli]: 'PUSH_REPLY,route 192.168.179.0 255.255.255.0,redirect-gateway def1 bypass-dhcp,dhcp-option DNS 192.168.179.1,route 10.8.0.1,topology net30,ping 10,ping-restart 120,ifconfig 10.8.0.6 10.8.0.5' (status=1)



2. 仮想tunデバイスの確認

04_vpn_tun_check.png


VPNサーバ

仮想tunデバイスで接続できたことを確認します.


(command)

$ ifconfig



(output)

tun0      Link encap:不明なネット  ハードウェアアドレス 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  

inetアドレス:10.8.0.1 P-t-P:10.8.0.2 マスク:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 メトリック:1
RXパケット:0 エラー:0 損失:0 オーバラン:0 フレーム:0
TXパケット:12 エラー:0 損失:0 オーバラン:0 キャリア:0
衝突(Collisions):0 TXキュー長:100
RXバイト:0 (0.0 B) TXバイト:1284 (1.2 KB)


VPNクライアント

こちらのネットワークでも仮想tunデバイスで接続できたことを確認します.


(command)

$ ifconfig



(output)

tun0      Link encap:不明なネット  ハードウェアアドレス 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  

inetアドレス:10.8.0.6 P-t-P:10.8.0.5 マスク:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 メトリック:1
RXパケット:0 エラー:0 損失:0 オーバラン:0 フレーム:0
TXパケット:12 エラー:0 損失:0 オーバラン:0 キャリア:0
衝突(Collisions):0 TXキュー長:100
RXバイト:2892 (2.8 KB) TXバイト:504 (504.0 KB)


3. ping 確認


VPNクライアント→VPNサーバ

仮想tunゲートウェイへの接続を確認します.

05_ping_cli_to_srv.png


(command)

$ ping 10.8.0.1



(output)

PING 10.8.0.6 (10.8.0.6) 56(84) bytes of data.

64 bytes from 10.8.0.6: icmp_seq=1 ttl=64 time=188 ms
...

VPNサーバの実アドレスのゲートウェイへの接続も確認します.

06_ping_cli_to_srv2.png


(command)

$ ping 192.168.179.7



(output)

PING 10.8.0.6 (10.8.0.6) 56(84) bytes of data.

64 bytes from 10.8.0.6: icmp_seq=1 ttl=64 time=188 ms
...


VPNサーバ→VPNクライアント

こちらは仮想tunデバイスの接続のみ確認です.実アドレスが確認できるのは,VPNサーバのゲートウェイである192.168.179.7のみのようです.

07_ping_srv_to_cli.png


(command)

$ ping 10.8.0.6



(output)

PING 192.168.179.7 (192.168.179.7) 56(84) bytes of data.

64 bytes from 192.168.179.7: icmp_seq=1 ttl=64 time=200 ms
...


4. netcat 確認

簡易チャットツールnetcatを使って,VPN経由での相互のデータ授受を確認します.


VPNサーバ側をnetcatサーバとした場合

08_netcat_vpnserver1.png

VPNサーバ(netcatサーバ)で下記コマンドを実行します.


(command)

$ nc -l 1194


VPNクライアント(netcatクライアント)で下記コマンド実行します.


(command)

$ nc 10.8.0.1 1194



  • VPNクライアントから適当に文字を打ち込んでENTERしたら,VPNサーバ側に同じ文字列が表示されるはずです.

  • VPNサーバからも同様に適当に文字を打ち込めば,VPNクライアントに同じ文字列が表示されます.

ついでに,実アドレスびゲートウェイにも打っておきましょう.

09_netcat_vpnserve2r.png

VPNクライアント(netcatクライアント)で下記コマンド実行し,再度チャットをしてみます.タイプされた文字列が送受信できることを確認します.


(command)

$ nc 192.168.179.7 1194



VPNクライアント側をnetcatサーバとした場合

10_netcat_vpncli.png

VPNクライアント(netcatサーバ)で下記コマンドを実行します.


(command)

$ nc -l 1194



  • VPNサーバ(netcatクライアント)で下記コマンド実行します.


(command)

$ nc 10.8.0.6 1194


あとは同様に文字を打ち込んで,相手側で表示されれば成功です.

お疲れ様でした!


おわりに

ようやくOpenVPNを利用したルーティング方式による接続ができました.

01_システム構成.png

11_all_files_with_conf.png

いかがでしたでしょうか?初見だと結構壮大な設定のように思えます^^;

ただ,今回はサーバとクライアントが1対1で接続するという極めてシンプルな構成での設定です.ここからクライアントの数を増やそうと思うとOS側でルーティング設定を追加する必要があります ^^;

当方ではとりあえず1対1通信ができればいいので,今回はコレにてお開きといたします^^

最後までお読み頂いた方,本当にありがとうございます.


参考文献