itms_docs:study:it:ovpn

Это старая версия документа!


Установка

  • Скачиваем дистрибутив https://openvpn.net/ - раздел Community - Downloads
  • На ПК должен быть установлен Total Commander и NotePad++ для более удобной работы
  • Устанавливаем дистрибутив, ставим галки EasyRSA и TAP по необходимости
  • Проверяем наличие в переменной PATH пути C:\Program Files\OpenVPN\bin если нет добавляем

Генерация ключей и сертификатов

Если ключи и сертификаты были сгенерированы ранее и нужно добавитьили отозвать клиентский сертификат, то

  1. стадию генерации общих ключей и сертификатов пропускаем
  2. удаляем все из каталога C:\Program Files\OpenVPN\easy-rsa\keys
  3. копируем файлы для генерации из DropBox\ITMS\OPENVPN__client_Config\Папка клиента\files_for_gen в C:\Program Files\OpenVPN\easy-rsa\keys
  4. действуем по инструкции в части генерации или отзыва сертификатов для клиента

Описание для первоначальной генерации ключей и сертификатов.

  • Открываем консоль от имени Администратора и переходим в каталог C:\Program Files\OpenVPN\easy-rsa
  • Генерируем общие ключи и сертификаты:
    • Открываем консоль от имени Администратора
    • Переходим в каталог C:\Program Files\OpenVPN\easy-rsa
    • Подготавливаем среду запуска
      • Запускаем init-config.bat
    • Создаем пустые файлы индекса и серий
      • Запускаем vars
      • Запускаем clean-all
    • Генерируем корневой сертификат и ключ ca.crt и ca.key
      • Запускаем vars
      • Запускаем build-ca
  • Генерируем ключи и сертификаты для сервера
    • Генерируем ключ Диффи Хелмана
      • Запускаем vars
      • Запускаем build-dh
    • Генерируем сертификат и ключ
      • Запускаем vars
      • Запускаем build-key-server <имя сервера>
    • Генерируем транспортный ключ tls
      • Переходим в каталог cd C:\Program Files\OpenVPN\bin
      • Запускаем openvpn –genkey –secret ta.key
      • Копируем файл ta.key из C:\Program Files\OpenVPN\bin в C:\Program Files\OpenVPN\easy-rsa
  • Генерируем ключи и сертификаты для клиента
    • Генерируем сертификат и ключ
      • Запускаем vars
      • Запускаем build-key <имя клиента>

Отзыв и сертификатов

  • Открываем консоль от имени Администратора и переходим в каталог C:\Program Files\OpenVPN\easy-rsa
    • Запускаем vars
    • Запускаем revoke-full <имя клиента>
    • Проверить последнюю строку вывода, чтобы убедится в том что сертификат отозван (verify last line of output confirms revokation)
    • Скопировать файл crl.pem в каталог файлов сервера
    • Убедиться в том, что конфиг сервера содержит незакомментированную строку «crl-verify» с указанием пути к файлу crl.pem
    • Для скорейшего применения настроек перезапустить службу сервера OpenVPN

Описание общих файлов, файлов клиента и файлов сервера

Файлы для сервера
Сервер Клиент Секретно да/нет Пояснение
ca.crt да да нет
dh{n}.pem да нет нет
server.crt да нет нет
server.key да нет да
ta.key да да нет
Файлы для клиента
Сервер Клиент Секретно да/нет Пояснение
ca.crt нет да нет <ca></ca>
client1.crt нет да нет <cert> </cert>
client1.key нет да да <key> </key>
ta.key нет да нет <tls-auth> </tls-auth>
Файлы для генерации новых ключей и сертификатов
Пояснение
ca.crt
ca.key
index.txt
index.txt.attr

Типовой конфиг для сервера



Типовой конфиг для клиента

# Specify that we are a client
client
# Use the same setting as you are using on the server.
dev tun
# Use the same setting as you are using on the server.
proto udp
# The hostname/IP and port of the server.
remote 8.8.8.8 6011
# Keep trying indefinitely to resolve the host name of the OpenVPN server.
resolv-retry infinite
# Most clients don't need to bind to # a specific local port number.
nobind
# Try to preserve some state across restarts.
persist-key
persist-tun
# SSL/TLS parms.
<ca></ca>
<cert></cert>
<key></key>
<tls-auth></tls-auth>
# Verify server certificate by checking that the certicate has the correct key usage set.
remote-cert-tls server
# Select a cryptographic cipher.
cipher AES-256-CBC
# Set log file verbosity.
verb 3
  • itms_docs/study/it/ovpn.1561878555.txt.gz
  • Последнее изменение: 2019/06/30 10:09
  • anton