Инсталация и конфигурация на OpenVPN

OpenVPN

 

Инсталация и конфигурация на OpenVPN
Първото и най-важно условие е: сървъра да е с реално статично IP
Ако сървъра е зад рутер е необходимо да пренасочите порт 1194 към него:

kal_hginov_router

Ако използвате Windows Firewall отворете порт 1194 на конекцията Ви с интернет.

Инсталира се openvpn-2.1.1-install.exe – всичко по подразбиране.

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

1.      От C:Program FilesOpenVPNeasy-rsa се стартира init-config.bat

2.      Редактира се vars.bat със съответните настройки

Пример:
set KEY_COUNTRY=BGset KEY_PROVINCE=BGset KEY_CITY=Sofiaset KEY_ORG=HGset KEY_EMAIL= hginov@abv.bgТези редове добавете във файлове clean-all.bat, build-ca.bat, build-dh.bat, build-key-server.bat, build-key.bat, както е показано:
3.      Редактира се C:Program FilesOpenVPNeasy-rsa се стартира clean-all.bat
От :
@echo off

rem move to the HOME directory specified in VARS script

cd %HOME%

rem set a temporary KEY_DIR variable

set d=%KEY_DIR%

rem delete the KEY_DIR and any subdirs quietly

rmdir /s /q %d%

rem make a new KEY_DIR

mkdir %d%

rem copy in a fesh index file so we begin with an empty database

copy index.txt.start %d%index.txt

rem copy in a fresh serial file so we begin generating keys at index 01

copy serial.start %d%serial.
На:
@echo off
set HOME=%ProgramFiles%OpenVPNeasy-rsaset KEY_CONFIG=openssl.cnfset KEY_DIR=keysset KEY_SIZE=1024set KEY_COUNTRY=BGset KEY_PROVINCE=BGset KEY_CITY=Sofiaset KEY_ORG=HGset KEY_EMAIL= hginov@abv.bg
rem move to the HOME directory specified in VARS script

cd %HOME%

rem set a temporary KEY_DIR variable

set d=%KEY_DIR%

rem delete the KEY_DIR and any subdirs quietly

rmdir /s /q %d%

rem make a new KEY_DIR

mkdir %d%

rem copy in a fesh index file so we begin with an empty database

copy index.txt.start %d%index.txt

rem copy in a fresh serial file so we begin generating keys at index 01

copy serial.start %d%serial.

4.      Изпълнява се C:Program FilesOpenVPNeasy-rsa се стартира clean-all.bat . Създава се подпапка  ‘keys’. В нея ще бъдат записани всички генерирани ключове и сертификати.

5.      Редактира се build-ca.bat
От :
@echo off

cd %HOME%

rem build a cert authority valid for ten years, starting now

openssl req -days 3650 -nodes -new -x509 -keyout %KEY_DIR%ca.key -out %KEY_DIR%ca.crt -config %KEY_CONFIG%
На:
@echo off
set HOME=%ProgramFiles%OpenVPNeasy-rsaset KEY_CONFIG=openssl.cnfset KEY_DIR=keysset KEY_SIZE=1024set KEY_COUNTRY=BGset KEY_PROVINCE=BGset KEY_CITY=Sofiaset KEY_ORG=HGset KEY_EMAIL= hginov@abv.bg
cd %HOME%

rem build a cert authority valid for ten years, starting now

openssl req -days 3650 -nodes -new -x509 -keyout %KEY_DIR%ca.key -out %KEY_DIR%ca.crt -config %KEY_CONFIG%

6.      Изпълнява се build-ca.bat

hginov_build-ca

Създадени са в папка C:Program FilesOpenVPNeasy-rsakeys:  ca.key и ca.crt
7.      Редактира се build-dh.bat
От :
@echo off

cd %HOME%

rem build a dh file for the server side

openssl dhparam -out %KEY_DIR%/dh%KEY_SIZE%.pem %KEY_SIZE%
На:
@echo off
set HOME=%ProgramFiles%OpenVPNeasy-rsaset KEY_CONFIG=openssl.cnfset KEY_DIR=keysset KEY_SIZE=1024set KEY_COUNTRY=BGset KEY_PROVINCE=BGset KEY_CITY=Sofiaset KEY_ORG=HGset KEY_EMAIL= hginov@abv.bg
cd %HOME%

rem build a dh file for the server side

openssl dhparam -out %KEY_DIR%/dh%KEY_SIZE%.pem %KEY_SIZE%

8.      Изпълнява се build-dh.bat

hginov_build-dh

Създаден е в папка C:Program FilesOpenVPNeasy-rsakeys:   dh1024.pem
9.      Редактира се build-key-server.bat
От :
@echo off
set HOME=%ProgramFiles%OpenVPNeasy-rsaset KEY_CONFIG=openssl.cnfset KEY_DIR=keysset KEY_SIZE=1024set KEY_COUNTRY=BGset KEY_PROVINCE=BGset KEY_CITY=Sofiaset KEY_ORG=HGset KEY_EMAIL= hginov@abv.bg
cd %HOME%

rem build a request for a cert that will be valid for ten years

openssl req -days 3650 -nodes -new -keyout %KEY_DIR%%1.key -out %KEY_DIR%%1.csr -config %KEY_CONFIG%

rem sign the cert request with our ca, creating a cert/key pair

openssl ca -days 3650 -out %KEY_DIR%%1.crt -in %KEY_DIR%%1.csr -extensions server -config %KEY_CONFIG%

rem delete any .old files created in this process, to avoid future file creation errors

del /q %KEY_DIR%*.old
На:
@echo off
set HOME=%ProgramFiles%OpenVPNeasy-rsaset KEY_CONFIG=openssl.cnfset KEY_DIR=keysset KEY_SIZE=1024set KEY_COUNTRY=BGset KEY_PROVINCE=BGset KEY_CITY=Sofiaset KEY_ORG=HGset KEY_EMAIL= hginov@abv.bg
cd %HOME%

rem build a request for a cert that will be valid for ten years

openssl req -days 3650 -nodes -new -keyout %KEY_DIR%%1.key -out %KEY_DIR%%1.csr -config %KEY_CONFIG%

rem sign the cert request with our ca, creating a cert/key pair

openssl ca -days 3650 -out %KEY_DIR%%1.crt -in %KEY_DIR%%1.csr -extensions server -config %KEY_CONFIG%

rem delete any .old files created in this process, to avoid future file creation errors

del /q %KEY_DIR%*.old

10.      Изпълнява се build-key-server.bat, като се указва името на сървъра:

hginov_build-key-server

Създават се в папка C:Program FilesOpenVPNeasy-rsakeys:  index.txt.attr, serveer.csr, serveer.key, 01.pem, serveer.crt и index.txt
11.      Редактира се build-key.bat
От :
@echo off

cd %HOME%

rem build a request for a cert that will be valid for ten years

openssl req -days 3650 -nodes -new -keyout %KEY_DIR%%1.key -out %KEY_DIR%%1.csr -config %KEY_CONFIG%

rem sign the cert request with our ca, creating a cert/key pair

openssl ca -days 3650 -out %KEY_DIR%%1.crt -in %KEY_DIR%%1.csr -config %KEY_CONFIG%

rem delete any .old files created in this process, to avoid future file creation errors
del /q %KEY_DIR%*.old

На:
@echo off
set HOME=%ProgramFiles%OpenVPNeasy-rsaset KEY_CONFIG=openssl.cnfset KEY_DIR=keysset KEY_SIZE=1024set KEY_COUNTRY=BGset KEY_PROVINCE=BGset KEY_CITY=Sofiaset KEY_ORG=HGset KEY_EMAIL= hginov@abv.bg
cd %HOME%

rem build a request for a cert that will be valid for ten years

openssl req -days 3650 -nodes -new -keyout %KEY_DIR%%1.key -out %KEY_DIR%%1.csr -config %KEY_CONFIG%

rem sign the cert request with our ca, creating a cert/key pair

openssl ca -days 3650 -out %KEY_DIR%%1.crt -in %KEY_DIR%%1.csr -config %KEY_CONFIG%

rem delete any .old files created in this process, to avoid future file creation errors

del /q %KEY_DIR%*.old

12.      Изпълнява се build-key.bat, като се указва името на клиента
Отворете конзола Ctrl+R->cmd. Провлачете build-key.bat в нея. Въведете интервал и напишете името на клиента. Натиснете Enter. Бъдете внимателни с името му в Common Name!

hginov_build-key_client1

hginov_build-key_client2

Сертификатите и ключовете са готови за използване.
Създава се на сървъра в папка C:Program FilesOpenVPNconfig файл с име server.ovpn с примерно съдържание:
##############SERVER##############
port 1194

proto udp

dev tun

ca ca.crt

cert server.crt

key server.key

dh dh1024.pem

server 10.10.10.0 255.255.255.0

client-config-dir ccd # Директория с per-client конфигурация за да се използват зададените от Вас IP – та

route 10.10.10.0 255.255.255.252

client-to-client #Клиентите се виждат по между си
keepalive 10 120 comp-lzo #Enable compression on the VPN linkpersist-keypersist-tunstatus openvpn-status.logverb 3############## END SERVER##############
Копират се нужните сертификати и ключове за сървъра от C:Program FilesOpenVPNeasy-rsakeys:ca.key, serveer.key, ca.crt, serveer.crt, dh1024.pem

Създават се файлове с  Уникалните за клиентите имена, Примерно:

hginov_ccd

hginov_ccd-Client1

hginov_ccd-Client2

Стартира се от десктоп OpenVPN GUI и с десния бутон на мишката се избира connect.

При правилна конфигурация след секунда, две иконата сменят цвета си от червен в жълт и накрая в зелен.

Червения цвят означава – не е включен VPN

Жълт – VPN сървъра е включен, но не е установена връзка

Зелен – VPN сървъра е включен и е установена виртуална връзка.

При клиентът стъпките са аналогични, но се създава client.ovpn със следното примерно съдържание:
##############CLIENT##############
client

dev tun

proto udp

port 1194
remote X.X.X.X #ИП към което се свързва клиентаresolv-retry infinitenobindpersist-keypersist-tun
ca ca.crt

cert client.crt

key client.key
ns-cert-type server  #Защита от МИТМ от страна на клиент, представящ се като сървър.comp-lzoverb 3##############END CLIENT##############
Копират се нужните сертификати и ключове за клиента от C:Program FilesOpenVPNeasy-rsakeys:ca.key, client.key, ca.crt, client.crt.

УСПЕХ!

1,569 total views, 1 views today

Print Friendly, PDF & Email