Форум русскоязычного сообщества Ubuntu


Считаете, что Ubuntu недостаточно дружелюбна к новичкам?
Помогите создать новое Руководство для новичков!

Автор Тема: ubuntu 9.04 и vpn в автозапуск.............  (Прочитано 5252 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн TITAN

  • Автор темы
  • Любитель
  • *
  • Сообщений: 61
    • Просмотр профиля
в инет выхожу с помощью скрипта,при включении компа надо ручками >:(прописывать команду запуска этого самого скрипта.
а теперь собственно сам вопрос: возможно ли сделать так чтоб скрипт сам бы запускалса при включении компа? а то руками каждый раз писат команду влом :)
скрипт выглядит так :
Цитировать
#!/bin/sh

LINK_NAME=icvpn
PATH="/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin"

script_name=$0

check_vpn_run() {
   [ -f "/var/run/ppp-$LINK_NAME.pid" ] && return 0
   return 1
}

usage() {
   echo "Usage: $script_name {start|stop|configure|status}"
   exit 1
}

configure_vpn() {
   touch /etc/ppp/peers/$LINK_NAME
   chmod 600 /etc/ppp/peers/$LINK_NAME
   echo -n 'Login: '; read username
   stty -echo
   echo -n 'Password: '; read password; echo
   stty echo
   cat <<EOT > /etc/ppp/peers/$LINK_NAME
noipdefault
nodefaultroute
noauth
refuse-pap
nobsdcomp
nodeflate
novj
linkname $LINK_NAME
user '$username'
password '$password'
updetach
mtu 1464
pty 'pptp vpn.i.sbor.net --nolaunchpppd'
EOT
}

start_vpn() {
   if [ ! -f "/etc/ppp/peers/$LINK_NAME" ]; then
      echo "$script_name: VPN-connection not configured" >&2
      exit 1
   fi

   default_gw=`route -n|awk '/^0\.0\.0\.0 .* eth/{print $2}'|head -1`
   if [ -z "$default_gw" ]; then
      echo "$script_name: No default route" >&2
      exit 1
   fi

   pppd call $LINK_NAME

   status=$?
   if [ $status -ne 0 ]; then
      echo "$script_name: pppd error: $status" >&2
      exit 1
   fi

   if [ -f "/var/run/ppp-$LINK_NAME.pid" ]; then
      ppp_iface=`tail -1 /var/run/ppp-$LINK_NAME.pid`
      route add -host vpn.i.sbor.net gw $default_gw
      route add -net 10.0.0.0/8 gw $default_gw
      route add -net 91.203.168.0/27 gw $default_gw
      route add -net default dev $ppp_iface
   fi
}

stop_vpn() {
   pid=`head -1 /var/run/ppp-$LINK_NAME.pid`
   kill $pid
   route del -host vpn.i.sbor.net
   route del -net 10.0.0.0/8
   route del -net 91.203.168.0/27
}

status_vpn() {
   if check_vpn_run; then
      echo "VPN-connection is UP"
   else
      echo "VPN-connection is DOWN"
   fi
}

case "$1" in
start)
   if check_vpn_run; then
      echo "VPN-connection already started"
      exit 0
   fi
   start_vpn
   ;;
stop)
   if check_vpn_run; then
      stop_vpn
   else
      echo "VPN-connection not started"
   fi
   ;;
configure)
   configure_vpn
   ;;
status)
   if check_vpn_run; then
      echo "VPN-connection is UP"
   else
      echo "VPN-connection is DOWN"
   fi
   ;;
*)
   usage
   ;;
esac

Оффлайн Protopopulus

  • Старожил
  • *
  • Сообщений: 1695
  • А чего вы так смотрите?..
    • Просмотр профиля
Re: ubuntu 9.04 и vpn в автозапуск.............
« Ответ #1 : 26 Мая 2009, 23:38:15 »
А в /etc/network/interfaces если соединение прописать? Звиняйте, если не в тему, просто с vpn дел не имел :)
Если ты владеешь знаниями, то и знания владеют тобой. (с) Protopopulus

Оффлайн fwhr

  • Старожил
  • *
  • Сообщений: 2104
    • Просмотр профиля
Re: ubuntu 9.04 и vpn в автозапуск.............
« Ответ #2 : 27 Мая 2009, 00:59:42 »
Есть такой файл,
Цитировать
/etc/rc.local
Можешь посмотреть, для чего он нужен...
Обычно люди получают не то, что заслуживают, а то, что получилось... © Доктор Хауз

Оффлайн TITAN

  • Автор темы
  • Любитель
  • *
  • Сообщений: 61
    • Просмотр профиля
Re: ubuntu 9.04 и vpn в автозапуск.............
« Ответ #3 : 27 Мая 2009, 01:06:17 »
Есть такой файл,
Цитировать
/etc/rc.local
Можешь посмотреть, для чего он нужен...



в 8.10 там писал sleep 60 && /usr/local/bin/icvpn start &
и при включении компа vpn работал :) а в 9.04 не пашет :'(

Оффлайн fwhr

  • Старожил
  • *
  • Сообщений: 2104
    • Просмотр профиля
Re: ubuntu 9.04 и vpn в автозапуск.............
« Ответ #4 : 27 Мая 2009, 02:04:39 »
По Ctrl+Alt+F1 посмотри, что в первой консоли пишет, может он на какой-то ошибке "спотыкается" до выполнения этой строки или ещё что узреешь...
Обычно люди получают не то, что заслуживают, а то, что получилось... © Доктор Хауз

Оффлайн TITAN

  • Автор темы
  • Любитель
  • *
  • Сообщений: 61
    • Просмотр профиля
Re: ubuntu 9.04 и vpn в автозапуск.............
« Ответ #5 : 27 Мая 2009, 22:31:57 »
люди скажите а  как такое может быть :idiot2: галку снимаю и после перезагрузки vpn есть,ставлю обратно vpn не пашет надо руками подключать >:(
в /etc/rc.local вписал
sleep 60 && /usr/local/bin/icvpn start
вобщем без экрана загрузки vpn на ура поднимаетса! но хотелось бы чтоб и с экраном загрузки работал
кто что подскажет :)

Оффлайн dim_comb

  • Новичок
  • *
  • Сообщений: 7
    • Просмотр профиля
Re: ubuntu 9.04 и vpn в автозапуск.............
« Ответ #6 : 11 Июня 2009, 01:01:20 »
Я тут нашел статью хорошую,немного ее подкоректировал , все само реконектится без проблем, анализируйте  ;)


Настройка подключения к ISP "Corbina" (Москва)
Материал из Linux Wiki
Перейти к: навигация, поиск
Внимание, всё нижесказанное должно работать на последних версиях дистрибутивов Ubuntu или Debian, для остальных дистрибутивов настройка может немного отличаться (в основном команды установки пакетов и роутинга).
Содержание
[убрать]
•   1 Настройка локальной сети
•   2 Установка пакетов
•   3 Настройка xl2tpd
•   4 Настройка pppd
•   5 Настройка роутинга
•   6 Запуск
•   7 Ссылки

Настройка локальной сети
К счастью, в локальной сети "Корбины" адреса раздаются по dhcp, так что нужно всего лишь включить автоматическую настройку для вашей сетевой карты.
После получения параметров сети необходимо посмотреть адрес шлюза (он нам позже понадобится) командой
 ip route list match 0.0.0.0/0
Установка пакетов
Для подключения к "Корбине" по протоколу L2TP необходимо установить пакет xl2tpd, например так:
sudo apt-get install xl2tpd
После установки меняем приоритет загрузки демона xl2tpd

update-rc.d -f xl2tpd remove
update-rc.d xl2tpd defaults 41

Настройка xl2tpd
находятся в файле /etc/xl2tpd/xl2tpd.conf
У меня он такой:
________________________________________
[global]
 
access control = yes
 
[lac corbina]
 
require chap = yes
require pap = no
lns = tp.corbina.net
redial = yes
redial timeout = 5
require authentication = no
ppp debug = no
pppoptfile = /etc/ppp/options.xl2tpd
autodial = yes
________________________________________
Настройка pppd
как указано в предыдущем конфиге, pppd будет использовать файл настроек /etc/ppp/options.xl2tpd
________________________________________
name your_user_name
remotename tp
ipparam corbina
connect /bin/true
mru 1460
mtu 1460
nodeflate
nobsdcomp
persist
maxfail 0
nopcomp
noaccomp
defaultroute
noauth
________________________________________

логин и пароль следует поместить в файл /etc/ppp/chap-secrets следующим образом

________________________________________
your_user_name   *    your_password
________________________________________

your_user_name - ваше имя пользователя в корбине
your_password - ваш пароль
обратите внимание, что разделителем полей (между логином, * и паролем) является табуляция
Настройка роутинга
При установке pppd соединения у нас изменится дефолтный маршрут, но для нормальной работы нам необходимо чтобы локальные ресурсы были доступный через старый шлюз. Как минимум это относится к tp.corbina.net (ip адреса 85.21.0.251, 85.21.0.253, 85.21.0.255) , dns1.corbina.net (213.234.192.1), dns2.corbina.net (85.21.192.1), также я прописал в локальные ресурсы ftp.corbina.net (195.14.50.21), так как на нем лежат репозитории многих дистрибутивов Linux и BSD.
Я поместил добавление маршрутов в /etc/ppp/ip-up.d/corbina
________________________________________
#!/bin/sh
#
if [ x$PPP_IPPARAM = "corbina" ]
then
   LGATE=10.134.88.1
   DNS="213.234.192.8 85.21.192.3"
   TP="85.21.0.251 85.21.0.253 85.21.0.255"
   FTP=195.14.50.21
   LOCALRES="$DNS $TP $FTP"
 
   for host in $LOCALRES
   do
      route add -host $host gw $LGATE
   done
fi
________________________________________
а удаление (при отключении) в /etc/ppp/ip-down.d/corbina
________________________________________
#!/bin/sh
#
if [ x$PPP_IPPARAM = "corbina" ]
then
   LGATE=10.134.88.1
   DNS="213.234.192.8 85.21.192.3"
   TP="85.21.0.251 85.21.0.253 85.21.0.255"
   FTP=195.14.50.21
   LOCALRES="$DNS $TP $FTP"
 
   for host in $LOCALRES
   do
      route delete -host $host gw $LGATE
   done
fi
________________________________________
Возможно ваши адреса будут немного отличаться от моих
переменная $LGATE это локальный шлюз (см. выше)
переменная $PPP_IPPARAM должна совпадать с параметром ipparam в конфиге options.xl2tpd
адреса DNS серверов можно посмотреть командой cat /etc/resolv.conf

Запуск
/etc/init.d/xl2tpd restart


 

Страница сгенерирована за 0.017 секунд. Запросов: 20.