Last active
November 24, 2015 12:51
-
-
Save glavk/c73f44c80ee4fbf1aade to your computer and use it in GitHub Desktop.
Double VPN certificates
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# OC CentOS 7.x | |
# установка пакета easy-rsa | |
yum install -y easy-rsa | |
# ключи и сертификаты будут после генерирования в каталоге /usr/share/easy-rsa/2.0/keys | |
cd /usr/share/easy-rsa/2.0/ | |
. ./vars | |
./clean-all | |
# генерирование сертификата и ключа CA. Содержимое ca.crt нужно поместить в секцию <ca> </ca> в каждый конфиг | |
./build-ca | |
# генерирование параметров DH. Содержимое dh2048.pem нужно поместить в секцию <dh> </dh> в каждый конфиг | |
./build-dh | |
# генерирование ключа для TLS auth. Содержимое tls.key нужно поместить в секции <tls-auth> </tls-auth> в конфиг server.conf на vps1 и в конфиг для к | |
лиента client.ovpn | |
openvpn --genkey --secret keys/ta.key | |
# генерирование сертификата и ключа для сервера на vps1. Содержимое server.crt и server.key нужно поместить в соответственно секции <cert> </cert> и <key> </key> конфига server.conf на vps1 | |
./build-key-server server | |
# генерирование сертификата и ключа для сервера на vps2. Содержимое s2s.crt и s2s.key нужно поместить в соответственно секции <cert> </cert> и <key> </key> конфига server_vps2.conf на vps2 | |
./build-key-server s2s | |
# генерирование сертификата и ключа для клиента к серверу vps2. Содержимое s2s.client.crt и s2s.client.key нужно поместить в соответственно сек | |
ции <cert> </cert> и <key> </key> конфига s2s.conf на vps1 | |
./build-key s2s.client | |
# генерирование сертификата и ключа для клиента. Содержимое client.crt и client.key нужно поместить в соответственно секции <cert> </cert> и <k | |
ey> </key> конфига client.ovpn (который нужно отдать клиенту). | |
./build-key client | |
# в итоге, у нас файлы на каждом vps файлы в /etc/openvpn: | |
# 2 файла на vps1: | |
# server.conf - сервер для клиентов, содержит файлы ca.crt, server.crt, server.key, dh2048.pem, ta.key | |
# s2s.conf - для связи с vps2, содержит файлы ca.crt, s2s.client.crt, s2s.client.key, dh2048.pem | |
# 1 файл на vps2: | |
# server_vps2.conf - для связи с vps1 и вывода трафика от клиентов, содержит файлы ca.crt, s2s.crt, s2s.key, dh2048.pem | |
# 1 файл для клиента: | |
# client.ovpn - ca.crt, client.crt, client.key, dh2048.pem, ta.key |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment