Сетевые соединения в Jabber: различия между версиями

Материал из Мир Jabber
Перейти к навигацииПерейти к поиску
м
м (вернул про socks - в двух словах пусть будет разъяснено, зачем оно вообще надо)
Строка 23: Строка 23:
== Подключение через SOCKS-прокси ==
== Подключение через SOCKS-прокси ==


Многие Jabber-клиенты позволяют подключаться к Jabber-серверам, используя [[ru_wikipedia:SOCKS|SOCKS]]-прокси. Настройка производится аналогично настройке при подключении через HTTP-прокси — укажите адрес SOCKS прокси-сервера, порт для подключения, при необходимости — имя пользователя и пароль. Эти параметры нужно узнать у администратора вашей сети или из настроек веб-браузера, аналогично случаю с HTTP-прокси.
'''[[ru_wikipedia:SOCKS|SOCKS]]''' — сетевой протокол, который позволяет приложениям прозрачно подключаться к серверам за межсетевыми экранами. Приложение подключается к SOCKS-прокси, а тот передает запросы серверу.
 
Многие Jabber-клиенты позволяют подключаться к Jabber-серверам, используя SOCKS-прокси. Настройка производится аналогично настройке при подключении через HTTP-прокси — укажите адрес SOCKS прокси-сервера, порт для подключения, при необходимости — имя пользователя и пароль. Эти параметры нужно узнать у администратора вашей сети или из настроек веб-браузера, аналогично случаю с HTTP-прокси.


== Заключение ==
== Заключение ==

Версия 23:06, 28 июня 2011

Порты

Стандартными портами для подключения Jabber-клиента к серверу являются 5222 и 5223. Порт 5222 применяется для шифрованного соединения с использованием TLS, а также незащищенного соединения, а 5223 — для шифрования с помощью SSL.

Нестандартные порты

Некоторые серверы позволяют подключение и к другим портам, изначально не предназначавшихся для Jabber, например, FTP (21), HTTP (80), HTTP proxy (8080 или 3128) или HTTPS (443). Это может быть полезно в случае недоступности стандартных портов. Для использования этой возможности откройте менеджер учетных записей в своём Jabber-клиенте и перейдите на вкладку настроек сетевых подключений. Отметьте опцию принудительного указания сервера и порта и впишите необходимые значения, после чего переподключите учетную запись.

Подключение через HTTP-прокси

Работа через прокси типична для офисных сетей. Как правило, используется прокси типа HTTP/HTTPS, уточнить можно у системного администратора конкретной сети.

При настройке клиента Jabber нужно указать:

  • тип прокси (обычно HTTP/HTTPS);
  • адрес сервера прокси (можно посмотреть в своём браузере, например, в Internet Explorer в «свойствах обозревателя» на вкладке «соединение» под кнопкой «Cеть»);
  • порт сервера прокси (обычно 3128, но может быть и другой, также можно посмотреть в своём браузере);
  • если прокси требует ввода логина и пароля, их нужно указать в соответствующих полях.

После настройки нужно попробовать соединиться. Если соединение не проходит, наверняка в настройке сервера прокси запрещено соединение с портами 5222 или 5223 и нужно использовать «обходной маневр»: соединяться с сервером по порту, характерному для обычного веб, к примеру, 443. Но не все серверы jabber принимают соединение на этом порту, список таких серверов указан параграфом выше. Если вы использует другой сервер и он не настроен на работу через 443 порт, вам придётся регистрироваться на сервере, который имеет такую возможность, например, jabber.ru.

Подключение через SOCKS-прокси

SOCKS — сетевой протокол, который позволяет приложениям прозрачно подключаться к серверам за межсетевыми экранами. Приложение подключается к SOCKS-прокси, а тот передает запросы серверу.

Многие Jabber-клиенты позволяют подключаться к Jabber-серверам, используя SOCKS-прокси. Настройка производится аналогично настройке при подключении через HTTP-прокси — укажите адрес SOCKS прокси-сервера, порт для подключения, при необходимости — имя пользователя и пароль. Эти параметры нужно узнать у администратора вашей сети или из настроек веб-браузера, аналогично случаю с HTTP-прокси.

Заключение

После прочтения предыдущих разделов, думаю, становится понятно, что запретить использовать джаббер пока вам доступен хоть какой-то порт в интернет невозможно. Допустим, если у вас на работе перекрыто подключение по стандартным портам (5222 и 5223), либо закрыт доступ на любые другие сервера, кроме корпоративного — можно использовать подключение по нестандартным портам, использовать корпоративный либо анонимный HTTP-прокси. Также можно воспользоваться SOCKS-подключением через корпоративный прокси, либо использовать прокси, предварительно настроенный у себя дома (если у вас, конечно, домашний компьютер имеет внешний IP-адрес).

Приведу реальный пример такого «экстремального» подключения на примере Unix-like систем (пользователи Windows могут воспользоваться аналогичной возможностью в putty). Допустим, на вашем компьютере нет возможности подключиться к публичному Jabber-серверу, но есть возможность подключиться по SSH к некоему шлюзу, имеющему выход на другой компьютер, на котором есть доступ к необходимому вам серверу. Тогда можно воспользоваться замечательным свойством SSH для пробрасывания необходимых портов и использования SSH в качестве SOCKS-прокси. Выполните команду

user1@host1~$ ssh -tL 12345:localhost:12345 user2@host2 "ssh -D 12345 user3@host3"

Через несколько секунд на вашем компьютере на порту 12345 будет доступен SOCKS-сервер, который можно прописать в настройках Jabber-клиента.

Как это работает? Когда вы со своего компьютера host1 подключаетесь на шлюз host2, порт 12345 шлюза становится доступен локально на Вашем компьютере, т.е., вы обращаетесь к нему так, как будто находитесь на host2. В свою очередь, после вашего логина на шлюзе выполняется команда «ssh -D 12345 user3@host3», которая создает SOCKS-сервер, доступный на этом же самом порту — 12345 и забирающий трафик с компьютера host3. В итоге ваш Jabber-клиент подключается к сети так, как если бы он был запущен на host3. Таким вот простым способом можно обойти запрет на подключение к необходимым вам серверам.

Ссылки