Обсуждение статьи тематического каталога: OpenVPN на Ubuntu Server (openvpn tunnel ubuntu vpn)Ссылка на текст статьи: http://www.opennet.me/base/net/openvpn_office.txt.html
Соединение точка точка получилось, которое еще придется и руками править роутинг в случае изменения адресов (добавления новых сетей) на серверной стороне.
Вместо этого лучше было бы заиспользовать push со стороны сервера на клиента -- тогда достаточно было бы только изменить конфиг и перестартануть сервер.
Плюс в вашей схеме офисы не будут видеть друг друга.
В моей схеме офисы друг друга видели, иначе я эту статью не написал бы ;)
делал подобное, клиенты - win сервера с openvpn. а так всё в бою работает, сети связывает... бывает тока у винды слетают маршруты, repair интерфейса делать приходиться, пока не нашёл почему и как
Сделал сервер на линуксе, клиент винда (openvpn-gui)
Скажите, можно ли несколько сертификатов нагенерить, чтобы у каждого клиента свои были? Типа как пароли. И может ли сервер держать несколько соединений одновременно?
>Сделал сервер на линуксе, клиент винда (openvpn-gui)
>Скажите, можно ли несколько сертификатов нагенерить, чтобы у каждого клиента свои были?
>Типа как пароли. И может ли сервер держать несколько соединений одновременно?
>Ответ на все вопросы - Да.
Еще два попроса.
1. А можно вместо сертификатов использовать пароли?
2. А можно вместе с сертификатами использовать пароли?
1. точно да
2. не уверен, но кажется тоже да
2. корневой сертификат клиенту все равно будет нужен, но если на сервер указать авторизацию по паролям то клиент не обменивается ключами, а сразу просит ввести логин/пароль
Как без сертификатов?Тут сертификат подтверждает, что к серверу подключился тот у кого, есть права и клиент знает, что подключился настоящему серверу.
Я сомневаюсь, что можно без сертификатов.
Если просто использовать пароль у клиента, то как узнать, что это настоящий сервер?
В броузерах есть стандартные корневые сертефикаты.
Тут корневой серт делаешь руками сам.
>Как без сертификатов?Shared secret'ом наприимер можно.Тогда сертификаты не нужны но у метода есть ряд недостатков как то 1 клиент - 1 сервер.Хорошо для соединений точка-точка по быстрому, но не более того.
P.S. а на сайт openvpn'а зайти религия не позволяет?Там примеры есть.
У нас сертификат используется как раз для того чтобы проверить что сервер настоящий, а авторизация сама происходит через радиус по учетки из АД, как альтернатива pptpd получается, правда не совсем полноценная.
Я вместо как бы пароля использовал passphrase на ключ сертификата. Это, конечно, не пароль в прямом смысле слова, потому как проверяется исключительно локально, но по сути ограничивает доступ тем, кто passphrase не знает :)
>Я вместо как бы пароля использовал passphrase на ключ сертификата. Это, конечно,
>не пароль в прямом смысле слова, потому как проверяется исключительно локально,Он не проверяется локально, он позволяет локальному юзеру сертификат поюзать.Без знания passphrase сертификат бесполезен: как я понимаю passphrase шифрует приватный ключ и соответственно без знания passphrase сертификат не более чем куча мусора.Только смысла то в разных passphrase если как я понимаю юзеры аутентифицируются их сертификатами?Разве что на случай когда у юзера сертификат сперли?И то - при такой прыти хаксоры его вместе с паролем упрут если уж они знают что стырить надо :)
комментарии полезнее чем сама заметка.
тем более поржал над поднятием ФТП для передачи секретных ключей!!!
осильте man scp
>комментарии полезнее чем сама заметка.
>тем более поржал над поднятием ФТП для передачи секретных ключей!!!
>осильте man scp
>Ну мне статья помогла, я как раз второй день инет рыл в поисках нормального руководства степ бай степ, так сказать, раньше ничего на openvpn не делал. Везде что-то было не понятно, эта статья более мение ясность внесла, но опять же пользовался еще другими.
>Ну мне статья помогла, я как раз второй день инет рыл в
>поисках нормального руководства степ бай степ, так сказать"Степ бай степ, пока от монитора не ослеп."
Извините не удержался :)
>тем более поржал над поднятием ФТП для передачи секретных ключей!!!
>осильте man scp
>Все и сразу знать не возможно. Спасибо за идею ;)
Кстати, в чем разница демон на tcp порту или udp?
UDP будет быстрей.TCP 0.5mbit
UDP 2-4mbitЭто реальный пример впн
UDP содержет в себе IP пакет
UDP передаються не последовательно и без гарантии
TCP передаёт последовательно и с гарантией.
Если есть потери то будет сильно тормазить.
>Кстати, в чем разница демон на tcp порту или udp?Тем что TCP - это на крайний случай, когда UDP не пролезает, например бывает так что в некоторых конфигурациях файрвол или нат совсем мочат весь UDP траффик.Но если есть возможность использовать UDP - следует пользоваться именно им.Поскольку TCP своими повторами передач изрядно испортит жизнь протоколам пропихнутым в туннеле, которые на такую услугу не рассчитывают.Поэтому как правило данная услуга TCP оказывается медвежъей - в случае таймаута начинается штопор из потуг перепослать пакеты как TCP стэком так и теми протоколами которые внутри конекции жили, поскольку они обычно на надежность канала не рассчитывают(например TCP в впн не знает о том что он уже работает по надежному каналу).Ничего хорошего из такого штопора обычно не получается, обычно в итоге сильно просаживается скорость.Так что TCP - это на крайний случай, когда UDP не пролезает.
Подробно минусы TCP внутри TCP описаны здесь:
http://sites.inka.de/sites/bigred/devel/tcp-tcp.htmlTCP, как и было сказано выше - компромисс, когда например туннель надо пропустить через HTTP proxy, с разрешенным методом CONNECT.
Может быть, я чего-то не понимаю, или не до конца разобрался, но в использовании UDP я нашел несколько неприятных моментов:1) В UDP-режиме невозможно использовать опцию mode server. Если верить man openvpn именно эта опция дает "multi-client server capability", и по логике вещей, без нее ваш экземпляр openvpn будет работать только с одним клиентом.
2) Если на подключающейся машине в конфиге указана опция explicit-exit-notify, то при завершении работы openvpn на этой машине соответствующий экземпляр на сервере также завершает свою работу (!). С учетом сказанного в п. 1, это делает UDP непригодным для использования там, где к серверу подключаются пользователи.
2) В случае использования UDP считается, что в соединении участвуют не клиенты и серверы, а "peers". Поэтому каждый запущенный экземпляр openvpn открывает для прослушивания порт 1194/udp на каждой из участвующих в соединении машин, независимо от того, кто к кому подключается.
Для подключающейся машины это может быть нежелательно (или неприемлемо), особенно если на ней брандмауэр отключен (как, например, это имеет место в Ubuntu по умолчанию).Как избежать подобных неприятностей при использовании UDP, я что-то не нашел.
Поправьте/просветите, если ошибаюсь.
разнича в том что по udp не требуется подтверждение о доставке пакетов и вся логика лежит на проге, у меня например по tcp голос заикается, а по udp всё хорошо.не понял как в данном примере оффисы видят друг друга, у меня немного по другому
в серверном конфиге нужно прописать маршруты, тут это сделано
route 192.168.110.0 255.255.255.0на на стороне клиента или через папку ccd(параметры отсылаемые клиенту) на стороне сервера
нужно установить
iroute 192.168.110.0 255.255.255.0
Еще вопрос, на клиенте (Windows, Openvpn GUI)
Я использую такие настройки ключей:ca "c:\\key\\ca.crt"
cert "C:\\key\\client.crt"
key "C:\\key\\client.key"Т.е. клиентом используется три ключа для подключения, это нормально? Насколько это все безопасно. На сервере побольше ключей лежит, скажите, где можно теорию почитать, какой ключ какую роль выполняет.
Это нормально и безопасно, точнее безопасность зависит не от того сколько у тебя сертификатов, а как они сгенерированы.
Почитай
http://openvpn.org/index.php/documentation/miscellaneous/rsa...
по дефолту KEY_SIZE=1024
Этого хватит? Есть смысл 2048 ставить и более?
У меня так уже месяц работает, только вот начал думать о ФАЙЛ-Оваре.
Типа на сервера написать
Local IP1
Local IP2
REMOTE IP3
BRANCH
Local IP3
REMOTE IP1
REMOTE IP2
будет работать?
>Типа на сервера написатьМаркером на крышке корпуса?
>будет работать?Думаю на работе сервера это не как не скажется, хотя он (сервер) может и обидеться :D
Найденные описки:
< # cd /usr/share/doc/openvpn/examples/easy-rsa/2,0
> # cd /usr/share/doc/openvpn/examples/easy-rsa/2.0
># ./pkitool -initca
># ./pkitool -server server<# ./pkitool --initca
<# ./pkitool --server server
Сам описался :). Найденные описки:
< # cd /usr/share/doc/openvpn/examples/easy-rsa/2,0
> # cd /usr/share/doc/openvpn/examples/easy-rsa/2.0<# ./pkitool -initca
<# ./pkitool -server server
># ./pkitool --initca
># ./pkitool --server server