У меня возникают трудности с подключением к веб-сайтам с использованием Firefox через туннелированный прокси SOCKS. SOCKS4 / SOCKS5 не имеет значения.
Я установил туннель с
ssh -D 1234 id@remotehost.example.com, затем укажите прокси SOCKS Firefox to localhost на tcp / 1234.
Один из ключевых моментов, который следует отметить здесь, заключается в том, что туннель, который я настраиваю, находится на удаленном сервере, который я использовал для этой цели в течение многих лет. Я проксировал FF и другие браузеры через него для многих тысяч сеансов на десятках или более разных платформах во всех основных операционных системах. Как только я его работаю, он всегда работает плавно. Однако на этом конкретном экземпляре FF возникают странные и прерывистые проблемы.
Проблема в том, что FF, похоже, не хочет «устанавливать» соединение. Я набираю URL-адрес или нажимаю ссылку, и я сразу получаю «Невозможно подключиться» / «Firefox не может установить соединение с сервером в ...» Когда я говорю «мгновенно», я имею в виду, что это всплывает ко мне в небольшая часть секунды.
Итак, я нажал «Попробовать еще раз» или небольшую перезагрузку стрелки. И я делаю это снова и снова, и снова, как только могу. И после нескольких попыток - иногда 3-4, иногда целых 15-20 - я получаю связь, и все работает! Таким образом, соединение туннель / SOCKS доступно, просто FF отказывается использовать его, пока его не издеваются.
У меня есть несколько надстроек, но я отключил их выборочно без помощи и b) у меня есть (из курс) попробовал безопасный режим. Нет изменений.
Любые предложения?
Я должен использовать прокси каждый день на работе, чтобы подключиться к серверам с другой стороны брандмауэра. Я также использую Firefox, Chrome и Ubuntu 16.04.
EDIT: Я забыл одну часть этого. Мне пришлось добавить тайм-аут в конфигурационный файл ssh, или мой туннель истечет, и я потеряю свое соединение. Как только я добавил следующий материал, мое соединение остается открытым:
В ~/.ssh/config добавьте следующую информацию (если файл не существует, создайте его.). Это будет отправлять серверу на ваш туннель каждые 15 секунд.
Host *
ServerAliveInterval 15
Открываю туннельное соединение с помощью следующей команды:
ssh -CfND 1234 username@proxyhost
Затем в Firefox под , если файл не существует, создайте его. в конфигурации прокси-сервера вручную я заполняю только EDIT: с 127.0.0.1 и портом: 1234. Затем я убеждаюсь, что выбран SOCKS v5. Также обратите внимание, что у меня нет ничего в поле Без прокси для:.
Я могу без проблем подключиться к моим хостам.
Тогда для Chrome я запускаю командную строку, поэтому мне не нужно устанавливать настройки в Chrome каждый раз, когда я хочу пройти через прокси-сервер, а затем без прокси. Для подключения Chrome к прокси-серверу я запускаю следующую строку:
nohup google-chrome-stable --proxy-server="socks5://127.0.0.1:1234" & > /dev/null 2>&1
from ssh manpage
-C Requests compression of all data (including stdin, stdout,
stderr, and data for forwarded X11, TCP and UNIX-domain connec‐
tions). The compression algorithm is the same used by gzip(1),
and the “level” can be controlled by the CompressionLevel option
for protocol version 1. Compression is desirable on modem lines
and other slow connections, but will only slow down things on
fast networks. The default value can be set on a host-by-host
basis in the configuration files; see the Compression option.
-f Requests ssh to go to background just before command execution.
This is useful if ssh is going to ask for passwords or
passphrases, but the user wants it in the background. This
implies -n. The recommended way to start X11 programs at a
remote site is with something like ssh -f host xterm.
-N Do not execute a remote command. This is useful for just for‐
warding ports.
-D [bind_address:]port
Specifies a local “dynamic” application-level port forwarding.
This works by allocating a socket to listen to port on the local
side, optionally bound to the specified bind_address. Whenever a
connection is made to this port, the connection is forwarded over
the secure channel, and the application protocol is then used to
determine where to connect to from the remote machine. Currently
the SOCKS4 and SOCKS5 protocols are supported, and ssh will act
as a SOCKS server. Only root can forward privileged ports.
Dynamic port forwardings can also be specified in the configura‐
tion file.
Надеюсь, что это поможет!