суббота, 8 января 2011 г.

RDP и VNC через прокси

К сожалению, не все программы, работающие с Интернетом, имеют в своих настройках порой очень нужный пунктик для доступа в сеть через прокси сервер. Иногда спасает использование export http_proxy, но не для всех программ это работает. Например, я столкнулся с невозможностью соединения по VNC/RDP через прокси.

Но не будь решения данной проблемы, я бы не стал писать этот текст, так ведь? :) Да, решение есть и довольно простое. Нужно установить программу proxy-chains и немного настроить её. После установки программы нужно отредактировать файл /etc/proxychains.conf, в частности, в самом конце файла раздел [ProxyList]


По-умолчанию там написано:
socks4 127.0.0.1 9050
я использую http прокси squid, поэтому эту строку закомментирую и добавлю свою:
http 192.168.1.1 8080
Замечу, что так как файл настроек находится в /etc, то прав для записи у обычного пользователя нет и редактировать его необходимо с правами пользователя root, например, так:
sudo gedit /etc/proxychains.conf
Чтобы запустить программу через proxy-chains, нужно набрать команду:
proxychains <команда>
например, вот так (для подключения по RDP):
proxychains rdesktop 10.0.1.1
или так (для VNC):
proxychains vinagre

7 комментариев:

  1. Отлично, а если требуется авторизация, то там какой синтаксис?

    ОтветитьУдалить
  2. Полезный пост :)
    Правда у меня на работе всё равно не получилось приконектиться по RDP

    ОтветитьУдалить
  3. >>Отлично, а если требуется авторизация, то там какой синтаксис?

    http proxy-server-address proxy-server-port user password

    ОтветитьУдалить
  4. Если хотите работать по RDP, не забывайте открыть порт 63389 на прокси сервере, например для SQUID - это метод CONNECT

    У меня вот так работает:

    sysgovd@ubusw:~$ sudo cat /etc/squid/squid.conf | grep RDP
    acl port_RDP port 3389 # RDP
    #http_access allow RDP
    http_access allow CONNECT port_RDP
    sysgovd@ubusw:~$

    ОтветитьУдалить
  5. А есть возможность направить через прокси все соедининия, которые идут на конкретный IP?

    Допустим у меня есть приложение, которое соединяется с 192.168.0.99 и с 192.168.0.98 и вот я хочу чтобы с адресом 192.168.0.98 оно соединялось через проксю, а для 192.168.0.99 коннект остался бы прямым.

    Заранее спасибо =)

    ОтветитьУдалить
  6. да, можно. через iptables завернуть весь исходящий трафик для 192.168.0.98 на прокси, а остальной пустить как есть. К сожалению как описать это правилами iptables, рассказать не смогу. Почитайте маны, поспрашивайте гуру на форумах ))

    ОтветитьУдалить