Petr Hlobil - Osobní stránky jednoho informatika
PHP programátor, Linux administrátor, Tvorba webových stránek
- Nacházíte se zde:
- Linux
- Instalace openVPN
Poslední články
Instalace openVPN
Klientske certifikaty
cd easy-rsa
. vars
Vytvoreni certifikatu:
----------------------
./build-req UNIKATNIJMENO
- vsechny otazky ENTER az na, kde napisete unikatni jmeno spojeni:
Common Name (eg, your name or your server's hostname) []:UNIKATNIJMENO
- dale vse ENTER
Podepsani certifikatu:
----------------------
./sign-req UNIKATNIJMENO
Vse podvrdime: y
tim se vytvori v adresari ~/my-openvpn-keys
soubory:
UNIKATNIJMENO.crt
UNIKATNIJMENO.key
Tyto soubory se prenesou na klienta a prejmenuji se na client.crt a client.key
----------------------------------------------------------------------------------------
Debian Etch - OpenVPN klient/server
7.6.2007 23:22 | Přečteno: 6480× | | poslední úprava: 8.6.2007 12:36
Konfigurace OpenVPN jako klient/server s certifikátem chráněným heslem.
Nejprve nainstalujeme potřebné balíčky.
apt-get install openvpn liblzo1 liblzo2-2
Certifikáty:
Zkopírujeme si skripty pro tvorbu certifikátů.
cp -R /usr/share/doc/openvpn/examples/easy-rsa/ /etc/openvpn
Nastavíme přístupová práva pouze pro roota.
chmod 0700 /etc/openvpn/easy-rsa
Nastavíme si proměnné pro vytváření certifikátů.
vim /etc/openvpn/easy-rsa/vars
export KEY_SIZE=2048
export KEY_COUNTRY=CZ
export KEY_PROVINCE="Czech Republic"
export KEY_CITY="City"
export KEY_ORG="OpenVPN-company"
export KEY_EMAIL="vpn@domain.com"
Aktivace proměnných.
cd /etc/openvpn/easy-rsa
. ./vars
Vymazání všech klíčů z adresáře ./keys.
./clean-all
Vytvoření certifikační autority.
./build-ca
Country Name (2 letter code) [CZ]:
State or Province Name (full name) [Czech Republic]:
Locality Name (eg, city) [City]:
Organization Name (eg, company) [OpenVPN-company]:
Organizational Unit Name (eg, section) []:company Team
Common Name (eg, your name or your server's hostname) []:domain.com
Email Address [vpn@domain.com]:
Vytvoření certifikátu a privátního klíče pro server.
./build-key-server server
Country Name (2 letter code) [CZ]:
State or Province Name (full name) [Czech Republic]:
Locality Name (eg, city) [City]:
Organization Name (eg, company) [OpenVPN-company]:
Organizational Unit Name (eg, section) []:company Team
Common Name (eg, your name or your server's hostname) []:domain.com
Email Address [vpn@domain.com]:
Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:
Vytvoření klientského certifikátu chráněného heslem. Soubory client1.crt, client1.csr, client1.key, ca.crt z adresáře ./keys nakopírujeme bezpečnou formou do /etc/openvpn na klienta.
./build-key-pass client1
./build-key-pass client2
...
Enter PEM pass phrase: password
Verifying - Enter PEM pass phrase: again password
Country Name (2 letter code) [CZ]:
State or Province Name (full name) [Czech Republic]:
Locality Name (eg, city) [City]:
Organization Name (eg, company) [OpenVPN-company]:
Organizational Unit Name (eg, section) []:company Team
Common Name (eg, your name or your server's hostname) []:domain.com
Email Address [vpn@domain.com]:
Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:
Vytvoření Diffie Hellman parametrů.
./build-dh
openssl dhparam -out dh2048.pem 2048
Kopírování z ./keys do /etc/openvpn a nastavení přístupových práv pouze na roota. (na straně serveru)
cp /etc/openvpn/easy-rsa/keys/{ca.crt,server.crt,server.key,dh2048.pem} /etc/openvpn
chmod 600 /etc/openvpn/{ca.crt,server.crt,server.key,dh2048.pem} /etc/openvpn
Konfigurace pro server:
vim /etc/openvpn/vpn_server.conf
# server
mode server
# tls jako server
tls-server
# port, 1194 = default
port 1194
# protokol, tcp/udp
proto tcp-server
# nastavi zarizeni
dev tap0
# adresa serveru
ifconfig 10.0.1.100 255.255.255.0
# rozsah adres pro klienty
ifconfig-pool 10.0.1.1 10.0.1.20 255.255.255.0
# soucasne prihlaseni vice klientu
duplicate-cn
# 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/dh2048.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
Konfigurace pro klienta:
vim /etc/openvpn/vpn_client.conf
# server ke kteremu se pripojujeme
remote domain.com
# tls jako klient
tls-client
# port, 1194 = default
port 1194
# protokol, tcp/udp
proto tcp-client
# nastaveni zarizeni
dev tap
# povoluje stazeni konfigurace ze severu
pull
# certifikat certifikacni autority
ca ca.crt
# certifikat klienta
cert client1.crt
# certifikat klienta
key client1.key
# uzivatel pod kterym bezi klient
user nobody
# skupina pod kterou bezi klient
group nogroup
# opakovani radku v logu
mute 10
# logy klienta
log-append /var/log/openvpn.log
# status klienta
status /var/run/vpn.status 10
# komprese prenasenych dat
comp-lzo
# ukecanost klienta
verb 3
Testování:
Spustíme daemony OpenVPN na serveru a na klientovi.
/etc/init.d/openvpn start
Takto by měl vypadat start na straně serveru.
Starting virtual private network daemon: vpn_server(OK).
Na straně klienta po zadání správného hesla.
Starting virtual private network daemon: vpn_clientEnter Private Key Password:
(OK).
Test spojení
ping 192.168.100.1
Hodnocení: 100 %
špatné • dobré