Андрей Смирнов
Время чтения: ~17 мин.
Просмотров: 3

Как настроить openvpn на windows 10

Настройка сервера и клиента

Сервер

Большинство устанавливаемых программ в ОС Linux имеют так называемые sample-файлы. Эти файлы содержат примеры настройки и объяснения их. OpenVPN не стал исключением. Распакуем серверный конфигурационный файл в директорию /etc/openvpn:

С полученным файлом сервер уже готов к работе. Он сконфигурирован с возможностью туннелирования, однако не имеет возможности к проксированию, т.е. отправки клиентского трафика от своего имени. Исправим это.

Для начала, проверяем какие файлы оказались в директории /etc/openvpn:

Открываем файл конфигурации:

И проверяем соответствие файлов прописанных в конфигурации с файлами находящимися в каталоге. Интересны строки после “SSL/TLS root certificate (ca), certificate (cert), and private key (key).”

Если имена отличаются от существующих, следует внести необходимые исправления. Выходим из редактора сочетанием клавиш Ctrl + X.

Запускаем сервер:

Проверим результат запуска:

Настройки клиента.

Предполагается, что на стороне клиента уже установлен пакет OpenVPN.

1. Копируем файл клиентских настроек в домашний каталог пользователя:

2. Копируем сгенерированные ключи — client1.key, client1.crt, ca.crt:

3. Редактируем файл конфигурации клиента:

4. Находим закомментированные строки “# The hostname/IP and port of the server”. Для параметра remote меняем my-server-1 на IP-адрес сервера или его доменное имя.

5. В том же файле, ниже, находим блок “#SSL/TLS parms.”. Редактируем имена ключей.

6. Выходим из редактирования сочетанием Ctrl + X. На вопрос о сохранении изменений отвечаем “Y”. Имя файла оставляем неизменным.

7. Переносим файлы client1.key, client1.crt, ca.crt и client.conf на компьютер клиента с которого будет происходить подключение к серверу OpenVPN.

Важно! Некоторые клиентские реализации OpenVPN работают только с файлами *.ovpn. В подобных случаях достаточно изменить расширение файл (переименовать) с client.conf на client.ovpn

8. Подключаемся к серверу командой:

Следует обратить внимание, что проксирование до сих пор не настроено. При этом, когда клиентская машина подключена к OpenVPN-серверу, доступ в Интернет прекращается

Связано это с тем, что созданный адаптер TUN, а в месте с ним и сам сервер, являются шлюзом по умолчанию.

Настройка маршрутизации.

1. На сервере редактируем файл server.conf:

2. В файле находим следующую строку и удаляем перед ней символ “;”, таким образом раскомментируем ее:

3. Сохраняем и закрываем редактор.

4. Редактируем файл /etc/sysctl:

5. В конец файла добавляем следующую строку:

Это разрешит системе пересылать трафик между интерфейсами, но изменения вступят в силу только после перезагрузки. Сохраняем файл и закрываем редактор.

6. Разрешаем форвардинг пакетов без перезагрузки сервера:

7. Настроим NAT в iptables. Поочередно вводим команды:

Также их можно просто вписать в файл /etc/rc.local до строки “exit 0” или выполнить настройку firewall как это указано в нашей статье.

Сервер уже готов к использованию. Однако, задача проксировать весь трафик, а следовательно необходимо настроить форвардинг DNS-запросов. Настроим.

1. Устанавливаем dnsmasq

Если установка выполняется в ОС Ubuntu:

Несмотря на то, что в большинстве современных версий ОС Ubuntu dnsmasq уже предустановлен, в старых версиях необходимо выполнить так:

Возможно запустится диалоговое окно мастера установки. В нем будет 2 вопроса. В первом случае, на вопрос “prepare /etc/resolv.conf for dynamic updates” отвечаем “Yes”, а на следующий — “Append original file to dynamic file?” отвечаем “No”.

Для ОС Debian 7:

2. Отредактируем файл настроек dnsmasq:

Добавим следующие параметры:

Сохраняем файл и закрываем редактор.

3. Редактируем файл сетевых настроек:

Требуется указать адрес DNS-серверов в соответствующих секциях настроек адаптера:

Возможно это действие уже произведено,. Повторно его выполнять не нужно.

4. Учитывая особенность запуска и последующей работы dnsmasq — возможность аварийного завершения до инициализации виртуального tun-адаптера, добавим следующую строчку в файл rc.local, перед “exit 0”:

5. Теперь разрешим клиентам OpenVPN-сервера использовать DNS. С помощью редактора nano раскомментируем строку:

Фиксируем изменения в файле.

6. Перезагружаем сервер:

Проверка работы

Выполняем повторное подключение к серверу. Пробуем открыть сайт для проверки IP-адреса. В результате должен быть IP-адрес сервера.

700
300

Описание команд и параметров

Каждый параметр (man openvpn) имеет свое значение и описание. Рассмотрим их более детально:

  • client – означает, что конфигурационным файлом описывается подключение клиента, то есть установлено соединение самой программой, при этом ожидание от сервера исключено;
  • dev (tap и tun) – используется для выбора виртуального сетевого драйвера. Значение tun указывает на сетевой уровень модели OSI, а tap требуется для эмуляции Ethernet устройства и работы на канальном уровне модели OSI;
  • dev-node – актуален для систем Виндовс, когда присутствует несколько сетевых интерфейсов. В параметре должно быть название сетевого подключения для OpenVPN;
  • proto (udp или tcp) – определение протокола, используемого для информационной передачи. Как правило, используется именно udp, поскольку он меньше загружает сеть;
  • remote (VPN-сервер и порт) – указывает на сервер для клиентского подключения, а также на порт, в рамках которого принимаются запросы для OpenVPN;
  • remote-random – необходимость подключения к удаленным серверам рандомно;
  • resolv-retry (секунды или infinite) – сервер имеет доменное имя, а сам параметр задается в секундах для повторного подключения. Infinite означает постоянную связь с сервером;
  • nobind – применение динамического порта для подключения;
  • user – выбор конкретного пользователя для клиентской работы;
  • group – выбор определенной группы для клиентской работы;
  • persist-key – исключает перечитывание ключей, если перезагружается сервис OpenVPN;
  • persist-tun – исключает перечитывание параметров туннеля при перезагрузке сервиса OpenVPN;
  • http-proxy – использование прокси для установки подключения;
  • http-proxy-retry – в случае разрыва связи переподключение к прокси;
  • http-proxy-timeout – временной интервал, через который начинается переподключение;
  • mute-replay-warnings – актуален при беспроводном соединении, поскольку отключается дублирование пакетных предупреждений;
  • ca – корневой сертификат, генерация происходит на сервере;
  • cert – открытый клиентский ключ, генерация происходит на сервере;
  • key – закрытый клиентский ключ, генерация происходит на сервере;
  • dh – ключ с алгоритмом Диффи-Хеллмана;
  • remote-cert-tls – защита от mitm атаки с учетом верификации сертификата сервера;
  • tls-client – определяет клиента TLS;
  • tls-auth (ta.key 1) – дополнительный уровень идентификации с помощью tls;
  • float – можно изменить IP удаленным хостом во время соединения, если оно не разрывается;
  • keepalive (секунды) – пинговка через определенное количество секунд и перезапуск подключения, если в течение какого-либо времени не принимаются ответные пакеты;
  • cipher – алгоритм шифрования;
  • comp-lzo – применение сжатия;
  • verb (0-9) – уровень детализации лога;
  • mute – сколько лог-сообщений отображается в каждой категории;
  • auth-user-pass – необходимость провести аутентификацию;
  • ipchange – выполнение команды при смене адреса IP;
  • connect-retry – через какое время переподключаться к серверу, если был разрыв соединения;
  • connect-retry-max – количество повторений соединения при его разрыве;
  • shaper – определение максимальной скорости передачи данных для исходящего потока;
  • tun-mtu – задает MTU;
  • status – путь к файлу статусного хранения;
  • log – путь к лог-файлу.

Абсолютно все команды OpenVPN с соответствующими параметрами по OpenVPN для ОС Windows и Linux вы можете получить, воспользовавшись опцией openvpn —help.

Как работает OpenVPN

OpenVPN использует библиотеку безопасности OpenSSL. Поэтому он использует в своих интересах «плюшки», которые находятся в этой библиотеке. Это включает в себя ряд  строгих стандартов шифрования . Фактически, самый высокий уровень шифрования, возможный с ним, в настоящее время является 256-битным. Это настолько убедительно, что нет реальной причины для взлома. Кроме того, OpenVPN использует UDP (протокол пользовательских дейтаграмм) или TCP (протокол управления передачей) для передачи данных — более предпочтительным является UDP.

Опен ВПН использует свой собственный рецепт безопасности, основанный на технологиях SSL и TLS. Это не имеет ничего общего с IPsec, L2TP или чем-то подобным. Кроме того, благодаря сторонним клиентам трудно представить себе какую-либо популярную платформу, у которой нет способа его использовать.

Мы говорим о:

  • Linux
  • QNX
  • Windows
  • macOS
  • iOS
  • Android
  • Windows Phone.

Добавьте к этому использование скриптов и плагинов для настройки, и опытные пользователи счастливы.

Он работает как VPN уровня 2 или 3. На уровне 2 передает сетевые данные низкого уровня. Кроме того, ему нужен только один порт для работы. Он использует тот же порт 443, что делает этот протокол невосприимчивым к блокировке VPN.

Еще одна замечательная особенность заключается в том, что обе конечные точки имеют динамические IP-адреса, что означает, что вы не платите за статический IP, чтобы настроить VPN-туннель.

Конфигурация сервера OpenVPN

После этого настраиваем конфигурацию сервера, для чего переходим в папку config и создаем файл server.ovpn, куда вставляем следующее:

port 1120
proto tcp
dev tun
dev-node OpenVPN
ca E:\\OpenVPN\\certs\\ca.crt
cert E:\\OpenVPN\\certs\\barnak-SRV.crt
key E:\\OpenVPN\\certs\\barnak-SRV.key # This file should be kept secret
dh E:\\OpenVPN\\certs\\dh1024.pem
server 10.10.20.0 255.255.255.0
push "route 10.10.20.0 255.255.255.0"
keepalive 10 120
cipher AES-128-CBC # AES
comp-lzo
max-clients 10
status openvpn-status.log
verb 4
mute 20
sndbuf 0
rcvbuf 0

Что здесь что:

port 1120, — номер порта, к которому будут подключаться клиенты;

proto tcp, — тип протокола (tcp или udp). TCP более медленный вариант, но если вы ходите через прокси-сервер, это единственный способ;

dev tun, — режим подключения (tun или tap, туннель или мост). В общем-то режим моста нужен для специфических приложений (типа тех, что используют IPX протокол, им нужно отправлять broadcast сообщения и тп.). Обычно хватает туннельного режима;

dev-node OpenVPN, — название вашего адаптера (используется только для режима подключения tap). Заходите в свойства сетевого адаптера и меняете название на то, которое вам больше нравится:

ca E:\\OpenVPN\\certs\\ca.crt, — путь до сертификата УЦ

Обратите внимание на наше воспитание. Пьянки, гулянки, диско и панки обратный слеш (\) здесь указывается дважды;

cert E:\\OpenVPN\\certs\\barnak-SRV.crt, — путь до сертификата сервера;

key E:\\OpenVPN\\certs\\barnak-SRV.key, — путь до закрытого ключа сервера;

dh E:\\OpenVPN\\certs\\dh1024.pem, — путь до ключевой последовательности Диффи-Хеллмана;

server 10.10.20.0 255.255.255.0, — виртуальная подсеть и маска вашего VPN соединения

Когда к серверу будут подключаться, то сетевой адрес вы получите именно из этого диапазона. При этом, первый адрес всегда использует сервер;

push «route 10.10.20.0 255.255.255.0, — здесь указывается наша виртуальная подсеть. Эта команда нужна, чтобы при установлении соединения ваши VPN клиенты могли подключаться не только непосредственно к вам, но и к другим VPN компьютерам в вашей сети. При этом, таким образом можно добавлять несколько маршрутов;

keepalive 10 120, — отвечает за проверку доступности партнера. Будет отсылать пинги каждые 10 секунд, если от партнера не получен ответ в течение 120 секунд;

cipher AES-128-CBC, — алгоритм шифрования. Оставляйте этот, он самый надежный из предлагаемых 🙂

comp-lzo, — сжимание данных через VPN соединение (для уменьшения трафика);

max-clients 10, — сколько клиентов к вам может единовременно подключиться;

status openvpn-status.log, — название журнала, в котором будет краткая информация о том, кто подключился и т.п.:

verb 4, — уровень детализации логов. Чем больше, тем выше детализация;

mute 20, — Не выводить в логе больше 20 одинаковых сообщений (чтобы не засорять его);

sndbuf 0, — буфер для отправленных пакетов. 0 означает, что OpenVPN будет использовать системные настройки, что обычно увеличивает вашу пропускную способность;

rcvbuf 0, — буфер для полученных пакетов. Аналогично предыдущему.

Для более детального файла конфигурации можем перейти в папку sample-config и там открыть файл конфигурации текстовым редактором. Там есть комментарии к каждой опции.

После того, как вы подготовили файл настроек, применяем их, дважды кликая на файл. Откроется окно OpenVPN и начнет запускаться сервер:

Если у вас просто пустой экран, то откройте файл журнала (\OpenVPN\log\;.log). В нем будет написано почему VPN не запускается.

Схема сети для второго примера VPN

У нас сеть домашний компьютер на Windows 10 x64, на нем развернута виртуалка на Debian 8, которая будет использоваться в качестве файлового хранилища, еще одна виртуалка, которая будет выступать VPN сервером, и рабочий ноутбук на Windows 10. Мы хотим с рабочего ноутбука подключиться к VPN серверу и иметь доступ ко всем локальным ресурсам домашней сети.

На маршрутизаторе мы имеем внешний адрес 87.215.46.32, внутренний адрес 192.168.1.1. на домашнем компе мы имеем внутренний адрес 192.168.1.2, а также 192.168.94.2 для подсети VMWare.

На виртуальном клиенте мы имеем адрес 192.168.94.110 и именно этот адрес нам понадобится для удаленного доступа к нему. На виртуальном VPN сервере мы имеем адрес 192.168.94.100. В качестве VPN подсети я выбрал всю ту же 10.10.20.0 с префиксом /24 (маска 255.255.255.0).

Собственно, теперь перейдем к настройке этого примера.

Конфигурация OpenVPN

OpenVPN может быть настроен как с помощью интерфейса UCI(характерного для OpenWrt), так и с помощью традиционных конфигурационных файлов OpenVPN (*.conf). OpenVPN будет автоматически подгружать все *.conf файлы из /etc/openvpn/.

Пользователи, знакомые с OpenVPN, вероятно, предпочитают использовать файлы конфигурации, и этот выбор, вероятно, будет более простым и удобным для тех кто планирует запускать несколько экземпляров OpenVPN.

Для простоты и последовательности, остальная часть этого руководства будет использовать интерфейс OpenWRT UCI для настройки OpenVPN, как описано ниже. Следует отметить, что раздел содержит инструкции для UCI интерфейса (Пользователям, использующим традиционные файлы конфигурации, придется подкорректировать эти команды под свою систему).

Традиционный (TUN) Сервер

echo > etcconfigopenvpn # очистите UCI конфигурацию для OpenVPN
uci set openvpn.myvpn=openvpn
uci set openvpn.myvpn.enabled=1
uci set openvpn.myvpn.verb=3
uci set openvpn.myvpn.port=1194
uci set openvpn.myvpn.proto=udp
uci set openvpn.myvpn.dev=tun
uci set openvpn.myvpn.server='10.8.0.0 255.255.255.0'
uci set openvpn.myvpn.keepalive='10 120'
uci set openvpn.myvpn.ca=etcopenvpnca.crt
uci set openvpn.myvpn.cert=etcopenvpnmy-server.crt
uci set openvpn.myvpn.key=etcopenvpnmy-server.key
uci set openvpn.myvpn.dh=etcopenvpndh2048.pem
uci commit openvpn

Сервер в режиме моста (TAP)

echo > etcconfigopenvpn # очистите UCI конфигурацию для OpenVPN
uci set openvpn.myvpn=openvpn
uci set openvpn.myvpn.enabled=1
uci set openvpn.myvpn.verb=3
uci set openvpn.myvpn.proto=udp
uci set openvpn.myvpn.port=1194
uci set openvpn.myvpn.dev=tap
uci set openvpn.myvpn.mode=server
uci set openvpn.myvpn.tls_server=1
uci add_list openvpn.myvpn.push='route-gateway dhcp'
uci set openvpn.myvpn.keepalive='10 120'
uci set openvpn.myvpn.ca=etcopenvpnca.crt
uci set openvpn.myvpn.cert=etcopenvpnmy-server.crt
uci set openvpn.myvpn.key=etcopenvpnmy-server.key
uci set openvpn.myvpn.dh=etcopenvpndh2048.pem
uci commit openvpn

Клиент

Конфигурация клиента очень сильно зависит от настроек сервера. Вам необходимо откорректировать их в соответствии с данными сервера, к которому вы подключаетесь.

echo > etcconfigopenvpn # очистите UCI конфигурацию для OpenVPN
uci set openvpn.myvpn=openvpn
uci set openvpn.myvpn.enabled=1
uci set openvpn.myvpn.dev=tun
uci set openvpn.myvpn.proto=udp
uci set openvpn.myvpn.verb=3
uci set openvpn.myvpn.ca=etcopenvpnca.crt
uci set openvpn.myvpn.cert=etcopenvpnmy-client.crt
uci set openvpn.myvpn.key=etcopenvpnmy-client.key
uci set openvpn.myvpn.client=1
uci set openvpn.myvpn.remote_cert_tls=server
uci set openvpn.myvpn.remote="SERVER_IP_ADDRESS 1194"
uci commit openvpn

Если ваш сервер требует проверки подлинности пароля:

uci set openvpn.myvpn.auth_user_pass=pathtopassword.txt

Файл password.txt должен содержать в себе логин на первой строке и пароль на второй. Этот файл следует хранить в безопасном месте.

Вы можете также использовать опцию route.nopull. Это отключит автоматическую маршрутизацию. Имейте ввиду, что вам придётся самостоятельно прописывать все маршруты, к тому же сервер по-прежнему будет сам определять свойства TCP/IP для вашего TUN/TAP устройства:

uci set openvpn.myvpn.route_nopull=1

На этом вы закончили базовую настройку. Запустите OpenVPN:

etcinit.dopenvpn enable
etcinit.dopenvpn start

Настройка центра сертификации

OpenVPN использует TLS/SSL, поэтому вам потребуются сертификаты для шифрования трафика между сервером и клиентами. Для выпуска доверенных сертификатов необходимо создать свой собственный центр сертификации.

1. С помощью команд ниже скопируйте шаблонную директорию в домашний каталог и перейдите в созданную директорию:

make-cadir ~/openvpn-ca
cd ~/openvpn-ca

2. Отредактируйте файл :

nano vars

Также нужно отредактировать значение переменной KEY_NAME, указав субъекта сертификатов. В примере мы зададим ему имя сервер Server (вы можете указать свое), это же значение будет использоваться далее в командах в инструкции. 

Пример настроек:

Сохраните и закройте файл.

3. Создайте центр сертификации при помощи утилиты easy-rsa и заданных переменных. Выполните команду:

source vars

Вывод должен быть следующим:

Выполните предложенную команду, чтобы удостовериться, что вы работаете в «чистой среде»:

./clean-all

Создайте корневой центр сертификации:

./build-ca

Запустится процесс создания ключа и сертификата корневого центра сертификации. Все необходимые значения будут введены автоматически, так как вы задали их в файле vars. Нажимайте ENTER для подтверждения выбора.

Настройка центра сертификации закончена.

4. Создайте сертификат и пару ключей, а также дополнительные файлы, используемые для шифрования.

Обратите внимание: далее в командах и примерах мы будем использовать Server — значение, указанное выше для переменной KEY_NAME. Если вы указали другое имя, не забудьте заменить его в приводимых командах

Это будет касаться, в том числе, имени файла конфигурации: в нашем случае это будет .

4.1. Создайте сертификат OpenVPN и ключи для сервера:

./build-key-server Server

Подтвердите все значения по умолчанию, нажимая Enter. Не задавайте challenge password. При завершении процесса два раза введите y для подписи и подтверждения создания сертификата:

4.2. Создайте оставшиеся файлы. Сгенерируйте надежные ключи протокола Диффи-Хеллмана:

./build-dh

4.3. После завершения процесса сгенерируйте подпись HMAC:

openvpn --genkey --secret keys/ta.key

О OpenVPN

Прежде всего, OpenVPN — это программное приложение. Это программа, работающая на двух концах интернет-туннеля. С одной стороны клиент, а с другой — сервер. Точнее говоря, OpenVPN — это ПО с открытым исходным кодом, что означает, что может свободно использоваться и модифицироваться сообществом по своему усмотрению. Существует центральный проект OpenVPN, который поддерживается и управляется командой. В результате команда изначально создала ПО, но ничто не мешает кому-то еще сделать собственный вклад.

Опен ВПН работает с целым рядом общих сетевых протоколов, что означает, практическую невозможность блокировки. Кроме того, Опен  ВПН поставляется в двух основных формах.

Есть платная версия, известная как OpenVPN Access Server. Она поставляется со специальными функциями, многие из которых являются собственностью. Для обычных пользователей это не подходящий вариант. Но он представляет интерес для компаний, которые хотят настроить свои собственные корпоративные VPN-серверы.

Для вас интересным пакетом является Community Edition . Это бесплатная и открытая версия ПО, на которую ссылаются большинство пользователей, когда говорят «OpenVPN». Теперь, когда вы знаете, что такое Опен ВПН, давайте немного рассмотрим его историю, которая началась почти два десятилетия назад.

Создание клиента

Создание ключей и сертификатов

Ключи клиента создаются на сервере

Переходим в созданную директорию, где и замёмся генерацией ключей и сертификатов

cd /etc/openvpn/easy-rsa/2.0

Загружаем переменные

source vars

Создаем ключ клиента

В данном случае название ключа — client. Каждый ключ должен быть со своим именем.

./build-key client

Если хотим защитить ключ паролем, то генерируем его другой командой

./build-key-pass client

В этом случае при запуске соединения нужно будет каждый раз вводить пароль на ключ.

Теперь нужно не забыть скопировать ключи (ca.crt, client.crt, client.key, ta.key) на клиента OpenVPN в /etc/openvpn/keys/

Создание файла конфигурации клиента

/etc/openvpn/client.conf

client
dev tun
proto udp

# Внеший IP, на или за которым находится ваш сервер OpenVPN и порт (на сервере или роутере, за которым стоит сервер)
remote 111.222.333.444 1194

# необходимо для DynDNS
resolv-retry infinite

ca /etc/openvpn/keys/ca.crt
cert /etc/openvpn/keys/client.crt
key /etc/openvpn/keys/client.key
tls-client
tls-auth /etc/openvpn/keys/ta.key 1
auth SHA1
cipher AES-256-CBC
remote-cert-tls server
comp-lzo
persist-key
persist-tun

status openvpn-status.log
log /var/log/openvpn.log
verb 3
mute 20

Можно запускать наш клиент OpenVPN

service openvpn restart

Настройка маршрутизации на стороне клиента

Машина с openvpn уже готова работать с сервером в чём можно убедится

ping -c 2 10.8.0.1
ping -c 2 192.168.1.100

Но для того, чтобы пользоваться туннелем в другой офис могли другие устройства в локальной сети нужно указать им, чтобы доступ в подсеть 192.168.1.0/24 осуществляется через 192.168.0.100. Или, что часто проще и быстрее прописать это правило маршрутизации на роутере, который является шлюзом для устройств в сети.

Какие SSL сертификаты, ключи использует OpenVPN? Где ключи OpenVPN должны размещаться?

  • ca.crt — файл открытой части сертификата CA, который используется сервером и клиентом OpenVPN, чтобы информировать друг друга о том, что они входят в единую сеть доверия и что между ними отсутствует потенциальный злоумышленник в качестве посредника. В связи с этим, копия файла ca.crt потребуется для вашего сервера и для всех ваших клиентов.
  • ca.key — закрытый ключ CA, используемый для подписания ключей и сертификатов серверов и клиентов. Если злоумышленник получит доступ к CA и файлу ca.key, он сможет подписывать запросы сертификатов и получать доступ к вашей VPN, что нарушит ее безопасность. Поэтому файл ca.key должен храниться только на компьютере CA, и для дополнительной безопасности компьютер CA следует выключать, когда он не используется для подписывания запросов сертификатов.
Файл Машина Назначение Доступ
ca.crt Сервер и клиенты Сертификат корневого СА Публичный
ca.key Только на сервере Необходим для подписи других сертификатов Секретный
dh{n}.pem Только на сервере Diffie Hellman параметры Публичный
vpnspar.crt Только на сервере Сертификат сервера Публичный
vpnspar.key Только на сервере Ключ сервера Секретный
darkfire.crt Только на клиенте Сертификат клиента Публичный
darkfire.key Только на клиенте Ключ клиента Секретный
Рейтинг автора
5
Материал подготовил
Максим Иванов
Наш эксперт
Написано статей
129
Ссылка на основную публикацию
Похожие публикации