Nejdříve si připravíme potřebné balíky :
apt-get install openvpn liblzo1 liblzo2-2
Poté si vytvoříme Certificate Authority (CA) certifikát a klíč pro autentizaci serveru a klienta
Zkopírujeme si výchozí configy :cp -R /usr/share/doc/openvpn/examples/easy-rsa/ /etc/openvpn
Přepneme do složky se soubory pro vytváření certifikátů a klíčů:cd /etc/openvpn/easy-rsa/
Upravíme soubor vars:
# easy-rsa parameter settings export D=/etc/openvpn/easy-rsa export KEY_CONFIG=$D/openssl.cnf export KEY_SIZE=1024 export KEY_COUNTRY=CZ export KEY_PROVINCE="Czech Republic" export KEY_CITY="Brno" export KEY_ORG="Test VPN ORG" export KEY_EMAIL="admin@server"
Soubor vars spustíme a tím nastavíme implicitní hodnoty pro vytváření certifikátů a rovnou se vrhnem na vytváření CA certifikátu:source ./vars<br /> ./clean-all<br /> ./build-ca
Nyní certifikát a privátní klíč pro server:./build-key-server server
Následují certifikáty pro klienty a klíče pro klienty./build-key client1<br /> ./build-key client2
Atd. Místo client1,client2 použijeme názvy, pod kterými budeme klienty idetifikovat(arteal, hejda, atp.)
Dále vytvoříme „Diffie Hellman parameters„./build-dh
Zkopírujeme certifikáty do /etc/openvpncp /etc/openvpn/easy-rsa/keys/{ca.crt,ca.key,server.crt,server.key,dh1024.pem} /etc/openvpn<br /> chmod 600 /etc/openvpn/{ca.crt,ca.key,server.crt,server.key,dh1024.pem} /etc/openvpn
Nyní máme připravené klíče a certifikáty pro server i pro klienty, nyní se pustíme na konfiguraci serveru a klientů
Konfigurace serveru :
nano /etc/openvpn/vpn_server.conf
Můj příklad:
# server mode server # tls jako server tls-server # port, 1194 = default port 1194 # protokol, tcp/udp proto tcp-server # nastavi zarizeni dev tap0 #persistentni klice a rozhrani - kvuli restartu persist-key persist-tun # adresa serveru ifconfig 192.168.10.1 255.255.255.255 # rozsah adres pro klienty ifconfig-pool 192.168.10.10 192.168.10.255 255.255.255.0 ifconfig-pool-persist /etc/openvpn/ipp.txt #special configy IP adres pro clienty push "ifconfig 192.168.10.10 255.255.255.0 192.168.10.1" client-config-dir /etc/openvpn/ccd/ #komunikace mezi klienty client-to-client #DNS server pro klienty #push "dhcp-option DNS 192.168.10.240" # certifikat certifikacni autority ca /etc/openvpn/ca.crt # certifikat serveru cert /etc/openvpn/server.crt # klic serveru key /etc/openvpn/server.key # parametry pro Diffie-Hellman protokol dh /etc/openvpn/dh1024.pem # logy serveru log-append /var/log/openvpn.log # status serveru status /var/run/vpn.status 10 # uzivatel pod kterym bezi server user nobody # skupina pod kterou bezi server group nogroup # udrzuje spojeni nazivu, 10 (ping) a 120 (ping-restart) keepalive 10 120 # komprese prenasenych dat comp-lzo # ukecanost serveru verb 3
Nyní by váš OpenVPN server měl být ready
Nastavení klientů pro Gentoo a Debian, bude následovat v dalším článku…