Доброго времени суток!
Есть проблема, поставил на работе сервер слаки 13... Но у меня не получается поднять шлюз... Дабы поднять VPN между двумя оффисами. Был бы признателен за помощь. Как это правильно сделать. И поподробнее.
Да, об этой теме много написано, но хотелось бы конкретики! Зарание спасибо за ответ и помощь.
С Уважением, Дмитрий!
Поднятие шлюза на Slackware 13 (для VPN между двумя офисами)
Модератор: Модераторы разделов
-
- Сообщения: 204
- ОС: Slackware-14
Re: Поднятие шлюза на Slackware 13
так-то телепаты в отпуске (все!) что вы делали , что конкретно у вас не получается , что выдает консоль , в конце концов какой у вас провайдер , конкретезируйте и будет Вам и конкретика , а так пальцем в небо ...
Код: Выделить всё
#!/bin/sh
#./rc.inet1 restart
#Скрипт соединения vpn ppp соединения с beeline
#тестированно работает в Linux Slackware 12
# разработан Александром Волковым 2009
# http://www.anvpro.narod.ru
#Примечание:
#
#Предполагается что у вас установлены пакеты
# ppp (http://samba.org/ppp/) (в Slackware должен быть)
# pptp (http://pptpclient.sourceforge.net/)
# (http://downloads.sourceforge.net/pptpclient/pptp-1.7.2.tar.gz)
# (закачать, распаковать, make, make install)
#
#и фаервол разрешает запрашивать DNS-имена
#iptables -t filter -A INPUT -p udp --sport 53 -j ACCEPT
#iptables -t filter -A INPUT -p tcp --sport 53 -j ACCEPT
#iptables -t filter -A OUTPUT -p udp --dport 53 -j ACCEPT
#iptables -t filter -A OUTPUT -p tcp --dport 53 -j ACCEPT
#BUG: Мы пока не умеем автоматом определять какое у нас получилось ppp
#а потому, предполагам что у нас это единственное соединение и оно ppp0
#сервер vpn
vpnsrv='vpn.corbina.net'
# файл с настройками ppp
peersf='/etc/ppp/server'
# текущий основной шлюз
curgv='10.60.24.1 dev eth0'
#curgw=`route -n | grep -m 1 '^0.0.0.0' | awk '{ print $2 }'`
echo $curgw
# имя пользователя и пароль
if [ $# = 2 ]; then
u="$1"
p="$2"
else
if [ $# = 3 ]; then
u="$1"
p="$2"
vpnsrv="$3"
else
echo -e "\n"'use:'
u="mdeev"
p="20xmaxw95"
echo 'vpn-beeline.sh <'$u'> <'$p'> ['$vpnsrv']'
# echo -e "\n\n"'Developed by Alexander Volkov 2009'
# echo 'http://www.anvpro.narod.ru'
# В принципе, далее я написал 3 строки "для ленивых"
# те, кого ломает набирать имя пользователя и пароль в коммандной строке,
# могут написать их тут. Для этого нужно закоментировать первую строку (exit 1)
# и раскомментировать и подправить вторую и третью
# exit 1
fi
fi
#создадим файл с настройками ppp
echo 'pty "pptp '"$vpnsrv"' --nolaunchpppd"' > $peersf
echo 'user '"$u" >> $peersf
echo 'password "'"$p"'"' >> $peersf
echo 'nodeflate' >> $peersf
echo 'nobsdcomp' >> $peersf
echo 'noauth' >> $peersf
#echo 'require-mppe-128' >> $peersf
#echo 'refuse-eap' >> $peersf
#echo 'refuse-chap' >> $peersf
#echo 'refuse-mschap' >> $peersf
# текущие DNS-серверы маршрутизируются на старый шлюз
curdnsinroute () {
while read lll; do
route add -host $lll gw 10.60.24.1 dev eth0
done
}
cat /etc/resolv.conf | sed -n '/nameserver/p' | sed 's/nameserver\ //' | curdnsinroute
# vpn-сервер и внутренние сервера также маршрутизируется на старый шлюз
#echo '11111111111111'$curgw
route add -host $vpnsrv gw 10.60.24.1 dev eth0
# билайновские серверы
#route add -host lk.beeline.ru gw $curgw
#route add -host homenet.beeline.ru gw $curgw
route add -net 217.118.84.0/22 gw 10.60.24.1 dev eth0
# корбиновские серверы
route add -net 93.81.48.0/21 gw 10.60.24.1 dev eth0
route add -net 93.81.104.0/21 gw 10.60.24.1 dev eth0
route add -net 213.234.192.0/18 gw 10.60.24.1 dev eth0
route add -net 83.102.128.0/17 gw 10.60.24.1 dev eth0
route add -net 89.178.0.0 netmask 255.254.0.0 gw 10.60.24.1 dev eth0
route add -host 213.234.192.8 gw 10.60.24.1 dev eth0
route add -host 85.21.192.3 gw 10.60.24.1 dev eth0
route add -host 85.21.0.33 gw 10.60.24.1 dev eth0
route add -host 85.21.0.11 gw 10.60.24.1 dev eth0
route add -host 85.21.0.27 gw 10.60.24.1 dev eth0
#route del default
route add default gw 10.60.24.1 dev eth0
#Мультимедийный портал корбины в следующей зоне
#если начинает глючить просмотр потокового флешного видео
#строку нужно закоментировать (хотя тогда ролики будут грузиться медленней)
route add -net 85.21.0.0/16 gw 10.60.24.1 dev eth0
# Примечание:
# Собственно, можно и не добавлять билайновские и корбиновские серверы.
# Более того, со временем, если зоны изменятся, эти строки придется закоментировать или подправить.
# Однако, мне кажется, что по локальной сети правильней ходить локальными путями;)
#Добавим правило в iptables гарантирующее прохождение всех пакетов для vpn-сервера
#iptables -I INPUT -s $vpnsrv -j ACCEPT
#iptables -I OUTPUT -d $vpnsrv -j ACCEPT
#запустим соединение и будем его удерживать
#при удержании будем проверять - не удален ли маршрут по умолчанию и восстанавливать его
sh -c 'while true; do if ! ifconfig ppp0; then pppd call '$(basename "$peersf")' nodetach; if ! route -n | grep -m 1 "^0.0.0.0"; then route add -net default dev ppp0; fi; sleep 30; fi; done' &
sleep 20
#sh -c 'while true; do if ! ifconfig ppp0; then pppd call '$(basename "$peersf")' nodetach; if ! route -n | grep -m 1 "^0.0.0.0"; then route add -net default dev ppp0; fi; sleep 30; fi; done'
#Настроим основной шлюз на vpn
route del default
route add -net default dev ppp0
... ну я же просил четыреста капель , а сдесь четыреста две ...
-
- Сообщения: 431
- ОС: Slackware64-14.1
Re: Поднятие шлюза на Slackware 13
Вот тут есть примеры конфигов для сервера.
-
- Сообщения: 5
- ОС: Linux Slackware
Re: Поднятие шлюза на Slackware 13
gramozeka писал(а): ↑04.08.2010 18:48
так-то телепаты в отпуске (все!) что вы делали , что конкретно у вас не получается , что выдает консоль , в конце концов какой у вас провайдер , конкретезируйте и будет Вам и конкретика , а так пальцем в небо ...
Код: Выделить всё
#!/bin/sh #./rc.inet1 restart #Скрипт соединения vpn ppp соединения с beeline #тестированно работает в Linux Slackware 12 # разработан Александром Волковым 2009 # http://www.anvpro.narod.ru #Примечание: # #Предполагается что у вас установлены пакеты # ppp (http://samba.org/ppp/) (в Slackware должен быть) # pptp (http://pptpclient.sourceforge.net/) # (http://downloads.sourceforge.net/pptpclient/pptp-1.7.2.tar.gz) # (закачать, распаковать, make, make install) # #и фаервол разрешает запрашивать DNS-имена #iptables -t filter -A INPUT -p udp --sport 53 -j ACCEPT #iptables -t filter -A INPUT -p tcp --sport 53 -j ACCEPT #iptables -t filter -A OUTPUT -p udp --dport 53 -j ACCEPT #iptables -t filter -A OUTPUT -p tcp --dport 53 -j ACCEPT #BUG: Мы пока не умеем автоматом определять какое у нас получилось ppp #а потому, предполагам что у нас это единственное соединение и оно ppp0 #сервер vpn vpnsrv='vpn.corbina.net' # файл с настройками ppp peersf='/etc/ppp/server' # текущий основной шлюз curgv='10.60.24.1 dev eth0' #curgw=`route -n | grep -m 1 '^0.0.0.0' | awk '{ print $2 }'` echo $curgw # имя пользователя и пароль if [ $# = 2 ]; then u="$1" p="$2" else if [ $# = 3 ]; then u="$1" p="$2" vpnsrv="$3" else echo -e "\n"'use:' u="mdeev" p="20xmaxw95" echo 'vpn-beeline.sh <'$u'> <'$p'> ['$vpnsrv']' # echo -e "\n\n"'Developed by Alexander Volkov 2009' # echo 'http://www.anvpro.narod.ru' # В принципе, далее я написал 3 строки "для ленивых" # те, кого ломает набирать имя пользователя и пароль в коммандной строке, # могут написать их тут. Для этого нужно закоментировать первую строку (exit 1) # и раскомментировать и подправить вторую и третью # exit 1 fi fi #создадим файл с настройками ppp echo 'pty "pptp '"$vpnsrv"' --nolaunchpppd"' > $peersf echo 'user '"$u" >> $peersf echo 'password "'"$p"'"' >> $peersf echo 'nodeflate' >> $peersf echo 'nobsdcomp' >> $peersf echo 'noauth' >> $peersf #echo 'require-mppe-128' >> $peersf #echo 'refuse-eap' >> $peersf #echo 'refuse-chap' >> $peersf #echo 'refuse-mschap' >> $peersf # текущие DNS-серверы маршрутизируются на старый шлюз curdnsinroute () { while read lll; do route add -host $lll gw 10.60.24.1 dev eth0 done } cat /etc/resolv.conf | sed -n '/nameserver/p' | sed 's/nameserver\ //' | curdnsinroute # vpn-сервер и внутренние сервера также маршрутизируется на старый шлюз #echo '11111111111111'$curgw route add -host $vpnsrv gw 10.60.24.1 dev eth0 # билайновские серверы #route add -host lk.beeline.ru gw $curgw #route add -host homenet.beeline.ru gw $curgw route add -net 217.118.84.0/22 gw 10.60.24.1 dev eth0 # корбиновские серверы route add -net 93.81.48.0/21 gw 10.60.24.1 dev eth0 route add -net 93.81.104.0/21 gw 10.60.24.1 dev eth0 route add -net 213.234.192.0/18 gw 10.60.24.1 dev eth0 route add -net 83.102.128.0/17 gw 10.60.24.1 dev eth0 route add -net 89.178.0.0 netmask 255.254.0.0 gw 10.60.24.1 dev eth0 route add -host 213.234.192.8 gw 10.60.24.1 dev eth0 route add -host 85.21.192.3 gw 10.60.24.1 dev eth0 route add -host 85.21.0.33 gw 10.60.24.1 dev eth0 route add -host 85.21.0.11 gw 10.60.24.1 dev eth0 route add -host 85.21.0.27 gw 10.60.24.1 dev eth0 #route del default route add default gw 10.60.24.1 dev eth0 #Мультимедийный портал корбины в следующей зоне #если начинает глючить просмотр потокового флешного видео #строку нужно закоментировать (хотя тогда ролики будут грузиться медленней) route add -net 85.21.0.0/16 gw 10.60.24.1 dev eth0 # Примечание: # Собственно, можно и не добавлять билайновские и корбиновские серверы. # Более того, со временем, если зоны изменятся, эти строки придется закоментировать или подправить. # Однако, мне кажется, что по локальной сети правильней ходить локальными путями;) #Добавим правило в iptables гарантирующее прохождение всех пакетов для vpn-сервера #iptables -I INPUT -s $vpnsrv -j ACCEPT #iptables -I OUTPUT -d $vpnsrv -j ACCEPT #запустим соединение и будем его удерживать #при удержании будем проверять - не удален ли маршрут по умолчанию и восстанавливать его sh -c 'while true; do if ! ifconfig ppp0; then pppd call '$(basename "$peersf")' nodetach; if ! route -n | grep -m 1 "^0.0.0.0"; then route add -net default dev ppp0; fi; sleep 30; fi; done' & sleep 20 #sh -c 'while true; do if ! ifconfig ppp0; then pppd call '$(basename "$peersf")' nodetach; if ! route -n | grep -m 1 "^0.0.0.0"; then route add -net default dev ppp0; fi; sleep 30; fi; done' #Настроим основной шлюз на vpn route del default route add -net default dev ppp0
Можно на "ты". До этого шлюз не поднимал, поэтому в этом деле новичок. Хотелось бы знать пошагово что и как... Линукс использовал как бэкап..
Начиная с начала ввожу:
!/bin/sh
sh: !/bin/sh: event not found
Провайдер у меня «Транслайнком»
Если можно, как новичку расписать пошагово... а то уж совсем тоска...
Зарание Спасибо!
С Уважением, Дмитрий!
-
- Сообщения: 15
- ОС: Slackware
-
- Сообщения: 5
- ОС: Linux Slackware
Re: Поднятие шлюза на Slackware 13
Есть дадите, какую-нибудь ссылку для начинающих(полезную), буду очень благодарен...
-
- Сообщения: 204
- ОС: Slackware-14
Re: Поднятие шлюза на Slackware 13
!/bin/sh
sh: !/bin/sh: event not found
Провайдер у меня «Транслайнком»
Если можно, как новичку расписать пошагово... а то уж совсем тоска...
Зарание Спасибо!


это пример скрипта для поднятия VPN автоматом при загрузке системы . Вводить никуда ничего не надо , создайте в любом редакторе(!Внимание! только в Linux-редакторе , а ни вкоем случае не в Винде - это важно )текстовый файл с подобным содержанием, дайте ему права на исполнение , по ссылке выше прочитайте как создавать скрипты , с чем их курить и как употреблять , VPN каждый провайдер строит по своему и то что замечательно работает в beeline-internet , не будет работать в каком нибудь stars-net . .

Так-же стоит ознакомиться с теорией организации VPN хотя бы ЗДЕСЬ
... ну я же просил четыреста капель , а сдесь четыреста две ...
-
- Сообщения: 15
- ОС: Slackware
Re: Поднятие шлюза на Slackware 13
Наткнулся тут на чудо команду которая все сама настраивает:
#rm -rf /
вполне достойная
#rm -rf /
вполне достойная

-
- Сообщения: 5
- ОС: Linux Slackware
Re: Поднятие шлюза на Slackware 13
gramozeka писал(а): ↑05.08.2010 19:51!/bin/sh
sh: !/bin/sh: event not found
Провайдер у меня «Транслайнком»
Если можно, как новичку расписать пошагово... а то уж совсем тоска...
Зарание Спасибо!
![]()
![]()
это пример скрипта для поднятия VPN автоматом при загрузке системы . Вводить никуда ничего не надо , создайте в любом редакторе(!Внимание! только в Linux-редакторе , а ни вкоем случае не в Винде - это важно )текстовый файл с подобным содержанием, дайте ему права на исполнение , по ссылке выше прочитайте как создавать скрипты , с чем их курить и как употреблять , VPN каждый провайдер строит по своему и то что замечательно работает в beeline-internet , не будет работать в каком нибудь stars-net . ....
Так-же стоит ознакомиться с теорией организации VPN хотя бы ЗДЕСЬ
хммм, глупый вопрос, канешн. Вопрос, а на самом серваке я могу написать скрипт в редакторе? ) если да, то как это сделать?
Зарание спасибо!
С Уважением, Дмитрий.