Logo Море(!) аналитической информации!
IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware
2005 г.

VPN в Linux - простой способ

abdullah
Posix.ru

Как известно многие московские, и наверное не только московские провайдеры используют технологию VPN для предоставления доступа в интеренет подключенным к домашним сетям людям. Правильно это или нет, а так же хорошо ли это, - я обсуждать не хочу по нескольким причинам: во-первых, не особо-то и разбираюсь в теме, во-вторых – если и докажем, что так мол делать не правильно, то все равно вряд-ли нас послушают сами провайдеры, а Интернет людям нужен все равно.

Я как раз вот и оказался пользователем одной из таких сетей, где используется VPN. Надо признаться, что я вначале испугался, так как прочитал в Интернете во многих местах, что настройка VPN в linux - весьма не простое дело, и даже чуть-чуть расстроился. Но тут мне на помощь пришел форум нашей же локалки, где было обсуждение темы настройки VPN. Прочитав его, я нашел там очень полезную вещь: человек по имени ANDRUSHOK написал скрипт для подключения по VPN, который очень облегчает процесс настройки подключения, за что ему честь и хвала. Таким образом, он избавил многих от трудностей настройки VPN. Чем, собственно, и желаю поделиться с общественностью.

Для того, чтобы настроить у себя инет через VPN, нам понадобятся: сам скрипт, разумеется, а также такие пакеты, как ppp, pptp, pppd – они должны быть установлены в системе. Итак, приступаем:

1. Берем скрипт и настраиваем его под себя, редактировать, в общем-то, надо только секцию network settings, что видно ниже:

#!/bin/sh
 
#
# fix broken path
#
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:.
export PATH
 
#
# network settings
#
USER=ВАШ_ЛОГИН_НА_VPN
NETWORK=192.168.0.0 // настроить на для своей сети
NETMASK=255.255.255.0 // обычно вроде такая и останется
VPNSERVER=192.168.0.253 // Смените на ваш адрес vpn-сервера
GATEWAY=192.168.55.253 // Указать свой
DEVICE=eth0 // если нужно, то тоже сменить
 
#
# vpn stuff
#
PPPD=/usr/sbin/pppd
PPTP=/usr/sbin/pptp
 
if [ ! -x $PPPD ]; then
 echo «$0: $PPPD not found»
 exit 1
fi
 
if [ ! -x $PPTP ]; then
 echo «$0: $PPTP not found»
 exit 1
fi
 
#
# here we go
#
case «$1» in
 start)
 if [ ! -d /var/run/pptp ]; then
 mkdir /var/run/pptp
 fi
 if [ -f /var/run/pptp/remote ]; then
 if ping -vc1 'cat /var/run/pptp/remote'; then
 exit 1
 fi
 killall -HUP pptp
 killall -TERM pppd
 sleep 2
 fi
 rm -rf /var/run/pptp/* >/dev/null
 route del default
 route add -net $NETWORK netmask $NETMASK gw $GATEWAY dev $DEVICE
 echo -n «===> Starting vpn: »
 ($PPTP $VPNSERVER defaultroute noauth user $USER && \
 echo -n «done») || echo -n «failed»
 echo
 ;;
 stop)
 echo -n «===> Stopping vpn: »
 killall -HUP pptp
 killall -TERM pppd
 sleep 2
 rm /var/run/pptp/* >/dev/null
 route del -net $NETWORK netmask $NETMASK gw $GATEWAY dev $DEVICE
 route add default gw $GATEWAY dev $DEVICE
 echo «done»
 ;;
 restart)
 $0 stop
 sleep 2
 $0 start
 ;;
 *)
 echo «*** Usage: vpn {start|stop|restart}»
 exit 1
 ;;
esac
 
exit 0

Затем берем этот скрипт и ставим его в /usr/bin/, делая его исполняемым. После чего остается только отредактировать файл /etc/ppp/chap-secrets, который должен иметь следующий вид:

ВАШ_ЛОГИН * ПАРОЛЬ

Вот и все – теперь вроде все должно работать. Следует заметить, что файл /etc/ppp/options не должен содержать ни каких записей. Так что запускаем подключение - от root'а набираем

$ /usr/bin/vpn start

после чего мы должны увидеть следующее:

===> Starting vpn: done

Теперь, собственно, можно работать в Интернете, ну а отключать следует так:

$ /usr/bin/vpn stop

после чего должно быть сказано:

===> Stopping vpn: done

Надеюсь, что мой скромный вклад окажется полезным, хотя вся заслуга, конечно, принадлежит автору скрипта

Обсуждение материала

Новости мира IT:

Архив новостей

Последние комментарии:

Как стать программистом? (22)
Вторник 26.07, 21:56
Вышел web-браузер Chrome 52 (1)
Суббота 23.07, 18:51
Loading

IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

Информация для рекламодателей PR-акции, размещение рекламы — adv@citforum.ru,
тел. +7 985 1945361
Пресс-релизы — pr@citforum.ru
Обратная связь
Информация для авторов
Rambler's Top100 TopList liveinternet.ru: показано число просмотров за 24 часа, посетителей за 24 часа и за сегодня This Web server launched on February 24, 1997
Copyright © 1997-2000 CIT, © 2001-2015 CIT Forum
Внимание! Любой из материалов, опубликованных на этом сервере, не может быть воспроизведен в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Подробнее...