Сетевые соединения в Jabber
Порты[править]
Стандартными портами для подключения Jabber-клиента к серверу являются 5222 и 5223. Порт 5222 применяется для соединения с использованием STARTTLS, а также незащищенного соединения (у тех серверов, которые позволяют это), а 5223 — для шифрования с помощью SSL или TLS.
Нестандартные порты[править]
Некоторые серверы позволяют подключение и к другим портам, изначально не предназначавшихся для 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. Таким вот простым способом можно обойти запрет на подключение к необходимым вам серверам.