URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 77506
[ Назад ]

Исходное сообщение
"VPN (PPTP) по расписанию"

Отправлено Gular , 24-Ноя-07 10:09 
Здрасьте.

Нужно подключать на машине VPN-соединение в определённое время - в 2:30. И отключать его в 10:00.
В crontab -e записываю две команды:
30 2 * * * /usr/bin/pon /etc/ppp/peers/tt_pptp 2>&1
0 10 * * * /usr/bin/poff /etc/ppp/peers/tt_pptp 2>&1

Не срабатывает.
Подскажите, каким образом лучше сделать подключение и отключение в нужное время?


Содержание

Сообщения в этом обсуждении
"VPN (PPTP) по расписанию"
Отправлено Gular , 24-Ноя-07 10:23 
Если вручную запускать pon_pptp, то работает. Из crontab'a команда poff (выполняется в 10:00) тоже работает, выключает соединение.

"VPN (PPTP) по расписанию"
Отправлено Vaso Petrovich , 24-Ноя-07 12:25 
cat pon_pptp
в студию, сдается мне что там с путями мудреж, а man cron девственно не читан...

"VPN (PPTP) по расписанию"
Отправлено Gular , 24-Ноя-07 16:43 
>cat pon_pptp
>в студию, сдается мне что там с путями мудреж, а man cron
>девственно не читан...

Вот:

cat /etc/ppp/peers/tt_pptp
defaultroute
replacedefaultroute
require-mschap-v2
pty "pptp 85.158.48.1 --nolaunchpppd"
name 650458
remotename PPTP
file /etc/ppp/options.pptp
ipparam tt_pptp

При вводе в консоли вручную команды pon tt_pptp работает. Про то, что в crontab -e необходимо указывать полные пути я в курсе. ;)

Создал вот такой скрипт:

cat /etc/vpn_start
#!/bin/bash

LOG="/var/log/tt-pptp.log"
while true; do
   echo -e "\n===============\nStarting at `date`" >> $LOG
   pppd call tt_pptp >> $LOG
   sleep 10;
done

В crontab -e следующее вписал:

crontab -l
#m h  dom mon dow command
50 11 * * * /usr/bin/nohup /etc/vpn_start > /dev/null 2>&1 &
30 10 * * * /usr/bin/poff


"VPN (PPTP) по расписанию"
Отправлено Gular , 25-Ноя-07 15:52 
Что я делаю не так? :)

Дело в том, что подключение я создаю под rtorrent, работающий там в screen'e. Чтобы он в это ночное время долбил закачку.


"VPN (PPTP) по расписанию"
Отправлено Vaso Petrovich , 26-Ноя-07 07:47 
>Что я делаю не так? :)
>

   echo -e "\n===============\nStarting at `date`" >> $LOG
   pppd call tt_pptp >> $LOG
   sleep 10;

путь по pppd правильно указать не пробовали? или пути сначала обьявить?
ведь говорил же что man cron девствеено не читан =) стояло, хотя бы ради приличия, хоть одним глазком...


"VPN (PPTP) по расписанию"
Отправлено Gular , 27-Ноя-07 16:42 
Пока остановился на таком:

----
cat /etc/vpn_start.sh
#!/bin/bash

PPPD="/usr/sbin/pppd"
LOG="/var/log/tt-pptp.log"
echo -e "\n===============\nStarting at `date`" >> $LOG
$PPPD call tt_pptp >> $LOG

----
cat /etc/vpn_stop.sh
#!/bin/bash

LOG="/var/log/tt-pptp.log"
echo -e "\n----\nNow pppd will be killed..." >> $LOG
killall pppd

----
crontab -l
#m h  dom mon dow command
15 2  * * * /etc/vpn_start.sh > /dev/null 2>&1 &
30 10 * * * /etc/vpn_stop.sh > /dev/null 2>&1 &

:) не трушно конечно. После этого при запуске из crontab'a (вручную конечно же работало) лог в писало:

----
sh: pptp: command not found
Couldn't get channel number: Input/output error

Но я в tt_pptp прописал полный путь до pptp. :) И запуск успешно стал проводиться.

Теперь надо будет проверку на разрыв связи реализовать. А sleep я вообще решил убрать.


"VPN (PPTP) по расписанию"
Отправлено Ро. , 07-Апр-08 13:12 

Столкнулся с такой же проблемой.
Что сделать чтоб по расписанию работало?