ubuntu 12.10 64bit でのUT-VPNクライアントのインストールと設定

http://2-6mon.blogspot.jp/2013/03/serversman-vps490ut-vpn.html
途中まではUT-VPNサーバのインストールと同じだが、Ubuntu 12.10 64bit版だとmakeする時にエラーがでる。

解決策は、ut-vpnのmakeする時に
http://wiki.livedoor.jp/taiki_kondo/d/UT-VPN/Debian#content_1_2_6
を参考に、OpenSSLのファイルをUT-VPNのソースディレクトリしたらmakeが完了できた。

具体的には、ut-vpnのファイルを解凍したディレクトリ
utvpn-unix-v101-7101-public
の下にある
src/Mayaqua/opensslの中身を書き換える。

$ cd src/Mayaqua/openssl
$ sudo cp /usr/include/openssl/* ./
$ cd ../../..
$ sudo make clean
$ sudo make

$utvpncmd

1. VPN Server または VPN Bridge の管理
2. VPN Client の管理
3. VPN Tools コマンドの使用 (証明書作成や通信速度測定)

1 – 3 を選択: 2

接続先の VPN Client が動作しているコンピュータの IP アドレスまたはホスト名を指定してください。
何も入力せずに Enter を押すと、localhost (このコンピュータ) に接続します。
なお、このコマンドでは SoftEther UT-VPN Client を管理できますが、PacketiX VPN Client は管理できませんのでご注意ください。
接続先のホスト名または IP アドレス: (Enterキー)

VPN Client “localhost” に接続しました。

VPN Client>

VPN Client>niccreate
NicCreate コマンド – 新規仮想 LAN カードの作成
仮想 LAN カードの名前: (英小文字で適当に[*1])

VPN Client>accountcreate
AccountCreate コマンド – 新しい接続設定の作成
接続設定の名前: (適当に[*2])

接続先 VPN Server のホスト名とポート番号: (vpsのIPアドレス:vpsのポート番号)
接続先仮想 HUB 名: (vps側で作成した仮想HUB名)
接続するユーザー名: (vps側で作成したユーザ名)
使用する仮想 LAN カード名: (上記[*1]で作成した仮想LANカード名)

VPN Client>accountstartupset
AccountStartupSet コマンド – 接続設定をスタートアップ接続に設定
接続設定の名前: ([*2]で作成した接続設定名)

VPN Client>keepenable
KeepEnable コマンド – インターネット接続の維持機能の有効化
コマンドは正常に終了しました。

VPN Client>accountconnect ([*2]で作成した接続設定名)

VPN Client>accountstatusget
接続設定名                  |([*2]で作成した接続設定名)
セッション接続状態            |接続完了 (セッション確立済み)

などとなってれば接続成功。

次。
Ubuntu 10.04.1 LTS+UT-VPN Client
http://blog.takeyu-web.com/entry/20101014/1287071384

を参考に起動スクリプト作成などなど。

NICの起動設定
DHCPで接続するように設定
$ sudo nano /etc/network/interfaces

以下を追加
iface utvpn_(上記[*1]で作成した仮想LANカード名) inet dhcp

上記の具体例)
iface utvpn_vpn1 inet dhcp
のように書く。

起動スクリプト
sudo nano /etc/init.d/utvpnclient
(以下、日本語表記の部分はけずってしまってOK)

#!/bin/sh

#LANカードの指定(普通有線だとeth0とかになる)

NIC=wlan0
#クライアント側のルータのIPアドレス
GW=192.168.1.1
#UT-VPNクライアントのPC等の仮想LANカードの名前(utvpn_自分でつけた名前)
VPN_NIC=utvpn_vpn1
#UT-VPNサーバのゲートウェイのIPアドレス。
VPN_GW=192.168.30.1

#UT-VPNサーバのIPアドレス。
VPN_SERVER=xx.xx.xx.xx

DAEMON=/usr/bin/utvpnclient
LOCK=/var/lock/utvpnclient
IFUP=/sbin/ifup
IFDOWN=/sbin/ifdown
ROUTE=/sbin/route
RESOLV_BAK=/etc/resolv.conf.bak

test -x $DAEMON || exit 0
case “$1” in
    start)
    test -f $RESOLV_BAK || cp /etc/resolv.conf $RESOLV_BAK
        $DAEMON start
        touch $LOCK
        sleep 10

#仮想LANカードを再起動してDHCPでUT-VPNのサーバからIPアドレス取得。
        $IFDOWN $VPN_NIC
        $IFUP $VPN_NIC
#UT-VPNのクライアントPCの物理LANカードの優先順位(metric)を仮想LANカードへの接続が優先されるように下げる(metric 0→20)。
        $ROUTE add default gw $GW metric 20 $NIC
        $ROUTE del default gw $GW metric 0 $NIC
#UT-VPNクライアントの仮想LANカードのゲートウェイを設定(UT-VPNのサーバ側IPアドレスがゲートウェイになる)
        $ROUTE add default gw $VPN_GW netmask 0.0.0.0 metric 0 $VPN_NIC
#但しUT-VPN Serverへの接続にはUT-VPNクライアントのPCの物理LANカードを使う(通常、有線ならeth0、無線LANならath0やwlan0など)
        $ROUTE add -host $VPN_SERVER gw $GW metric 0 $NIC
        ;;
    stop)
        $DAEMON stop
    mv -f $RESOLV_BAK /etc/resolv.conf
        rm $LOCK
#デフォルトゲートウェイの設定やインタフェースの優先度を元に戻す。
        $ROUTE del default gw $GW metric 20 $NIC
        $ROUTE add default gw $GW metric 0 $NIC
        $ROUTE del -host $VPN_SERVER gw $GW metric 0 $NIC
        ;;
    restart)
        $0 stop
        sleep 3         # Adjust according to your env
        $0 start
        ;;
    *)
        echo “Usage: $0 {start|stop|restart}”
        exit 1
esac
sleep 3
exit 0

起動スクリプトを実行できるように権限変更。
sudo chmod 700 /etc/init.d/utvpnclient

sysv-rc-confを使って起動スクリプトがPC起動時に実行されるように設定。
sudo apt-get install sysv-rc-conf
sudo sysv-rc-conf utvpnclient on

とまあ、これでつながっています。

細い設定は
utvpncmdでも変更できるが、
sudo nano /usr/utvpnclient/vpn_client.config
でconfigを直接編集も可能な感じ。

UT-VPN ClientでUT-VPNのサーバにつないだままクライアント側のPCを再起動しちゃったりした場合、
もしPC再起動後にウェブサイトが見られなくなったら
/etc/resolv.conf
の内容でnameserverの設定がUT-VPNで割り当てられるものに変わってないか確認してみるなどしてみてください。