Мы — долго запрягаем, быстро ездим, и сильно тормозим.

FreeBSD
  настройка
  подсчёт трафика
  программы
  почтовые системы
  Шелезяки
  Мелочи
  Файловая система
  WWW
  Security
  немного о безопасности
  VPN (PoPToP)
  PortSentry
  sysctl
  vtund
  ipfwcount
  FreeBSD & DSA
  mpd – легко и просто!
  mpd + freeradius + mysql
  Бронированный FreeBSD
  sshit
  DSL-G804V и FreeBSD 6.2
  portaudit
  OpenVPN
  Bluetooth proximity monitor
  ESET NOD32
  GEOM-ELI
  stunnel для pop3,smtp
  NOD32 mirror
  mpd5 + ipfw-nat
  Openvpn 2 офиса
  Hotspot
  OpenVPN+авторизация
  termlog
  mpd5 + сжатие и шифрование
  ipsec_vpnc
  TOR Сервер
  Snort на FreeBSD
  Arpwatch
  Установка и настройка OpenVPN
  NOD32_mirror_v2
  Fail2ban
  IPSec
  Перенос OpenVPN сервера
  Wpa/WPA2-Radius+EAP-TLS/EAP-PEAP
  nod32 mirror script
  MAC + apache
  system
  Games Servers
  X11
  Programming
Очумелые Ручки
OpenBSD
Cisco


www.lissyara.su —> статьи —> FreeBSD —> Security —> Openvpn 2 офиса

Openvpn 2 офиса

Автор: UA.


Имеем: FreeBSD 6.2, инет - офис - сервер
FreeBSD 6.2, инет - инет - филиал
Надо: Прозрачно и безопасно объеденить 2 сети за роутерами с фрёй для пользования сервисами в обоих сетях


В данной статье пошагово расписана настройка Openvpn-сервера (со статическими ключами и сертификатами) и клиента для маршрутизируемого, зашищённого объединения 2 сетей
Плюсом данного метода, а именно использования Openvpn, является гибкость настройки и возможность работы КЛИЕТА-ФИЛИАЛА из-за НАТа и (если добрый провайдер фильтрует трафик) через хттп-прокси /для этого достаточно в файл конфигурации клиета добавить соответствующую строку/

Статья пишется с первой статьи, по памяти - было давно.....

Исходные данные:
Свежеустановленая FreeBSD 6.2, в офисе
rl0=11.11.11.11/30 - сетевая карта смотрящая к провайдеру (маска произвольная)
rl1=192.168.1.1/24 - сетевая смотрящая внутрь локальной сети за FreeBSD 6.2

Свежеустановленая FreeBSD 6.2, в филиале
rl0=22.22.22.22/30 - сетевая карта смотрящая к провайдеру (маска произвольная)
rl1=192.168.2.1/24 - сетевая смотрящая внутрь локальной сети за FreeBSD 6.2

(всё необходимое для работы потянется из репозитария)

1. Устанавливаем и конфигурируем OpenVPN на сервере и клиенте


Бывает что у некоторых не тянется автоматом openssl - проверьте есть ли у вас
#pkg_info | grep openssl
#если нету - доставляем
#cd /usr/ports/security/openssl && make && make install && make clean


наиболее простой и "правильный" метод  - ставим из портов
#cd /usr/ports/security/openvpn
#make 
#make install && make clean

Всё необходимое поставлено,

2.Переходим к конфигурированию СЕРВЕРА.


Необходимо создать сертефикаты и ключи.Заходим в /usr/local/share/doc/openvpn/easy-rsa/ и изменяем файл vars.Лично я оставил все параметры дефолтовыми, кроме директории куда складывать сгенерированное "добро" - изменил в этом файле строку export KEY_DIR=$D/keys на export KEY_DIR=$D/keys/server, соответственно создав такую же дирректорию /usr/local/share/doc openvpn/easy-rsa/keys/server. Собственно создаём "ДОБРО" - сертификаты и ключи
# cd /usr/local/share/doc/openvpn/easy-rsa/
# (в этом файлике изменяете путь к ключам)
#ee ./vars
# меняем строку KEY_DIR=$D/keys на KEY_DIR=$D/keys/server 

Внимание! Если у вас по умолчанию не баш, то перед следующими операциями нужно набрать в консоли "sh", советую для "100-%-ного" результата всё же наверняка сделайте это, даже если у вас шелл sh. Загружаем переменные в оболочку:

#sh
#. ./vars

Очищаем от старых сертификатов и ключей папку keys/server и создаем серийный и индексные файлы для новых ключей
#./clean-all

Создаём сертификат. При создании сертификата вводим необходимую инф-цию (настоятельно рекомендую делать как тут, а потом уже разбиратся что к чему - большинство проблемм(!) связанно именно с именами при конфигурировании на первом этапе)
Привожу листинг с консоли
#./build-ca (Создаем Certificate Authority для сервера)
Generating a 1024 bit RSA private key
....................++++++
...++++++
writing new private key to 'ca.key'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
#Страна
Country Name (2 letter code) [UA]:UA
#Провинция
State or Province Name (full name) [Kiev]:Kiev
#Город
Locality Name (eg, city) [Kiev]:Kiev
#Название компании(!)
Organization Name (eg, company) [x]:server
#Отделение компании
Organizational Unit Name (eg, section) []:server
#ВОТ ТУТ ВНИМАТЕЛЬНО - ЭТО ИМЯ МАШИНЫ ДЛЯ КОТОРОЙ
# ГЕНЕРИРУЕМ СЕРТИФИКАТ (имя не в полном смысле
# -имя как идентификатор)
Common Name (eg, your name or your server's hostname) []:server
#Почт адрес 
Email Address [root@localhost]: 

Не факт что у всех, но встречал подобное: при попытке создать сертификат - была ругня на отсутствующие файлы index.txt и serial. В /usr/local/share/doc/openvpn/easy-rsa/keys/server - создаём файлы (пустой и с "нулевым" содержимым соответственно)

#echo "">/usr/local/share/doc/openvpn/easy-rsa/keys/server/index.txt
#echo "00">/usr/local/share/doc/openvpn/easy-rsa/keys/server/serial

Создаем сертификат X.509 для сервера. Всё аналогично заполняем(точно так же) + cтроки в котрых указываем пароль и имя организации (!)
#./build-key-server server
# Страна
Country Name (2 letter code) [UA]:UA
# Провинция
State or Province Name (full name) [Kiev]:Kiev
# Город
Locality Name (eg, city) [Kiev]:Kiev
# Название компании(!)
Organization Name (eg, company) [x]:server
# Отделение компании
Organizational Unit Name (eg, section) []:server
# ВОТ ТУТ ВНИМАТЕЛЬНО - ЭТО ИМЯ МАШИНЫ
Common Name (eg, your name or your server's hostname) []:server 
# Почт адрес 
Email Address [root@localhost]:
Please enter the following 'extra' attributes
to be sent with your certificate request
# пароль
A challenge password []:123456789
# название организации
# (как и в создании корневого сертификата)
An optional company name []:server

в конце соглашаемся и подписываем сертификат, отвечая "yes" :-)
Создаём ключ для клиента
#./build-key client
Generating a 1024 bit RSA private key
.........++++++
.......++++++
writing new private key to 'client.key'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [UA]:UA
State or Province Name (full name) [Kiev]:Kiev
Locality Name (eg, city) [Kiev]:Kiev
Organization Name (eg, company) [server]:server
Organizational Unit Name (eg, section) []:server
Common Name (eg, your name or your server's hostname) []:client
Email Address [root@localhost]:

Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:123456789
An optional company name []:client

Будьте внимательны при заполнени данных сертификатов, поле Common Name обязательно к заполнению, причем для сервера оно должно быть одно, а для клиента другое. Например в поле Common Name при генерации сертификата X.509 для сервера можно написать server, а для клиента соотвественно client

Создаем ключ Диффи Хельман(о нем можно почитать здесь: http://www.rsasecurity.com/rsalabs/node.asp?id=2248)
# ./build-dh

Теперь выходим из sh написав команду "exit". И в конце создаем ключ для tls-аутификации
# openvpn --genkey --secret keys/server/ta.key

После всех этих манипуляций в папке keys/server получается много файлов:

  • ca.crt - Главный CA сертификат, этот файл нужен и клиенту и серверу
  • dh1024.pem - ключ Диффи Хельман, этот файл нужен только серверу
  • server.crt - Сертификат сервера, нужен только серверу
  • server.key - Ключ сервера, нужен только серверу (СЕКРЕТНЫЙ файл)
  • client.crt - Сертификат клиента, нужен только клиенту
  • client.key - Ключ клиента, нужен только клиенту (СЕКРЕТНЫЙ файл)
  • ta.key - TLS-ключ, нужен и клиенту и серверу

    Следовально серверу достаются файлы ca.crt, dh1024.pem, server.crt, server.key, ta.key, а клиенту ca.crt, dh1024.pem,client.crt, client.key, ta.key
    Самое сложное позади smile.gif

    3.Настраиваем сервер и клиент



    Создаём 3 директории на сервере и 2 на клиенте
    /usr/local/etc/openvpn
    /usr/local/etc/openvpn/keys
    /usr/local/etc/openvpn/ccd  - это только для сервера

    Так же для удобства скопируем все ключи в /usr/local/etc/openvpn/keys (ca.crt, dh1024.pem, server.crt, server.key, ta.key) на сервере,
    клиенту же достаются  ca.crt, dh1024.pem, client.crt, client.key, ta.key, которые кладём в ту же папку, но на клиенте!

    Создаем конфигурационный файл server.conf следующего содержимого:
    
    #порт на котором работает сервер
    port 2000
    # протокол - советую udp
    proto udp
    # - используемый тип устройства и номер 
    dev tun0
    #указываем файл CA
    ca /usr/local/etc/openvpn/keys/ca.crt
    #указываем файл с сертификатом сервера
    cert /usr/local/etc/openvpn/keys/server.crt
    #указываем файл с ключем сервера
    key /usr/local/etc/openvpn/keys/server.key
    #указываем файл Диффи Хельман
    dh /usr/local/etc/openvpn/keys/dh1024.pem
    #задаем IP-адрес сервера и маску подсети
    # (виртуальной сети) - можно произвольную, (я выбрал такую)
    server 10.10.200.0 255.255.255.0
    #задаем МАРШРУТ который передаём клиентту
    # и маску подсети для того чтобы он "видел"
    # сеть за опенвпн сервером (сеть 192.168.1.0/24)
    push "route 192.168.1.0 255.255.255.0"
    # указываем где хранятся файлы с
    # настройками IP-адресов клиентов
    client-config-dir ccd
    # добавляем маршрут сервер-клиент
    route 10.10.200.0 255.255.255.252
    # этой строкой описываем маршруты к сетям к которым ходить
    # через тунель!!!!!(в данном случае к сети в филиале)
    route 192.168.2.0 255.255.255.0
    # включаем TLS аутификацию
    tls-server
    # указываем tls-ключ, и указываем 0 для сервера, а 1 для клиента
    tls-auth keys/ta.key 0
    # таймаут до реконекта
    tls-timeout 120 
    auth MD5 #
    # включаем шифрацию пакетов
    cipher BF-CBC
    keepalive 10 120
    # сжатие трафика
    comp-lzo
    # максимум клиентов
    max-clients 100
    user nobody 
    group nobody
    # Не перечитывать ключи после получения
    # SIGUSR1 или ping-restart
    persist-key
    # Не закрывать и переоткрывать TUN\TAP
    # устройство, после получения
    # SIGUSR1 или ping-restart
    persist-tun
    # логгирование (не забудьте создать эту дирректорию /var/log/openvpn/)
    status /var/log/openvpn/openvpn-status.log
    log /var/log/openvpn/openvpn.log
    # Уровень информации для отладки
    verb 3
    

    В дирректории /usr/local/etc/openvpn/ccd  на сервере создаем файл client (имя файла - имя которому выдан сертификат) следующего содержания
    ifconfig-push 10.10.200.2 10.10.200.1"
    iroute 192.168.2.0  255.255.255.0
    

    Тут мы выдали клиенту с сертификатом client.crt вирт. айпи 10.200.200.2, шлюз 10.200.200.1 и задали маршрут через тунель к сети за клиентом
    Сервер готов
    для автостарта при загрузке Openvpn-сервера -внесём в /etc/rc.conf
    openvpn_enable="YES" # YES or NO
    openvpn_if="tun" # driver(s) to load, set to "tun", "tap" or "tun tap"
    openvpn_configfile="/usr/local/etc/openvpn/server.conf" # --config file
    openvpn_dir="/usr/local/etc/openvpn" # --cd directory 
    

    4.Настраиваем клиента
    Создадим конфигурационный файл client.conf в папке /usr/local/etc/openvpn/. И скопируем в /usr/local/etc/openvpn/keys/ все необходимые ключи для работы (ca.crt, dh1024.pem, client.crt, client.key, ta.key).
    Содержимое файла client.conf
    dev tun
    proto udp
    remote 11.11.11.11#(реальный айпи вашего сервера)
    port 2000 #(порт к которому устанавливать соединение
    client
    resolv-retry infinite
    ca keys/ca.crt
    cert keys/client.crt
    key keys/client.key
    tls-client
    tls-auth keys/ta.key 1
    auth MD5
    cipher BF-CBC
    ns-cert-type server
    comp-lzo
    persist-key
    persist-tun
    up /usr/local/etc/openvpn_up.sh
    #этой строкой указываем выполнять скрипт после запуска
    # - там будет добавление маршрута к сети за сервером
    #если его не  создать - то по маршрутом по умолчанию
    # станет вирт.айпи опенвн-сервера, в связи со строкой
    #в конфиге сервера push "route..."
    #proxy 192.168.2.33:3128
    #Добавьте эту строку если добрый провайдер фильтрует
    # прямое соединение, благо Openvpn умеет работать 
    #через прокси, где 192.168.2.33:3128 - адрес и порт прокси-сервера
    # логгирование (не забудьте создать эту дирректорию /var/log/openvpn/)
    status /var/log/openvpn/openvpn-status.log
    log /var/log/openvpn/openvpn.log
    verb 3
    

    Создаём файл up /usr/local/etc/openvpn_up.sh
    #!/bin/sh
    /sbin/route add -net 192.168.1.0 10.10.200.1
    

    Тут мы задаём маршрут к сети за опенвпн-сервером

    для автостарта при загрузке Openvpn-клиента -внесём в /etc/rc.conf
    openvpn_enable="YES" # YES or NO
    openvpn_if="tun" # driver(s) to load, set to "tun", "tap" or "tun tap"
    openvpn_configfile="/usr/local/etc/openvpn/client.conf" # --config file
    openvpn_dir="/usr/local/etc/openvpn" # --cd directory 
    

    всё должно работать

    5.Удаление недействительных сертификатов
    Такая задача может возникнуть, если например, один из филиалов работал через  VPN, а потом его не стало. Естественно, что ключи остались. Как обеспечить невозможность подключится с этим сертификатом:
    cd /usr/local/share/doc/easy-rsa/
    sh
    . ./vars
    ./revoke-full client1     
    

    # для каждого удаляемого клиента проделываем такую операцию


    eсли будет выдавать ошибку error on line 282 of config file '....openvpn/easy-rsa/openssl.cnf', то комментируем следующие строки в openssl.cnf:
    #[ pkcs11_section ]
    #engine_id = pkcs11
    #dynamic_path = /usr/lib/engines/engine_pkcs11.so
    #MODULE_PATH = $ENV::PKCS11_MODULE_PATH
    #PIN = $ENV::PKCS11_PIN
    #init = 0
    

    и опять выполняем пункт 1.
    Если всё хорошо, то должна появится такая строка
    "Revoking Certificate ... Data Base Updated"
    

    Копируем только что создавшийся crl.pem на место того, который уже есть (путь к нему нужно смотреть в файле server.conf, параметр crl-verify) Если такого параметра нет - то добавляем его и указываем местоположение нового файла
    crl-verify /usr/local/etc/openvpn/crl.pem
    

    После этого ОБЯЗЯТЕЛЬНО ВЫСТАВЛЯЕМ ПРАВА ДЛЯ ФАЙЛА crl.pem 644, иначе работать не будет. openvpn не сможет прочесть этот файл (у меня openvpn работает от юзера nobody).
    Делаем рестарт демона:
    /usr/local/etc/rc.d/openvpn restart
    

    Теперь не смогут подключится те, кого мы удалили из базы.



    Ссылка на обсуждение: http://forum.lissyara.su/viewtopic.php?t=11125.

    размещено: 2008-06-07,
    последнее обновление: 2011-06-10,
    автор: UA

    оценить статью:

    Damir_MaDaGa, 2008-06-07 в 14:35:45

    Автору статьи респект и уважуха! И не только и даже не столько за отличные статьи, сколько за виртульную ICQ-ную помощь при настройки связки описанной в данной статье!
    P.S. Еще раз огромное спасибо!

    pshenya, 2008-06-09 в 0:02:28

    +1 за статейку . Чет под 7.0 были траблы в клиент-серверной конфе. может кто тестил под 7 .

    mak_v_, 2008-06-09 в 1:20:05

    Отлично работает в семёрке - у самого несколько клиентов на ней (правда сервер на 6.3)

    pshenya, 2008-06-10 в 11:19:11

    # echo "">/usr/local/share/doc/openvpn/easy-rsa/keys/server/index.txt
    # echo "00">/usr/local/share/doc/openvpn/easy-rsa/keys/server/serial
    # ./build-key-server server
    Generating a 1024 bit RSA private key
    ..........................................++++++
    .....++++++
    writing new private key to 'server.key'
    -----
    You are about to be asked to enter information that will be incorporated
    into your certificate request.
    What you are about to enter is what is called a Distinguished Name or a DN.
    There are quite a few fields but you can leave some blank
    For some fields there will be a default value,
    If you enter '.', the field will be left blank.
    -----
    Country Name (2 letter code) [KG]:UA
    State or Province Name (full name) [NA]:Kiev
    Locality Name (eg, city) [BISHKEK]:Kiev
    Organization Name (eg, company) [OpenVPN-TEST]:server
    Organizational Unit Name (eg, section) []:server
    Common Name (eg, your name or your server's hostname) []:gg
    Email Address [me@myhost.mydomain]:gg@gg.com

    Please enter the following 'extra' attributes
    to be sent with your certificate request
    A challenge password []:1234567890
    An optional company name []:server
    Using configuration from /usr/local/share/doc/openvpn/easy-rsa/openssl.cnf
    wrong number of fields on line 1 (looking for field 6, got 1, '' left)
    #
    может прав не хватает...

    pshenya, 2008-06-10 в 11:28:52

    разобрался .. спасибо

    mak_v_, 2008-06-10 в 11:33:51

    Using configuration from /usr/local/share/doc/openvpn/easy-rsa/openssl.cnf
    wrong number of fields on line 1 (looking for field 6, got 1, '' left)

    в сторону опенссл смотрите - сертификат не генерится - опенссл.конф

    mak_v_, 2008-06-10 в 11:39:48

    РЕШЕНИЕ ПРОБЛЕММ - ВПРЕДЬ - В ФОРУМ, тут только коментарии

    pshenya, 2008-06-10 в 13:58:17

    push route 192.168.1.0 255.255.255.0
    вродь нада
    push "route 192.168.1.0 255.255.255.0"

    lisergey, 2008-08-12 в 20:29:24

    сделал все по статье.
    опечатка в скрипте openvpn_up.sh - вместо
    /sbin/route add -net 192.168.1.0 10.200.200.1
    должно быть
    /sbin/route add -net 192.168.1.0 10.10.200.1

    после этого исправления клиент увидел сетку за сервером.

    mak_v_, 2008-08-13 в 10:28:58

    Ачипатка исправлена, спс

    jafff, 2008-08-27 в 1:54:40

    не понимаю вот этого ->
    Создадим конфигурационный файл client.conf в папке /usr/local/etc/openvpn/. И скопируем в /usr/local/etc/openvpn/keys/ все необходимые ключи для работы (ca.crt, dh1024.pem, client.crt, client.key, ta.key).
    Содержимое файла openvpn.ovpn

    что есть файл openvpn.ovpn?
    без вот этого (/usr/local/etc/openvpn/keys/) ключи не видет
    и даже если конфиг это всеже client.conf то почемуто в логах
    VERIFY ERROR: depth=1, error=certificate is not yet valid
    TLS_ERROR: BIO read tls_read_plaintext error: error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed
    TLS Error: TLS object -> incoming plaintext read error
    TLS Error: TLS handshake failed
    ......

    mak_v_, 2008-08-27 в 9:58:42

    jafff,- описочка.....там был относительный путь - его подправил, а то что вы вставляете (или хотели вставить) полный путь к ключам и сертификатам -то можно и так.
    Описочка исправлениа(подправил пути)

    mak_v_, 2008-08-27 в 10:03:10

    P.S. jafff - кстати в конфиге сервера целенаправленно писал полные пути, можно было бы и сообразить

    jafff, 2008-08-28 в 11:22:42

    фсё настроил фсё соеденилось тоько вот сетки друг друга не видят :( пингуется только внутренний интерфейс сервера (10.0.0.7) а все что в сети 10.0.0.0/24 невидно. Куда копать то?

    mak_v_, 2008-08-28 в 13:17:14

    Смотрите где вы маршруты не задали

    jafff, 2008-08-28 в 17:46:12

    ifconfig-push 10.10.200.2 10.10.200.1"
    iroute 192.168.2.0

    тут нет ошибки?

    Mak_v_, 2008-08-28 в 18:17:57

    внимательнее....видимо у вас еть

    BI_J, 2008-09-19 в 0:07:01

    Доброго времени суток уважаемый Mak_v_
    Можете мне подсказать что не так ?

    У клиента в логах openvpn.log ругань:
    #########################
    event_wait : Interrupted system call (code=4)
    TCP/UDP: Closing socket
    SIGTERM[hard,] received, process exiting
    OpenVPN 2.0.6 i386-portbld-freebsd4.8 [SSL] [LZO] built on Sep 17 2008
    Control Channel Authentication: using '/usr/local/etc/openvpn/keys/ta.key' as a OpenVPN static key file
    Outgoing Control Channel Authentication: Using 128 bit message hash 'MD5' for HMAC authentication
    Incoming Control Channel Authentication: Using 128 bit message hash 'MD5' for HMAC authentication
    LZO compression initialized
    Control Channel MTU parms [ L:1538 D:162 EF:62 EB:0 ET:0 EL:0 ]
    Data Channel MTU parms [ L:1538 D:1450 EF:38 EB:135 ET:0 EL:0 AF:3/1 ]
    Local Options hash (VER=V4): '03fa487d'
    Expected Remote Options hash (VER=V4): '1056bce3'
    UDPv4 link local (bound): [undef]:2000
    UDPv4 link remote: xxx.xxx.xxx.xxx:2000
    TLS Error: TLS key negotiation failed to occur within 60 seconds (check your network connectivity)
    TLS Error: TLS handshake failed
    TCP/UDP: Closing socket
    SIGUSR1[soft,tls-error] received, process restarting

    Restart pause, 2 second(s)
    Re-using SSL/TLS context
    LZO compression initialized
    Control Channel MTU parms [ L:1538 D:162 EF:62 EB:0 ET:0 EL:0 ]
    Data Channel MTU parms [ L:1538 D:1450 EF:38 EB:135 ET:0 EL:0 AF:3/1 ]
    Local Options hash (VER=V4): '03fa487d'
    Expected Remote Options hash (VER=V4): '1056bce3'
    UDPv4 link local (bound): [undef]:2000
    UDPv4 link remote: xxx.xxx.xxx.xxx:2000
    ##############################

    А в логах сервера вот такая ругань:
    xx.xx.xx.xx:2000 TLS Error: TLS key negotiation failed to occur within 60 seconds (check your network connectivity)
    TLS Error: TLS handshake failed
    xx.xx.xx.xx:2000 SIGUSR1[soft,tls-error] received, client-instance restarting
    MULTI: multi_create_instance called
    Re-using SSL/TLS context
    LZO compression initialized
    Control Channel MTU parms [ L:1538 D:162 EF:62 EB:0 ET:0 EL:0 ]
    xx.xx.xx.xx:2000 Data Channel MTU parms [ L:1538 D:1450 EF:38 EB:135 ET:0 EL:0 AF:3/1 ]
    xx.xx.xx.xx:2000 Local Options hash (VER=V4): '1056bce3'
    xx.xx.xx.xx:2000 Expected Remote Options hash (VER=V4): '03fa487d'
    xx.xx.xx.xx:2000 TLS: Initial packet from 62.80.178.22:2000, sid=ede7e96a 84c81a85
    xx.xx.xx.xx:2000 write UDPv4: Permission denied (code=13)
    xx.xx.xx.xx:2000 write UDPv4: Permission denied (code=13)
    #######################

    ifconfig сервера:

    tun1: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1500
           inet 10.10.200.1 --> 10.10.200.2 netmask 0xffffffff
           Opened by PID 19690

    #######################

    Сертификаты готовились на сервере, ось FreeBSD6.2 и OpenVPN 2.0.6
    Клиент живет на FreeBSD4.8 и OpenVPN 2.0.6

    Подскажите что не так.
    Спасибо!




    mak_v_, 2008-09-19 в 2:26:42

    Ну что ты будешь делать.......
    С ПРОБЛЕМАМИ - В ФОРУМ
    Тут коментарии
    Отвечаю последний раз...
    Вероятные причины - старт сервера не из под рута, фаерволг...

    BI_J, 2008-09-19 в 2:45:24

    Прошу прощения, 1000 раз не прав.

    savely, 2008-09-24 в 0:18:45

    Open VPN - конечно круто, а чем метод описанный в хэндбуке не устроил (VPN через IPsec - через gif-туннели) ?

    mak_v_, 2008-09-24 в 16:15:16

    тем что если провайдер может не дать "Белого айпи", тем что надо Живой порт для гре (провайдер если фильтрует), возможность работы через прокси..гибкость настройки для сервера и клиента
    (если у меня 50 филиалов маршрутизация решается красивейшими способами как на стороне клиента так и на стороне сервера, в зависимости от задач)

    Айпесег такое может?

    а чем вас не устроил Vtun? или mpd? или himanchi или pppd?

    Так что делайте так, чтобы потом не было "мучительно больно".....
    а на вопрос ваш я ответил - основной выбор был из-зи провайдеров за "натом" + гибкость в отличие от mpd....

    StaNislav, 2008-10-16 в 14:14:50

    В 7м бсд проблемы.. поставил 6.3 все поднялось без проблем

    uri, 2008-10-17 в 12:13:10

    Мой совет вместо
    echo "">/usr/local/share/doc/openvpn/easy-rsa/keys/server/index.txt
    делать
    cat /dev/null > /usr/local/share/doc/openvpn/easy-rsa/keys/server/index.txt

    Иногда очень помогает сэкономить время.

    imrior, 2008-11-06 в 12:24:49

    Создадим конфигурационный файл client.conf в папке /usr/local/etc/openvpn/. И скопируем в /usr/local/etc/openvpn/keys/ все необходимые ключи для работы (ca.crt, dh1024.pem, client.crt, client.key, ta.key).
    Содержимое файла openvpn.ovpn<---тут случаем не client.conf должно быть?

    mak_v_, 2008-11-06 в 12:48:31

    2 imrior, согласен, поправил

    InventoR, 2008-11-24 в 14:12:56

    вот так не работает. Permision Denied
    #./clean-all
    а вот так, порядок:
    #. ./clean-all

    kir, 2008-11-25 в 7:34:01

    Все замечательно работает, Огромное спасибо за статью, ообенно за Easy-RSA, только вот как отозвать выданые ключи?

    MetiS, 2008-12-02 в 19:43:24

    У кого-нить получилось подключить NFS шары из одной сети в другую? В первой сети NFS работает на ура у ВСЕХ пользователей. Во второй, которая подключена через OpenVPN, не удается зацепиться за NFS-сервер из первой сети.
    Есть соображения?

    mak_v_, 2008-12-02 в 23:02:10

    kir, - revoke-full <name>
    MetiS, - фаервол?

    MetiS, 2008-12-03 в 2:36:21

    mak_v, - По тунелю, вроде, проходят все пакеты.

    MetiS, 2008-12-04 в 2:58:27

    Спасибо автору за статью.
    От client-config-dir ccd отказался.
    Можно также использовать:
    ifconfig-pool 10.10.200.10 10.21.200.254
    ifconfig-pool-persist /usr/local/etc/openvpn/ips.all
    ifconfig 10.10.200.1 255.255.255.0
    push "route 10.10.200.0 255.255.255.0 10.10.200.1"
    route 192.168.2.0 255.255.255.0 10.10.200.10
    PS: 10.21.200.10 - gate клиента. В файлик ips.all записываются IP подключенных клиентов.

    MetiS, 2009-01-07 в 14:16:35

    Sorry - очепятка. Вместо 10.21.X.X - 10.10.X.X

    El De Rone, 2009-02-13 в 23:58:06

    # dh1024.pem - ключ Диффи Хельман, этот файл нужен только серверу
    [...]

    Следовально серверу достаются файлы ca.crt, dh1024.pem, server.crt, server.key, ta.key, а клиенту ca.crt, dh1024.pem,client.crt, client.key, ta.key

    зачем этот файл передавать клиенту?

    Marz, 2009-05-02 в 13:10:13

    Очень интересная статья, очень понравилось, зачитался и думаю сам как то попробовать, научиться.
    Только вот скажите пожалуйта, как я понял тут на одном серваке белый IP, а на другом нет. Так?
    Ответьте плз :)

    hiper, 2009-06-04 в 17:26:24

    Поставил на FreeBSD 7.0 все отлично стало и работает. Автору спасибо.

    cm452, 2010-03-30 в 10:28:58

    под AltLinux мне пришлось в server.conf заменить tls-auth keys/ta.key 0 на tls-auth /etc/openvpn/keys/ta.key 0. Иначе ключик не находит

    bubnov-pi, 2010-06-11 в 14:16:55

    Важное уточнение - при генерации ключей у клиента и у сервера поле "Organization Name (eg, company) [server]:" должно быть заполнено одинаково, иначе клиентский ключ не сгенерируется.
    Ещё мелкое уточнение - перед запуском, скриптам надо присвоить флаг "запускаемый" (например, 0700), иначе будет сбоить местами.
    И совсем уж мелкое уточнение - по состоянию на сегодня (openvpn 2.1.1_1), в каталоге easy-rsa создаются подкаталоги 1.0 и 2.0 - по версии openssl - надо использовать скрипты для установленной версии.


    Оставьте свой комментарий:
    Ваше имя:   *
    e-mail:  
    жирный
    наклонный
    подчёркнутый
    ссылка
    цвет
    Нынешний год:   *
     


  • Хостинг HOST-FOOD

    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&quota

    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. Разделение пользователей на группы
    2010-03-02, BlackCat
    Шлюз: Часть 4

    Настройка дополнительных сервисов: синхронизация времени (OpenNTPD), клиент DynDNS.org.
    2010-03-01, BlackCat
    Шлюз: Часть 3

    Настройка DHCP и DNS серверов для работы внутри частной сети, c поддержкой внутренних (частных зон) DNS, а так же интеграция DHCP и DNS сервисов.
    2010-03-01, BlackCat
    Шлюз: Часть 2

    Конфигурация МСЭ pf для проброса портов с изменением порта назначения и без, а так же поддержки активного режима FTP и ограничения максимального размера сегмента
    2010-03-01, BlackCat
    Шлюз: Часть 1

    Быстрая настройка шлюза/маршрутизатора с установлением PPPoE-соединения, поддержкой NAT и DNS-forwarding.
    2010-02-23, Morty
    darkstat

    Простая считалка траффика, со встроенным веб-сервером. Очень маленькая, может делать отчеты трафика по хостам, портам, протоколам, а также строить графики
    2010-01-23, gonzo111
    squid+sams+sqstat

    Пилим squid и sams - примеры конфигов с объяснениями. Установка SqStat.
    подписка

        вверх      
    Статистика сайта
    Сейчас на сайте находится: 10 чел.
    За последние 30 мин было: 49 человек
    За сегодня было
    3999 показов,
    598 уникальных IP
     

      Этот информационный блок появился по той простой причине, что многие считают нормальным, брать чужую информацию не уведомляя автора (что не так страшно), и не оставляя линк на оригинал и автора — что более существенно. Я не против распространения информации — только за. Только условие простое — извольте подписывать автора, и оставлять линк на оригинальную страницу в виде прямой, активной, нескриптовой, незакрытой от индексирования, и не запрещенной для следования роботов ссылки.
      Если соизволите поставить автора в известность — то вообще почёт вам и уважение.

    © lissyara 2006-10-24 08:47 MSK

    Время генерации страницы 0.0483 секунд
    Из них PHP: 40%; SQL: 60%; Число SQL-запросов: 77 шт.
    Исходный размер: 166429; Сжатая: 30951