Strona 1 z 2

[+] Przekierowanie adresu IP, sieć lokalna - OpenVPN

: 12 października 2010, 20:25
autor: sector
Witam.
Nie wiem co się stało, czy źle coś ustawiłem, czy też coś się przestawiło.
Sprawa wygląda tak.

[komputer] ----- [serwer] <---- internet <------< openvpn < --- [komputer]

Mam serwer, na którym postawiony jest OpenVPN. OpenVPN ma IP 192.168.150.1 (serwer) i 192.168.150.6 (klient). Serwer jest też podłączony do sieci lokalnej z adresami IP 192.168.0.X. Dzisiaj walczyłem chwilę, żeby móc sprawdzić poleceniem ping komputery z sieci lokalnej z komputerem podłączonym przez VPN.

To co zrobiłem to:

Kod: Zaznacz cały

echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -s 192.168.150.0/24 -j MASQUERADE
iptables -A FORWARD -s 192.168.150.0/24 -j ACCEPT
Dodatkowo w Windowsie dodałem sobie ruting:

Kod: Zaznacz cały

route ADD -p 192.168.0.0 MASK 255.255.255.0 192.168.150.6
O ile wcześniej to działało i mogłem sprawdzić poleceniem ping komputer z IP 192.168.0.1 to teraz wygląda na to, że ping nie wychodzi z mojego komputera.

Polecenie:

Kod: Zaznacz cały

pathping
pokazuje jedynie:

Kod: Zaznacz cały

Tracing route to 192.168.0.1 over a maximum of 30 hops

Kod: Zaznacz cały

0. 192.168.150.6
1   *    *    *
podczas gdy wcześniej pokazywało

Kod: Zaznacz cały

Tracing route to 192.168.0.1 over a maximum of 30 hops
0. 192.168.150.6
1  Debian [192.168.150.1]
3  192.168.0.1
Wszystko co zrobiłem to te polecenia przedstawione powyżej. Rozłączyłem się VPN-em, podłączyłem się jeszcze raz i koniec. Próbowałem na innym komputerze i też nic.
Czy ktoś może mi podsunąć jakiś pomysł co dalej?

: 13 października 2010, 11:35
autor: bzyk
No, skoro dodałeś:

Kod: Zaznacz cały

route -p
to jak Ci to ma działać jeśli dodałeś trasę statyczną przez vpna? Wywal to w diabły z tego Windows.

Kod: Zaznacz cały

route /? 
w cmd prawdę Ci powie.
Ten openvpn serwer jest zainstalowany na tym Windowsie z kombinowaną trasą?

: 13 października 2010, 13:26
autor: sector
Chyba się nie zrozumieliśmy :)
-p - jest to opcja, która powoduje, że po restarcie komputera, routing nadal będzie zachowany w tabeli.

Serwer OpenVPN jest na Linuksie i jest to komputer gdzieś w centrum Polski. Ja używam swojego komputera z Windows7 też gdzieś na drugim końcu Polski. Do serwera OpenVPN podłączona jest sieć z 5 komputerami. Jedyne co ja chciałem zrobić to to, żeby ten serwer z OpenVPN przekazywał mi numery IP ze swojej lokalnej podsieci.

Routing na Windowsie ustawiłem po to, żeby system wiedział, którą bramą ma wyjść na sieć 192.168.0.0.

: 13 października 2010, 13:34
autor: bzyk
Jak dla mnie trochę zamotane. Ciężko się połapać co jest czym.
  1. Czy ten serwer openvpn, na którym robiłeś iptables jest brama sieci dla Windowsów, którym dodawałeć trasy?
  2. client-config-dir na serwerze openvpn ustawiony?
Tak w ogóle to rozrysuj to na jakimś schemacie, pokaż adresy/maski przy danym hoście i pokaż to gdzieś w sieci - tak żeby jaśniejsza sytuacja była.

: 13 października 2010, 14:20
autor: Cyphermen
Po pierwsze usuń ten ruting na Windowsie.
Po drugie jeśli już, to ustawiłeś zły adres jako bramę, przez którą masz wchodzić do podsieci 192.168.0.0, bo ustawiłeś 192.168.150.6, a powinno, jak już, być 5, bo tak działa vpn.
Po trzecie, on sam powinien ci takowy wpis dodać.
Po czwarte, czy masz dwa systemy zainstalowane na tym komputerze z Widows7?
Po piąte, i najważniejsze, czy uruchamiasz klienta OpenVpn z prawami admina?
Bo myślę, że tutaj jest pies pogrzebany. Windows7 mimo że masz prawa "admina" to tak naprawdę ich nie masz. Przez co polecenie:

Kod: Zaznacz cały

 route add
które wykonuje OVPN nie może zostać wykonane.
Sprawdź sobie log z próby połączenia na twoim komputerze, na samym końcu powinno być widoczna próba i wynik wykonania polecenia:

Kod: Zaznacz cały

roue add

: 18 października 2010, 13:57
autor: sector
No i wszystko jasne. Wreszcie miałem chwilę czasu, żeby to wszystko sprawdzić i poprawnie skonfigurować. Cypherman miał racje. Wystarczyło jedynie zmienić wpis w routingu na Windowsie, aby korzystał z bramy 192.168.150.5 a nie 192.168.150.6.
Być może komuś się przyda ten temat, dlatego narysuje dokładnie o co mi chodziło.

Obrazek

Chodziło o to, aby łącząc się przez OpenVPN poprzez Internet z serwerem umieszczonym gdzieś w Polsce, móc pingować komputery, które są w podsieci serwera.

: 20 października 2010, 09:41
autor: Cyphermen
No tak ale on Ci powinien mimo wszystko sam dodać taki wpis, tak więc uruchom OpenVPN z prawami admina (prawym przyciskiem myszy na ikonkę, uruchom jako->administrator) i wtedy powinien takowy wpis dodać sam. Jeśli tego nie robi to musisz mieć jakiś błąd w konfigu na serwerze.

: 20 października 2010, 16:25
autor: sector
A czy przypadkiem, to, że nie dodaje mi routingu nie jest spowodowane tym, że w configu OpenVPNa brakuje linijki

Kod: Zaznacz cały

push "route 192.168.0.0 255.255.255.0"
?

: 21 października 2010, 10:23
autor: Cyphermen
No właśnie tak!
To powinno być ogólnie na serwerze w konfigu. Czyli jak wspomniałem wcześniej, problem w konfiguracji serwera.

: 21 października 2010, 11:28
autor: sector
Problem był taki, że gdy instalowałem OpenVPNa na serwerze, nie było mowy o przekierowaniu IP z podsieci. Problem pojawił się w momencie gdy się okazało, że ruting taki by sporo pomógł.
Oczywiście mogę dodać do konfigu teraz tą linijkę, tylko, że jest strach trochę ze zrestartowaniem OpenVPNa na serwerze, bo jak padnie to nikt tego nie będzie umiał cofnąć.