Я прекрасно понимаю, что вас достали вездесущие микротики, но это действительно интересно. На самом деле статья написана с задержкой в 4 месяца (поддержка SOCKS5 появилась еще в январе 2020 года), но лучше поздно, чем никогда, тем более что информации об этом не так много и мало кто в курсе.
Итак, давайте начнем!
Предыстория
Микротик — очень мощный инструмент, который (IMHO) должен быть в хозяйстве любого сетевого инженера. Огромный функционал и набор инструментов, постоянно пополняющийся с каждым релизом. В Changelog к RouterOS 6.47 (beta) был замечена поддержка SOCKS5, которую лично я ждал несколько лет (и много кто еще, судя по многочисленным «Feature Request» на forum.mikrotik.com):
Судя по одной из веток вышеупомянутого форума, поддержка встроенного 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-сервера:
Звонки также прекрасно работают, несмотря на ограничение Free версии CHR в 1Mbps.
Далее стало интересно, как будет выглядеть POF (Passive OS Fingerprint), вносимый Микротиком (проверял на WhatLeaks):
С выключенным SOCKS5 | С включенным SOCKS5 |
---|---|
Видно, что система определяется как Linux, что логично (ибо именно его ядро лежит в основе ROS) и не может не радовать. Да, можно было подменить и user-agent, но у нас несколько другая задача.
При этом на самом микротике, как и положено настоящему серверу, выводится статистика по подключениям и трафику:
Заключение
На самом деле многого не хватает (например, поддержки аутентификации по RADIUS), но я искренне верю в то, что и данная опция будет доработана. Важно заметить, что это все таки роутер и основная его задача — форвардинг трафика, а остальные «фичи» это уже скорее просто приятно. В любом случае осознание того, что железка за 50$ столько всего умеет, будоражит воображение.
На этом все, спасибо за внимание :)
crawlingroof
Осталось дождаться openvpn по udp, ну и wireguard до кучи и счастье станет полным.
V0ldemar Автор
UDP в OVPN был обещан в ROS 7, а ее мы уже дождались :) Так что еще немного.
А WireGuard да, думаю, еще придется подождать.
ripper1778
Что все так носятся с этим WireGuard
zenkov
Ну я бы лично хотел использовать Mullvad VPN, а с текущей прошивкой это невозможно, потому приходится использовать ProtonVPN с IKEv2.
ValdikSS
Тоже не понимаю. Это просто туннель. Современный, быстрый, шифрованный, но просто туннель, без автонастройки, без передачи параметров, подходящий только для серверного использования. Казалось бы, IPsec существует не первый десяток лет, безопасный, скоростной, по функциям опережает WireGuard без вопросов, но нет, будем адаптировать неподходящий инструмент под неподходящие нужды.
А на мобильных устройствах и в Windows IPsec явно будет производительней и менее требовательней к ресурсам и батарее, т.к. реализован в ядре, а не использует TUN/TAP.
Wireguard — удобная замена GRE или IPIP со встроенным шифрованием, для связи между серверами, например, но на-фи-га он нужен на телефонах и десктопах — в упор не понимаю.
inkvizitor68sl
DNSoTLS понужнее будет =(
V0ldemar Автор
Ну вот DoH же появился :) DoT тоже будет, в любом случае микротик радует своими сюрпризами (как, например, VXLAN, хоть и бета пока).
inkvizitor68sl
А где он появился-то? v6.42.6 и новее не предлагают (hap ac).
V0ldemar Автор
В той же 6.47 (beta), о которой идет речь в этой статье :) в самом начале скрин из changelog, где это сказано.
inkvizitor68sl
Ааа… чукча не читатель =)
Ждёмс)
crawlingroof
/system routerboard print
routerboard: yes
board-name: hAP ac lite
model: RouterBOARD 952Ui-5ac2nD
serial-number: 71AF0745240C
firmware-type: qca9531L
factory-firmware: 3.39
current-firmware: 6.46.6
upgrade-firmware: 6.46.6
у вас обновление не работает?
inkvizitor68sl
> /system routerboard print
routerboard: yes
board-name: hAP ac
model: RouterBOARD 962UiGS-5HacT2HnT
serial-number: 673705F37570
firmware-type: qca9550L
factory-firmware: 3.30
current-firmware: 6.42.6
upgrade-firmware: 6.42.6
Неа, на hap ac нет.
На AC Lite что-то обновлялось, но к нему идти далековато сейчас.
IgnatIvchenko
Вы не там смотрите, там где вы смотрите будет обновление firmware после установки пакетов, проверить обновление можно так
/system package update check-for-updates
Далее после перезагрузки нужно выполнить обновлений аппаратной прошивки:
/system routerboard upgrade
Meklon
Кстати, можешь объяснить, что внутри прошивки? Просто в моем понимании прошивка это что-то очень редко изменяющееся. А версии ОС обновляются часто пакетами. А тут каждый раз в двух местах обновлять.
IgnatIvchenko
Packages — пакеты(грубо говоря приложения), которые (не критические) можно удалить/отключить или добавить функционал через Extra packages (скачиваются на сайте mikrotik.com)
Routerboard — содержит ядро и bootloader, так же некоторые новые фишки Packages включаются только после обновления routerboard.
Можно включить автоапгрейд выполнив команду
/system routerboard settings auto-upgrade=yes
далее после после установки Packages выполнить дополнительно перезагрузку.
AcidVenom
Автоапгрейд требует ещё одну перезагрузку, автоматически это не происходит.
IgnatIvchenko
Вас слово дополнительно не смущает?
Я все написал по-русски, установка Packages подразумевает перезагрузку, и слово дополнительно указывает что нужна еще одна перезагрузка итого 2 перезагрузки
Chupaka
Я понимаю, что годы для MikroTik — не срок, но всё же:
https://forum.mikrotik.com/viewtopic.php?p=791461#p791461
V0ldemar Автор
печально, но все же есть доля надежды (это аккаунты форумчан а не официальное заявление микротика))
Chupaka
Разве было официальное заявление о том, что DoT будет? ;)
А цитированию ответа техподдержки нет смысла не доверять: опровергли бы, если бы надо было.
V0ldemar Автор
Ой, вы знаете, спорить с фанатом микротиков бесполезно))))
Мы вечно во что-то верим)
А если убрать утопичный настрой, то да, спасибо за инфо, видимо не судьба.
kolu4iy
Я любил микротик, но сбежал. Хотя бы потому в keenetik сто лет как можно было сказать opkg install sockd и получить сокс сервер…
И openvpn там стопицот лет полноценный
И sane, и cups (домашние мфу hp спокойно шарятся по сети)
И openconnect для cisco vpn
И это железки домашнего класса… В общем как я понимаю, разработчиков routeros реально просто мало, а взять сторонний пакет невозможно из-за проприетарщины, хотя железо действительно прекрасное за эти деньги.
V0ldemar Автор
Ну вы сейчас с точки зрения SOHO девайса рассуждаете, тут у всех есть свои плюсы и минусы, кмк, полемику начинать не будем :) я же к микротикам отношусь скорее как к инструменту, с помощью которого можно решить ту или иную задачу.
kolu4iy
А с точки зрения инструмента… Где резервный блок питания, скажем? Понимаете? Очень странная ниша у него, хотя повторю: он мне нравится в целом, а вот с применением есть проблемы.
V0ldemar Автор
На дешевых моделях резервного внешнего БП нет, факт, однако есть давно проверенный лайфхак, если его запитать одновременно через блок питания и PoE
«рогатку»инжектор, то получится полноценное резервирование N+1.Ну либо брать модели дороже, в которых второй БП есть по умолчанию.
Да, я понимаю, что это вечные костыли с Микротиком (чего стоит обход отсутствия поддержки RFC3021), но зато это работает и работает стабильно.
kmeaw
Но важно при этом питать устройство разными наряжениями, иначе резервирования может не получиться.
JPEGEC
На hap ac меня несказанно удивило отсутствие нормального POE. Это просто за гранью разумного на мой взгляд.
V0ldemar Автор
Извините, а что значит «нормальный POE»?
iirc, на вход он поддерживает и 802.3af и 802.3at, а на выход — ну что есть, для создания цепочки таких же вполне хватит, а вообще это задача RB750UP (aka PowerBox) или взрослых PoE-свичей.
JPEGEC
Увы но оказалось что нет. Удивлению моему не было предела.
Так сильно не поверил что полез удостовериться.
mikrotik.com/product/RB952Ui-5ac2nD
V0ldemar Автор
Но это hAP ac lite…
А вы говорили про hAP ac, на котором лично проверял работоспособность обоих стандартов.
JPEGEC
Не буду спорить. У меня не заработал.
mikrotik.com/product/RB962UiGS-5HacT2HnT
Эйсы все вроде с пэссив.
Не покажете спеку от вашего?
V0ldemar Автор
Спека не отличается от той что на сайте :)
Вопрос в практике — он спокойно питался от Juniper EX4200-24T (802.3af aka PoE), так и от Juniper EX4200-48P (802.3at aka PoE+), посему и считаю аргументы в сторону PoE на данной модели необоснованные.
P.S. Речь именно про практическое использование hAP AC, тот же RB951 с указанными свичами не совместим, если не заморачиваться с хитрой схемой обжимки, и работает только через инжектор.
JPEGEC
У меня hAP ac lite TC. От 802.3af практически не завелся. Я удивился, заглянул в спеку, заглянул в соседнюю, сделал вывод про все семейство hAP ac.
На мой взгляд отсутствие POE совсем не конец света, но наличие оного без 802.3af это за гранью разумного. И допустимо только безродному ноунэм который просто если запустился то уже хорошо.
То что фактическое состояние противоречит спекам просто дополнительно подчеркивает творящийся бардак. Как предлагается выбирать оборудование? Купить и пробовать?
ЗЫ Хитрая схема это городить обманку с резистором и конденсатором?
V0ldemar Автор
Наоборот следует читать внимательно спеку и не надеяться на то, что не заявлено производителем. В моем случае (hAP ac) просто повезло что MikroTik оказался на такое способен, хотя согласно спеке не должен был :)
По поводу схемы — имеено — но я тут надеюсь на благоразумность, ибо всегда можно сжечь железку и надо это понимать, потому если нет уверенности в своих силах и знаниях, то лучше и не начинать, а уж тем более не злиться на меня, который подсказал эту идею (это не в ваш адрес, а всем кто прочитает мои комменты).
Во время экспериментов с PoE удалось даже вогнать hAP ac в состояниие кирпича, когда собрал следующую схему:
J-EX4200-48P -> MT-hAP ac (1) -> MT-hAP ac (2) -> SPA504G
Все устройства (кроме Juniper) питались по только PoE, цепочкой, даже все завелось, однако когда начал пробовать совершать звонки на этот телефон — сеть упала, и hAP AC (1) ушел в себя :)
Воскресить его получилось с помощью netinstall и радует, что не сгорел, тут конечно мой косяк, что перегрузил, но это были эксперименты, как раз чтобы понимать чего ожидать от девайса.
JPEGEC
Вопрос немного не в тему. У вас домашний Juniper J-EX4200-48P?
Или наоборот, на работе используете soho mikrotik?
V0ldemar Автор
На работе использую) Но не в качестве SoHo-девайса (ибо нет потребности в оном), а скорее в виде медиаконвертера, ну и для упомянутых в самом начале статьи всевозможных инструментов (будучи владельцем MacBook, у меня отсутствую USB-A разъемы, потому «десктопный» микротик также используется как терминальная станция для usb2com переходника и настройки оборудования, ну и все в этом духе).
DaemonGloom
А что мешает взять type-c адаптер типа такого? www.amazon.com/gp/product/B06VSMS35S
Работает вполне бодро, индикация есть.
V0ldemar Автор
Географическая привязанность :)
В плане того, что можно подключить железку консольником к микротику и не надо находиться рядом с ними, можно подключиться к микротику по wifi и настраивать.
P.S. На моделях микрота с встроенным консольным портом (RS232/8P8C) можно вообще исключить usb2com и включать консольынй кабель напрямую.
P.P.S. И да, он не заменит полноценный консольный терминальник (хотя можно использовать USB-хаб и пробрасывать внешние порты на консольные сессии), это исключительно в рамках дискуса для чего он используется.
motpac
del.
AcidVenom
Опять этот разговор глухого со слепым.
Поднять 4 сети на 4х интерфейсах за 10 минут вы можете? Разделить WiFi сети? На одном физическом линке поднять 2, 5, 10 WiFi сетей? Одним линком прицепиться к АР, другим раздать инет по вафле можно? 5-10MHz ширина канала поддерживается? Аксес-листы, адресные листы, листы интерфейсов? Это все можно делать по-человечески с нормальным интерфейсом и сейф-модом не боясь отрубить себе руки, а не через терминал с вырвиглаз-отладкой?
Если вы используете только десятую часть возможностей микрота, то это значит, что под ваши задачи он не подходит. Используйте что-то более примитивное, куда не нужно лезть каждую неделю-месяц-день для правок.
kolu4iy
На rb951? Могу, но не буду. Возьму более подходящее железо, о том и речь.
AcidVenom
Это делается на любом RB. На keenetik'е так можно?
kolu4iy
Смотря что. WiFi получить — раздать — можно. 5-10 МГц ширина канала нет, но вы точно этого хотите? Я давно живу в цифрах 40-80… 4 сети на 4 интерфейсах тоже несложно. Да и cli у него мощный стал. Заметьте, я ещё не вышел за пределы возможностей из коробки и не подошёл к пакетному менеджеру. Acl тоже есть, остальное не читал, но подозреваю что чего-то конкретного не смогу. Зато dns over tls завезли одновременно с dns over https, и тоже в варианте "из коробки". Вы извините, но создаётся впечатление, что к микротику вы слишком привыкли, и вам трудно оценить остальной мир вокруг.
werter78
Насчет «5-10MHz ширина канала поддерживается» не скажу, но многое из описанного вами умеет любая современная «мыльница», перешитая в Openwrt. У меня прекрасно трудятся такие, раздавая нес-ко изолированных ви-фи сетей. Плюс некое подобие ви-фи роуминга задействовано.
AcidVenom
Ок. Сейф-мод, адресные, интерфейсные листы тоже есть? ОСПФ из коробки ваши мыльницы тоже умеют? Снмп тоже есть?
werter78
Некий аналог Сейф-моде есть. Реализован в виде кнопок Save и Save Aplly.
OSPF, SNMP (и сотни других) есть в виде доп. пакета — ставьте и настраивайте.
Вам проще развернуть опенврт в вирт. среде и посмотреть самому.
V0ldemar Автор
Опенврт и на микротик залить можно) причем раньше можно было еще и в виде виртуалки, сейчас только полностью затирая router-os.
Alekseyz
И аппаратная начинка у keenetik куда интереснее чем у хоум версий микротиков где принято экономить на мелочах, которые роутинг с шифрованием просто не тянут.
Zman
Это точно. Экономят на спичках. Хитрецы.
AcidVenom
Ну и наконец: почему это совсем не актуально?
V0ldemar Автор
Это риторический вопрос или нет? :)
Не уловил суть.
AcidVenom
SOCKS не шифрует данные со всеми вытекающими.
V0ldemar Автор
Прокси и не создан для шифрования :) Вижу, что вы — MTCRE, посему не хуже меня знаете, что для шифрования все же лучше использовать VPN.
L3n1n
форвардить сокс на нужный гетевей не завезли? (
V0ldemar Автор
На самом деле есть довольно таки неплохой ACL, позволяющий запретить все и выставить только нужные направления:
Или же на уровне обычного фаервола.
DurRandir
>должен быть в хозяйстве любого сетевого инженера
>нет поддержки протоколов 10летней давности
V0ldemar Автор
ну, во-первых — 24хлетней давности, все же:
© tools.ietf.org/html/rfc1928
во-вторых, есть довольно таки много других полезных функций, которыми просто надо уметь пользоваться :)
ну и в-третьих, оспаривать сказанное в рамках ремарки «IMHO» — моветон, как мне кажется :)
DurRandir
Мне не нравится закрытость их экосистемы. Есть интересные девайсы, но дома я выбираю то, что могу починить/пропатчить. И выше про openvpn/wireguard — яркие примеры, на микротиках их ждут и не надеются, а с открытым ядром их или уже втащили, или это дело одного вечера.
kolu4iy
Заметьте: оба модуля — из коробки. Без opkg. Если вы понимаете, о чем я :)
V0ldemar Автор
А вы не поделитесь моделью своего keenetic? :) Вот ради эксперимента хочу приобрести и сравнить встроенный функционал оного и микротика (из той же ценовой категории и набора характеристик), если будет что интересное — то отпишу отдельной статьей.
IgorGS
Спасибо за статью и комменты!
zlo1
Socks4 уже пару лет как доступен на MikroTik, активирован «сторонним разработчиком» без пароля ;)
V0ldemar Автор
SOCKS4 — да, даже больше 5ти лет реализован, мы же ждали SOCKS5 :)
LESHIY_ODESSA
Уточню, что порог вхождения дешевле и колеблется в районе ~20$.
V0ldemar Автор
Справедливо.
Я указал с учетом инфляции, чтобы статья была актуальна на долгие времена :)
(на самом деле, забыл про линейку мелких hAP, которые действительно стоят по 19$).