HOWTO: Domowy VPN – openVPN + bridge LAN ( VPN w tej samej podsieci )

Krok po kroku instrukcja konfiguracji OpenVPN, certyfikaty, bridge-network LAN ( klienci VPN w tej samej podsieci co sieć wewnętrzna ),

# Aktualizacja systemu:

apt-get update
apt-get upgrade
apt-get dist-upgrade

# Sprawdzany czy TUN jest uruchomiony

test ! -c /dev/net/tun && echo openvpn requires tun support || echo tun is available

# Instalacja potrzebnych pakietów:

apt-get install openvpn && apt-get install bridge-utils

# Konfiguracja Easy-RSA

cp -prv /usr/share/doc/openvpn/examples/easy-rsa/2.0 /root/easy-rsa
cd /root/easy-rsa
cp vars{,.orig}

# Podstawowa konfiguracja Easy-RSA

vim ./vars

KEY_SIZE=2048
KEY_COUNTRY=”MK”
KEY_PROVINCE=”MK”
KEY_CITY=”Veles”
KEY_ORG=”The Streets”
KEY_EMAIL=”email”

export konf. :

source ./vars

usuwanie poprzednich kluczy

./clean-all

# Generowanie certyfikatu CA

./build-ca

# Generowanie certyfikatu serwera:

./build-key-server serwer

# Generowanie Diffie-Hellman PEM certyfikat

./build-dh

# Generowanie  (HMAC – Hash-based Message Authentication Code )

openvpn –genkey –secret /root/easy-rsa/keys/ta.key

 

Umieszczamy certyfikaty:

mkdir -p /etc/openvpn/certs
cp -pv /root/easy-rsa/keys/{ca.{crt,key},serwer.{crt,key},ta.key,dh2048.pem} /etc/openvpn/certs/

 

# Konfigurujemy nano /etc/openvpn/openvpn.conf

mode server
port 1194
proto udp
#dev tun
dev tap0

ca /etc/openvpn/certs/ca.crt
cert /etc/openvpn/certs/serwer.crt
key /etc/openvpn/certs/serwer.key
dh /etc/openvpn/certs/dh2048.pem
tls-auth /etc/openvpn/certs/ta.key 0

#server 192.168.2.0 255.255.255.0
server-bridge 192.168.1.5 255.255.255.0 192.168.1.51 192.168.1.55

keepalive 10 120
tls-auth ta.key 0
comp-lzo
user nobody
cipher AES-256-CBC
group nogroup
persist-key
persist-tun
log-append openvpn.log
verb 3
mute 10

 

# Uruchamiamy serwer:

service openvpn restart
update-rc.d -f openvpn defaults

# Konfigurujemy przekierowanie ruchu:

vim /etc/sysctl.conf
:%s/net.ipv4.ip_forward = 0/net.ipv4.ip_forward = 1/

sysctl -p

 

Konfiguracja klienta:

Tworzymy plik konfiguracyjny w folderze aplikacji openVPN ( serwer1.ovpn — rozszerzenie dla aplikacji w systemie Windows )

client
dev tun
proto udp
remote xxxx
tls-auth C:\ta.key” 1
ca C:\ca.crt
cert C:\tunel-vpn-client1.crt
key C:\tunel-vpn-client1.key
persist-tun
persist-key
ns-cert-type server
cipher AES-256-CBC
comp-lzo
verb 3
keepalive 10 120

 

# Informacja o typie kluczy:

The public ca.crt certificate is needed on all servers and clients
The private ca.key key is secret and only needed on the key generating machine
A server needs server.crt, dh2048.pem (public), server.key and ta.key (private)
A client needs client.crt (public), client.key and ta.key (private)

 

# Usuwanie kluczy:

# usuwanie certyfikatu ( powstanie plik ctr.pem , sciezke do tego pliku nalezy podac w konfiguracji serwera crl-verify crl.pem )
./revoke-full <identyfikator klienta>

 

 

 

 

 

Dodaj komentarz