Nie można połączyć się z serwerem SSH, gdy VPN jest włączony


9

Niedawno odkryłem, że kiedy moja stacja robocza łączy się za pośrednictwem połączenia VPN, jej serwer SSH nie może być połączony ze zdalnej strony. Jestem pewien, że jest to problem z routingiem, ponieważ klient VPN zmienia domyślną bramę na swojego partnera (serwer VPN) połączenia ppp.

Czy istnieje rozwiązanie, dzięki któremu zarówno serwer SSH, jak i klient VPN są zadowoleni?

Odpowiedzi:


2

Podczas korzystania z VPN ogólnie sieć VPN przejmuje cały interfejs, dzięki czemu można routować tylko z dowolnego miejsca w sieci VPN, a nie z Internetu w ogóle. Większość ludzi rozwiązuje ten problem, uruchamiając vm (virtualbox itp.) I łącząc się z VPN na tej maszynie wirtualnej, aby nie w pełni podłączał głównego połączenia do rzeczywistej maszyny.


Możesz wykonać kilka sztuczek routingu, aby przekierować dane z VPN w jedną stronę, a inne w drugą stronę (różne bramy itp.), Ale tak naprawdę jest o wiele łatwiejsze w użyciu VirtualBox. :-)
Stu

Dzieki za sugestie! Chciałbym wiedzieć, jaka sztuczka routingu może to osiągnąć.
btw0

Używam VM stu, ale nie jestem w stanie ocenić VPN na hoście, ponieważ muszę wykonać pracę deweloperską.
Jamie Hutber,

och, sugerowałem w drugą stronę. Korzystaj z VPN wyłącznie w vm, co pozostawia maszynę reakcji na otwarty i bezpłatny dostęp do Internetu.
Stu

2

Przed rozpoczęciem przygody za pośrednictwem konfiguracji sieci sprawdź, czy dany serwer ssh nasłuchuje na interfejsie VPN. Może jest związany z określonym interfejsem na twoim serwerze.

Przykładowe netstat -adane wyjściowe:

 Proto Recv-Q Send-Q Local Address    Foreign Address   State      
 tcp        0      0 *:ssh            *:*               LISTEN      

Serwer ssh w tym przykładzie nasłuchuje na wszystkich interfejsach (oznaczonych gwiazdką w *:ssh. Jeśli zamiast tego w systemie jest adres hosta, serwer ssh jest powiązany z określonymi interfejsami.

Edytuj /etc/ssh/sshd_configi ustaw, ListenAddress 0.0.0.0aby dostosować to, jeśli to konieczne.

Jeśli sshd już słucha poprawnych interfejsów, możesz wejść do lochu routingu :-)


1
Na jaki adres należy ListenAddressustawić? Adres IP serwera na interfejsie lokalnym? Adres IP routera? Coś innego?
Psychonaut,

0

Mówisz o dzielonym tunelowaniu. Jeśli znasz już narzędzie wiersza polecenia ROUTE.EXE , możesz sprawdzić trasy umieszczone przez klienta VPN i je usunąć. Następnie ponownie dodasz jeden, aby umożliwić przepływ ruchu do Twojej firmowej sieci LAN przez bramę VPN.

W szczególności byś użył

route print

... aby uzyskać listę wpisów routingu. Nie widząc danych wyjściowych, wygląda na to, że Twój klient VPN umieściłby domyślny (0.0.0.0) wpis z bramą będącą bramą równorzędną VPN. Możesz użyć

route delete 10.*

... na przykład, aby usunąć wszystkie wpisy wskazujące na sieć 10.xxx.

Następnie możesz użyć

route add 10.0.0.0 mask 255.0.0.0 10.0.99.99

... gdzie pierwszy adres (10.0.0.0 255.0.0.0) to sieć firmowa i maska, a drugi adres to brama zdalna.

Będziesz musiał uruchomić to za każdym razem, gdy się połączysz, więc możesz chcieć to zrobić.

Uwaga dodatkowa: alternatywą byłoby przekonanie firmy do skonfigurowania sieci VPN do korzystania z tunelowania dzielonego; argumentem przemawiającym za tym jest zmniejszenie przepustowości i (IANAL) zmniejszenie odpowiedzialności za niefirmowy ruch internetowy przepływający przez ich sieć.

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.