Strona 1 z 1

Konfiguracja OpenVPN w oparciu o certyfikaty

: 20 stycznia 2011, 00:54
autor: 111lisu
Mam problem z konfiguracją OpenVPN opartą o certyfikaty

Kod: Zaznacz cały

Thu Jan 20 00:37:54 1194 us=863213 UDPv4 link local (bound): [undef]:1194
Thu Jan 20 00:37:54 1194 us=863258 UDPv4 link remote: 172.16.110.251:1194
Thu Jan 20 00:37:54 1194 us=865506 TLS Error: Unroutable control packet received from 172.16.110.251:1194 (si=3 op=P_CONTROL_V1)
Thu Jan 20 00:37:54 1194 us=865616 TLS Error: Unroutable control packet received from 172.16.110.251:1194 (si=3 op=P_CONTROL_V1)
Thu Jan 20 00:37:55 1194 us=934064 TLS Error: Unroutable control packet received from 172.16.110.251:1194 (si=3 op=P_CONTROL_V1)
Thu Jan 20 00:37:55 1194 us=934267 TLS Error: Unroutable control packet received from 172.16.110.251:1194 (si=3 op=P_CONTROL_V1)
Thu Jan 20 00:37:57 1194 us=3161 TLS Error: Unroutable control packet received from 172.16.110.251:1194 (si=3 op=P_CONTROL_V1)
Thu Jan 20 00:37:57 1194 us=3463 TLS Error: Unroutable control packet received from 172.16.110.251:1194 (si=3 op=P_CONTROL_V1)
Thu Jan 20 00:37:57 1194 us=5572 TLS Error: Unroutable control packet received from 172.16.110.251:1194 (si=3 op=P_ACK_V1)
Thu Jan 20 00:37:58 1194 us=22153 TLS Error: Unroutable control packet received from 172.16.110.251:1194 (si=3 op=P_CONTROL_V1)
Thu Jan 20 00:37:58 1194 us=22516 TLS Error: Unroutable control packet received from 172.16.110.251:1194 (si=3 op=P_CONTROL_V1)
Thu Jan 20 00:37:58 1194 us=22621 TLS Error: Unroutable control packet received from 172.16.110.251:1194 (si=3 op=P_CONTROL_V1)
Thu Jan 20 00:37:58 1194 us=23550 TLS Error: Unroutable control packet received from 172.16.110.251:1194 (si=3 op=P_CONTROL_V1)
Thu Jan 20 00:37:58 1194 us=24209 TLS Error: Unroutable control packet received from 172.16.110.251:1194 (si=3 op=P_ACK_V1)
Thu Jan 20 00:37:59 1194 us=44875 TLS Error: Unroutable control packet received from 172.16.110.251:1194 (si=3 op=P_CONTROL_V1)
Thu Jan 20 00:37:59 1194 us=45456 TLS Error: Unroutable control packet received from 172.16.110.251:1194 (si=3 op=P_CONTROL_V1)
Thu Jan 20 00:38:00 1194 us=66928 TLS Error: Unroutable control packet received from 172.16.110.251:1194 (si=3 op=P_CONTROL_V1)
Thu Jan 20 00:38:00 1194 us=70353 TLS Error: Unroutable control packet received from 172.16.110.251:1194 (si=3 op=P_ACK_V1)
Thu Jan 20 00:38:02 1194 us=243824 TLS Error: Unroutable control packet received from 172.16.110.251:1194 (si=3 op=P_CONTROL_V1)
Thu Jan 20 00:38:02 1194 us=245891 TLS Error: Unroutable control packet received from 172.16.110.251:1194 (si=3 op=P_ACK_V1)

Klient:

Kod: Zaznacz cały

#!/usr/sbin/openvpn
client
dev tun
proto udp
port 1194
remote 172.16.110.251<>1194
resolv-retry infinite
####nobind
#user nobody
#group nogroup
persist-key
persist-tun
tls-remote vpn.firma.corp
###ping-restart 10
ca vpn.firma.corp.cacert.crt
crl-verify vpn.firma.corp-crl.pem
tls-auth vpn.firma.corp.secret.key 1
cipher AES-256-CBC
verb 4
comp-lzo
tun-mtu 1500
#link-mtu 1462
fragment 1300
mssfix
cert [EMAIL="[email protected]"][email protected][/EMAIL]
key [EMAIL="[email protected]"][email protected][/EMAIL]

Serwer:

Kod: Zaznacz cały

port 1194
proto udp
dev tun0
ca vpn.firma.corp.cacert.crt
cert vpn.firma.corp.cert
key vpn.firma.corp.key
dh vpn.firma.corp-dh2048.pem
tls-auth vpn.firma.corp.secret.key 0
#crl-verify vpn.firma.corp-crl.pem
cipher AES-256-CBC
server 172.19.6.0 255.255.255.0
#topology subnet
#ifconfig-pool-persist vpn.firma.corp-ipp.txt
# Ping every 10 seconds, assume that remote peer is down if no ping received during a 120 second time period.
keepalive 60 600
user<--><------>nobody
group<-><------>nogroup
status<><------>vpn.firma.corp-status.log
log-append<---->vpn.firma.corp.log
verb<--><------>4
persist-key
persist-tun
comp-lzo
client-config-dir ccd
ccd-exclusive
chroot vpn.firma.corp-jail
#push "route 172.19.0.0 255.255.255.0"
#push "domain-name-servers 172.19.0.34 172.19.0.35"
# client-to-client
tun-mtu 1500
#link-mtu 1462
fragment 1300
mssfix
Pytanie czego się czepić?
Kiedyś miałem podobny problem LiNiO mi pomógł, tylko niestety nie zapisałem sobie, a jak widać czas szybko ucieka.

Mariusz

: 20 stycznia 2011, 12:35
autor: Cyphermen
Przepraszam ale co to jest:

Kod: Zaznacz cały

remote 172.16.110.251<>1194
i inne tego typu smaczki w serwerze i kliencie?
Jak deklarujesz:

Kod: Zaznacz cały

port 1194
to nie deklaruj tego dalej.

Tak samo jakieś strzałki itd.

Rozumiem, że to jest adres, z którego próbujesz się łączyć?

Kod: Zaznacz cały

172.16.110.251

: 21 stycznia 2011, 01:18
autor: 111lisu
Strzałki to tylko TAB, adres nie ma tu nic do rzeczy coś popierniczyłem w ostatniej fazie generowania.

Kod: Zaznacz cały

openssl dhparam -out ./vpn.firma.corp-dh2048.pem 2048
openvpn --genkey --secret ./vpn.firma.corp.secret.key
openssl req -days 3650 -nodes -new -x509 -keyout ca.crt -out vpn.firma.corp.cacert.crt -config ./openssl.cnf

To mi się nie podoba.

Certyfikat serwera wygenerowany. "CA.pl serwer" jest raczej w porządku.
A to, że się łączy z danego portu na port w niczym nie przeszkadza.

Adres jest taki testowo ponieważ problem z TLS jest ten sam na publicznym IP.

: 21 stycznia 2011, 15:27
autor: Cyphermen
Ja trochę inaczej generuję certyfikaty. Ale błąd dotyczy coś nierutowalnej sieci.
A czy nie przeszkadza, nie wiem, w każdym razie nie widzę sensu dwa razy deklarować portu.
A Ty masz przy adresie i przy deklaracji portu.
Poza tym nie wiem czy wiesz ale sieć w firmie nie może być taka sama jak sieć OpenVPN. Do tego masz wyłączoną opcję:

Kod: Zaznacz cały

push route
Czyli nawet jeśli się połączysz to nie będziesz mógł wysłać nigdzie ping.
Mam też nadzieję, że odpowiednie porty pootwierałeś na firewallu.

Dopisz też sobie:

Kod: Zaznacz cały

local adres_IP_serwera

: 21 stycznia 2011, 17:36
autor: 111lisu
Niestety jak próbowałem w firmie to niestety wyświetlał się ten błąd a sieć była rutowalna.
&quot pisze:Poza tym nie wiem czy wiesz ale sieć w firmie nie może być taka sama jak sieć OpenVPN.
Tak się składa, że wiem o tym.

Bardziej interesuje mnie generowanie tych certyfikatów.
Chodź przerobiony skrypt CA.pl (o którym wspominałem wcześniej), przez Roberta jest super do generowania certyfikatów klienta czy serwera i CA też.

: 21 stycznia 2011, 17:47
autor: Cyphermen
Słuchaj ja geneuje certyfikaty zgodnie z tym co było w jakiejś książce OPENVPN. Postawiłem z 30 serwerów OpenVPN i nie miałem takiego problemu.

Kod: Zaznacz cały

dev tun
local jakis_adres_ip
proto udp
port 17003
user nobody
group nobody
ca /etc/ssl/cacert.pem
cert /etc/ssl/servcert.pem
key /etc/ssl/servkey.pem
dh /etc/ssl/dh1024.pem
server 10.8.8.0 255.255.255.0
daemon
ifconfig-pool-persist ipp.txt
client-config-dir ccd
keepalive 10 120
status status.txt
comp-lzo
push "route 192.168.0.0 255.255.255.0"
push "route 192.168.1.0 255.255.255.0"
push "route 192.168.2.0 255.255.255.0"
push "route 192.168.4.0 255.255.255.0"

to jest mój działający na 100% konfig. Jak ci nie działa to szukaj problemu na routerze albo systemie.

: 22 stycznia 2011, 13:14
autor: diabolic3
Dobrym narzędziem do generowania dużej ilości certyfikatów jest dodatkowy moduł do webmina. Należy go tylko dodatkowo ściągnąć, ponieważ nie ma go bezpośrednio w modułach. Wysztarczy w googlach poszukać openvpn webmin i najprawdopodobniej pierwszy link.

: 31 stycznia 2011, 18:04
autor: 111lisu
Witam
Problem rozwiązany, leżał w clr, którego nie było w ccd, ale nie o to mi chodzi.
Po kolejnym generowaniu certyfikatów CA.pl, śp Roberta, miałem inny problem:

Kod: Zaznacz cały

AUTH: Received AUTH_FAILED control message
SIGTERM[soft,auth-failure] received, process exiting
Okazało się, że w/w problem leży w ccd-exclusive.
Pomyliłem się w nazwie klienta.

Przy okazji znalazłem ciekawe narzędzia z kompletu: GADMINTOOLS (http://gadmintools.flippedweb.com)
GADMIN-OpenVPN-Server i GAdmin-OpenVPN-Client

Jednak zostałem przy przerobionym CA.pl jest super:
Wywołanie:

Kod: Zaznacz cały

CA -newcert|-klient|-serwer|-crl|-newca|-sign|-verify
Pozdrawiam Mariusz.