_Raven_ 0 Жалоба Опубликовано: 3 сентября 2006 (изменено) Недавно удалось разобраться настройками VPN в дистрибутивах типа RedHat (Fedora Core, Enterprise Linux, возможно, ASP) Предполагаем, что к Корбине мы подключаемся через eth0 и VPN у нас будет жить на ppp0. Если у вас это по-другому, подставляете свои интерфейсы. Так же предполагается, что PPP сам по себе у вас настроен, то есть все, что нужно, в /etc/modprobe.conf (/etc/modules.conf) присутствует. Сначала ставим пакет pptp (иногда он называется pptp-linux). Для Fedora Core (поручиться могу за версии 3,4,5,6) он имеется в репозитарии extras, и устанавливается командой: yum --enablerepo=extras install pptp В файл /etc/sysconfig/network-scripts/route-eth0 записываем список статических маршрутов к локальным ресурсам. Они будут добавляться при подъеме интерфейса eth0 и, соответственно, удаляться при его отключении: 10.0.0.0/8 via ваш_шлюз 62.205.179.146 via ваш_шлюз 85.21.79.0/24 via ваш_шлюз 85.21.90.0/24 via ваш_шлюз 85.21.52.198 via ваш_шлюз 85.21.52.254 via ваш_шлюз 85.21.138.3 via ваш_шлюз 83.102.146.96/27 via ваш_шлюз 83.102.237.231 via ваш_шлюз 195.14.50.1 via ваш_шлюз 195.14.50.3 via ваш_шлюз 195.14.50.16 via ваш_шлюз 195.14.50.26 via ваш_шлюз Вместо ваш_шлюз поставьте то, что DHCP вам выдает в качестве шлюза. В /etc/sysconfig/network-scripts/ifcfg-eth0 добавляем строчку: METRIC=10 Это нужно, чтобы не заниматься извращениями с удалением/добавлением маршрутов. Есть СТАНДАРТНЫЕ механизмы работы IP-стека, ими и надо пользоваться. Создаем файл /etc/sysconfig/network-scripts/ifcfg-corbina со следующим содержимым: ONBOOT=no USERCTL=yes TYPE=Modem PEERDNS=yes DEVICE=ppp0 PROVIDER=corbina DEFROUTE=no Далее начинаем пилить настройки PPP. Записываем файл /etc/ppp/peers/corbina: updetach remotename corbina linkname corbina ipparam corbina pty "pptp vpn.corbina.ru --nolaunchpppd " name your_name usepeerdns nodefaultroute noauth file /etc/ppp/options.pptp Соответственно в /etc/ppp/chap-secrets будет: your_name corbina your_password * В /etc/ppp/options.pptp: lock noauth nobsdcomp nodeflate Впрочем, я тут ничего не менял. Это то, что там было по-умолчанию (просто, на всякий случай). А теперь самое интересное - скрипты для замены маршрутов. /etc/ppp/ip-up.local: #!/bin/sh eth0_gw=`/sbin/route -n | awk '/^0.0.0.0/ {print $2}'` vpn_server=`/sbin/route -n | awk '/ppp0/ {print $1}'` if [ -n $vpn_server ]; then /sbin/route del -host $vpn_server ppp0 /sbin/route add -host $vpn_server gw $eth0_gw eth0 /sbin/route add default dev ppp0 fi /etc/ppp/ip-down.local #!/bin/bash /sbin/route del default dev ppp0 routes=`/sbin/route -n` vpn_list=`host vpn.corbina.ru | awk '/vpn.corbina.ru has address/ {print $4}'` for vpn_server in $vpn_list; do if (echo $routes | grep -q $vpn_server); then /sbin/route del -host $vpn_server fi done Собственно здесь уже можно проверять соединение. ifup corbina - подъем туннеля ifdown corbina - отключение туннеля До этого момента все, что использовалось, требовало только стандартных средств. Если есть же хочется, чтобы это еще и поднималось автоматом придется немножко поизвращаться. Одна замена ONBOOT=no на ONBOOT=yes в ifcfg-corbina тут не поможет. Проблема тут в том, что интерфейсы поднимаются в алфавитном порядке и опускаются в нем же. Поскольку, VPN при старте должен быть последним, а при отключении первым, через наименование это не решить. Для FC5 проще всего применить злобный хак и прописать TYPE=Bridge вместо TYPE=Modem. ifup в любом случае отработает корректно, но для bridge четко определен порядок подключения и отключения (после основных интерфейсов при старте и до них при выключении). Если такой способ не помогает (например, если bridge реально используется), придется идти по другому пути и прописать TYPE=VPN, а для него определить DEVICETYPE в /etc/sysconfig/network-scripts/network-functions и соответствующие правила (по аналогии с Bridge) в /etc/init.d/networks Изменено 28 марта 2007 пользователем _Raven_ Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Animal.X 1 Жалоба Опубликовано: 8 сентября 2006 (изменено) Использую Red Hat Enterprise Linux 4. До этого удавалось поднимать VPN только при помощи KVpnc, что очень неудобно. Проверил, этот способ работает как с "pptp-linux-1.4.0-1", так и с "pptp-1.7.0-1". От себя хотелось бы добавить, в RHEL нету yum, т.ч. pptp и MPPE надо искать самому. Мой файл route-eth0, выглядит немного по другому: GATEWAY14=10.210.0.17 NETMASK14=255.255.255.255 ADDRESS14=195.14.50.26 GATEWAY13=10.210.0.17 NETMASK13=255.255.255.255 ADDRESS13=195.14.50.21 ----- КУСЬ ----- GATEWAY0=10.210.0.17 NETMASK0=255.0.0.0 ADDRESS0=10.0.0.0 VPN поднимается при загрузке компьютера, решил очень просто. Мой компьютер используется в качестве роутера, поэтому я просто добавил в конец скрипта Маскарадинга команду на запуск VPN. Если есть же хочется, чтобы это еще и поднималось... Улыбнуло, пасиб P.S. Хороший HOWTO, я бы прикрепил. Изменено 8 сентября 2006 пользователем Animal.X Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Padre 0 Жалоба Опубликовано: 8 сентября 2006 (изменено) а не подскажете почему у меня файл /etc/ppp/peers/corbina перезаписывается вот этим? connect "usr/bin/wvdial --remotename corbina --chat 'Default'" А, похоже, что это system-config-network меняет. 2Animal.X Подскажи плиз свои настройки. Совсем измучался ЗЫ Настраиваю на RHEL4 который стоит в качестве прокси и файрвола. Рвется соединение и в и-нет выйти не получается # less /var/log/messages Sep 9 00:56:51 gate ifup-ppp: pppd started for corbina on at Sep 9 00:56:51 gate pppd[28005]: pppd 2.4.2 started by root, uid 0 Sep 9 00:56:51 gate pppd[28005]: Using interface ppp0 Sep 9 00:56:51 gate pptp[28016]: anon log[main:pptp.c:267]: The synchronous pptp option is NOT activated Sep 9 00:56:51 gate pptp[28020]: anon log[ctrlp_rep:pptp_ctrl.c:251]: Sent control packet type is 1 'Start-Control-Connection-Request' Sep 9 00:56:51 gate pppd[28005]: Connect: ppp0 <--> /dev/pts/8 Sep 9 00:56:51 gate pptp[28020]: anon log[ctrlp_disp:pptp_ctrl.c:738]: Received Start Control Connection Reply Sep 9 00:56:51 gate pptp[28020]: anon log[ctrlp_disp:pptp_ctrl.c:772]: Client connection established. Sep 9 00:56:52 gate pptp[28020]: anon log[ctrlp_rep:pptp_ctrl.c:251]: Sent control packet type is 7 'Outgoing-Call-Request' Sep 9 00:56:52 gate pptp[28020]: anon log[ctrlp_disp:pptp_ctrl.c:857]: Received Outgoing Call Reply. Sep 9 00:56:52 gate pptp[28020]: anon log[ctrlp_disp:pptp_ctrl.c:896]: Outgoing call established (call ID 0, peer's call ID 10558). Sep 9 00:56:55 gate pppd[28005]: CHAP authentication succeeded Sep 9 00:56:55 gate pppd[28005]: local IP address 89.178.107.243 Sep 9 00:56:55 gate pppd[28005]: remote IP address 195.14.40.9 Sep 9 00:56:55 gate pppd[28005]: primary DNS address 213.234.192.7 Sep 9 00:56:55 gate pppd[28005]: secondary DNS address 195.14.50.1 Sep 9 00:56:55 gate NET: /etc/sysconfig/network-scripts/ifup-post : updated /etc/resolv.conf Sep 9 00:56:55 gate su(pam_unix)[28069]: session opened for user root by (uid=0) Sep 9 00:56:55 gate su(pam_unix)[28069]: session closed for user root Sep 9 00:57:47 gate pptp[28020]: anon log[ctrlp_disp:pptp_ctrl.c:928]: Call disconnect notification received (call id 10558) Sep 9 00:57:47 gate pptp[28020]: anon log[ctrlp_disp:pptp_ctrl.c:787]: Received Stop Control Connection Request. Sep 9 00:57:47 gate pptp[28020]: anon log[ctrlp_rep:pptp_ctrl.c:251]: Sent control packet type is 4 'Stop-Control-Connection-Reply' Sep 9 00:57:47 gate pptp[28020]: anon log[callmgr_main:pptp_callmgr.c:255]: Closing connection (shutdown) Sep 9 00:57:47 gate pptp[28020]: anon log[ctrlp_rep:pptp_ctrl.c:251]: Sent control packet type is 12 'Call-Clear-Request' Sep 9 00:57:47 gate pptp[28020]: anon log[call_callback:pptp_callmgr.c:78]: Closing connection (call state) Sep 9 00:57:47 gate pppd[28032]: Modem hangup Sep 9 00:57:47 gate pppd[28032]: Connection terminated. Sep 9 00:57:47 gate pppd[28032]: Connect time 1.0 minutes. Sep 9 00:57:47 gate pppd[28032]: Sent 185694232 bytes, received 183 bytes. Sep 9 00:57:49 gate NET: /etc/sysconfig/network-scripts/ifdown-post : updated /etc/resolv.conf Sep 9 00:57:49 gate su(pam_unix)[28172]: session opened for user root by (uid=0) Sep 9 00:57:49 gate su(pam_unix)[28172]: session closed for user root Sep 9 00:57:49 gate pppd[28032]: Connect time 1.0 minutes. Sep 9 00:57:49 gate pppd[28032]: Sent 185694232 bytes, received 183 bytes. Sep 9 00:57:49 gate pppd[28032]: Exit. Изменено 8 сентября 2006 пользователем Padre Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
_Raven_ 0 Жалоба Опубликовано: 9 сентября 2006 Использую Red Hat Enterprise Linux 4. До этого удавалось поднимать VPN только при помощи KVpnc, что очень неудобно. По себе знаю. Первое, что хочется, - это заходить в сеть по-человечески, а не как в виндах Проверил, этот способ работает как с "pptp-linux-1.4.0-1", так и с "pptp-1.7.0-1". От себя хотелось бы добавить, в RHEL нету yum, т.ч. pptp и MPPE надо искать самому. yum тут не очень поможет. Во-первых, стандартный способ таскать обновления в RHEL - up2date, во-вторых для yum, даже, если он установлен, нужны репозитарии с пакетами под RHEL - есть ли такие, я не знаю. P.S. Хороший HOWTO, я бы прикрепил. А как это сделать? Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Animal.X 1 Жалоба Опубликовано: 9 сентября 2006 Padre, попробуй в файле "/etc/ppp/peers/corbina" убрать пробел перед последней кавычкой, тоесть чтобы было не pty "pptp vpn.corbina.ru --nolaunchpppd " , а pty "pptp vpn.corbina.ru --nolaunchpppd" Если не получится, то после работы выложу свои настройки. А как это сделать? Надо чтобы модераторы обратили внимание на эту тему. P.S. Осталось на форуме найти скриптик, чтобы при обрыве VPN, он его заного поднимал. Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
TWINc 0 Жалоба Опубликовано: 9 сентября 2006 Прикрепляю. Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Padre 0 Жалоба Опубликовано: 11 сентября 2006 Animal.X Не помогает. Тоже самое. Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Animal.X 1 Жалоба Опубликовано: 11 сентября 2006 Прикрепил. pptp_rhel.tar Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
ltv 1 Жалоба Опубликовано: 14 октября 2006 Очень сложно Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Andrey 0 Жалоба Опубликовано: 26 октября 2006 Автор молодец. Я сам давно хотел описать настройки VPN под FC? но что-то руки никак не доходили. Есть только оодно замечание. yum --enablerepo=extras install pptp работать не будет так как изначально интернета у нас нет и получить этот пакет из репозитария мы не сможем (( А так сейчас настрою FC6 и скажу если что изменилось. или выложу свои настройки Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Strelban 0 Жалоба Опубликовано: 28 октября 2006 Автор молодец. Я сам давно хотел описать настройки VPN под FC? но что-то руки никак не доходили. Есть только оодно замечание. работать не будет так как изначально интернета у нас нет и получить этот пакет из репозитария мы не сможем (( А так сейчас настрою FC6 и скажу если что изменилось. или выложу свои настройки респект, Andrey-m Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
RoJa 0 Жалоба Опубликовано: 6 ноября 2006 Автор молодец. Я сам давно хотел описать настройки VPN под FC? но что-то руки никак не доходили. Есть только оодно замечание. работать не будет так как изначально интернета у нас нет и получить этот пакет из репозитария мы не сможем (( А так сейчас настрою FC6 и скажу если что изменилось. или выложу свои настройки Плис помоги мне настроить FC 5.. плис++++ Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Dominator 1 Жалоба Опубликовано: 8 ноября 2006 (изменено) Настройки разжевали хорошо. А вот где взять пакеты pptp и mppe? Обшарил диски , че-то не нашел. Не могли бы выложть, а то инета-то нету. Изменено 8 ноября 2006 пользователем Dominator Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
6c38 0 Жалоба Опубликовано: 10 ноября 2006 2 Dominator: "Use the Force Luke!" Поиск это наше все! -> Fedora Core4 VPN Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Narkoz 0 Жалоба Опубликовано: 12 ноября 2006 Animal.X, молодца отличный набор готовых к употреблению файлов, практически сразу все заработало на FC5. Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Dominator 1 Жалоба Опубликовано: 17 ноября 2006 (изменено) [root@localhost ~]# /etc/sysconfig/network-scripts/ip-up.local ppp0: Неизвестный хост gw: Неизвестный хост SIOCADDRT: Нет такого устройства [root@localhost ~]# Что это значит? Изменено 17 ноября 2006 пользователем Dominator Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Dominator 1 Жалоба Опубликовано: 18 ноября 2006 (изменено) Сори за деильный пост. Не догнал сразу как инет включать Изменено 18 ноября 2006 пользователем Dominator Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Weaver 0 Жалоба Опубликовано: 2 декабря 2006 помогло бороться с pppd. Осталась одна проблема - зависание тунеля - кто как борется? Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
_Raven_ 0 Жалоба Опубликовано: 3 декабря 2006 помогло бороться с pppd. Осталась одна проблема - зависание тунеля - кто как борется? /etc/init.d/network restart Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Weaver 0 Жалоба Опубликовано: 3 декабря 2006 /etc/init.d/network restart мгм - вообще то ответ не совсем в тему. Вопрос как с этим бороться в автоматическом режиме, дабы само определяло, что тунель завис и перезапускало. Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
dilmah 0 Жалоба Опубликовано: 3 декабря 2006 > Вопрос как с этим бороться в автоматическом режиме, дабы само определяло, > что тунель завис и перезапускало. По моему очевидно: в кроне вызывать скрипт, который будет пинговать google.com, rambler.ru и т.п. Если не пингуется то перезапускать Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Weaver 0 Жалоба Опубликовано: 3 декабря 2006 > Вопрос как с этим бороться в автоматическом режиме, дабы само определяло, > что тунель завис и перезапускало. По моему очевидно: в кроне вызывать скрипт, который будет пинговать google.com, rambler.ru и т.п. Если не пингуется то перезапускать крон ИМХО не выход, крон на каждую секунду вешать не рекомендуется, да и коряво как. Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
dilmah 0 Жалоба Опубликовано: 3 декабря 2006 > крон ИМХО не выход, крон на каждую секунду вешать не рекомендуется, > да и коряво как. не на каждую секунду а на каждую минуту. не вижу ничего страшного сделать раз в минуту пинг. Ты недооцениваешь мощь современных компьютеров.. Если тебя волнует то что диск будет каждую минуту дергаться -- монтируй тогда его с noatime можешь поэкспериментировать с ip monitor Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Weaver 0 Жалоба Опубликовано: 3 декабря 2006 Ты недооцениваешь мощь современных компьютеров. Мдаааа... Тогда вопрос, а зачем хрон вообще. Если следовать такой логике то лучшим решением будет скрипт c циклом while true. Запущенный с nohup &. Это костыли. Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
dilmah 0 Жалоба Опубликовано: 3 декабря 2006 > Это костыли. что за бред? Если тебе нужно проследить что что-то работаети не падает, то естественно что должно быть что-то что будет постоянно мониторить ситуацию; Или тебе нужно чтобы это работало штатными средствами ОС? Ну сделай свой дистрибутив в котором это будет штатно. Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Weaver 0 Жалоба Опубликовано: 3 декабря 2006 ваша позиция понятна, надеюсь у кого нибудь есть более правильное и изящное решение. Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Yura13 0 Жалоба Опубликовано: 11 декабря 2006 (изменено) Люди у меня FC 6 на команду ifup corbina пишет Failed to activate corbina with error 1 Как лечить??? Изменено 11 декабря 2006 пользователем Yura13 Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Xa_Nick 0 Жалоба Опубликовано: 12 декабря 2006 Привет нужен совет!!! У меня только что уствановлена FC8 Кто знает как ее подключить к Корбине??? извените за ламерский вопрос, впервые установил линух. Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Andrey 0 Жалоба Опубликовано: 12 декабря 2006 (изменено) вот вам 2 пакета pptp так как без vpn вы их скачать не сможете. они вам нужно сразу две версии i386 и x86_64 P.S. Так как просили помоч. Давайте в джабер пишите или сразу в личку. Так как отслеживать весь форум проблематично. pptp.tar Изменено 12 декабря 2006 пользователем Andrey Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
-KOSH- 0 Жалоба Опубликовано: 18 декабря 2006 Нужна помощь по настройке vpn в FC6,кто может помочь напишите в личку плиз Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах