SSH-туннель не работает в Китае

SSH-туннель не работает в Китае

В прошлом году я работал в Китае несколько месяцев. Я так и не потрудился настроить настоящий VPN, а просто создал SSH-туннель и изменил настройки прокси-сервера в браузере, чтобы подключаться через него.

Все работало отлично (кроме вспышки, конечно), но это нормально.

Однако теперь я снова в Китае, но у меня возникли проблемы с этим подходом. Я делаю то же самое, что и в прошлый раз, и согласноhttps://ipcheckit.com/Мой IP-адрес действительно является IP моего (частного) сервера в США, и я вхожу на свой сервер, используя отпечаток пальца, который я создал задолго до поездки в Китай, так что MITM не должен быть возможен. Более того, сертификат от ipcheckit.com от GeoTrust - так что все должно быть в порядке

Однако я все еще не могу получить доступ к сайтам, которые заблокированы в Китае. Есть идеи, как это возможно?

решение1

Если вы используете linux или osx, вы можете попробовать использовать sshuttle для создания вашего ssh-туннеля. Это позволит убедиться, что все пакеты туннелируются.

https://github.com/apenwarr/sshuttle

./sshuttle -r имя_пользователя@sshserver 0/0 -vv

Дополнительно используйте публичный DNS-сервер, например Google или OpenDNS.

Также, если вы хотите проксировать свои DNS-запросы, команда будет такой.

./sshuttle --dns -vvr имя_пользователя@sshserver 0/0

Sshuttle прекрасно работает для меня на протяжении последних 2 лет, и я могу получить доступ ко всему, что заблокировано вьетнамскими интернет-провайдерами.

Единственным недостатком является то, что он поддерживает только аутентификацию на основе пароля (AFAIK).

решение2

При использовании SSH-прокси для обхода веб-сайтов, заблокированных DNS-фильтрацией, DNS-запросы могут не проходить через прокси-сервер, что приводит к утечке DNS и отправке DNS-запросов на цензурирующий DNS-сервер. Чтобы проверить, есть ли утечки, перейдите наhttps://ipleak.net/.

Чтобы устранить проблему при использовании настроек прокси-сервера Firefox, обязательно установите флажок «Прокси-DNS при использовании SOCKS v5».

Если ты хочешьвсепрограмм для использования прокси-DNS в Windows, это может быть немного сложнее.Это ТАК ответпредлагает запустить собственный DNS-сервер, который перенаправляет ваши DNS-запросы через прокси. Если у кого-то есть более простой метод, пожалуйста, дайте мне знать, и я обновлю этот ответ.

Я использовал системные настройки прокси-сервера на macOS, и, похоже, никаких утечек DNS там не обнаружено.

решение3

Попробуйте использоватьТОРчерез ваш туннель ssh используйте ваш туннель ssh в настройках прокси в TOR

решение4

Вот как можно туннелировать все через sshuttle, включая DNS, используя аутентификацию с открытым ключом.

sshuttle --dns -vr <remote username>@<remote IP address> 0/0 --ssh-cmd 'ssh -i <path to private key>'

Связанный контент