Сервер SOCKS5 на MikroTik. Настройка и тестирование.

Микротик — очень мощный инструмент, который (IMHO) должен быть в хозяйстве любого сетевого инженера. Огромный функционал и набор инструментов, постоянно пополняющийся с каждым релизом. В Changelog к RouterOS 6.47 (beta) был замечена поддержка SOCKS5, которую лично я ждал несколько лет (и много кто еще, судя по многочисленным «Feature Request» на forum.mikrotik.com):

changelog

Судя по одной из веток вышеупомянутого форума, поддержка встроенного SOCKS5 сервера началась с версии 6.47beta19.

Настройка

Настройка, как всегда с MikroTik, довольно простая и укладывается в четыре строчки.
В качестве испытуемого выступил виртуальный сервер с CHR (Cloud Hosted Router), обновленный до 6.47beta53.

Префикс «beta» в версии RouterOS означает, что она предназначена исключительно для тестирования и отправки баг-репортов в support[at]mikrotik.com. Я настоятельно рекомендую не торопиться с апгрейдом железок под нагрузкой и дождаться Long-Term или хотя бы Stable релиза. Если же вы решили обновиться, то внимательно читайте Changelog, чтобы быть в курсе всех изменений и возможных проблем.

Настраиваем SOCKS5-сервер, выбираем авторизацию по паролю (есть возможность сделать открытым), в качестве порта указан 3327 (отличный от стандартного 1080), чтобы не попасть в скан-листы ботнетов:

ip socks set enabled=yes version=5 port=3327 auth-method=password

Далее добавляем пользователя:

ip socks users add name=test_socks5 password=Str0nGP@SSw0RD

Создаем правило-исключение в фаерволе:

ip firewall filter add chain=input protocol=tcp dst-port=3327 action=accept comment="SOCKS5 TCP"

И перемещаем наше правило перед правилом типа «drop»:

ip firewall filter move [/ip firewall filter find comment="SOCKS5 TCP"] 0

Готово! На нашем микротике поднят SOCKS5 прокси-сервер.

Проверка

Как и любой житель РФ, имея прокси-сервер в Европе, сразу же вспоминаю про телеграм, на нем и была проверена работоспособность свеженастроенного SOCKS5-сервера:

telegram

Звонки также прекрасно работают, несмотря на ограничение Free версии CHR в 1Mbps.

Далее стало интересно, как будет выглядеть POF (Passive OS Fingerprint), вносимый Микротиком (проверял на WhatLeaks):

С выключенным SOCKS5 С включенным SOCKS5
socks_down socks_up

Видно, что система определяется как Linux, что логично (ибо именно его ядро лежит в основе ROS) и не может не радовать. Да, можно было подменить и user-agent, но у нас несколько другая задача.

При этом на самом микротике, как и положено настоящему серверу, выводится статистика по подключениям и трафику:

stat

  1. 5
  2. 4
  3. 3
  4. 2
  5. 1
(2 голоса, в среднем: 5 из 5)

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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *