26

(2 odpowiedzi, napisanych Oprogramowanie / Software)

Musisz wydzielić osoby VLAN, podpiąć pod niego jeden interfejs na routerze kliencie i połączyć te VLANy openvpn TAP, bo dekodery gadają po broadcast, więc na TUN nie zadziała.
EDIT:
Tutaj masz jak wydzielić fizyczny interfejs do osobnego VLANu http://eko.one.pl/?p=openwrt-vlan Rozdział: Wydzielenie portów ethernetowych dla innej sieci
Tutaj https://openwrt.org/toh/start znajdź swój router kliknij link w kolumnie Device Page następnie odnajdź jakie numery portów na switchu odpowiadają jakim interfejsom fizycznym (sekcja dla WDR3600 nazywa się Switch Ports (for VLANs)).
Potem robisz openvpn TAP z kluczami dla osobnego klienta:
https://eko.one.pl/?p=openwrt-openvpn
https://eko.one.pl/?p=openwrt-openvpntun ->patrz tylko tworzenie certów, ewentualnie przekopiuj certy i klucze, które utworzyłeś za pomocą GUI w Gargoyle
Problemem będzie Gargoyle - każde zapisanie ustawień w GUI spowoduje nadpisanie ustawień w plikach konfiguracyjnych (usunie całe sekcje), więc lepiej przejść na Luci.

27

(9 odpowiedzi, napisanych Oprogramowanie / Software)

Problem był na pewno w tym o czym pisałem. Zrobiłeś zmianę pliku konfiguracyjnego, a nie zrobiłeś restartu usługi. Dopiero po restarcie routera wprowadzone zmiany zostały zastosowane.

28

(9 odpowiedzi, napisanych Oprogramowanie / Software)

Domyślnie serwer DNS odpowiada tylko na zapytania z LANu. Zmień opcję w sekcji dnsmaq w pliku /etc/config/dhcp na:

option localservice '0'

29

(17 odpowiedzi, napisanych Oprogramowanie / Software)

Podobny temat tutaj https://eko.one.pl/forum/viewtopic.php?id=1099

Czyli routing na kliencie oraz firewall na DGN3500 jest prawidłowy. Problem jest w W9980 albo host, który pingujesz nie odpowiada na ICMP lub firewall na tym hoście nie akceptuje pakietów spoza swojej sieci LAN.

A spróbuj zrobić tracecrt dla 192.168.1.2 i pokaż wynik

Czyli masz problem z routingem na W9980. Zrób sobie traceroute z klienta do hosta w podsieci za serwerem i zobaczysz gdzie pakiet DROP/REJECT.

@mar_w Przy stosowaniu ccd należy dodać push "topology subnet". Jest o tym mowa tutaj https://community.openvpn.net/openvpn/w … hstaticccd Kiedyś zastanawiałem się po co skoro bez tego też działa - teraz już wiem, że niektóre sterowniki (w tym jak widać TAP dla Windows) potrzebuje tej opcji, bo pozostaje w domyślnej topologii net30. Według mnie problem jest z routingiem/firewallem na W9980, bo cały konfig wygląda poprawnie.
@adalbert.dudziak
Czy w /etc/config/network masz ten wpis:

config interface 'vpn'
        option ifname 'tun0'
        option proto 'none'

W tej chwili klient oczekuje połączenia w topologii net30, a serwer ma ustawione topology subnet. Spróbuj dodać do konfigu sewera:

push "topology subnet"

Myślałem ,że jakaś starsza wersja. Może jest jakiś bug w wersji 2.4.4 na Windows. Spróbuj podłączyć się z Linuxa/Androida do serwer openvpn. Dla pewności - nadal masz tej opcje w konfigu serwera?:

ifconfig              10.8.0.1 255.255.255.0
mode                  server
topology              subnet

Openvpn jako klient na Windowsie ma wersję 2.4.4, a jaką wersję openvpn używasz na serwerze?

Uruchom openvpn na Windowsie poprzez "Uruchom jako administrator".

Wrzuć logi openvpn klienta.

W moim konfigu logi są w /tmp/openvpn.log, lecz jeśli nie zastosowałeś opcji log w konfigu to będą w syslogu:

logread |grep openvpn

Jeśli serwer openvpn nie startuje to powód będzie w logach.

Przy pliku ccd nie ma znaczenia skąd klient będzie się łączył, jaki ma system operacyjny i jak często będzie się łączył.
Trasa statyczna musi być dodana na Tplink W9980.

a) Tak chodzi o dodanie statycznej trasy routingu na routerze(nie na RPI)
b) Chodzi o zezwolenie na przepływ pakietów pomiędzy tymi strefami na rpi (masz openrwt/lede na rpi?). Wygląda dobrze, jeśli w /etc/config/network masz:

config interface 'vpn'
        option ifname 'tun0'
        option proto 'none'

c) Tu masz działający config w topology subnet.
Zawartość pliku /etc/config/openvpn:

config openvpn 'tun_lan'
        option enabled '1'
        option config '/etc/openvpn/server.conf'

Zawartośc pliku /etc/openvpn/server.conf:

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

cipher                AES-256-CBC

dev                   tun0
keepalive              25 180
status                /tmp/openvpn.status
verb                  3

dh                    /etc/openvpn/dh2048.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" //potrzebne jeśli klienci mają mieć publiczny adres IP serwer openvpn
push "redirect-gateway def1"  //potrzebne jeśli klienci mają mieć publiczny adres IP serwer openvpn

route 172.16.1.0 255.255.255.0 10.8.0.2
push "route 192.168.1.0 255.255.255.0 10.8.0.1"

Zawartość pliku ccd dla klienta, który posiada podsieć 172.16.1.0 (plik musi mieć nazwę taką jak Common Name w certyfikacie tego klienta i znajdować się w /etc/openvpn/ccd):

ifconfig-push 10.8.0.2 255.255.255.0
iroute 172.16.1.0 255.255.255.0

172.16.1.0/24 - podsieć za klientem
192.168.1.0/24 - podsieć za serwerem
10.8.0.0/24 - podsieć tunelu openvpn

@mar_w
@post 13 Ad.3 lit. d:
Zakładając, że na strefie vpn nie ma maskarady w firewallu oraz, że serwer wysyła swoją bramę domyślną do klientów to pakiet wysłany przez klienta vpn do Internetu otrzymuje maskaradę (zamiana adresu IP źródłowego w pakiecie) na interfejsie WAN serwera (bo pakiet musi przejść przez tą strefę aby "wydostać" się do Internetu), więc strona, która podałeś (i każda inna) otworzy się prawidłowo.
Ad.1 Maskarada na strefie vpn serwera ma zastosowanie, gdy za klientem jest więcej hostów a nie ma możliwości dodania trasy routingu do serwera do podsieci za klientem (hosty za klientem będą mogły dostać się do hostów za serwerem - w drugą stronę nie będzie to działać -> tak jak to jest teraz u adalbert.dudziak)

@adalbert.dudziak Musisz dodać trasę do tablicy routingu routera do podsieci 10.8.0.0/24 przez 192.168.1.2 oraz zrobić forward pakietów w firewallu na routerze https://community.openvpn.net/openvpn/w … ultgateway

Gdy stosujesz topology subnet musisz podać next hop przy push route czyli

push 'route 192.168.1.0 255.255.255.0 10.8.0.1'

Powinieneś dodać w /etc/config/firewall

config forwarding
        option dest 'lan'
        option src 'vpn'

Dodałeś wpis do konfigu serwera:

push "route 192.168.1.0 255.255.255.0"

Pokaż tablicę routingu klienta.

Blowfish (BF-CBC) jest podatny na atak Sweet32 https://community.openvpn.net/openvpn/wiki/SWEET32

Jeśli w logu serwera masz "ping-restart" to zwiększ wartości przy keepalive i zrestartuj openvpn (nie przez GUI Gargoyle, bo napiszesz ustawienia)

2. Odnoszę się do wpisów route i push "route..." dla tych samych sieci

route 192.168.2.0 255.255.255.0
route 192.168.3.0 255.255.255.0
route 192.168.8.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.3.0 255.255.255.0"
push "route 192.168.8.0 255.255.255.0"

Czy klient [C2] nie ma dwóch tras do podsieci 192.168.3.0/24?

1) Czemu klient ma dwa razy iroute? Ma te dwie podsieci za sobą?
2) Wysyłani routingu do podsieci dla klienta, który ma tą podsieć za sobą spowoduje "błądzenie pakietów".

50

(27 odpowiedzi, napisanych Sprzęt / Hardware)

Gdyby Huawei miałby coś blokować to blokowałby cały ruch vpn, więc to zły trop. Może urządzenia końcowe blokują ruch ICMP (albo cały ruch) spoza swojej podsieci, więc sprawdź firewall na końcówkach. Sprawdź jeszcze plik ccd dla tego klienta, może wpis iroute jest niepoprawny.