SlideShare ist ein Scribd-Unternehmen logo
1 von 10
Downloaden Sie, um offline zu lesen
Поиск (ключи):

ПРОГРАММЫ

СТАТЬИ

СОВЕТЫ

ФОРУМ

WIKI

НОВОСТИ (+)

MAN'ы

ДОКУМЕНТАЦИЯ

ХОТИТЕ СОЗДАТЬ «РАБОТАЮЩИЙ» САЙТ?
ГОТОВЫЕ CMS С БЕСПЛАТНЫМ РАЗМЕЩЕНИЕМ

КУПИТЬ БЕЗЛИМИТНЫЙ ХОСТИНГ

Настройка PPTP клиента в Linux (pptp vpn linux ppp)
<< Предыдущая

ИНДЕКС

Ключевые слова: pptp, vpn, linux, ppp,

Исправить

(найти похожие документы)

From: vadim303 <http://vadim303.wordpress.com>;
Date: Sun, 29 Feb 2008 17:02:14 +0000 (UTC)
Subject: Настройка PPTP клиента в Linux
Оригинал: http://vadim303.wordpress.com/linux/linux-vpn/
Мой провайдер предоставляет доступ в интернет посредством VPN. В
истории этого протокола я не разбирался, но сложилось впечатление, что
к созданию приложило руку Microsoft. Как бы то ни было, но Linux в
плане настройки изначально сильно не дружил с VPN. Но времена меняются
и
рецептов для соединения Linux-станции с VPN-сервером в сети
появилось предостаточно, в том числе и на русском. Но одни у меня не
заработали, другие были не слишком удобны в использовании, третьи...
вобщем пришлось для себя собирать рецепт по кусочкам из разных мест.

src / Печать

Следующая >>
Внимание! Всё ниже сказанное относится к сети Cinet города Королёва
применительно
к
дистрибутиву
Slackware 11.0 (ядро 2.6.17.13).
Настройки для вашего провайдера могут отличаться. Пытайте админов. :)
Итак, вот что у меня в результате получилось:
Во первых нам понадобятся установленные пакеты: пакет из дистрибутива
Slackware ppp-2.4.4-i486-1.tgz (путь: /дистрибутив/slackware/n/) и
пакет PPTP Client (домашняя страница). Для Slackware специально
подготовленного
пакета pptp не было, так что я взял исходник
pptp-1.7.1.tar.gz. Далее стандартная комбинация:
$
$
$
$

tar -xvvzf pptp-1.7.1.tar.gz
cd pptp-1.7.1
make
sudo make install

Замечу, что установка PPTP Client предполагает что pppd установлен в
/usr/sbin.Если это не так - читайте INSTALL.
Далее, создаём файл /etc/ppp/peers/имя_соединения (я соединение назвал
cinet) со следующим содержимым:
name ваш_логин
remotename PPTP
debug
lock
deflate 0
defaultroute
pty "pptp адрес_vpn_сервера --nolaunchpppd"

Свой логин я не скажу :) а vpn сервер в моём случае это vpn.cinet.lan.
Здесь может быть и ip-адрес, но это неудачное решение - а если
провайдер его сменит? Раз провайдер даёт имя серверу, лучше пользовать
именно его. Только одно но: важно, чтобы при установке соединения не
потерялся маршрут к локальному dns (если кто забыл, например я :) , то
адрес dns прописывается в /etc/resolv.conf). Указание debug можно
всегда удалить, но если что-то не работает, то эта опция включает
подробный вывод ошибок в лог, который обычно помогает определить в чём
проблема. Указание defaultroute при установке соединения, как и
положено, перенаправляет весь трафик на шлюз vpn. Но при этом у меня
становятся недоступны адреса в локальной сети, в т.ч. и dns-сервер.
Как это обойти читаем чуть дальше.
Пароль для соединения
строкой вида:

прописывается

в

файле /etc/ppp/chap-secrets

ваш_логин * "ваш_пароль" *
В файле /etc/ppp/options.pptp идут настройки характерные для моего
провайддера. У вас они могут быть и другие. В частности, бывает нужно
включать шифрование - тогда смотрите опции mppe, в добавок должна быть
поддержа mppe ядром (включена начиная с 2.6.15. Если у вас ниже читайте страницу PPTP Client-а). Если не знаете параметры mtu и mru ,
то их обычно можно поставить 1000. Ещё вычитал про параметр persist он заставляет пересоединяться при потери соединения. Пока я его работу
не проверял, так что в конфиге он закомментирован. Когда с ним
поэкспериментирую - расскажу. Но это всё лирика, а вот и содержимое
моего файла /etc/ppp/options.pptp :
lock
mtu 1490
mru 1490
deflate 0
auth
+chap
-pap
nobsdcomp
nodeflate
defaultroute
#persist

Теперь что касается сохранения маршрута к локальным адресам. В моём
случае все локальные адреса удовлетворяют маске 10.*.*.*. Поэтому
можно перед соединением с vpn удалить маршрут по умолчанию (он будет
установлен на vpn-шлюз по ходу установки соединения) и добавить
маршрут к адресам локальной сети:
# route del default
# route add -net 10.0.0.0 netmask 255.0.0.0 gw 10.0.0.50

здесь
10.0.0.0
- адрес локальной сети, 255.0.0.0 - её маска
удовлетворяющая вышеописанному случаю, ну и 10.0.0.50 - адрес шлюза в
моей локальной подсетке.
В принципе теперь достаточно дать команду
# pppd call имя_соединения

и весь интернет в наших руках. Лишь бы денег хватило :) Но во-первых это надо делать с правами рута, а во-вторых слишком много каждый раз
набирать. Конечно в таких случаях пишется скрипт и прописываются права
на его исполнение с помощью команды sudo обычному пользователю (права
пишутся в файле /etc/sudoers). Я поначалу так и сделал. Но потом
возникла необходимость в отключении соединения или его рестарте, а
также автоматическом запуске соединения при загрузке системы. Вобщем в
результате был написан скрипт похожий на те, что лежат в /etc/rc.d и
служат для запуска и остановки разных служб при старте и выключении
системы. Разве у нас не тот случай? Для поддержания работы соединения,
сама команда соединения была обрамлена циклом и вынесена в отдельный
скрипт. Итак, собственно скрипты:
Файл /etc/rc.d/rc.vpn:
#!/bin/sh
GATEWAY="10.0.0.50"
LINE="--------------------------------------------"
VPNFLAG="/tmp/vpn-connected"
export VPNFLAG
VPNLOG="/var/log/vpn.log"
export VPNLOG
start() { # установка соединения с vpn-сервером
echo -n "Starting VPN connection... "
# проверяем: включено ли уже соединение
if [ ! -f $VPNFLAG ]; then
# не включено - включаем
echo -e "n$LINEnStarting at `date`" >> $VPNLOG
# устанавливаем флаг необходимости переподключения
echo `date` > $VPNFLAG
# подготавливаем маршруты к поднятию нового интерфейса
route del default 2>/dev/null
route add -net 10.0.0.0 netmask 255.0.0.0 gw $GATEWAY 2>/dev/null
# запускаем цикл проверки и установки соединения в фоне
/sbin/vpn.sh &
echo "done."
else
# уже включено - ничего не делаем
echo "already been stated."
fi
}
stop() { # закрытие соединения с vpn-сервером
echo -n "Stopping VPN connection... "
echo -e "nStopping at `date`n$LINE" >> $VPNLOG
# удаляем флаг необходимости переподключения
if [ -f $VPNFLAG ]; then
rm -f $VPNFLAG
fi
# проверяем запущен ли pptp
pptp_num=`ps axw | grep "pptp:" | wc -l` # считаем число процессов содержащих строку pptp:
if [ $pptp_num -gt 1 ]; then
# если больше 1 (вместе с фильтром grep "pptp:"), то убиваем соединения
killall pppd 2>/dev/null
# восстанавливаем маршруты
route del default 2>/dev/null
route add default dev eth0 2>/dev/null
echo "done."
else
echo "VPN not started."
fi
}
case "$1" in
'start') # установка соединения с vpn-сервером
start
;;
'stop') # закрытие соединения с vpn-сервером
stop
;;
'restart') # перезапуск соединения с vpn-сервером
stop
sleep 3
start
;;
'boot')
# при загрузке системы нужно очистить флаг соединения
# на тот случай если перед этим система была завершена некорректно
if [ -f $VPNFLAG ]; then
rm -f $VPNFLAG
fi
start
;;
*) # вывод информации об использовании скрипта
echo -e "Usage: `basename $0` {start|stop|restart}"
esac

Файл /sbin/vpn.sh:
#!/bin/sh
# пока включён флаг нужно поддерживать включённым соединение с VPN:
while [ -f $VPNFLAG ]; do
pptp_num=`ps axw | grep "pptp:" | wc -l` # считаем число процессов содержащих строку pptp:
# должно быть 3 (вместе с фильтром grep "pptp:"):
if [ $pptp_num -lt 3 ]; then
# меньше 3-х. значит что-то не так с соединением.
echo "let's go:" >> $VPNLOG
# на всякий случай убиваем все оставшиеся процессы:
killall pptp 2>/dev/null
sleep 3
# стартуем pptp
pppd call cinet >> $VPNLOG
echo -e "run at `date`" >> $VPNLOG
fi
# ждём 5 минут прежде чем проверять соединение снова
sleep 300
done

Ещё
я
добавил
установку
соединения
при
загрузке. В файле
/etc/rc.d/rc.M, сразу после строк запуска /etc/rc.d/rc.inet2 добавил
строки:
# Start VPN
if [ -x /etc/rc.d/rc.vpn ]; then
. /etc/rc.d/rc.vpn boot
fi

Ну и разрыв соединения при перезагрузке ситемы. Для этого в файле
/etc/rc.d/rc.6 непосредственно перед убийством процессов pppd (# Try
to shutdown pppd) добавляем строки:
# Stop VPN
if [ -x /etc/rc.d/rc.vpn ]; then
/etc/rc.d/rc.vpn stop
fi

Вот вроде пока это всё, что касается настройки VPN на моей машине.
Использованные материалы при создании всего этого:
* прежде всего информация по параметрам соединения предоставленная
провайдером - без неё никак. Разве что методом тыка, но тыкать
можно долго :) ;
* Несколько веток о настройке VPN в разных дистрибутивах, в
частности: Настройка VPN клиента в linux, есть предложение
сделать универсальный скрипт , [HOWTO] Настройка VPN в Debian
GNU/Linux , [HOWTO] Настройка VPN в ALT Linux 2.4 Master,
Полная и рабочая инструкция

<< Предыдущая

ИНДЕКС

Ваш комментарий
Имя:
E-Mail:
Заголовок: Настройка PPTP клиента в Linux (pptp vpn linux
Текст:

Отправить

Исправить

src / Печать

Следующая >>
Новые материалы на IBM developerWorks

Дистрибутивы Linux на USB накопителе (USB
flash 8Gb)

Вступай в сообщество профессионалов IBM!
Нас уже более 15000 только в России.

Закладки на сайте
Проследить за страницей

Флеш-накопитель содержит полноценный дистрибутив
Linux Mint или Ubuntu, который может быть использован
для повседневной работы. Все внесённые пользователем
изменения, такие как установленные обновления,
сохранённые документы, персональные настройки и т.п.
будут сохраняться при перезагрузке, при этом на
локальный диск записи не производится. На флеш диске
содержится и обычный установочный образ дистрибутива.

Created 1996-2014 by Maxim Chirkov
Добавить, Реклама, Вебмастеру, ГИД

Weitere ähnliche Inhalte

Was ist angesagt?

Кадры решают все, или стриминг видео в «Одноклассниках». Александр Тоболь
Кадры решают все, или стриминг видео в «Одноклассниках». Александр ТобольКадры решают все, или стриминг видео в «Одноклассниках». Александр Тоболь
Кадры решают все, или стриминг видео в «Одноклассниках». Александр Тобольodnoklassniki.ru
 
Конференция Highload++ 2014, "Отказоустойчивый микрокластер своими руками", "...
Конференция Highload++ 2014, "Отказоустойчивый микрокластер своими руками", "...Конференция Highload++ 2014, "Отказоустойчивый микрокластер своими руками", "...
Конференция Highload++ 2014, "Отказоустойчивый микрокластер своими руками", "...Lenvendo
 
мои модули и патчи для Nginx. максим дунин. зал 1
мои модули и патчи для Nginx. максим дунин. зал 1мои модули и патчи для Nginx. максим дунин. зал 1
мои модули и патчи для Nginx. максим дунин. зал 1rit2011
 
Thumbtack Expertise Days # 5 - Ansible
Thumbtack Expertise Days # 5 - AnsibleThumbtack Expertise Days # 5 - Ansible
Thumbtack Expertise Days # 5 - AnsibleAlexey Remnev
 
Разработка высокопроизводительных серверных приложений для Linux/Unix (Алекса...
Разработка высокопроизводительных серверных приложений для Linux/Unix (Алекса...Разработка высокопроизводительных серверных приложений для Linux/Unix (Алекса...
Разработка высокопроизводительных серверных приложений для Linux/Unix (Алекса...Ontico
 
Anton Turetckii "What does it take to build a host?"
Anton Turetckii "What does it take to build a host?"Anton Turetckii "What does it take to build a host?"
Anton Turetckii "What does it take to build a host?"Fwdays
 
Тюним память и сетевой стек в Linux: история перевода высоконагруженных серве...
Тюним память и сетевой стек в Linux: история перевода высоконагруженных серве...Тюним память и сетевой стек в Linux: история перевода высоконагруженных серве...
Тюним память и сетевой стек в Linux: история перевода высоконагруженных серве...Ontico
 
МАИ, Сети ЭВМ, Лекция №3
МАИ, Сети ЭВМ, Лекция №3МАИ, Сети ЭВМ, Лекция №3
МАИ, Сети ЭВМ, Лекция №3Dima Dzuba
 
Девять кругов ада или PostgreSQL Vacuum / Алексей Лесовский (PostgreSQL-Consu...
Девять кругов ада или PostgreSQL Vacuum / Алексей Лесовский (PostgreSQL-Consu...Девять кругов ада или PostgreSQL Vacuum / Алексей Лесовский (PostgreSQL-Consu...
Девять кругов ада или PostgreSQL Vacuum / Алексей Лесовский (PostgreSQL-Consu...Ontico
 
Алексей Лапаев - Протоколы межкомпонентного взаимодействия
Алексей Лапаев - Протоколы межкомпонентного взаимодействияАлексей Лапаев - Протоколы межкомпонентного взаимодействия
Алексей Лапаев - Протоколы межкомпонентного взаимодействияYandex
 
Владислав Животнев - Основы DNS
Владислав Животнев - Основы DNSВладислав Животнев - Основы DNS
Владислав Животнев - Основы DNSYandex
 
Krizhanovsky Ddos
Krizhanovsky DdosKrizhanovsky Ddos
Krizhanovsky DdosLiudmila Li
 
МАИ, Сети ЭВМ, Лекция №2
МАИ, Сети ЭВМ, Лекция №2МАИ, Сети ЭВМ, Лекция №2
МАИ, Сети ЭВМ, Лекция №2Dima Dzuba
 
5 способов деплоя PHP-кода в условиях хайлоада / Юрий Насретдинов (Badoo)
5 способов деплоя PHP-кода в условиях хайлоада / Юрий Насретдинов (Badoo)5 способов деплоя PHP-кода в условиях хайлоада / Юрий Насретдинов (Badoo)
5 способов деплоя PHP-кода в условиях хайлоада / Юрий Насретдинов (Badoo)Ontico
 
Максим Дунин, Nginx, Inc.
Максим Дунин, Nginx, Inc.Максим Дунин, Nginx, Inc.
Максим Дунин, Nginx, Inc.Ontico
 
Библиотеки для передачи данных (Lecture 13 – multithreading, network (libs))
Библиотеки для передачи данных (Lecture 13 – multithreading, network (libs))Библиотеки для передачи данных (Lecture 13 – multithreading, network (libs))
Библиотеки для передачи данных (Lecture 13 – multithreading, network (libs))Noveo
 
Everything you wanted to know about writing async, high-concurrency HTTP apps...
Everything you wanted to know about writing async, high-concurrency HTTP apps...Everything you wanted to know about writing async, high-concurrency HTTP apps...
Everything you wanted to know about writing async, high-concurrency HTTP apps...JavaDayUA
 
Семь тысяч Rps, один go
Семь тысяч Rps, один goСемь тысяч Rps, один go
Семь тысяч Rps, один goBadoo Development
 
Отладка и устранение проблем в PostgreSQL Streaming Replication.
Отладка и устранение проблем в PostgreSQL Streaming Replication.Отладка и устранение проблем в PostgreSQL Streaming Replication.
Отладка и устранение проблем в PostgreSQL Streaming Replication.Alexey Lesovsky
 
Евгений Потапов (Сумма Айти)
Евгений Потапов (Сумма Айти)Евгений Потапов (Сумма Айти)
Евгений Потапов (Сумма Айти)Ontico
 

Was ist angesagt? (20)

Кадры решают все, или стриминг видео в «Одноклассниках». Александр Тоболь
Кадры решают все, или стриминг видео в «Одноклассниках». Александр ТобольКадры решают все, или стриминг видео в «Одноклассниках». Александр Тоболь
Кадры решают все, или стриминг видео в «Одноклассниках». Александр Тоболь
 
Конференция Highload++ 2014, "Отказоустойчивый микрокластер своими руками", "...
Конференция Highload++ 2014, "Отказоустойчивый микрокластер своими руками", "...Конференция Highload++ 2014, "Отказоустойчивый микрокластер своими руками", "...
Конференция Highload++ 2014, "Отказоустойчивый микрокластер своими руками", "...
 
мои модули и патчи для Nginx. максим дунин. зал 1
мои модули и патчи для Nginx. максим дунин. зал 1мои модули и патчи для Nginx. максим дунин. зал 1
мои модули и патчи для Nginx. максим дунин. зал 1
 
Thumbtack Expertise Days # 5 - Ansible
Thumbtack Expertise Days # 5 - AnsibleThumbtack Expertise Days # 5 - Ansible
Thumbtack Expertise Days # 5 - Ansible
 
Разработка высокопроизводительных серверных приложений для Linux/Unix (Алекса...
Разработка высокопроизводительных серверных приложений для Linux/Unix (Алекса...Разработка высокопроизводительных серверных приложений для Linux/Unix (Алекса...
Разработка высокопроизводительных серверных приложений для Linux/Unix (Алекса...
 
Anton Turetckii "What does it take to build a host?"
Anton Turetckii "What does it take to build a host?"Anton Turetckii "What does it take to build a host?"
Anton Turetckii "What does it take to build a host?"
 
Тюним память и сетевой стек в Linux: история перевода высоконагруженных серве...
Тюним память и сетевой стек в Linux: история перевода высоконагруженных серве...Тюним память и сетевой стек в Linux: история перевода высоконагруженных серве...
Тюним память и сетевой стек в Linux: история перевода высоконагруженных серве...
 
МАИ, Сети ЭВМ, Лекция №3
МАИ, Сети ЭВМ, Лекция №3МАИ, Сети ЭВМ, Лекция №3
МАИ, Сети ЭВМ, Лекция №3
 
Девять кругов ада или PostgreSQL Vacuum / Алексей Лесовский (PostgreSQL-Consu...
Девять кругов ада или PostgreSQL Vacuum / Алексей Лесовский (PostgreSQL-Consu...Девять кругов ада или PostgreSQL Vacuum / Алексей Лесовский (PostgreSQL-Consu...
Девять кругов ада или PostgreSQL Vacuum / Алексей Лесовский (PostgreSQL-Consu...
 
Алексей Лапаев - Протоколы межкомпонентного взаимодействия
Алексей Лапаев - Протоколы межкомпонентного взаимодействияАлексей Лапаев - Протоколы межкомпонентного взаимодействия
Алексей Лапаев - Протоколы межкомпонентного взаимодействия
 
Владислав Животнев - Основы DNS
Владислав Животнев - Основы DNSВладислав Животнев - Основы DNS
Владислав Животнев - Основы DNS
 
Krizhanovsky Ddos
Krizhanovsky DdosKrizhanovsky Ddos
Krizhanovsky Ddos
 
МАИ, Сети ЭВМ, Лекция №2
МАИ, Сети ЭВМ, Лекция №2МАИ, Сети ЭВМ, Лекция №2
МАИ, Сети ЭВМ, Лекция №2
 
5 способов деплоя PHP-кода в условиях хайлоада / Юрий Насретдинов (Badoo)
5 способов деплоя PHP-кода в условиях хайлоада / Юрий Насретдинов (Badoo)5 способов деплоя PHP-кода в условиях хайлоада / Юрий Насретдинов (Badoo)
5 способов деплоя PHP-кода в условиях хайлоада / Юрий Насретдинов (Badoo)
 
Максим Дунин, Nginx, Inc.
Максим Дунин, Nginx, Inc.Максим Дунин, Nginx, Inc.
Максим Дунин, Nginx, Inc.
 
Библиотеки для передачи данных (Lecture 13 – multithreading, network (libs))
Библиотеки для передачи данных (Lecture 13 – multithreading, network (libs))Библиотеки для передачи данных (Lecture 13 – multithreading, network (libs))
Библиотеки для передачи данных (Lecture 13 – multithreading, network (libs))
 
Everything you wanted to know about writing async, high-concurrency HTTP apps...
Everything you wanted to know about writing async, high-concurrency HTTP apps...Everything you wanted to know about writing async, high-concurrency HTTP apps...
Everything you wanted to know about writing async, high-concurrency HTTP apps...
 
Семь тысяч Rps, один go
Семь тысяч Rps, один goСемь тысяч Rps, один go
Семь тысяч Rps, один go
 
Отладка и устранение проблем в PostgreSQL Streaming Replication.
Отладка и устранение проблем в PostgreSQL Streaming Replication.Отладка и устранение проблем в PostgreSQL Streaming Replication.
Отладка и устранение проблем в PostgreSQL Streaming Replication.
 
Евгений Потапов (Сумма Айти)
Евгений Потапов (Сумма Айти)Евгений Потапов (Сумма Айти)
Евгений Потапов (Сумма Айти)
 

Ähnlich wie Net2

Обзор Continuous integration инструментов
Обзор Continuous integration инструментовОбзор Continuous integration инструментов
Обзор Continuous integration инструментовVitalii Morvaniuk
 
HighLoad++ 2019: iptables + consul = :3
HighLoad++ 2019: iptables + consul = :3HighLoad++ 2019: iptables + consul = :3
HighLoad++ 2019: iptables + consul = :3Ivan Agarkov
 
От Make к Ansible
От Make к AnsibleОт Make к Ansible
От Make к AnsibleIvan Grishaev
 
лабораторная работа №5
лабораторная работа №5лабораторная работа №5
лабораторная работа №5student_kai
 
Другая виртуализация
Другая виртуализацияДругая виртуализация
Другая виртуализацияYandex
 
Движение по хрупкому дну / Сергей Караткевич (servers.ru)
Движение по хрупкому дну / Сергей Караткевич (servers.ru)Движение по хрупкому дну / Сергей Караткевич (servers.ru)
Движение по хрупкому дну / Сергей Караткевич (servers.ru)Ontico
 
Статический анализ: ошибки в медиаплеере и безглючная аська
Статический анализ: ошибки в медиаплеере и безглючная аська Статический анализ: ошибки в медиаплеере и безглючная аська
Статический анализ: ошибки в медиаплеере и безглючная аська Tatyanazaxarova
 
Управление большим количеством физических серверов, Александр Берсенев, Инст...
 Управление большим количеством физических серверов, Александр Берсенев, Инст... Управление большим количеством физических серверов, Александр Берсенев, Инст...
Управление большим количеством физических серверов, Александр Берсенев, Инст...it-people
 
Процесс разработки и тестирования с Docker + gitlab ci
Процесс разработки и тестирования с  Docker + gitlab ciПроцесс разработки и тестирования с  Docker + gitlab ci
Процесс разработки и тестирования с Docker + gitlab ciАлександр Сигачев
 
Ec2 Rootconf2009
Ec2 Rootconf2009Ec2 Rootconf2009
Ec2 Rootconf2009Liudmila Li
 
Кулинарный мастер-класс "Готовим безопасный офис нового поколения на основе C...
Кулинарный мастер-класс "Готовим безопасный офис нового поколения на основе C...Кулинарный мастер-класс "Готовим безопасный офис нового поколения на основе C...
Кулинарный мастер-класс "Готовим безопасный офис нового поколения на основе C...Cisco Russia
 
Автономные Сети: упрощение развертывания уровня доступа в сети сервис-провайдера
Автономные Сети: упрощение развертывания уровня доступа в сети сервис-провайдераАвтономные Сети: упрощение развертывания уровня доступа в сети сервис-провайдера
Автономные Сети: упрощение развертывания уровня доступа в сети сервис-провайдераCisco Russia
 
еще один недостаток современных клиент серверных приложений
еще один недостаток современных клиент серверных приложенийеще один недостаток современных клиент серверных приложений
еще один недостаток современных клиент серверных приложенийsnowytoxa
 
Тандемные DDoS-атаки. Проблематика уязвимостей в спецификации TCP IP (фундаме...
Тандемные DDoS-атаки. Проблематика уязвимостей в спецификации TCP IP (фундаме...Тандемные DDoS-атаки. Проблематика уязвимостей в спецификации TCP IP (фундаме...
Тандемные DDoS-атаки. Проблематика уязвимостей в спецификации TCP IP (фундаме...Fuenteovejuna
 
сотни серверов, десятки компонент. автоматизация раскладки и конфигурирования...
сотни серверов, десятки компонент. автоматизация раскладки и конфигурирования...сотни серверов, десятки компонент. автоматизация раскладки и конфигурирования...
сотни серверов, десятки компонент. автоматизация раскладки и конфигурирования...rit2011
 
Сетевая безопасность в 2014: новые проблемы и их решение на базе Cisco
Сетевая безопасность в 2014: новые проблемы и их решение на базе CiscoСетевая безопасность в 2014: новые проблемы и их решение на базе Cisco
Сетевая безопасность в 2014: новые проблемы и их решение на базе CiscoSkillFactory
 
Программируемость коммутаторов для ЦОД Cisco Nexus
Программируемость коммутаторов для ЦОД Cisco NexusПрограммируемость коммутаторов для ЦОД Cisco Nexus
Программируемость коммутаторов для ЦОД Cisco NexusCisco Russia
 

Ähnlich wie Net2 (20)

Обзор Continuous integration инструментов
Обзор Continuous integration инструментовОбзор Continuous integration инструментов
Обзор Continuous integration инструментов
 
HighLoad++ 2019: iptables + consul = :3
HighLoad++ 2019: iptables + consul = :3HighLoad++ 2019: iptables + consul = :3
HighLoad++ 2019: iptables + consul = :3
 
От Make к Ansible
От Make к AnsibleОт Make к Ansible
От Make к Ansible
 
лабораторная работа №5
лабораторная работа №5лабораторная работа №5
лабораторная работа №5
 
Другая виртуализация
Другая виртуализацияДругая виртуализация
Другая виртуализация
 
Instalarea DSpace
Instalarea DSpaceInstalarea DSpace
Instalarea DSpace
 
Движение по хрупкому дну / Сергей Караткевич (servers.ru)
Движение по хрупкому дну / Сергей Караткевич (servers.ru)Движение по хрупкому дну / Сергей Караткевич (servers.ru)
Движение по хрупкому дну / Сергей Караткевич (servers.ru)
 
Docker 1.9
Docker 1.9Docker 1.9
Docker 1.9
 
Статический анализ: ошибки в медиаплеере и безглючная аська
Статический анализ: ошибки в медиаплеере и безглючная аська Статический анализ: ошибки в медиаплеере и безглючная аська
Статический анализ: ошибки в медиаплеере и безглючная аська
 
Управление большим количеством физических серверов, Александр Берсенев, Инст...
 Управление большим количеством физических серверов, Александр Берсенев, Инст... Управление большим количеством физических серверов, Александр Берсенев, Инст...
Управление большим количеством физических серверов, Александр Берсенев, Инст...
 
Процесс разработки и тестирования с Docker + gitlab ci
Процесс разработки и тестирования с  Docker + gitlab ciПроцесс разработки и тестирования с  Docker + gitlab ci
Процесс разработки и тестирования с Docker + gitlab ci
 
Ec2 Rootconf2009
Ec2 Rootconf2009Ec2 Rootconf2009
Ec2 Rootconf2009
 
Кулинарный мастер-класс "Готовим безопасный офис нового поколения на основе C...
Кулинарный мастер-класс "Готовим безопасный офис нового поколения на основе C...Кулинарный мастер-класс "Готовим безопасный офис нового поколения на основе C...
Кулинарный мастер-класс "Готовим безопасный офис нового поколения на основе C...
 
Автономные Сети: упрощение развертывания уровня доступа в сети сервис-провайдера
Автономные Сети: упрощение развертывания уровня доступа в сети сервис-провайдераАвтономные Сети: упрощение развертывания уровня доступа в сети сервис-провайдера
Автономные Сети: упрощение развертывания уровня доступа в сети сервис-провайдера
 
еще один недостаток современных клиент серверных приложений
еще один недостаток современных клиент серверных приложенийеще один недостаток современных клиент серверных приложений
еще один недостаток современных клиент серверных приложений
 
Тандемные DDoS-атаки. Проблематика уязвимостей в спецификации TCP IP (фундаме...
Тандемные DDoS-атаки. Проблематика уязвимостей в спецификации TCP IP (фундаме...Тандемные DDoS-атаки. Проблематика уязвимостей в спецификации TCP IP (фундаме...
Тандемные DDoS-атаки. Проблематика уязвимостей в спецификации TCP IP (фундаме...
 
сотни серверов, десятки компонент. автоматизация раскладки и конфигурирования...
сотни серверов, десятки компонент. автоматизация раскладки и конфигурирования...сотни серверов, десятки компонент. автоматизация раскладки и конфигурирования...
сотни серверов, десятки компонент. автоматизация раскладки и конфигурирования...
 
Введение в Docker
Введение в DockerВведение в Docker
Введение в Docker
 
Сетевая безопасность в 2014: новые проблемы и их решение на базе Cisco
Сетевая безопасность в 2014: новые проблемы и их решение на базе CiscoСетевая безопасность в 2014: новые проблемы и их решение на базе Cisco
Сетевая безопасность в 2014: новые проблемы и их решение на базе Cisco
 
Программируемость коммутаторов для ЦОД Cisco Nexus
Программируемость коммутаторов для ЦОД Cisco NexusПрограммируемость коммутаторов для ЦОД Cisco Nexus
Программируемость коммутаторов для ЦОД Cisco Nexus
 

Net2

  • 1. Поиск (ключи): ПРОГРАММЫ СТАТЬИ СОВЕТЫ ФОРУМ WIKI НОВОСТИ (+) MAN'ы ДОКУМЕНТАЦИЯ ХОТИТЕ СОЗДАТЬ «РАБОТАЮЩИЙ» САЙТ? ГОТОВЫЕ CMS С БЕСПЛАТНЫМ РАЗМЕЩЕНИЕМ КУПИТЬ БЕЗЛИМИТНЫЙ ХОСТИНГ Настройка PPTP клиента в Linux (pptp vpn linux ppp) << Предыдущая ИНДЕКС Ключевые слова: pptp, vpn, linux, ppp, Исправить (найти похожие документы) From: vadim303 <http://vadim303.wordpress.com>; Date: Sun, 29 Feb 2008 17:02:14 +0000 (UTC) Subject: Настройка PPTP клиента в Linux Оригинал: http://vadim303.wordpress.com/linux/linux-vpn/ Мой провайдер предоставляет доступ в интернет посредством VPN. В истории этого протокола я не разбирался, но сложилось впечатление, что к созданию приложило руку Microsoft. Как бы то ни было, но Linux в плане настройки изначально сильно не дружил с VPN. Но времена меняются и рецептов для соединения Linux-станции с VPN-сервером в сети появилось предостаточно, в том числе и на русском. Но одни у меня не заработали, другие были не слишком удобны в использовании, третьи... вобщем пришлось для себя собирать рецепт по кусочкам из разных мест. src / Печать Следующая >>
  • 2. Внимание! Всё ниже сказанное относится к сети Cinet города Королёва применительно к дистрибутиву Slackware 11.0 (ядро 2.6.17.13). Настройки для вашего провайдера могут отличаться. Пытайте админов. :) Итак, вот что у меня в результате получилось: Во первых нам понадобятся установленные пакеты: пакет из дистрибутива Slackware ppp-2.4.4-i486-1.tgz (путь: /дистрибутив/slackware/n/) и пакет PPTP Client (домашняя страница). Для Slackware специально подготовленного пакета pptp не было, так что я взял исходник pptp-1.7.1.tar.gz. Далее стандартная комбинация: $ $ $ $ tar -xvvzf pptp-1.7.1.tar.gz cd pptp-1.7.1 make sudo make install Замечу, что установка PPTP Client предполагает что pppd установлен в /usr/sbin.Если это не так - читайте INSTALL. Далее, создаём файл /etc/ppp/peers/имя_соединения (я соединение назвал cinet) со следующим содержимым: name ваш_логин remotename PPTP debug lock deflate 0 defaultroute pty "pptp адрес_vpn_сервера --nolaunchpppd" Свой логин я не скажу :) а vpn сервер в моём случае это vpn.cinet.lan.
  • 3. Здесь может быть и ip-адрес, но это неудачное решение - а если провайдер его сменит? Раз провайдер даёт имя серверу, лучше пользовать именно его. Только одно но: важно, чтобы при установке соединения не потерялся маршрут к локальному dns (если кто забыл, например я :) , то адрес dns прописывается в /etc/resolv.conf). Указание debug можно всегда удалить, но если что-то не работает, то эта опция включает подробный вывод ошибок в лог, который обычно помогает определить в чём проблема. Указание defaultroute при установке соединения, как и положено, перенаправляет весь трафик на шлюз vpn. Но при этом у меня становятся недоступны адреса в локальной сети, в т.ч. и dns-сервер. Как это обойти читаем чуть дальше. Пароль для соединения строкой вида: прописывается в файле /etc/ppp/chap-secrets ваш_логин * "ваш_пароль" * В файле /etc/ppp/options.pptp идут настройки характерные для моего провайддера. У вас они могут быть и другие. В частности, бывает нужно включать шифрование - тогда смотрите опции mppe, в добавок должна быть поддержа mppe ядром (включена начиная с 2.6.15. Если у вас ниже читайте страницу PPTP Client-а). Если не знаете параметры mtu и mru , то их обычно можно поставить 1000. Ещё вычитал про параметр persist он заставляет пересоединяться при потери соединения. Пока я его работу не проверял, так что в конфиге он закомментирован. Когда с ним поэкспериментирую - расскажу. Но это всё лирика, а вот и содержимое моего файла /etc/ppp/options.pptp : lock mtu 1490 mru 1490 deflate 0 auth +chap
  • 4. -pap nobsdcomp nodeflate defaultroute #persist Теперь что касается сохранения маршрута к локальным адресам. В моём случае все локальные адреса удовлетворяют маске 10.*.*.*. Поэтому можно перед соединением с vpn удалить маршрут по умолчанию (он будет установлен на vpn-шлюз по ходу установки соединения) и добавить маршрут к адресам локальной сети: # route del default # route add -net 10.0.0.0 netmask 255.0.0.0 gw 10.0.0.50 здесь 10.0.0.0 - адрес локальной сети, 255.0.0.0 - её маска удовлетворяющая вышеописанному случаю, ну и 10.0.0.50 - адрес шлюза в моей локальной подсетке. В принципе теперь достаточно дать команду # pppd call имя_соединения и весь интернет в наших руках. Лишь бы денег хватило :) Но во-первых это надо делать с правами рута, а во-вторых слишком много каждый раз набирать. Конечно в таких случаях пишется скрипт и прописываются права на его исполнение с помощью команды sudo обычному пользователю (права пишутся в файле /etc/sudoers). Я поначалу так и сделал. Но потом возникла необходимость в отключении соединения или его рестарте, а также автоматическом запуске соединения при загрузке системы. Вобщем в результате был написан скрипт похожий на те, что лежат в /etc/rc.d и
  • 5. служат для запуска и остановки разных служб при старте и выключении системы. Разве у нас не тот случай? Для поддержания работы соединения, сама команда соединения была обрамлена циклом и вынесена в отдельный скрипт. Итак, собственно скрипты: Файл /etc/rc.d/rc.vpn: #!/bin/sh GATEWAY="10.0.0.50" LINE="--------------------------------------------" VPNFLAG="/tmp/vpn-connected" export VPNFLAG VPNLOG="/var/log/vpn.log" export VPNLOG start() { # установка соединения с vpn-сервером echo -n "Starting VPN connection... " # проверяем: включено ли уже соединение if [ ! -f $VPNFLAG ]; then # не включено - включаем echo -e "n$LINEnStarting at `date`" >> $VPNLOG # устанавливаем флаг необходимости переподключения echo `date` > $VPNFLAG # подготавливаем маршруты к поднятию нового интерфейса route del default 2>/dev/null route add -net 10.0.0.0 netmask 255.0.0.0 gw $GATEWAY 2>/dev/null # запускаем цикл проверки и установки соединения в фоне /sbin/vpn.sh & echo "done." else # уже включено - ничего не делаем echo "already been stated." fi
  • 6. } stop() { # закрытие соединения с vpn-сервером echo -n "Stopping VPN connection... " echo -e "nStopping at `date`n$LINE" >> $VPNLOG # удаляем флаг необходимости переподключения if [ -f $VPNFLAG ]; then rm -f $VPNFLAG fi # проверяем запущен ли pptp pptp_num=`ps axw | grep "pptp:" | wc -l` # считаем число процессов содержащих строку pptp: if [ $pptp_num -gt 1 ]; then # если больше 1 (вместе с фильтром grep "pptp:"), то убиваем соединения killall pppd 2>/dev/null # восстанавливаем маршруты route del default 2>/dev/null route add default dev eth0 2>/dev/null echo "done." else echo "VPN not started." fi } case "$1" in 'start') # установка соединения с vpn-сервером start ;; 'stop') # закрытие соединения с vpn-сервером stop ;; 'restart') # перезапуск соединения с vpn-сервером stop sleep 3
  • 7. start ;; 'boot') # при загрузке системы нужно очистить флаг соединения # на тот случай если перед этим система была завершена некорректно if [ -f $VPNFLAG ]; then rm -f $VPNFLAG fi start ;; *) # вывод информации об использовании скрипта echo -e "Usage: `basename $0` {start|stop|restart}" esac Файл /sbin/vpn.sh: #!/bin/sh # пока включён флаг нужно поддерживать включённым соединение с VPN: while [ -f $VPNFLAG ]; do pptp_num=`ps axw | grep "pptp:" | wc -l` # считаем число процессов содержащих строку pptp: # должно быть 3 (вместе с фильтром grep "pptp:"): if [ $pptp_num -lt 3 ]; then # меньше 3-х. значит что-то не так с соединением. echo "let's go:" >> $VPNLOG # на всякий случай убиваем все оставшиеся процессы: killall pptp 2>/dev/null sleep 3 # стартуем pptp pppd call cinet >> $VPNLOG echo -e "run at `date`" >> $VPNLOG fi
  • 8. # ждём 5 минут прежде чем проверять соединение снова sleep 300 done Ещё я добавил установку соединения при загрузке. В файле /etc/rc.d/rc.M, сразу после строк запуска /etc/rc.d/rc.inet2 добавил строки: # Start VPN if [ -x /etc/rc.d/rc.vpn ]; then . /etc/rc.d/rc.vpn boot fi Ну и разрыв соединения при перезагрузке ситемы. Для этого в файле /etc/rc.d/rc.6 непосредственно перед убийством процессов pppd (# Try to shutdown pppd) добавляем строки: # Stop VPN if [ -x /etc/rc.d/rc.vpn ]; then /etc/rc.d/rc.vpn stop fi Вот вроде пока это всё, что касается настройки VPN на моей машине. Использованные материалы при создании всего этого: * прежде всего информация по параметрам соединения предоставленная провайдером - без неё никак. Разве что методом тыка, но тыкать можно долго :) ;
  • 9. * Несколько веток о настройке VPN в разных дистрибутивах, в частности: Настройка VPN клиента в linux, есть предложение сделать универсальный скрипт , [HOWTO] Настройка VPN в Debian GNU/Linux , [HOWTO] Настройка VPN в ALT Linux 2.4 Master, Полная и рабочая инструкция << Предыдущая ИНДЕКС Ваш комментарий Имя: E-Mail: Заголовок: Настройка PPTP клиента в Linux (pptp vpn linux Текст: Отправить Исправить src / Печать Следующая >>
  • 10. Новые материалы на IBM developerWorks Дистрибутивы Linux на USB накопителе (USB flash 8Gb) Вступай в сообщество профессионалов IBM! Нас уже более 15000 только в России. Закладки на сайте Проследить за страницей Флеш-накопитель содержит полноценный дистрибутив Linux Mint или Ubuntu, который может быть использован для повседневной работы. Все внесённые пользователем изменения, такие как установленные обновления, сохранённые документы, персональные настройки и т.п. будут сохраняться при перезагрузке, при этом на локальный диск записи не производится. На флеш диске содержится и обычный установочный образ дистрибутива. Created 1996-2014 by Maxim Chirkov Добавить, Реклама, Вебмастеру, ГИД