Eu não sei como isso funciona com o NM, mas escrevo script
#!/bin/bash
function routeadd {
route add -host xxx.xxx.xxx.xxx dev ppp0
route add -net xxx.xxx.xxx.xxx/xx dev ppp0
}
function makepptp {
echo pty \"pptp xxx.xxx.xxx.xxx --nolaunchpppd\" >> /etc/ppp/peers/vpn;
echo remotename PPTP >> /etc/ppp/peers/vpn;
echo require-mppe-128 >> /etc/ppp/peers/vpn;
echo file /etc/ppp/options.pptp >> /etc/ppp/peers/vpn;
echo ipparam vpn >> /etc/ppp/peers/vpn;
pppd call vpn &
}
if [ -a /etc/ppp/chap-secrets ];
then
rm /etc/ppp/chap-secrets
echo PPTP '*' >> /etc/ppp/chap-secrets;
else
echo PPTP '*' >> /etc/ppp/chap-secrets;
fi
if [ -e /etc/ppp/peers/vpn ];
then
rm /etc/ppp/peers/vpn;
echo name >> /etc/ppp/peers/vpn;
makepptp;
sleep 8;
routeadd;
else
echo name >> /etc/ppp/peers/vpn;
makepptp;
sleep 8;
routeadd;
fi
Uso:
sudo /path_to_script/vpn username password
nota: set execute permision to script
O tráfego é roteado via vpn somente se você adicionar rota, qualquer outra coisa vai para o padrão gw.