151

(46 odpowiedzi, napisanych Oprogramowanie / Software)

mar_w napisał/a:

Problem jest w pliku konfiguracyjnym na serwerze openvpn. Serwer nie powinien wysłać adresu sieci openvpn jako pojedynczego adresu IP (przewidzianego dla hostów) w dodatku bez maski. A u Ciebie tak robi:

Sun Jan 22 23:05:04 2017 PUSH: Received control message: 'PUSH_REPLY,redirect-gateway def1 bypass-dhcp,dhcp-option DNS 208.67.222.222,dhcp-option DNS 208.67.220.220,route 172.16.0.1,topology net30,ping 10,ping-restart 120,ifconfig 172.16.0.6 172.16.0.5'

raczej powinno być np.  ->  172.16.0.0 255.255.255.0  # bo taką masz sieć openvpn jak można się zorientować

co skutkuje tym, że klient ustawia sobie trasę do całej sieci openvpn która to sieć, jest pojedynczym adresem IP:

Sun Jan 22 23:05:04 2017 /sbin/route add -net 172.16.0.1 netmask 255.255.255.255 gw 172.16.0.5

Widać od razu, że maska na Twojej sieci openvpn to 255.255.255.255 czyli wszystkie bity należą do adresu sieci, a gdzie wolne bity dla hostów ???

Logów ci nie podeślę, bo mam ustawione verb 1.
Ale co powiesz na to

# 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:172.16.14.1  P-t-P:172.16.14.2  Mask:255.255.255.255
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1500  Metric:1
          RX packets:3582 errors:0 dropped:0 overruns:0 frame:0
          TX packets:3707 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:100 
          RX bytes:273167 (266.7 KiB)  TX bytes:1350603 (1.2 MiB)

Tyle w temacie przydzielania adresów mówi mój serwer.
A tak odpowiada mój klient aktualnie podłączony do tego serwera

# 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:172.16.15.5  P-t-P:172.16.15.6  Mask:255.255.255.255
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1500  Metric:1
          RX packets:3298 errors:0 dropped:0 overruns:0 frame:0
          TX packets:3397 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:100 
          RX bytes:1299844 (1.2 MiB)  TX bytes:234564 (229.0 KiB)

Jak widzisz w obu przypadkach są to połączenia p-t-p tak jak to opisał @khain.

telewy napisał/a:

Panowie, dzięki za wsparcie. Popatrzę dzisiaj wieczorem i dam znać. Generalnie odnośnie ustawień to instalację serwera openvpn robiłem na podstawie standardowego opisu z netu ( Debian: Instalacja i konfiguracja serwera OpenVPN i nic nie kombinowałem.

Ten poradnik zbyt płytko traktuje temat. Ponawiam prośbę o twój konfig. Na pewno z @khainem dojdziemy do kompromisu i spreparujemy ci sprawnie działający gotowiec.

152

(366 odpowiedzi, napisanych Oprogramowanie / Software)

Nie mogę tego teraz przetestować bo używam innego serwera DHCP.
Ale wg. dokumentacji dnsmasq to powinno wyglądać następująco:

list dhcp_option '121,10.8.1.0/24,192.168.1.251'
list dhcp_option '121,10.8.2.0/24,192.168.1.240'

Zawsze możesz poczytać co w tej sprawie ma do powiedzenia wujek Googiel

153

(46 odpowiedzi, napisanych Oprogramowanie / Software)

Przypuszczam, że w konfigu openvpn brakuje:

push "route 192.168.1.0 255.255.255.0"

Zobacz tutaj http://eko.one.pl/forum/viewtopic.php?p … 78#p179778
Podaj swoją konfigurację openvpn:

 # cat /etc/config/openvpn

ewentualnie:

 # cat /etc/openvpn/*.conf

154

(366 odpowiedzi, napisanych Oprogramowanie / Software)

Dziwne rozwiązanie, ale to twój pomysł. Nie będę tego oceniać.
Skoro opanowałeś przydzielanie domyślnego routingu przez DHCP w Gargole1 (np. dla Urządzenie2) to na te samej zasadzie zrób routing do sieci 10.8.1.X i 10.8.2.X.
Jeśli serwer OpenVPN na Gargole1 będzie przydzielał swoim klientom adresy 10.8.1.X to Gargole1 (192.168.1.251) musi być gatewayem dla tej sieci.
Tak samo gatewayem dla sieci 10.8.2.X musi być Gargole2 (192.168.1.240). "dhcp_option" twoim przyjacielem. smile

155

(366 odpowiedzi, napisanych Oprogramowanie / Software)

khain napisał/a:

Czyli pakiety się gubią, bo wychodzą przez router, który nie ma podłączonego klienta openvpn.

Zgadza się.

khain napisał/a:

Jedyne wyjście to multiwan na jednym routerze, a na drugim wyłączenie serwera DHCP i wpięcie kabla do interfejsu LAN zamiast WAN.

Niestety, tu nie masz racji. Nie jest to jedyne wyjście, a tylko jedno z wyjść.
Inny pomysł to:
- każdy router ma serwer openvpn skonfigurowany na przydzielanie różnych adresów IP (np. router1: 10.8.1.X, router2 10.8.2.X),
- w konfiguracji serwerów DHCP dodać opcję statycznego routingu
    * dla router1: 10.8.2.X/24 gw <ip router2>,
    * dla router2: 10.8.1.X/24 gw <ip router1>.

156

(366 odpowiedzi, napisanych Oprogramowanie / Software)

Cezary napisał/a:

Zaznaczył myszką logi i wkleił do konsoli...

Dzięki Cezary. Zaćmienie mnie dopadło. smile
Muszę trochę odpocząć od komputera w weekend. wink

157

(366 odpowiedzi, napisanych Oprogramowanie / Software)

kowalmisiek napisał/a:
root@Gargoyle:~# Thu Jan 19 22:59:54 2017 daemon.notice openvpn(custom_config)[2759]: Initializat
                 ion Sequence Completed
-ash: syntax error: unexpected "("
root@Gargoyle:~# root@Gargoyle:~#
-ash: root@Gargoyle:~#: not found
root@Gargoyle:~#

To mi się nie podoba.
Daj znać, czy poskutkowały porady @khain.

158

(366 odpowiedzi, napisanych Oprogramowanie / Software)

To ja tak na wszelki wypadek poproszę

# cat /etc/config/openvpn

159

(366 odpowiedzi, napisanych Oprogramowanie / Software)

khain napisał/a:

W takim razie masz prawidłową konfigurację openvpn i firewalla do tego, aby mieć dostęp do sieci za serwerem 192.168.1.0/24 (do 192.168.0.0/24 nie będzie dostępu). Jedyne co przychodzi mi na myśl co mogłoby być problemem po stronie rutera to rozłączanie klienta openvpn po timeoucie pinga wewnątrz tunelu (opcja keepalive), ale to byłoby widoczne w logach openvpn (logread | grep openvpn).

Ja też nie widzę niczego w konfigu serwera do czego można by się przyczepić. Zatem czekamy na logi

160

(366 odpowiedzi, napisanych Oprogramowanie / Software)

Mam dokładnie te same pytania co @khain.

161

(366 odpowiedzi, napisanych Oprogramowanie / Software)

kowalmisiek napisał/a:

Coś jest nie tak u mnie z Twoimi skryptami. Próbowałem je zaaplikować i mi się telefon nie chciał połączyć po wgraniu tych skryptów. Dopisałem po prawej moje pytania.

client-config-dir ccd
route 192.168.0.0 255.255.255.0        # IP sieci po stronie klienta
route 10.8.0.0    255.255.252.0        # link do VPN-ów

to jest potrzebne tylko wtedy gdy komputer kowal jest routerem do sieci 192.168.0.X. Jeśli do serwera łączy się tylko pojedynczy komputer to pomiń te linijki

/etc/openvpn/ccd/kowal

ifconfig-push 10.8.1.1 10.8.1.2
iroute 192.168.0.0 255.255.255.0

jak wyżej

/etc/config/openvpn                            = etc/openvpn/client_conf/kowal/kowal.conf?????????????????????u mnie jest taka lokalizacja

Nie to musi być /etc/config/openvpn bo to jest plik konfiguracyjny klienta OpenVPN dla OpenWRT czyli dla naszych popularnych routerków. Ten plik jest w formacie uci. OpenVPN na linuksie (w tym również OpenWRT) poszukuje plików /etc/openvpn/*.conf i z nich odczytuje konfigurację. Robi/robił tak niezależnie od uci. Ja dla routera z OpenWRT preferuję uci więc w /etc/openvpn/ nie zapisuję plików *.conf. Całą konfigurację robię w /etc/config/*. Jeśli coś pójdzie nie tak, zawsze możesz wycofać zmiany. A w ostateczności zrestartować router. Polecenie

# uci commit ...

wykonujesz jak już wszystko działa.

option dh '/etc/openvpn/dh1024.pem'
    option cipher 'AES-256-CBC'                     mam inny rodzaj klucza     cipher  BF-CBC         keysize   128

Dziś, tak krótkie klucze nie są bezpieczne.

option remote kowal.******.com # IP twojego serwera OpenVPN     (czy tu trzeba dodać też port??????????????)

Jeśli serwer używa standardowego portu 1194 to nie musisz nic dodawać. Osobiście nie widzę powodu by zmieniać port.

option ping '15'
option ping_restart '60'

To jest potrzebne tylko w celu automatycznego nawiązywania połączenia.

PS. Dla jakiego komputera (system operacyjny) potrzebujesz ten konfig?

162

(366 odpowiedzi, napisanych Oprogramowanie / Software)

kowalmisiek napisał/a:

W obu tp-linkach mam skonfigurowany ddns i na oba sie da łączyć smile

Jeśli nie zamierzasz łączyć ze sobą dwóch sieci to śmiało możesz z mojego konfiga dla serwera usunąć 3 końcowe linijki. Nie potrzebujesz też plików w katalogu /etc/openvpn/ccd/. Obydwa serwery mogą mieć dokładnie taką samą konfigurację i dokładnie te same klucze.
Do kompletu dorzucę jeszcze plik *.ovpn:

client
dev tun
proto udp
remote <wstaw adres publiczny serwera openvpn> 1194
resolv-retry infinite
nobind
persist-key
persist-tun
ns-cert-type server
verb 3
cipher AES-256-CBC
comp-lzo
#remote-cert-tls server
key-direction 1
<ca>
-----BEGIN CERTIFICATE-----
... (tu plik /etc/openvpn/ca.crt)
-----END CERTIFICATE-----
</ca>
<cert>
-----BEGIN CERTIFICATE-----
... (tu fragment pliku klient.crt)
-----END CERTIFICATE-----
</cert>
<key>
-----BEGIN PRIVATE KEY-----
... (tu plik klient.key)
-----END PRIVATE KEY-----
</key>
<tls-auth>
-----BEGIN OpenVPN Static key V1-----
... (tu plik plik /etc/openvpn/ta.key)
-----END OpenVPN Static key V1-----
</tls-auth>

Coś takiego mam w swoim smartphonie.

Do generowania kluczy używam pakietu easy-rsa.
Nie wiem, czy w GUI gargole robi się to prościej. Jak już pisałem. Nie używam GUI.

163

(366 odpowiedzi, napisanych Oprogramowanie / Software)

khain napisał/a:

1) Konfig od Gr4nd0 jest krokiem wstecz w porównaniu do konfigu, który jest automatycznie generowany przez Gargoyle.

Hmm, jesteś pewien?
Od ćwierć wieku używam Linuksa. Całą konfigurację robię w konsoli a ty piszesz, że GUI jest lepsze do konfiguracji. ROTF, czyli wisisz mi czyszczenie marynarki.
Mój sposób ma jedną zaletę. W GUI nie działa "copy-paste".
W odległej przeszłości tak skonfigurowałem mój pierwszy router. Ktoś napisał bardzo dobry podręcznik, a ja skopiowałem linijka po linijce kolejne przykłady. Kiedy robiłem kolejną reinstalację to miałem gotowy skrypt do wklejenia. Pozwól, że jeszcze raz napiszę
GUI jest przereklamowane

164

(366 odpowiedzi, napisanych Oprogramowanie / Software)

To ja też nie doczytałem. Nie wiem czemu odniosłem wrażenie, że łączysz dwie sieci.
Czy któryś z tych tp-linków ma publiczny adres IP? Czy na ten IP można się połączyć z Internetu?

165

(366 odpowiedzi, napisanych Oprogramowanie / Software)

@khain. Luzik, jesteśmy na początku drogi. Jak już uruchomi openvpn to będziemy dalej konfigurować tą sieć. Ale małymi kroczkami. Ja przez kilka dni wertowałem dokumentację i jak zauważyłeś ograniczyłem się to jednego rozwiązania.

166

(366 odpowiedzi, napisanych Oprogramowanie / Software)

khain napisał/a:

Kompletnie nie odróżniasz typów openvpn. Cały czas zadajesz pytania o TAPa, a konfig masz podany pod TUN.

Ale on wcale nie napisał, że to musi być TAP!!!
Dlatego zaproponowałem mu TUN.

167

(366 odpowiedzi, napisanych Oprogramowanie / Software)

Może trochę się pogubiłem, więc wyjaśniam.
Założyłem, że chcesz połączyć dwie sieci 192.168.0.X (klient) i 192.168.1.X (serwer). Jeśli twój router-klient ma adres 192.168.2.X to musisz zmieć 192.168.0 na 192.168.2 w mojej konfiguracji.

route 192.168.2.0 255.255.255.0        # IP sieci po stronie klienta

Adresy IP interface tun0 muszą być takie jak powyżej.
W bliźniaczym wątku (http://eko.one.pl/forum/viewtopic.php?id=3814) jest opisane inne rozwiązanie, ale tam też jeszcze nie ma sukcesu.
Ja, w sposób opisany powyżej, połączyłem dwie sieci (w domu i na działce) i bez problemu podglądam centralkę alarmową oraz kamerki IP. A siedząc na działce mogę sprawdzić logi na domowym serwerze a nawet wydrukować sobie coś na domowej drukarce. smile

168

(315 odpowiedzi, napisanych Oprogramowanie / Software)

Sprawdź czy masz połączenie serwer<->klient.
Czy z klienta możesz pingować 10.8.0.1?
I czy z serwera możesz pingować 10.8.0.2 i 10.8.0.3?

169

(11 odpowiedzi, napisanych Oprogramowanie / Software)

aloszka napisał/a:

Kupiłem   komplet gniazdek w by sterować nimi  przez openwrt  czyli podłączam  przekaźnik w miejsce przycisku na pilocie.

Ja tak zrobiłem kiedyś, ale sterowałem gniazdkami z centralki alarmowej smile
Działa do dziś. smile

170

(315 odpowiedzi, napisanych Oprogramowanie / Software)

khain napisał/a:

@Gr4nd0 przeciez sieć 192.168.2.0 jest za pierwszym klientem, a sieć 192.168.3.0 za drugim a Ty chcesz dodać obie trasy poprzez pierwszego klienta - tak to na pewno nie bedzie działać.

Nie będę się spierać. Swoją działającą konfigurację opisałem tutaj: http://eko.one.pl/forum/viewtopic.php?p … 78#p179778. Jak widzisz nie używam

topology subnet

i nie będę się wypowiadał co jest lepsze. Działa i dla mnie jest to najważniejsze.

171

(366 odpowiedzi, napisanych Oprogramowanie / Software)

No i jeszcze małe sprawdzenie czy wszystko działa.
Po stronie klienta:

# 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.1.1  P-t-P:10.8.1.2  Mask:255.255.255.255

# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.8.1     0.0.0.0         UG    0      0        0 eth2
10.8.0.1        10.8.1.2        255.255.255.255 UGH   0      0        0 tun0
10.8.1.0        10.8.1.2        255.255.255.240 UG    0      0        0 tun0
10.8.1.2        0.0.0.0         255.255.255.255 UH    0      0        0 tun0
192.168.8.0     0.0.0.0         255.255.255.0   U     0      0        0 eth2
192.168.8.1     0.0.0.0         255.255.255.255 UH    0      0        0 eth2
192.168.1.0     10.8.1.2        255.255.255.0   UG    0      0        0 tun0
192.168.0.0     0.0.0.0         255.255.255.0   U     0      0        0 br-lan

na serwerze:

#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.2  Mask:255.255.255.255

# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         172.16.0.2      0.0.0.0         UG    0      0        0 eth1
172.16.0.2      0.0.0.0         255.255.255.252 U     0      0        0 eth1
10.8.0.0        10.8.0.2        255.255.255.0   UG    0      0        0 tun0
10.8.0.2        0.0.0.0         255.255.255.255 UH    0      0        0 tun0
192.168.1.0     0.0.0.0         255.255.255.0   U     0      0        0 eth0
192.168.0.0     10.8.0.2        255.255.255.0   UG    0      0        0 tun0

172

(366 odpowiedzi, napisanych Oprogramowanie / Software)

Oto moja sprawdzona konfiguracja. Lekko zmodyfikowana pod OpenVRT (oryginał jest na Debianie):
/etc/openvpn/server.conf

port 1194
proto udp
dev tun0
ca   /etc/openvpn/ca.crt
cert /etc/openvpn/tunel-vpn-server.crt
key  /etc/openvpn/tunel-vpn-server.key
dh   /etc/openvpn/dh.pem
tls-auth /etc/openvpn/ta.key 0
tls-exit
max-clients 10
server 10.8.0.0 255.255.255.0 
keepalive 20 60
comp-lzo
cipher AES-256-CBC
persist-key
persist-tun
verb 1
#mute 10
push "route 192.168.1.0 255.255.255.0" # IP sieci po stronie serwera
push "dhcp-option DNS 192.168.1.1"     # IP serwera DNS 
push "dhcp-option WINS 192.168.1.1"    # IP serwera samba
push "dhcp-option DOMAIN local.lan"    # 
client-config-dir ccd
route 192.168.0.0 255.255.255.0        # IP sieci po stronie klienta
route 10.8.0.0    255.255.252.0        # link do VPN-ów

/etc/openvpn/ccd/kowal

ifconfig-push 10.8.1.1 10.8.1.2
iroute 192.168.0.0 255.255.255.0

No jeszcze klient
/etc/config/openvpn

config openvpn 'client'
    option enabled '1'
    option client '1'
    option dev 'tun0'
    option proto 'udp'
    option nobind '1'
    option ca '/etc/openvpn/ca.crt'
    option cert '/etc/openvpn/domek.crt'
    option key '/etc/openvpn/domek.key'
    option dh '/etc/openvpn/dh.pem'
    option tls_auth '/etc/openvpn/ta.key 1'
    option cipher 'AES-256-CBC'
    option verb '1'
    option persist_key '1'
    option persist_tun '1'
    option comp_lzo 'yes'
    option remote 172.16.0.1 # IP twojego serwera OpenVPN
    option remote_cert_tls 'server'
    option ping '15'
    option ping_restart '60'

Jeszcze kilka uwag:
Jeśli konfigurację zapisujemy w pliku /etc/openvpn/*.conf to w nazwach opcji używamy "-" (np. comp-lzo). W uci ten znak jest zabroniony i używamy "_" (np. comp_lzo.
Osobiście nie lubię adresów typu 192.168.0.0/24 (nie mylić z 192.168.0.0/16) i zastępuje je zawsze 192.168.*.0/24.
Gdzie "*" zamieniasz na liczbę od 1 do 254.

173

(366 odpowiedzi, napisanych Oprogramowanie / Software)

Jest. Ale jak przeczytasz poniżej - z GUI ci nie pomogę. Resztę opisałem w wątku, który masz w poprzednim moim poście.

174

(315 odpowiedzi, napisanych Oprogramowanie / Software)

khain napisał/a:

@Gr4nd0 Routing jest prawidłowy

Nie jest prawidłowy. Ten routing ma iść przez OpenVPN, a tu jest totalna kaszana:

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         192.168.88.1    0.0.0.0         UG    0      0        0 br-lan
10.8.0.0        *               255.255.255.0   U     0      0        0 tun0
192.168.2.0     10.8.0.2        255.255.255.0   UG    0      0        0 tun0
192.168.3.0     10.8.0.3        255.255.255.0   UG    0      0        0 tun0
192.168.88.0    *               255.255.255.0   U     0      0        0 br-lan

To powinno wyglądać tak:

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         192.168.88.1    0.0.0.0         UG    0      0        0 br-lan
10.8.0.0        *               255.255.255.0   U     0      0        0 tun0
192.168.2.0     10.8.0.2        255.255.255.0   UG    0      0        0 tun0
192.168.3.0     10.8.0.2        255.255.255.0   UG    0      0        0 tun0
192.168.88.0    *               255.255.255.0   U     0      0        0 br-lan

Adres 10.8.0.2 to adres drugiego końca tunelu dla serwera, a nie adres komputera na drugim końcu tunelu.
Serwer OpenVPN przydziela adresy IP wg. zasady
*.0 - zarezerwowane (adres sieci po stronie serwera)
*.1 - interface tun0
*.2 - druga strona tunelu od strony serwera
*.3 - zarezerwowane (adres broadcast)
*.4 - sieć 1 klient
*.5 - IP 1 klient
*.6 - tunel 1 klient
*.7 - broadcast 1 klient
*.8 - sieć 2 klient
*.9 - IP 2 klient
*.10 - tunel 2 klient
*.11 - broadcast 2 klient
itd.
Błąd jest w konfiguracji OpenVPN.

175

(366 odpowiedzi, napisanych Oprogramowanie / Software)

Co to znaczy "widzieć urządzenia". Żeby podagać z kumplem nie musisz go widzieć, możesz gadać przez komórkę. Prawda?
Serwery googla są za wielką wodą, ale łączysz się z nimi bez problemu.
Jest sporo urządzeń, które ogłaszają się w sieci za pomocą broadcastów, ale zwykle możesz się z nimi połączyć jeśli tylko znasz ich adres IP.
Jeśli "widzieć" znaczy "otoczenie sieciowe windows" to w przypadku OpenVPN tylko TAP.
Jeśli wystarczy połączyć 2 sieci to zobacz tutaj: http://eko.one.pl/forum/viewtopic.php?p … 30#p179230

PS. Testowałem wariant z TAP i TUN i więcej zalet widzę w tym drugim.