nmtysh.log

Tech系のネタや日々の独り言などを書いています。

CUIでVPN接続を行う(NetworkManager)

通知領域や設定からいちいち操作するのが面倒なので、コマンドでVPN接続のON/OFFをします。
NetworkManger のCUI版があるので、そちらを利用します。

・環境
Ubuntu 12.04

・一覧表示

$ nmcli con list


・接続

$ nmcli con up id (ID)

または

$ nmcli con up uuid (UUID)


・切断

$ nmcli con down id (ID)

または

$ nmcli con down uuid (UUID)


毎回、nmcli con ~と打つのが面倒なので、シェルスクリプトを作りました。
vpn.sh

#!/bin/bash

VPN_NAME=# FIXME: デフォルトにしたいVPN接続名
COMMAND=$1

if [ $# -lt 1 ] ; then
  echo "Usage: ./$(basename $0) [VPN_name] up|down"
  exit 1;
fi
if [ $# -ge 2 ] ; then
  VPN_NAME=$1
  COMMAND=$2
fi
if [ "${COMMAND}" != 'up' -a "${COMMAND}" != 'down' ] ; then
  echo "Usage: ./$(basename $0) [VPN_name] up|down"
  exit 1;
fi

echo "Connection ${COMMAND} to ${VPN_NAME}"
nmcli con ${COMMAND} id "${VPN_NAME}"
exit $?;
# EOF

 

$ ./vpn.sh [(ID)] up|down

で実行します。

nmcli を使うと、マウスを使わずにVPNを張って、そのままSSHが出来るので便利です。