Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
Cześć,
nie wiem jak zmusić to do działania. Brak wpisu do tablicy routingu?
Co zrobiłem:
/etc/systemd/network/vpn.network
[Match] Name=tap9 [Address] Address=10.10.0.9/24
/etc/systemd/network/vpn.netdev
[NetDev] Name=tap9 Kind=tap
i po starcie systemu mam trzeci interfejs:
3: tap9: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000 link/ether 0e:31:11:df:84:a4 brd ff:ff:ff:ff:ff:ff inet 10.10.0.9/24 brd 10.10.0.255 scope global tap9 valid_lft forever preferred_lft forever
a po wykonaniu: ssh -o Tunnel=Ethernet -w9:9 no_root_user@serwer
3: tap9: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 link/ether ee:6c:e2:68:56:bd brd ff:ff:ff:ff:ff:ff inet 10.10.0.9/24 brd 10.10.0.255 scope global tap9 valid_lft forever preferred_lft forever inet6 fe80::ec6c:e2ff:fe68:56bd/64 scope link valid_lft forever preferred_lft forever
$ ip r default via 192.168.2.1 dev eth1 proto static 10.10.0.0/24 dev tap9 proto kernel scope link src 10.10.0.9 192.168.2.0/24 dev eth1 proto kernel scope link src 192.168.2.102
na serwerze:
5: tap9: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 500 link/ether b2:14:e8:9e:69:a4 brd ff:ff:ff:ff:ff:ff inet 10.10.0.2/24 brd 10.10.0.255 scope global tap9 valid_lft forever preferred_lft forever inet6 fe80::b014:e8ff:fe9e:69a4/64 scope link valid_lft forever preferred_lft forever
Ostatnio edytowany przez jacekz (2017-07-15 19:18:46)
Offline
Intefejsy TAP zrób sobie poleceniem tunctl z paczki uml-utilities, tak, jak masz w tym tutku:
https://dug.net.pl/tekst/148/tunel_vpn__przez_ssh/
Wtedy na pewno zestawisz tunel.
Potem, jeśli chcesz np korzystać z tego tunelu do używania netu, to tak, jak w każdym VPNie, routing do hosta VPN musi iść przez interfejs zewnętrzny, ale trasa domyślna (ruting default) musi kierować pakiety przez interfejs TAP vpn na drugą końcówkę tunelu.
Przykład pobrania trasy domyślnej do hosta, np:
ip route get $(dig +short dug.net.pl) 46.105.189.254 via 192.168.0.1 dev eth0 src 192.168.0.10 cache
Przykład dodania trasy statycznej w tablicy routingu:
ip route add 46.105.189.254 via 192.168.0.1 dev eth0 src 192.168.0.10
Potem trzeba podmienić domyślną trasę routingu na tą z VPNa:
Pobieramy:
ip route show | grep default default via 192.168.0.1 dev eth0 metric 4
Trzeba ją usunąć i wstawić własną, wg potrzeb po tym, jak już będzie ustawiona trasa interfejsu do drugiego końca tunelu (co powinno odbyć się automatycznie przy nadawaniu adresu interfejsowi TAP) i tunel będzie uruchomiony.
Krótko pisząc, żadna magia, przy OpeVPN robi się to zazwyczaj automatycznie, przy SSH jest z tym chwilka zabawy.
To jest najprostsza konfiguracja, jest też kilka innych możliwości, jak np druga tablica routingu, sposób nawet wygodniejszy w użyciu, ale trudniejszy we wstępnej konfiguracji.
W ogóle do używania internetu przez VPN lepszy będzie OpenVPN, tunel SSH raczej sprawdzi się przy bezpiecznym dostępie do różnych usług na zdalnym serwerze, bez wystawiania ich do internetu, jak np Mysql, PostgreSQL, Firebird, Webmin, FTP, itp.
Pozdro
Ostatnio edytowany przez Jacekalex (2017-07-15 14:28:19)
Offline
morfik napisał(-a):
Ja u siebie to robiłem w taki sposób.
1.Celowo użyłeś TUN zamiast TAP, czy to po prostu było z jakiegoś powodu wygodniejsze?
2. Może starczy użyć dwóch tras routingu default z różnymi metrykami?
https://morfikov.github.io/post/metryki-tras-interf … aptop-metric/
Offline
O iIle się nie mylę, TUN jest konieczny w Andku bez roota, albo jak nie ma driverów TAP (w Andku czy Windows 10).
W przypadku Linuxa moim zdaniem TAP wymiata o tyle, że jest pełnowartościową kartą sieciową, podczas gdy TUN ma jakieś ograniczenia.
Ostatnio edytowany przez Jacekalex (2017-07-15 15:33:54)
Offline
A ten mechanizm w ogóle obsługuje interfejsy TAP? Tak sobie szukam informacji i w zasadzie w manualu to jedyne co znalazłem to taki zapis:
-w local_tun[:remote_tun] Requests tunnel device forwarding with the specified tun(4) devices between the client (local_tun) and the server (remote_tun). The devices may be specified by numerical ID or the keyword “any”, which uses the next available tunnel device. If remote_tun is not specified, it defaults to “any”. See also the Tunnel and TunnelDevice directives in ssh_config(5). If the Tunnel directive is unset, it is set to the default tunnel mode, which is “point-to-point”.
I nie ma nic o TAP, jedynie TUN.
Ostatnio edytowany przez morfik (2017-07-15 16:24:04)
Offline
Chyba właśnie TUN wymaga roota i logowania na roota na serwerze.
@Jacekalex, @morfik: pokażcie jak u was wygląda wynik polecenia
ip r
przy działającym tunelu.
Dodam, że ping na 10.0.0.2 (drugi koniec tunelu postawiony na serwerze) odpowiada
ping 10.10.0.2 -c 4 PING 10.10.0.2 (10.10.0.2) 56(84) bytes of data. 64 bytes from 10.10.0.2: icmp_seq=1 ttl=64 time=61.5 ms 64 bytes from 10.10.0.2: icmp_seq=2 ttl=64 time=62.2 ms 64 bytes from 10.10.0.2: icmp_seq=3 ttl=64 time=62.1 ms 64 bytes from 10.10.0.2: icmp_seq=4 ttl=64 time=61.7 ms --- 10.10.0.2 ping statistics --- 4 packets transmitted, 4 received, 0% packet loss, time 3001ms rtt min/avg/max/mdev = 61.517/61.914/62.213/0.299 ms
Ostatnio edytowany przez jacekz (2017-07-15 19:44:43)
Offline
Rzuć okiem na to:
https://wiki.debian.org/OpenVPN#Debian_Server_with_ … F_iOS_devices
Konkretnie ten fragment:
In client:
Kod:
# ip route add VPNSERVER_IP via LOCALGATEWAY_IP dev eth0 proto static # ip route change default via 10.9.8.5 dev tun0 proto static //client tun0 10.9.8.5
Priersza reguła dodaje trasę statyczną do serwera VPN przez aktualny interfejs dostarczający neta, a druga zmienia domyślną trasę routingu, żeby szła przez tunel VPN.
Dokładnie to samo próbowałem wytłumaczyć kilka postów wcześniej.
Ostatnio edytowany przez Jacekalex (2017-07-15 20:03:17)
Offline
ależ już to sprawdziłem - nie współpracuje:
po:
# ip route add ip_servera via 192.168.2.1 dev eth1 proto static # ip route change default via 10.10.0.2 dev tap9 proto static
mam:
ip r default via 10.10.0.2 dev tap9 proto static 10.10.0.0/24 dev tap9 proto kernel scope link src 10.10.0.9 ip_serwera via 192.168.2.1 dev eth1 proto static 192.168.2.0/24 dev eth1 proto kernel scope link src 192.168.2.102
Offline
Wygląda dobrze, działa to prawidłowo? czy są jakieś cyrki?
Offline
Nie działa.
Nie otwierają sie strony. Ping dochodzi tylko do Ip_serwera i 10.10.0.2.
Ostatnio edytowany przez jacekz (2017-07-15 20:48:43)
Offline
Pokaż wynik przy włączonym tunelu i ustawionym jak wyżej routingu:
lft -VV google.pl
Programy lft, mtr i traceroute musisz najpierw zainstalować, przyda się tez tcpdump i nmap.
Po prostu trzeba zobaczyć czy coś jest skopane na kompie czy na serwerze VPN.
Pingi sugerują, że serwer VPN ma jakiś problem.
Ostatnio edytowany przez Jacekalex (2017-07-15 21:06:53)
Offline
# lft -VV google.pl /usr/bin/lft: Option '-V' is not implemented in this wrapper /usr/bin/lft: Option '-V' is not implemented in this wrapper google.pl: Odwzorowanie nazwy jest chwilowo niemożliwe Cannot handle "host" cmdline arg `google.pl' on position 1 (argc 10)
# lft google.pl
google.pl: Odwzorowanie nazwy jest chwilowo niemożliwe Cannot handle "host" cmdline arg `google.pl' on position 1 (argc 10)
Ostatnio edytowany przez jacekz (2017-07-15 21:06:35)
Offline
Spróbuj tak:
lft 8.8.8.8
Offline
Jacekalex napisał(-a):
Spróbuj tak:
Kod:
lft 8.8.8.8
w odpowiedzi 30 razy * *
zresztą przy działającym necie też.
Ostatnio edytowany przez jacekz (2017-07-15 21:11:30)
Offline
jacekz napisał(-a):
Jacekalex napisał(-a):
Spróbuj tak:
Kod:
lft 8.8.8.8w odpowiedzi 30 razy * *
zresztą przy działającym necie też.
Gdzie dokładnie stoi ten serwer, czy to nie jest domowy komp, który ma od strony dostawcy netu jakieś blokady udostępniania netu?
Poza tym takie gwiazdki zdarzają się wtedy, jak po drodze są jakieś zmiany wartości TTL pakietu.
Pokaż:
ping -c3 8.8.8.8
Offline
To vps w Czechach
ping -c3 8.8.8.8 PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data. --- 8.8.8.8 ping statistics --- 3 packets transmitted, 0 received, 100% packet loss, time 2034ms
przy działającym necie (gdy wróce do starej trasy ip route replace default via 192.168.2.1to:
ing -c3 8.8.8.8 PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data. 64 bytes from 8.8.8.8: icmp_seq=1 ttl=46 time=51.4 ms 64 bytes from 8.8.8.8: icmp_seq=2 ttl=46 time=51.7 ms 64 bytes from 8.8.8.8: icmp_seq=3 ttl=46 time=51.6 ms --- 8.8.8.8 ping statistics --- 3 packets transmitted, 3 received, 0% packet loss, time 2001ms rtt min/avg/max/mdev = 51.491/51.617/51.712/0.207 ms
Ostatnio edytowany przez jacekz (2017-07-15 21:31:35)
Offline
Pingi dodszły przy działającym VPN i ustawionym routingu, czy przez standardowy interfejs internetowy bez VPNa?
Co to za firma w Czechach te VPSy sprzedaje?
Może postaw na serwerze proxy - np privoxy, i zobacz, czy net będzie działał przez ten proxy.
Ostatnio edytowany przez Jacekalex (2017-07-15 21:36:31)
Offline
Przez standardowy.
Aruba, mają tam jedno z datacenter.
jak pinguję ip_serwera, to mam odpowiedź zarówno przez eth1 jak i przez tap9 - wygląda na to że tunel jest ale nie działa :/
Powalczę z tym proxy.
Ostatnio edytowany przez jacekz (2017-07-15 21:41:52)
Offline
Privoxy?
masz tu działający do niedawna konfig:
cat /etc/privoxy/config
user-manual /usr/share/doc/privoxy-3.0.24/user-manual/ confdir /etc/privoxy logdir /var/log/privoxy filterfile default.filter logfile privoxy.log listen-address 192.168.0.1:8118 toggle 1 enable-remote-toggle 0 enable-remote-http-toggle 0 enable-edit-actions 0 enforce-blocks 0 buffer-limit 4096 forwarded-connect-retries 1 accept-intercepted-requests 1 allow-cgi-request-crunching 0 split-large-forms 0 keep-alive-timeout 5 socket-timeout 300 handle-as-empty-doc-returns-ok 1 debug 0
Pewnie będzie trzeba adres Ip i ścieżkę do manuala poprawić.
Ostatnio edytowany przez Jacekalex (2017-07-15 21:51:23)
Offline
Jacekalex napisał(-a):
Pewnie będzie trzeba adres Ip
Po prostu nie wiem jakiego IP i portu ma to słuchać.
Offline
Na adresie interfejsu tap serwera, czyli tam, gdzie dochodzą pingi.
Offline
Powiem szczerze że nie wiem jak wykorzystać obecność proxy na serwerze (ani czy ustawiłem poprawnie: listen-address 10.10.0.2:8118)
Szczerze... jak ktoś ma jakieś pomysły to zapraszam do podzielenia się nimi.
.
.
.
.
szukając w sieci pomysłów na ruszenie tego "vpn over ssh"
.
natrafiłem tu: http://xmodulo.com/how-to-set-up-vpn-over-ssh-in-linux.html
na transparentne proxy sshuttle, po zainstalowaniu proste:
# sshuttle -vr user@remote_host 0.0.0.0/0 --dns
zestawia nam połączenie - proste i działa - tylko nie wiem co o tym myśleć.
Offline
W przypadku Privoxy musisz ustawić w przeglądarce, żeby z niego korzystała.
Ustawiasz np w Preferencjach FF,żeby korzystał z proxy, i oto rezultat:
ss -ptu | grep firefox ESTAB 0 0 127.0.0.1:59532 127.0.0.1:8118 users:(("firefox",pid=20589,fd=75)) ESTAB 0 0 127.0.0.1:59606 127.0.0.1:8118 users:(("firefox",pid=20589,fd=121)) ESTAB 0 0 127.0.0.1:59542 127.0.0.1:8118 users:(("firefox",pid=20589,fd=105)) ESTAB 0 0 127.0.0.1:59544 127.0.0.1:8118 users:(("firefox",pid=20589,fd=111))
Ostatnio edytowany przez Jacekalex (2017-07-16 02:05:12)
Offline