...
Code Block |
---|
apt-get install openvpn
apt-get install openvpn-auth-radius
|
Создание сертификата сервера, ключа и файлов шифрования
Создаём директорию под ключи:
Code Block |
---|
|
mkdir /etc/openvpn/easy-rsa |
В нее копируем утилиты и конфиги для работы с ключами:
Code Block |
---|
|
cp -r /usr/share/easy-rsa/* /etc/openvpn/easy-rsa/ |
В файле vars настраиваем параметры ключа:
Code Block |
---|
language | bash |
---|
title | Создаём директорию под ключи: |
---|
| mkdir | /etc/openvpn/easy-rsa/vars |
---|
|
export KEY_COUNTRY="UA"
export KEY_PROVINCE="Kievskaya"
export KEY_CITY="Kiev"
export KEY_ORG="Firm"
export KEY_EMAIL="me@domain.ua"
export KEY_OU="MyOrganizationalUnit" |
Далее необходимо создать openssl.cnf
Code Block |
---|
|
cd /etc/openvpn/easy-rsa/
cp openssl-1.0.0.cnf openssl.cnf |
Инициируем переменные:
Генерируем ключи:
Code Block |
---|
|
./build-ca
./build-key-server server
./build-key user
./build-dh
openvpn --genkey --secret keys/ta.key |
Копируем серверные ключи в директорию /etc/openvpn:
Code Block |
---|
|
cd keys
cp server.crt server.key ca.crt dh2048.pem ta.key /etc/openvpn/ |
Конфигурация
Code Block |
---|
title | /etc/openvpn/server.conf |
---|
|
mode server
daemon vpn-server
#local 203.0.113.42
port 1194
proto udp
dev tun
ca ca.crt
cert server.crt
key server.key
dh dh2048.pem # либо dh1024.pem, в зависимости от размера ключа
plugin /usr/lib/openvpn/radiusplugin.so /etc/openvpn/radius/radius.cnf
# ifconfig-pool-persist ipp.txt persist-key
tls-server
tls-auth ta.key 0
cipher DES-EDE3-CBC
server 192.168.50.0 255.255.255.0
push "redirect-gateway"
ifconfig-pool-persist ipp.txt
keepalive 10 120
#comp-lzo
user nobody
group nogroup
persist-key
persist-tun
status /var/log/openvpn/openvpn-status.log
log-append /var/log/openvpn/openvpn.log
verb 4
mute 20
client-to-client
client-config-dir ccd
route 192.168.50.0 255.255.255.0
|
...