SOCKS через SSH — не только для ICQ

    Сегодняшние проблемы с аськой напомнили об одном простейшем способе запуска SOCKS-прокси. Многие этот способ знают, но подозреваю, что не все, поэтому решил поделиться.

    Итак, что нужно:
    a) SSH-клиент (любой, под Linux или под Windows, главное, чтобы он позволял задавать нужные нам параметры, под Windows вполне подойдет putty)
    b) Доступ на любой сервер по ssh (в случае с аськой помогает любой буржуйский хостинг).



    Вводим команду:

    ssh -l логин -D 9999 имя_сервера

    и авторизуемся.

    Теперь по адресу локального хоста 127.0.0.1 на порту 9999 у вас есть свой собственный прокси-сервер, работающий по протоколу SOCKS. Настраиваем браузер или ICQ-клиент (я это уже сделал с Pidgin) и выходим в мир с IP своего сервера (http://whatismyip.com вам это подтвердит).

    Этот способ, кстати, позволяет более безопасно работать с важной информацией сети, находясь при этом в любом месте и выходя в сеть с любого провайдера (всегда можно зайти «под нужным IP»).

    UPD: Сегодня Pidgin (видимо, и многие другие ICQ-клиенты) снова начал работать без прокси.
    Поделиться публикацией

    Похожие публикации

    Комментарии 42

    • НЛО прилетело и опубликовало эту надпись здесь
        –1
        Все верно, это делается на основе SSH-туннеля. SOCKS-прокси при этом создается для тех клиентов, которые не могут работать с SSH-туннелем непосредственно.
        • НЛО прилетело и опубликовало эту надпись здесь
            0
            Это тоже полезная фича, но я-то писал как раз не совсем об этом. Для Putty это будет выглядеть в точности так:
            putty.exe -D 9999 адрес_сервера
              0
              Вы помните не правильно — по крайней мере в openssh есть еще SOCKS4/SOCKS5 сервер.
                0
                Вы помните не совсем правильно ssh позволяет делать port forwarding, SOCKS 4/5 (dynamic port forwarding) а в последних версиях OpenSSH и VPN (только на UNIX)
            +2
            ssh ещё и vpnы умеет делать — организовывать туннель между tap-девайсами…

            Вообще, классная это штука. Сколько велосипедов, сколько отдельных утилит изобретено — а ssh их заменяет: telnet, прокси, ftp, vpn…
              –1
              а пример буржуйского хостинга можна? нужен порт 443 :/
                0
                Один из самых дешевых VPS: avanpad.com/index.php?com=vds (минимальный тарифный план $15.95 / мес.)
                А вообще, вполне вероятно, что есть и какие-то бесплатные варианты… :)
                  0
                  отстойный хостинг. и не буржуйский вовсе
                    0
                    а я не говорил, что он хороший :)
                      0
                      но все-таки буржуйский — сервера в Амстердаме
                    0
                    quantact.com
                      0
                      vpslink.com — 7$, paypal
                      0
                      Не понимаю как оперу можно заставить работать через SOCKS.
                      Кстати, какой порт нужно указывать для Pidgin'а? И какой именно SOCKS: 4 или 5?
                        0
                        Это SOCKS5. К сожалению, Опера с ним не работает в принципе.

                        Порт задается тот, который был указан в команде, т.е. в моем примере 9999
                          0
                          К сожалению туннель ни к российским серверам, ни к украинским не помогает :( Pidgin по-прежнему пишет о смене протокола.
                            0
                            Так я написал, что буржуйский хостинг нужен…
                              +1
                              вам tor поможет
                              0
                              А если попробовать его скормить опере через PAC?
                            0
                            попробовал. миранда не хочет коннектится через нево. просто ничего не происходит
                              0
                              на хостинге могут быть прикрыты порты наружу
                              0
                              Адиум заработал через тунель
                                0
                                Если не секрет, к какому серверу Вы коннектитесь?
                                0
                                да нет не секрет
                                тута все написано rodder13.livejournal.com/91779.html
                                  0
                                  Я всё не так понял :) Подумал было, что Вы воспользовались советом mancocapac и создали у себя SSH-туннель. Поэтому и интересовался к какому SSH-серверу Вы коннектились: к своему или может быть к какому-нибудь бесплатному.
                                  Через SOCKS я тоже заставил Pidgin работать. Правда не знаю насколько это безопасно с точки зрения воровства пароля к моему UIN'у.
                                    0
                                    >>Через SOCKS я тоже заставил Pidgin работать.
                                    А можно поподробнее, плз?
                                      0
                                      Конечно можно :)
                                      Идёте по адресу http://www.aliveproxy.com/socks5-list/ и выбираете себе первый понравившийся адресок. Далее открываете pidgin, кликаете Accounts -> Manage Accounts, в списке аккаунтов выбираете аськин, жмёте Modify, переходите на вкладку Advanced, в выпадающем списке Proxy type выбираете SOCKS 5 и прописываете адрес сервера и порт в поля Host и Port.
                                      Однако не всегда удаётся попасть на работающий SOCKS-прокси. Если с первого раза не получилось, попробуйте просто прописать другой адрес. Удачи!
                                        0
                                        UPD: pidgin снова стал работать без плясок с бубном. Тема прокси на неопределённое время снова стала неактуальной.
                                          0
                                          Ага, точно, уже работает. Спасибо за сообщение.
                                    0
                                    Там на этот прокси нагрузка некислая сейчас, надо было мне в инете еще парочку другую опубликовать. Пойду искать :)
                                    Но при всем при этом, он продолжает работать, работать, работать, работать, работать… © Батарейки
                                    +4
                                    PuTTY (а точнее SSH) поддерживает протокол SOCKS5.
                                    В GUI Putty настраивается так
                                    Connection — SSH — Tunnels
                                    в source port ввести желаемый порт например 1080 (1080 является стандартом), выбрать тип Dynamic и нажать кнопку Add.
                                    Затем, если программа поддерживает SOCKS — вводим адрес сервера 127.0.0.1 порт 1080, если не поддерживает — используем программы типа FreeCap.
                                      –1
                                      мне кажется, на самом сервере еще надо включить пересылку пакетов
                                      echo 1 > /proc/sys/net/ipv4/ip_forward
                                      и добавить в /etc/sysctl.conf чтобы после перезагрузки работало
                                      net.ipv4.conf.default.forwarding=1
                                        +1
                                        Это надо для ната или для гейта.
                                        по SSH, вы пробрасываете порт, и все запросы как бы от той машины идут.
                                        Грубо говоря, поставьте сквид и форвардинг портов включать не надо.
                                          +1
                                          В данном случае не надо.
                                          +1
                                          Спасибо. С виртуальным хостингом dreamhost.com работает
                                            0
                                            Подскажите как, в частности — на венде? Захожу по SSH на дримхост, для примера — конфигурирую Flock (вариант Firefox-а) чтобы тот использовал proxy (manual proxy configuration, HTTP, SOCKS host — localhost:1080). Браузер просто никуда не коннектится.
                                              0
                                              ssh клиент поддерживает туннелинг?
                                              возьмем Putty, как простейший вариант:
                                              необходимо не забыть сконфигурять Connection\SSH\Tunnels:

                                              Source port: 1080
                                              Destination: <пусто>
                                              Dynamic +
                                              Auto +

                                              потом уже 127.0.0.1:1080 прописывать в настройках браузера
                                          0
                                          Я этим делом пользуюсь для скачивания из инета научных статей. Подключаешься по SSH к университетскому компу, у которого есть доступ к журналам, и можешь из дома качать себе статьи, очень удобно )
                                            +1
                                            > Теперь по адресу локального хоста 127.0.0.1 у вас есть свой собственный прокси-сервер, работающий по протоколу SOCKS. Настраиваем браузер или ICQ-клиент

                                            Поправьте пожалусто, что проксисервер будет доступен на пору 9999. А то людЯм непонятно, как браузер с мессенджером настраивать.
                                              0
                                              Вы правы. Поправил.

                                            Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

                                            Самое читаемое