欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Ubuntu 链接L2TP VPN,自动链接VPN

程序员文章站 2022-07-09 22:17:52
...
在Ubuntu使用基于L2TP的VPN设置(支持硬件key的哦)。

1. 添加PPA
[url]https://launchpad.net/~seriy-pr/+archive/ubuntu/network-manager-l2tp/+build/5967945[/url]

sudo apt-add-repository ppa:seriy-pr/network-manager-l2tp

2. 刷新软件包缓存
sudo apt-get update

3. 安装network-manager-l2tp
sudo apt-get install network-manager-l2tp-gnome

安装完之后不要忘记运行以下命令
sudo service xl2tpd stop 

sudo update-rc.d xl2tpd disable

重启机器

如图在新建VPN里就会有如下选项:(L2TP)

摘自:http://www.linuxidc.com/Linux/2012-10/71621.htm

自动重拨VPN
新建文件authVPN.sh
touch ~/authVPN.sh
并编辑文件
vim ~/authVPN.sh
内容如下

#!/bin/bash
vpnuuid=e84e6ac0-7663-4471-9919-2684566d83ef
IP=192.168.234.237
while true
do
    echo `date "+%Y/%m/%d %H:%M:%S"`
    ping -c 5 -q $IP > /dev/null
    if [ $? -ne 0 ]; then
        echo "connect vpn" 
        #su vpc -c "nmcli con up uuid $vpnuuid" 
        nmcli con up uuid $vpnuuid
    else
        echo "vpn already connected" 
    fi
    echo "sleep for next check period" 
    sleep 10
done

只需要修改vpnuuid和IP即可
vpnuuid在/etc/NetworkManager/system-connections/vpn名字中查询
IP是要访问的地址
在命令行模式下执行
sudo chmod +x ~/authVPN.sh
nohup ~/authVPN.sh & 

下面一段代码也是自动链接VPN的脚本
#!/bin/bash
user=scue # TODO: 替换用户名
vpnuuid=b8a9ec50-8bec-4d53-8c8e-0ba8db19ae50 # TODO: 替换UUID
while true
do
    if  [[ "$(nmcli con status|grep $vpnuuid)" == "" ]]; then
        echo "Disconnected, trying to reconnect..."
        sleep 1s 
        su $user -c "nmcli con up uuid $vpnuuid"
    else
        echo "Already connected !"
    fi
sleep 10


相关标签: vpn l2tp