Przekierowywanie całego ruchu przez skarpety proxy za pomocą ssh -D


9

czy jest to łatwy sposób na przekierowanie całego ruchu przez proxy ssh za pomocą -D?

Mogę tak skonfigurować indywidualne aplikacje, ale chciałbym, aby konfiguracja kierowała cały ruch na maszynie. Dzięki za pomoc!


Zapomniałem powiedzieć, że tak idealnie byłem na Linuksie, czymś, przez co mogę trasować za pomocą iptables.
grm

Odpowiedzi:


10

W systemie Linux:

  1. iptables -t nat -A WYDAJNOŚĆ! -d 127.0.0.0/8 -j REDIRECT - do 1081
  2. Uruchom program, który nasłuchuje 1081, pobiera rzeczywisty adres docelowy bez przekierowań, negocjuje z serwerem SOCKS i przekaźnikami.

Napisałem taki program do prywatnego użytku w Perlu (jakość prototypu) i piszę lepszą wersję w C. Nie został jeszcze opublikowany.

Aktualizacja: teraz opublikowana: http://github.com/vi/socksredirect/ Użyj prototype.pl. Wyślij mi powiadomienie, jeśli chcesz opracować lepszą wersję.

Aktualizacja 2 Utworzono nieco lepszą wersję: http://github.com/vi/tcpsocks i poprawkę do Socat 2: http://github.com/vi/socksredirect/blob/master/socat-2.0.0- b3-REDIRECT.patch

PS Większość mojego ruchu (a czasem niektórych sąsiadów) przechodzi teraz przez tcpsocks-> ssh.


Bardzo ciekawy projekt Vi. Dzięki! Spojrzę na to.
grm

Prawdopodobnie powinieneś użyć więcej reguł iptables, aby wybrać ruch, który chcesz socksified. Używam „iptables -t nat -A WYJŚCIE -j QQQ”, następnie kilka „iptables -t nat -A QQQ <checks> -j RETURN” i na koniec „iptables -t nat -A QQQ -p tcp -j REDIRECT - -do 1234 ”.
Vi.

Dziękuję Ci! Zastanawiałem się, czy było to wykonalne, kiedyś znalazłem się na mojej długiej liście pomysłów projektowych.
Tobu,

@Tobu, zaimplementowałem to więcej: teraz jest łatka Socat ( github.com/vi/socksredirect/blob/master/... ) dla tego, a także lekki program tcpsocks ( github.com/vi/tcpsocks )
Vi .

1
@Tanmay, na urządzeniu tun zobaczysz tylko pakiety TCP i trudno byłoby zdekodować je do strumienia bajtów (potrzebujesz czegoś takiego slirp). z REDIRECT lub TPROXY wystarczy użyć zwykłego, recvktóry daje zdekodowane dane bez nagłówków TCP.
Vi.


2

Może zamiast tego powinieneś rozważyć skonfigurowanie VPN.


Czy nie wymagałoby to większego dostępu po stronie bramy?
grm

Mam konfigurację serwera VPN (poptop) w domu na Ubuntu. A w pracy po prostu używam wbudowanego klienta VPN w systemie Windows, aby się z nim połączyć. Nie przejmuj się moim administratorem sieci ani nic takiego.
Espennilsen

1

Nie sądzę, że jest na to sposób, ale może możesz wypróbować programy takie jak FreeCap (Windows), SocksCap (Windows) lub proxy (Linux). Te programy mogą ci trochę pomóc.


0

Zależy, jakiego systemu operacyjnego używasz. Jeśli korzystasz z systemu MacOS, istnieją globalne ustawienia proxy, z których powinna korzystać każda aplikacja, nawet jeśli są tacy, którzy ich nie szanują (np. Firefox).


W szczególności w systemie MacOS należy zweryfikować zaufanie do globalnych ustawień proxy.
chiggsy,

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.