Мы — долго запрягаем, быстро ездим, и сильно тормозим.
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
www.lissyara.su
—> статьи
—> FreeBSD
|
|
После установки топаем править конфиг:
|
В итоге, на сервере (в офисе) имеем /usr/local/etc/rc.d/vtund.conf:
|
После чего добавляем строку в /etc/rc.conf, и запускаем сервер:
|
Запустился. Надо заметить, что несмотря на рекомендованную конфигурацию с udp я поставил tcp - он даже при установке udp слушает tcp порт :) Баг, или мои кривые руки - не знаю. Поставил tcp - всё нормально. Не забываем добавить вверху файрволла примерно такие правила:
|
Где ${LanIn} - внутренняя сетевуха.
После чего топаем на машину филиала, там устанавливать. Установка отличий не имеет, главное не забыть обновить порты. Конфиг получился такой /usr/local/etc/rc.d/vtund.conf:
|
После рихтовки конфига, добавляем строки (первая про запуск клиента, а вторая представляет собой имя конфигурации и IP-адрес сервера) в /etc/rc.conf, и запускаем это хозяйство:
|
Добавляем в фаер правила (тока три, т.к. у меня этот сервер имеет право соединяться с кем угодно по tcp, значит про 5000 порт не надо.)
|
Где ${LanIn} - внутренняя сетевуха
После чего смотрим, появился ли интерфейс и пробуем пингануть удалённую сетку:
/usr/local/etc/rc.d/>ifconfig tun0: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1500 inet 192.168.30.254 --> 192.168.20.254 netmask 0xffffff00 Opened by PID 89903 /usr/local/etc/rc.d/> /usr/local/etc/rc.d/>ping 192.168.20.1 PING 192.168.20.1 (192.168.20.1): 56 data bytes 64 bytes from 192.168.20.1: icmp_seq=0 ttl=127 time=134.485 ms 64 bytes from 192.168.20.1: icmp_seq=1 ttl=127 time=134.909 ms 64 bytes from 192.168.20.1: icmp_seq=2 ttl=127 time=135.900 ms 64 bytes from 192.168.20.1: icmp_seq=3 ttl=127 time=138.260 ms 64 bytes from 192.168.20.1: icmp_seq=4 ttl=127 time=133.772 ms ^C --- 192.168.20.1 ping statistics --- 5 packets transmitted, 5 packets received, 0% packet loss round-trip min/avg/max/stddev = 133.772/135.465/138.260/1.558 ms /usr/local/etc/rc.d/> |
Всё нормально. Бегает. Если интересует шифруется ли - то tcpdump -i _имя_интерфейса_ -lex вам поможет. Вначале на интерфейсе tun0, а потом на внешнем. На tun будет видно, что это icmp (при пингах), а на внешнем это уже будет Unknown :)
P.S. Косяк - если перезапустить сервер (например перезагрузка понадобилась), то клиенты отваливаются навсегда. Пришлось нарисовать такой скрипт на шелле:
|
И запихать в планировщик (рутовый). Я поставил раз в минуту. Можно и реже.
|
Владимир?, 2006-04-25 в 15:31:12
А при таком туннеле, машины второго офиса смогут войти в домен первого?
Brunen, 2006-08-27 в 15:10:56
Приветствую, lissyara!
При попытке запустит команду /usr/local/etc/rc.d/vtunclient.sh start, FreeBSD 5.4 выдает
Starting vtunclient.
vtund[583]: syntax error line 5
vtund[583]: No hosts defined
В основном офисе FreeBSD 5.4 при запуске vtund.sh выдает, как и положено, Starting vtund. Демон vtund висит на сервере. В филиале, из-за этой ошибки - нет.
Brunen, 2006-08-27 в 16:40:23
Ошибка была в филиале vtund.conf: неправильно указал серые подсети.
А теперь, после установки соединения, возник такой вопрос: а клиенты(MSWinXPSP2) могут друг друга по пингу видеть?
Guimplen, 2006-12-14 в 18:39:01
НЕ работает скрипт поднятия тунеля после падения.
НЕ зависимо от того работает прога или нет он пишет что все ногмально и тунель стоит.
lissyara, 2006-12-14 в 20:33:41
У меня этот скрипт уже 10 месяцев работает.
Однако, присмотревшись, понял, что если машина шустрая (у меня - нет), он может и не работать. Надо в выборе процессов, до подсчёта, добавить ещё трубу:
| grep -v "grep"
=============
А вообще, собственной башкой думать неплохобы. Помогает в решении простейших проблем.
Константин, 2007-02-17 в 17:01:41
Хорошая статья.
все получилось.
а опыт использования openvpn у вас есть? очень хорошо вы пишите. очень понятно.
Константин, 2007-02-17 в 18:04:15
Вот только что то скрипт не работает у меня. объясните плиз подробней немножко про grep -v "grep". как всетаки написать скрипт.
lissyara, 2007-02-17 в 19:17:35
а думать-то как все не любят...
more tun0.sh
#!/bin/sh
# Скрипт перезапуска клиента vtun, на случай падений
# где живут программы
ps="/bin/ps"
grep="/usr/bin/grep"
wc="/usr/bin/wc"
# если число "нагрепаных" туннелей меньше одного,
# то выполняем условие
if [ `${ps} -ax | ${grep} "vtun" | ${wc} -l | grep -v grep` -lt 1 ]
then
# запускаем клиента
/usr/local/etc/rc.d/000.vtunclient.sh start #> /dev/null 2>&1
# обновляем таблицы маршрутизации
sleep 15
/sbin/route delete 192.168.0.0/16 &
sleep 2
ping 192.168.8.254 >/dev/null &
sleep 3
kill -9 $!
/sbin/route add 192.168.0.0/16 192.168.8.254
else
# всё пучком, ничё не делаем
fi
exit;
Это с машины где оно стоит уже больше года...
Константин, 2007-02-17 в 21:30:12
Спасибо большое. Я не волшебник, я только учусь. освою.
еще раз спасибо за помощь.
Константин, 2007-02-19 в 14:57:23
все таки что то не так со скриптом.
запускается через 10 раз. то есть 10-15 раз не поднимит клиента 1 раз поднимет.
Константин, 2007-02-19 в 15:23:11
вообщем решил проблему в моем случаем.
добавил еще grep -v "grep"
строка условия выглядит так
if [ `${ps} -ax | ${grep} "vtun" | grep -v "grep" | ${wc} -l | grep -v "grep"` -lt 1 ]
Айзятуллен Рамиль, 2007-02-20 в 13:32:31
>P.S. Косяк - если перезапустить сервер (например >перезагрузка понадобилась), то клиенты отваливаются >навсегда. Пришлось нарисовать такой скрипт на шелле:
Столкнулся с этой проблемой.Все решается гораздо проще, скриптов писать не надо. Смотрим файл vtund.conf.example на предмет нахождения в нем Persist mode.
Persist mode. Reconnect to the server after connection termination. Used only by client.
На клиентской стороне в vtund.conf допишем
ametist {
persist yes;
...
...
kuzea, 2007-06-09 в 16:42:53
Oceni bolishoe spasibo
rabotaet cerez persist = yes bez scripta
kuzea, 2007-06-09 в 16:43:56
oshibocica v predydushem poste
persist yes;
Amadeus, 2008-09-22 в 12:59:38
Бальшее спасибо за статью, оч помогла
shark, 2009-06-17 в 0:17:48
а не проще было бы добавить в кроне
[code]*/1 * * * * root /usr/local/etc/rc.d/vtunclient.sh start[/code]?
у меня так пашет ... а раньше падения были
shark, 2009-06-17 в 0:21:41
t4# /usr/local/etc/rc.d/vtunclient.sh stop
Stopping vtunclient.
Waiting for PIDS: 2215.
t4# /usr/local/etc/rc.d/vtunclient.sh status
vtunclient is not running.
... где-то через минуту
t4# /usr/local/etc/rc.d/vtunclient.sh status
vtunclient is running as pid 3153.
girffe, 2009-07-23 в 8:02:39
Прописал persist yes; на стороне клиента, не помогло.
Версии клиента и сервера разные, в этом может быть косяк?
giraffe, 2009-07-23 в 9:43:33
Посмотрел example
Разобрался в чем косяк
Директивы
compress
encrypt
keepalive
игнорируются на стороне клиента.
Тупо комментируем их и добавляем
persist yes;
И наслаждаемся райской жизнью ))
wao, 2009-11-04 в 17:46:58
Почему MTU выбран 1500 ?
Alexey, 2010-06-17 в 12:19:37
добавляем в крон
ee /etc/crontab
строчку
*/15 * * * * root /bin/ps -ax | /usr/bin/grep -v "grep" | /usr/bin/grep -c "vtun" | /usr/bin/awk '{if ($1=0) print "/usr/local/etc/rc.d/vtunclient start"}' | /bin/sh
Итого раз в 15 минут будет проверятся канал перевожу для тех кто далёк
раз в мин мин | высветить все процессы | убрать из процессов GREP | считаем сколько процессов Vtun | далее (Кол-во строк Vtun =0) то запускаем печатаем /usr/local/etc/rc.d/vtunclient start | Выполнить
После этого канал не падает и скрипта писать не нужно !!!
----
Компьютерная барахолка oldcomp.ru
Егор, 2011-06-16 в 18:58:33
ого, 5 лет статье, а она ешё актуальна.
спасибо за статью, отлично пишите
2014-07-27, lissyara
gmirror
Удалённое создание софтверного зеркала средствами gmirror, на диске разбитом с использованием gpart. Использование меток дисков для монтирования разделов.
2013-08-20, zentarim
Scan+Print server FreeBSD 9
Настройка сервера печати и сервера сканирования под управлением операционной системы FreebSD 9 для МФУ Canon PIXMA MP540
2011-11-20, BlackCat
Разъём на WiFi-карту
Делаем съёмной несъёмную антену на WiFi-карте путём установки ВЧ-разъёма
2011-09-14, manefesto
Настройка git+gitosis
Настройка системы контроля версия исходного кода в связке git+gitosis+ssh
2011-08-14, zentarim
Wi-FI роутер + DHCP + DNS
Настройка Wi-Fi роутера на Freebsd 8 + DNS сервер + DHCP сервер: чтобы Wi-Fi клиенты были в одной подсети с проводными, проводные и беспроводные клиенты получали адреса автоматически по DHCP, кэширующ
2011-06-15, -ZG-
Охранная система на FreeBSD+LPT
В этой статье описана попытка реализации простой охранной системы на базе FreeBSD с подключением к ней охранных устройтсв на LPT порт и видеорегистрацией.
2011-03-13, terminus
ng_nat
Описание работы ng_nat, практическое использование, достоинства и недостатки в сравнении с ipfw nat
2011-02-20, Капитан
Nagios+Digitemp
Статья описывает создание системы оповещения о превышении температуры в специальных помещениях на основе Nagios с использованием программы Digitemp.
2011-02-17, Le1
Zyxel Configuration
Скрипт для массового изменения конфига свичей Zyxel. Берет из файла iplist список ip-шек, заходит последовательно на каждый и выполняет комманды из файла commands, записывая происходящее в лог файл.
2011-02-16, fox
hast carp zfs ucarp cluster
HAST (Highly Available Storage), CARP, UCARP, ZFS, Cluster настройка и одаптация плюс личные размышления…
2011-02-04, BlackCat
Восстановление ZFS
История о том, как был восстановлен развалившийся RAIDZ ZFS-пул (перешедший в FAULTED) с помощью скотча и подручных средств. Или о том, какие приключения ожидают тех, кто не делает резервных копий.
2011-02-03, Капитан
1-Wire
Статья описывает самостоятельное изготовление контроллера DS9097 для съёма показаний с датчиков температуры DS1820 с помощью программы Digitemp.
2011-01-28, Капитан
Температура в серверной
Статья описывает построение системы наблюдения за температурой в помещении серверной с использованием программы Digitemp и выводом графиков в MRTG
2011-01-21, m4rkell
Syslog server
Как то буквально на днях, у нас завалилось, что то в еве) или не в еве не суть. Суть в том, что когда захотели снять логи с хостов esx обнаружили, что хранят эти негодяи логии только за последнии сутк
2011-01-07, lissyara
Canon/gphotofs
Монтирование цифровых фотоаппаратов Canon (PTP) как файловой системы, автоматизация этого процесса через события devd и внешние скрипты.
2010-12-13, Al
IPSec
Описание принципов работы IPSEC и способов аутентификации.
2010-12-07, manefesto
FreeBSD on flash
Было принято решении переехать на USB Flash и установить минимальный джентельменский набор для работы своего роутера. Делаем =)
2010-12-05, Fomalhaut
root ZFS, GPT
Инструкция по установке FreeBSD с использованием в качестве таблицы разделов GPT и в качестве основной файловой системы - ZFS
2010-09-05, Cancer
Настройка аудиоплеера на ximp3
Цели: Простенький аудиоплеер, для того что бы тетя продавец в магазине утром пришла нажала на кнопку Power и заиграла в зале музыка, так же был доступ по сети, общая шара куда можно заливать музыку, к
2010-08-31, Cancer
Установка и настройка OpenVPN
На днях появилась задача - объединить головной офис и 3 филиала в одну сеть через интернет посредством OpenVPN, чтобы люди могли подключаться через RDP к базам 1С на серверах.
2010-08-25, manefesto
freebsd lvm
Использование linux_lvm для работы с LVM разделами из-под FreeBSD. Проблемы которые возники при монтирование lvm раздела
2010-04-30, gonzo111
proftpd file auth"a
Proftpd - квоты и авторизация из файлов, без использования базы данных и/или системных пользователей
2010-04-22, lissyara
tw_cli
Пошаговая инструкция по восстановлению RAID на контроллере 3ware, из которого выпал один диск. Настройка мониторинга состояния рейда и отчётов о его состоянии на email.
2010-04-14, fox
MySQL Master+Master
MySQL (Master Master) and (Master Slave) Как настроить репликацию…
2010-03-09, terminus
DNS zones
Краткий ликбез про управление DNS зонами. Примеры проведения делегирования прямых и обратных DNS зон.
2010-03-09, aspera
Squid+AD (group access)
Настройка прокси сервера SQUID с автроризацией пользователей в AD. Разделение пользователей на группы
вверх
|
Этот информационный блок появился по той простой причине,
что многие считают нормальным, брать чужую информацию не уведомляя автора
(что не так страшно), и не оставляя линк на оригинал и автора — что более существенно.
Я не против распространения информации — только за. Только условие простое — извольте
подписывать автора, и оставлять линк на оригинальную страницу в виде прямой, активной, нескриптовой,
незакрытой от индексирования, и не запрещенной для следования роботов ссылки.
Если соизволите поставить автора в известность — то вообще почёт вам и уважение.
© lissyara 2006-10-24 08:47 MSK
weeek - планировщик дел онлайн
Комментарии пользователей [22 шт.]