Создание VPN (Сервер - сертификаты)
В наличии есть 2 домашние сети. В 1-ой трафиком управляет IBM совместимый ПК под управлением windows 2k3 (172.16.100.0/28), во 2-ой роутер asus wl500w с linux на борту (172.16.102.0/28). Нужно создать виртуальную частную сеть между указанными сетями.
В этой статье будет написана настройка серверной части, т.е. windows 2k3.
Качаем и устанавливаем дистрибутив: openvpn.net/index.php/open-source/downloads.html. Следующим шагом будет создание сертификатов и ключей.
В командной строке выполнить
Затем выполняем в командной строке находясь в каталоге "путь к установленной OpenVPN"/OpenVPN/easy-rsa (инициализация PKI):
Последняя команда (build-ca) создает certificate authority (CA) сертификат и ключ при помощи интерактивной openssl команды
В командной строке выполнить находясь в каталоге "путь у устновленой OpenVPN"/OpenVPN/easy-rsa:
Создание сертификата клиента похоже на предыдущие шаги. В командной строке выполнить находясь в каталоге "путь у устновленой OpenVPN"/OpenVPN/easy-rsa:
При желании создать большее количество клиентов нужно учитывать что у каждого клиента должно быть свое Common Name, т.е. "client1", "client2", и "client3". Для каждого клиента всегда нужно использовать уникальное имя.
Вновь созданные ключи и сертификаты находятся в каталоге keys OpenVPN. Окончательный шаг - копирование всех файлов на требуемые машины, при этом ключи желательно передавать по защищенному каналу или на внешнем насителе исключив возможность их перехвата третьими лицами.
Список файлов получившихся при генерации на 1-го клиента:
В этой статье будет написана настройка серверной части, т.е. windows 2k3.
Качаем и устанавливаем дистрибутив: openvpn.net/index.php/open-source/downloads.html. Следующим шагом будет создание сертификатов и ключей.
Создание самоподписного доверенного сертификата (CA)
В командной строке выполнить
cd "путь к установленной OpenVPN"/OpenVPN/easy-rsaВыполнить командный файл init-config. Далее редактируем vars.bat устанавливая значения для KEY_COUNTRY, KEY_PROVINCE, KEY_CITY, KEY_ORG, и KEY_EMAIL. Эти параметры заполнять обязательно!
Затем выполняем в командной строке находясь в каталоге "путь к установленной OpenVPN"/OpenVPN/easy-rsa (инициализация PKI):
vars clean-all build-ca
Последняя команда (build-ca) создает certificate authority (CA) сертификат и ключ при помощи интерактивной openssl команды
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) [RU]: State or Province Name (full name) [MO]: Locality Name (eg, city) [Moskou]: Organization Name (eg, company) [SM8]: Organizational Unit Name (eg, section) []: Common Name (eg, your name or your server's hostname) []:magic-wand.ru Email Address [sm8-postbox@ya.ru]:В приведенном выше коде многие параметры стоят по умолчанию, заданы они в файле vars.bat.
Создание сертификата сервера
В командной строке выполнить находясь в каталоге "путь у устновленой OpenVPN"/OpenVPN/easy-rsa:
build-key-server serverКак и при создании (CA) сертификата, большинство параметров можно оставить по умолчанию. Когда запросит Common Name ввести "server". Два других вопроса требуют положительного ответа (Yes): "Sign the certificate? [y/n]" и "1 out of 1 certificate requests certified, commit? [y/n]".
Создание сертификата для клиента
Создание сертификата клиента похоже на предыдущие шаги. В командной строке выполнить находясь в каталоге "путь у устновленой OpenVPN"/OpenVPN/easy-rsa:
build-key client1Если вы хотите защитить паролем ключи клиента, используйте скрипт build-key-pass.
При желании создать большее количество клиентов нужно учитывать что у каждого клиента должно быть свое Common Name, т.е. "client1", "client2", и "client3". Для каждого клиента всегда нужно использовать уникальное имя.
Создание файла параметров Диффи-Хэлмана
В командной строке выполнить находясь в каталоге "путь у устновленой OpenVPN"/OpenVPN/easy-rsa:build-dhПри выполнении отобразится следующее в консоле:
Generating DH parameters, 1024 bit long safe prime, generator 2 This is going to take a long time .................+........................................... ...................+.............+.................+......... ......................................
Файлы ключей и сертификатов
Вновь созданные ключи и сертификаты находятся в каталоге keys OpenVPN. Окончательный шаг - копирование всех файлов на требуемые машины, при этом ключи желательно передавать по защищенному каналу или на внешнем насителе исключив возможность их перехвата третьими лицами.
Список файлов получившихся при генерации на 1-го клиента:
- ca.crt (Root CA certificate), должен хранится на сервере и на всех клиантах
- ca.key (Root CA key), должен находится на подписывающей машине в данном случае на сервере
- dh{n}.pem (Diffie Hellman), должен хранится на сервере
- server.crt (сертификат), должен хранится на сервере
- server.key (ключ), должен хранится на сервере
- client1.crt (сертификат), должен хранится на client1
- client1.key (ключ), должен хранится на client1
Прочли: 10037 | Изменено: 11 ноября 2012 | Добавлено: 29 марта 2011 | На главную