26

Odp: OpenVPN połączenie między dwoma sieciami

Jesli mozecie, to napiszcie prosze jakis dzialajacy poradnik do VPN, lacznie z routingiem i innymi sprawami. Taki jeden dopracowany, dzialajacy przyklad.

MiniPC 6xRJ45 2Gb, N100, 16GB DDR5, 1TB NVMe (Gargoyle)
Linksys WRT3200ACM (Gargoyle)
Tp-link 1043NDv2 (Gargoyle)

27 (edytowany przez rpc 2012-03-29 20:56:06)

Odp: OpenVPN połączenie między dwoma sieciami

zrobię to tylko potrzebuje jeszcze troszkę pomocy kogoś kto ma openvpn
Liczę na pomoc kolegi

jak pisałem poprzednio chcę podpiąć firewalla jak bozia przykazała i openwrt

zgrałem openvpn z systemowym firewallem tylko trzeba się upewnić na 100% że to działa (patrz 2 posty wyżej na końcu)

28

Odp: OpenVPN połączenie między dwoma sieciami

Zapraszam
http://rpc.one.pl/index.php/lista-artyk … -w-openwrt

czekam na uwagi i spostrzeżenia - zawsze można poprawić.

29

Odp: OpenVPN połączenie między dwoma sieciami

Używasz stwierdzenia "Dodajemy poniższe wiersze do pliku /etc/config/network:" a zawartość dotyczy się /etc/config/firewall. W kilku miejscach.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

30 (edytowany przez rpc 2012-04-11 11:13:12)

Odp: OpenVPN połączenie między dwoma sieciami

w której sekcji

31

Odp: OpenVPN połączenie między dwoma sieciami

Firewall na serwerze OpenVpn (vpn_server_lan1.dyndns.biz - LAN1):
Firewall na serwerze OpenVpn (vpn_client_lan2.dyndns.biz - LAN2):

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

32

Odp: OpenVPN połączenie między dwoma sieciami

poprawione

33

Odp: OpenVPN połączenie między dwoma sieciami

Wow! Jeszcze jakbys zrobil taki howto dla serwera na openwrt i klienta na PC, to bym sie chyba upil ze szczescia...

MiniPC 6xRJ45 2Gb, N100, 16GB DDR5, 1TB NVMe (Gargoyle)
Linksys WRT3200ACM (Gargoyle)
Tp-link 1043NDv2 (Gargoyle)

34 (edytowany przez rpc 2012-04-11 21:23:51)

Odp: OpenVPN połączenie między dwoma sieciami

nie rozumiem
przecież tam jest opisany serwer openvpn

a co do klienta na PC to na jaki system ? Na windows masz opisane na linux rozwiń sobie zakładkę pod opisem klienta i będziesz miał oryginalny konfig

tam są niektóre opcje poukrywane dla czytelności. poodkrywaj sobie.

35

Odp: OpenVPN połączenie między dwoma sieciami

Podczepie się pod temat bo mam jedno szybkie pytanie. Jakiej konfiguracji vpna użyć aby połączyć się miedzy dwoma tymi samymi podsieciami (192.168.1.0 - 192.168.1.0)? Mam multiroom z nki i czasem chciałbym zabrać swój dekoder (dodatkowy) do znajomych ale aby dekoder dodatkowy działał musi znajdować się w tej samej podsieci co dekoder główny.

36

Odp: OpenVPN połączenie między dwoma sieciami

No to jedziemy wg Twojego poradnika. Napotkalem problem z... sam zobacz:

root@Gargoyle:~$ build-key-pass user
NOTE: If you run ./clean-all, I will be doing a rm -rf on /etc/easy-rsa/keys
Generating a 1024 bit RSA private key
.........++++++
.............++++++
writing new private key to 'user.key'
Enter PEM pass phrase:
Verifying - Enter PEM pass phrase:
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [PL]:
State or Province Name (full name) [SL]:
Locality Name (eg, city) [Gliwice]:
Organization Name (eg, company) [Chata]:
Organizational Unit Name (eg, section) []:
Common Name (eg, your name or your server's hostname) [user]:
Name []:
Email Address [router@chata.dom]:

Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:
Using configuration from /etc/easy-rsa/openssl.cnf
Check that the request matches the signature
Signature ok
The Subject's Distinguished Name is as follows
countryName           :PRINTABLE:'PL'
stateOrProvinceName   :PRINTABLE:'SL'
localityName          :PRINTABLE:'Gliwice'
organizationName      :PRINTABLE:'Chata'
commonName            :PRINTABLE:'user'
emailAddress          :IA5STRING:'router@chata.dom'
Certificate is to be certified until Apr  9 20:48:16 2022 GMT (3650 days)
Sign the certificate? [y/n]:y
failed to update database
TXT_DB error number 2

Juz kiedys natrafilem na ten sam problem, wiec nie jest to kwestia Twojego bledu.
W logread tez nie widze niczego ciekawego:

Apr 11 22:25:57 Gargoyle authpriv.notice dropbear[6873]: Password auth succeeded for 'root' from 192.168.1.238:52361
Apr 11 22:27:01 Gargoyle cron.err crond[2450]: USER root pid 6879 cmd /bin/3gtester
Apr 11 22:30:01 Gargoyle cron.err crond[2450]: USER root pid 6913 cmd /bin/3gtester
Apr 11 22:31:01 Gargoyle cron.err crond[2450]: USER root pid 6921 cmd /usr/bin/set_kernel_timezone >/dev/null 2>&1
Apr 11 22:33:01 Gargoyle cron.err crond[2450]: USER root pid 6936 cmd /bin/3gtester
Apr 11 22:36:01 Gargoyle cron.err crond[2450]: USER root pid 6972 cmd /bin/3gtester
Apr 11 22:39:01 Gargoyle cron.err crond[2450]: USER root pid 6991 cmd /bin/3gtester
Apr 11 22:41:01 Gargoyle cron.err crond[2450]: USER root pid 6995 cmd /usr/bin/set_kernel_timezone >/dev/null 2>&1
Apr 11 22:42:01 Gargoyle cron.err crond[2450]: USER root pid 7004 cmd /bin/3gtester
Apr 11 22:45:01 Gargoyle cron.err crond[2450]: USER root pid 7034 cmd /bin/3gtester
Apr 11 22:48:01 Gargoyle cron.err crond[2450]: USER root pid 7077 cmd /bin/3gtester
MiniPC 6xRJ45 2Gb, N100, 16GB DDR5, 1TB NVMe (Gargoyle)
Linksys WRT3200ACM (Gargoyle)
Tp-link 1043NDv2 (Gargoyle)

37 (edytowany przez rpc 2012-04-11 22:47:01)

Odp: OpenVPN połączenie między dwoma sieciami

@carlo497
musisz ustawić w bridge (dev tap) inaczej dekodery się nie zobaczą
http://wiki.openwrt.org/doc/howto/vpn.openvpn

@badziewiak
a ciekawe wczoraj generowałem certyfikaty na wr1043nd i nie było problemów. Nawet easy-rsa + openssl-util pobrałem z openwrt.org bo mi się nie chciało kompilować. A nie ja mam opewrt a nie garygole mim że to to samo to kto wie jakie różnice drzemią

dobra
zrób jeszcze raz wszystko od nowa
pokaż wynik

cat /etc/easy-rsa/vars
clean-all
build-ca
ls /etc/easy-rsa/
build-key-pass user

u mnie działa proszę

root@OpenWrt:~# build-key-pass user
NOTE: If you run ./clean-all, I will be doing a rm -rf on /etc/easy-rsa/keys
Generating a 1024 bit RSA private key
.++++++
...............................++++++
writing new private key to 'user.key'
Enter PEM pass phrase:
Verifying - Enter PEM pass phrase:
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [PL]:
State or Province Name (full name) [Lodz]:
Locality Name (eg, city) [Wolborz]:
Organization Name (eg, company) [rpc.one.pl]:
Organizational Unit Name (eg, section) []:
Common Name (eg, your name or your server's hostname) [user]:
Name []:
Email Address [rpc@rpc.one.pl]:

Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:
Using configuration from /etc/easy-rsa/openssl.cnf
Check that the request matches the signature
Signature ok
The Subject's Distinguished Name is as follows
countryName           :PRINTABLE:'PL'
stateOrProvinceName   :PRINTABLE:'Lodz'
localityName          :PRINTABLE:'Wolborz'
organizationName      :PRINTABLE:'rpc.one.pl'
commonName            :PRINTABLE:'user'
emailAddress          :IA5STRING:'rpc@rpc.one.pl'
Certificate is to be certified until Apr  9 21:38:53 2022 GMT (3650 days)
Sign the certificate? [y/n]:y


1 out of 1 certificate requests certified, commit? [y/n]y
Write out database with 1 new entries
Data Base Updated

38 (edytowany przez badziewiak 2012-04-11 22:58:29)

Odp: OpenVPN połączenie między dwoma sieciami

root@Gargoyle:~$ cat /etc/easy-rsa/vars
# easy-rsa parameter settings

# NOTE: If you installed from an RPM,
# don't edit this file in place in
# /usr/share/openvpn/easy-rsa --
# instead, you should copy the whole
# easy-rsa directory to another location
# (such as /etc/openvpn) so that your
# edits will not be wiped out by a future
# OpenVPN package upgrade.

# This variable should point to
# the top level of the easy-rsa
# tree.
export EASY_RSA="/etc/easy-rsa"

#
# This variable should point to
# the requested executables
#
export OPENSSL="openssl"
export PKCS11TOOL="pkcs11-tool"
export GREP="grep"


# This variable should point to
# the openssl.cnf file included
# with easy-rsa.
export KEY_CONFIG=`/usr/sbin/whichopensslcnf $EASY_RSA`

# Edit this variable to point to
# your soon-to-be-created key
# directory.
#
# WARNING: clean-all will do
# a rm -rf on this directory
# so make sure you define
# it correctly!
export KEY_DIR="$EASY_RSA/keys"

# Issue rm -rf warning
echo NOTE: If you run ./clean-all, I will be doing a rm -rf on $KEY_DIR

# PKCS11 fixes
export PKCS11_MODULE_PATH="dummy"
export PKCS11_PIN="dummy"

# Increase this to 2048 if you
# are paranoid.  This will slow
# down TLS negotiation performance
# as well as the one-time DH parms
# generation process.
export KEY_SIZE=1024

# In how many days should the root CA key expire?
export CA_EXPIRE=3650

# In how many days should certificates expire?
export KEY_EXPIRE=3650

# These are the default values for fields
# which will be placed in the certificate.
# Don't leave any of these fields blank.
export KEY_COUNTRY="PL"
export KEY_PROVINCE="SL"
export KEY_CITY="Gliwice"
export KEY_ORG="Chata"
export KEY_EMAIL="router@chata.dom"
root@Gargoyle:~$ clean-all
NOTE: If you run ./clean-all, I will be doing a rm -rf on /etc/easy-rsa/keys
root@Gargoyle:~$ build-ca
NOTE: If you run ./clean-all, I will be doing a rm -rf on /etc/easy-rsa/keys
Generating a 1024 bit RSA private key
...................++++++
...............................++++++
writing new private key to 'ca.key'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [PL]:
State or Province Name (full name) [SL]:
Locality Name (eg, city) [Gliwice]:
Organization Name (eg, company) [Chata]:
Organizational Unit Name (eg, section) []:
Common Name (eg, your name or your server's hostname) [Chata CA]:
Name []:
Email Address [router@chata.dom]:
root@Gargoyle:~$
root@Gargoyle:~$
root@Gargoyle:~$ ls /etc/easy-rsa/
keys         openssl.cnf  vars
root@Gargoyle:~$ build-key-pass user
NOTE: If you run ./clean-all, I will be doing a rm -rf on /etc/easy-rsa/keys
Generating a 1024 bit RSA private key
.++++++
...++++++
writing new private key to 'user.key'
Enter PEM pass phrase:
Verifying - Enter PEM pass phrase:
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [PL]:
State or Province Name (full name) [SL]:
Locality Name (eg, city) [Gliwice]:
Organization Name (eg, company) [Chata]:
Organizational Unit Name (eg, section) []:
Common Name (eg, your name or your server's hostname) [user]:
Name []:
Email Address [router@chata.dom]:

Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:
Using configuration from /etc/easy-rsa/openssl.cnf
Check that the request matches the signature
Signature ok
The Subject's Distinguished Name is as follows
countryName           :PRINTABLE:'PL'
stateOrProvinceName   :PRINTABLE:'SL'
localityName          :PRINTABLE:'Gliwice'
organizationName      :PRINTABLE:'Chata'
commonName            :PRINTABLE:'user'
emailAddress          :IA5STRING:'router@chata.dom'
Certificate is to be certified until Apr  9 21:52:00 2022 GMT (3650 days)
Sign the certificate? [y/n]:y


1 out of 1 certificate requests certified, commit? [y/n]y
Write out database with 1 new entries
Data Base Updated
MiniPC 6xRJ45 2Gb, N100, 16GB DDR5, 1TB NVMe (Gargoyle)
Linksys WRT3200ACM (Gargoyle)
Tp-link 1043NDv2 (Gargoyle)

39

Odp: OpenVPN połączenie między dwoma sieciami

Ale juz to dalej nie poszlo:

root@Gargoyle:/etc/easy-rsa/keys$ build-key-pkcs12 user
NOTE: If you run ./clean-all, I will be doing a rm -rf on /etc/easy-rsa/keys
Generating a 1024 bit RSA private key
........++++++
...++++++
writing new private key to 'user.key'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [PL]:
State or Province Name (full name) [SL]:
Locality Name (eg, city) [Gliwice]:
Organization Name (eg, company) [Chata]:
Organizational Unit Name (eg, section) []:
Common Name (eg, your name or your server's hostname) [user]:
Name []:
Email Address [router@chata.dom]:

Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:
Using configuration from /etc/easy-rsa/openssl.cnf
Check that the request matches the signature
Signature ok
The Subject's Distinguished Name is as follows
countryName           :PRINTABLE:'PL'
stateOrProvinceName   :PRINTABLE:'SL'
localityName          :PRINTABLE:'Gliwice'
organizationName      :PRINTABLE:'Chata'
commonName            :PRINTABLE:'user'
emailAddress          :IA5STRING:'router@chata.dom'
Certificate is to be certified until Apr  9 22:01:01 2022 GMT (3650 days)
Sign the certificate? [y/n]:y
failed to update database
TXT_DB error number 
MiniPC 6xRJ45 2Gb, N100, 16GB DDR5, 1TB NVMe (Gargoyle)
Linksys WRT3200ACM (Gargoyle)
Tp-link 1043NDv2 (Gargoyle)

40

Odp: OpenVPN połączenie między dwoma sieciami

bo user istnieje

albo używasz
build-key
albo
build-key-pass
albo
build-key-pkcs12

dla tego samego usera. Po prostu user już istnieje
zrób
build-key-pkcs12 user1
i będzie ok

41 (edytowany przez badziewiak 2012-04-11 23:54:53)

Odp: OpenVPN połączenie między dwoma sieciami

Dzieki, jutro sprawdze. Rozumiem ze jesli chce uzyc serwera tylko do klientow "indywidualnych", to mam pominac wszystko z xxx.dyndns.biz? Mozesz zrobic druga wersje tylko dla klientow na PC?

MiniPC 6xRJ45 2Gb, N100, 16GB DDR5, 1TB NVMe (Gargoyle)
Linksys WRT3200ACM (Gargoyle)
Tp-link 1043NDv2 (Gargoyle)

42 (edytowany przez rpc 2012-04-12 08:40:41)

Odp: OpenVPN połączenie między dwoma sieciami

To jest tylko certyfikat klienta. W Common Name może być wpisane cokolwiek nieważne czy nazwa hosta klienta czy nazwa użytkownika.
Ważne jest tylko na serwerze.

Ja stosuję sobie zasadę taką
Dla hostów tudzież routerów klienckich stosuje nazwę dns danej maszyny
Dla Userów (czyli mnie, Ciebie co mamy laptopy przenośne) stosuje imienne certyfikaty
Dla serwerów openvpn zawsze nazwę dns.

Daje to to, że masz kontrolę nad tym kto się loguje.

Oczywiście można tak skonfigurować openvpn, że będzie zaglądał co jest w certyfikacie i czy się to zgadza (znaczy nazwa dns) ale w przedstawionej konfiguracji tego nie ma.

Acha jeszcze jedno. Jak generujesz certyfikat z hasłem pkcs12 i chcesz go używać to pamiętaj że w czasie uruchomienia openvpn będzie pytał o hasło do certyfikatu. Da się to ominąć ale miej tego świadomość
O ile to nie problem pod klientami mobilnymi (windows/ubuntu) bo się hasło poda na laptopie
o tyle na routerze który ma działać bez obsługowo może być to problemem

43 (edytowany przez tomi513 2012-04-12 09:50:37)

Odp: OpenVPN połączenie między dwoma sieciami

rpc pasowało by do openvpn plugin zrobić pod Gargoyle smile

44

Odp: OpenVPN połączenie między dwoma sieciami

Eryk już od dawna nad tym pracuje.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

45

Odp: OpenVPN połączenie między dwoma sieciami

dla luci już jest a gargoyle nie używam

opkg install luci-app-openvpn

46

Odp: OpenVPN połączenie między dwoma sieciami

Tylko tak prawdę mówiąc ten plugin to po prostu ustawienie wszystkich opcji w polach w gui, nie ma wizarda czy czegoś takiego smile.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

47

Odp: OpenVPN połączenie między dwoma sieciami

no to niech tomi513 się wykaże i maźnie jakiś wizard
wszyscy na tym skorzystamy

48

Odp: OpenVPN połączenie między dwoma sieciami

Witam

Zrobiłem konfigurację identyczną jak w poście 21 i wszystko mi elegancko działa. VPN`y ustawiłem pomiędzy dwoma biurami. Niestety napotkałem na pewną trudność. W biurze A (sieć 192.168.1.0) i biurze B (192.168.2.0) potrzebuję mieć po jednym komputerze z tą samą adresacją np 192.168.10.0. Na tych komputerach uruchomiony jest pewien program księgowy który łączy się "ze sobą" (np komp1 z biura A z komp2 z biura B) Sęk w tym, że żeby ten program działał prawidłowo musi widzieć siebie w tej samej adresacji, komunikuje się na porcie 8080.

Czy jedynym rozwiązaniem jest bridge? Podobnie jak w poście 37?

Próbowałem ustawić odpowiednio pushem i routem adresy do tego alias na karcie (dodatkowy adres) i przekierowanie na firewallu i niestety nie działa.

Możecie coś podpowiedzieć?

49

Odp: OpenVPN połączenie między dwoma sieciami

Ja bym spróbował podzielić sieć 192.168.10.0/24 na dwie podsieci w różnej klasie np. /26

50 (edytowany przez mandrzej 2013-08-26 12:37:59)

Odp: OpenVPN połączenie między dwoma sieciami

Chyba mam podobny problem.
Wyklikałem serwer openvpn w gargoyle i wygląda to obecnie tak:



Ruter "Wysp" (serwer ovpn)

root@wysp:~# ifconfig tun0
tun0      Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
          inet addr:10.8.0.1  P-t-P:10.8.0.1  Mask:255.255.255.0
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1500  Metric:1
          RX packets:873 errors:0 dropped:0 overruns:0 frame:0
          TX packets:944 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:100
          RX bytes:73114 (71.4 KiB)  TX bytes:79250 (77.3 KiB)
root@wysp:~# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         85.89.180.1     0.0.0.0         UG    0      0        0 eth0.2
10.8.0.0        0.0.0.0         255.255.255.0   U     0      0        0 tun0
85.89.180.0     0.0.0.0         255.255.255.0   U     0      0        0 eth0.2
192.168.2.0     0.0.0.0         255.255.255.0   U     0      0        0 br-lan

server.conf

mode                  server

port                  1194
proto                 udp
tls-server
ifconfig              10.8.0.1 255.255.255.0
topology              subnet
client-config-dir     /etc/openvpn/ccd
client-to-client



cipher                BF-CBC
keysize               128

dev                   tun
keepalive             25 180
status                /var/openvpn/current_status
verb                  3


dh                    /etc/openvpn/dh1024.pem
ca                    /etc/openvpn/ca.crt
cert                  /etc/openvpn/server.crt
key                   /etc/openvpn/server.key
tls-auth              /etc/openvpn/ta.key 0

persist-key
persist-tun
comp-lzo

push "topology subnet"
push "route-gateway 10.8.0.1"

Ruter "Flo"

tun0      Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
          inet addr:10.8.0.5  P-t-P:10.8.0.5  Mask:255.255.255.0
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1500  Metric:1
          RX packets:1998 errors:0 dropped:0 overruns:0 frame:0
          TX packets:2001 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:100
          RX bytes:127648 (124.6 KiB)  TX bytes:216722 (211.6 KiB)
root@Flo:~# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         10.101.140.1    0.0.0.0         UG    0      0        0 eth0.2
10.8.0.0        0.0.0.0         255.255.255.0   U     0      0        0 tun0
10.101.140.0    0.0.0.0         255.255.252.0   U     0      0        0 eth0.2
192.168.1.0     0.0.0.0         255.255.255.0   U     0      0        0 br-lan
192.168.2.0     10.8.0.1        255.255.255.0   UG    0      0        0 tun0




Pingi

Wysp -> 192.168.1.200     BRAK
Flo -> 192.168.2.200     OK

10.8.0.4 -> 192.168.1.200 BRAK
10.8.0.4 -> 192.168.2.200 OK


Co muszę gdzie dopisać, zmienić etc. żeby była łączność której teraz brak? Czytałem poradnik.

ale raz, że tam opisane tak, że bym musiał od nowa wszystko robić, a dwa, że nadal nie umiem

zastosować tego u siebie.

Proszę o pomoc smile