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

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


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


Через несколько секунд на Вашем компьютере на порту 12345 будет доступен SOCKS-сервер, который можно прописать в настройках Jabber-клиента. Учтите, Вам необходима авторизация по ключам со шлюза '''host2''' на компьютер '''host3'''.
Через несколько секунд на Вашем компьютере на порту 12345 будет доступен SOCKS-сервер, который можно прописать в настройках Jabber-клиента.


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