Скрипты для получения данных:

curl -s «https://www.vpnme.me/freevpn.html» | grep -A 3 «Password:» | head -n 2 | cut -f2 -s -d «» | grep -v -e ‘^$’ > /home/wwwuser/server.my/htdocs/pptp/vpnme.me.txt
curl -s «http://freevpnaccess.com» | grep -A 8 «UK --- London» | tail -n 1 | cut -f1 -d » » | tr -cd [:digit:] | grep -v -e ‘^$’ > /home/wwwuser/server.my/htdocs/pptp/freevpnaccess.com.txt
curl -s «http://freevpn.me/accounts/» | grep -A 3 «Password:» | head -n 1 | cut -f2 -d «:» | cut -f2 -d «>» | cut -b 3- | cut -f1 -d «<" | grep -v -e '^$' > /home/wwwuser/server.my/htdocs/pptp/freevpn.me.txt
curl -s «http://www.vpnbook.com/» | grep -A 1 «Username: vpnbook» | tail -n 1 | cut -f2 -d «:» | cut -b 2- | cut -f1 -d ‘<' | grep -v -e '^$' > /home/wwwuser/server.my/htdocs/pptp/vpnbook.com.txt

Поставить его в крон на каждые 10 мин
00,10,20,30,40,50 * * * * /home/wwwuser/server.my/htdocs/pptp/pptp.sh

Зайти через ftp клиент на роутер и создать там папку pptp
Скрипт заливки полученных паролей на роутер. Пути и пароли поменять на свои.
!/bin/sh
LOCALDIR=/home/wwwuser/server.my/htdocs/pptp
REMOTESERVER=192.168.1.1
REMOTEPATH=/pptp
LOGIN=admin
PASSWORD=yourpassword
cd $LOCALDIR
ftp -n $REMOTESERVER <<INPUT_END
quote user $LOGIN
quote pass $PASSWORD
cd $REMOTEPATH
put vpnme.me.txt
put freevpnaccess.com.txt
put freevpn.me.txt
put vpnbook.com.txt
exit
INPUT_END[/simterm]
Поставить его в крон на каждые 10 мин
[simterm]1,11,21,31,41,51 * * * * /home/wwwuser/server.my/htdocs/pptp/upload.sh[/simterm]
Cоздать pptp интерфейсы
[simterm]/interface pptp-client
add connect-to=de1.vpnme.me disabled=no mrru=1600 name=vpnme.me password=YQ1eMi user=vpnme
add connect-to=83.170.84.216 disabled=no mrru=1600 name=freevpnaccess.com password=3046 user=freevpnaccess.com
add connect-to=176.126.237.207 disabled=no mrru=1600 name=freevpn.me password=L1d3Hf1Pl user=pptp
add connect-to=euro217.vpnbook.com disabled=no mrru=1600 name=vpnbook.com password=fra4agaV user=vpnbook[/simterm]
Разрешающее правило в firewall:
[simterm]/ip firewall filter
add chain=forward comment=PPTP out-interface=all-ppp
add chain=output comment=PPTP out-interface=all-ppp
add chain=forward comment=PPTP in-interface=all-ppp
add chain=input comment=PPTP in-interface=all-ppp[/simterm]
nat:
[simterm]/ip firewall nat
add action=masquerade chain=srcnat out-interface=vpnme.me src-address=192.168.1.0/24
add action=masquerade chain=srcnat out-interface=freevpnaccess.com src-address=192.168.1.0/24
add action=masquerade chain=srcnat out-interface=freevpn.me src-address=192.168.1.0/24
add action=masquerade chain=srcnat out-interface=vpnbook.com src-address=192.168.1.0/24[/simterm]
строим дерево в route ip для 4-х сервисов
[simterm]/ip route
add check-gateway=arp distance=1 gateway=vpnme.me routing-mark=Route_1
add check-gateway=arp distance=2 gateway=freevpnaccess.com routing-mark=Route_1
add check-gateway=arp distance=3 gateway=freevpn.me routing-mark=Route_1
add check-gateway=arp distance=4 gateway=vpnbook.com routing-mark=Route_1
add check-gateway=arp distance=1 gateway=vpnbook.com routing-mark=Route_2
add check-gateway=arp distance=2 gateway=vpnme.me routing-mark=Route_2
add check-gateway=arp distance=3 gateway=freevpnaccess.com routing-mark=Route_2
add check-gateway=arp distance=4 gateway=freevpn.me routing-mark=Route_2
add check-gateway=arp distance=2 gateway=freevpn.me routing-mark=Route_3
add check-gateway=arp distance=3 gateway=vpnbook.com routing-mark=Route_3
add check-gateway=arp distance=4 gateway=vpnme.me routing-mark=Route_3
add check-gateway=arp distance=5 gateway=freevpnaccess.com routing-mark=Route_3
add check-gateway=arp distance=1 gateway=freevpnaccess.com routing-mark=Route_4
add check-gateway=arp distance=2 gateway=freevpn.me routing-mark=Route_4
add check-gateway=arp distance=3 gateway=vpnbook.com routing-mark=Route_4
add check-gateway=arp distance=4 gateway=vpnme.me routing-mark=Route_4[/simterm]
скрипты замены паролей
vpnme.me
[simterm]:local newp [/file get [/file find name=pptp/vpnme.me.txt] contents];
:local oldp [/interface vpnme.me get pptp password];
:if ($oldp != $newp) do {/interface vpnme.me set numbers=0 password=$newp};
/interface vpnme.me set numbers=0 disabled=yes;
:delay 5;
interface vpnme.me set numbers=0 disabled=no;

freevpnaccess.com
:local newp [/file get [/file find name=pptp/freevpnaccess.com.txt] contents];
:local oldp [/interface freevpnaccess.com get pptp password];
:if ($oldp != $newp) do {/interface freevpnaccess.com set numbers=0 password=$newp};
/interface freevpnaccess.com set numbers=0 disabled=yes;
:delay 5;
interface freevpnaccess.com set numbers=0 disabled=no;

freevpn.me
:local newp [/file get [/file find name=pptp/freevpn.me.txt] contents];
:local oldp [/interface freevpn.me get pptp password];
:if ($oldp != $newp) do {/interface freevpn.me set numbers=0 password=$newp};
/interface freevpn.me set numbers=0 disabled=yes;
:delay 5;
interface freevpn.me set numbers=0 disabled=no;

vpnbook.com
:local newp [/file get [/file find name=pptp/vpnbook.com.txt] contents];
:local oldp [/interface vpnbook.com get pptp password];
:if ($oldp != $newp) do {/interface vpnbook.com set numbers=0 password=$newp};
/interface vpnbook.com set numbers=0 disabled=yes;
:delay 5;
interface vpnbook.com set numbers=0 disabled=no;

добавляем в крон
/system scheduler add name=vpnme.me interval=10m on-event=vpnme.me
/system scheduler add name=freevpnaccess.com interval=10m on-event=freevpnaccess.com
/system scheduler add name=freevpn.me interval=10m on-event=freevpn.me
/system scheduler add name=vpnbook.com interval=10m on-event=vpnbook.com
/system scheduler print

в файрволе должно получиться так (без address-list списков)