os-xgs-npu · открытый код · альфа

Оборудование Sophos XGS снова в деле как открытый межсетевой экран

Драйверы FreeBSD, написанные под регистры, которые не документирует ни один производитель, и плагин OPNsense вокруг них. Они возвращают передние порты, а затем передают сопроцессору собственные соединения и ассоциации IPsec межсетевого экрана, чтобы его быстрый путь пересылал их без хоста.

COMUSBF1 · npup13 · метка 0x8900 · 1G · порт коммутатора 9F1F2 · npup14 · метка 0x8a00 · 1G · порт коммутатора 10F2Port1 · npup1 · метка 0x8100 · 1G · порт коммутатора 11Port2 · npup2 · метка 0x8200 · 1G · порт коммутатора 22Port3 · npup3 · метка 0x8300 · 1G · порт коммутатора 33Port4 · npup4 · метка 0x8400 · 1G · порт коммутатора 44Port5 · npup5 · метка 0x8500 · 1G · порт коммутатора 55Port6 · npup6 · метка 0x8600 · 1G · порт коммутатора 66Port7 · npup7 · метка 0x8700 · 1G · порт коммутатора 77Port8 · npup8 · метка 0x8800 · 1G · порт коммутатора 88Port9 · npup9 · метка 0x0001 · 2.5G · CP0 eth2 - AQR412C9Port10 · npup10 · метка 0x0003 · 2.5G · CP1 eth1 - AQR412C10Port11 · npup11 · метка 0x0004 · 2.5G · CP1 eth2 - AQR412C · PoE11Port12 · npup12 · метка 0x0002 · 2.5G · CP1 eth0 - AQR412C · PoE12отсек модуляXGS 136 · сзадиOPNsenseXGS 3300Ports OKCOMUSBMGMTF2F1F1 · oxp0 · метка 0x0001 · 10G · QLM5 - 88X5113F1F2 · oxp1 · метка 0x0002 · 10G · QLM6 - 88X5113F2F4F3F3 · oxp10 · метка 0x8900 · 1G · порт коммутатора 9F3F4 · oxp11 · метка 0x8a00 · 1G · порт коммутатора 10F4Port2 · oxp3 · метка 0x8200 · 1G · порт коммутатора 2 · байпас2Port1 · oxp2 · метка 0x8100 · 1G · порт коммутатора 1 · байпас1Port4 · oxp5 · метка 0x8400 · 1G · порт коммутатора 44Port3 · oxp4 · метка 0x8300 · 1G · порт коммутатора 33Port6 · oxp7 · метка 0x8600 · 1G · порт коммутатора 66Port5 · oxp6 · метка 0x8500 · 1G · порт коммутатора 55Port8 · oxp9 · метка 0x8800 · 1G · порт коммутатора 88Port7 · oxp8 · метка 0x8700 · 1G · порт коммутатора 77отсек модуля AXGS 3300 · спереди
Два устройства, работающие здесь, нарисованы так, как стоят на стенде: XGS 136 на XGS 3300. Наведите на порт, чтобы увидеть его интерфейс; щелчок открывает его на странице модели.

Два компьютера в одном корпусе

Установите OPNsense на Sophos XGS, и загрузится работающий межсетевой экран без единого сетевого интерфейса. Устройство выглядит как один компьютер, а их два: хост x86 и сопроцессор за конечной точкой PCIe, которому принадлежит каждый передний порт.

Производитель выпускает драйверы только для своей операционной системы и для Linux, поэтому, когда поддержка заканчивается, обычный приговор оборудованию - электронный мусор. Этот проект возвращает порты FreeBSD, а затем заставляет сопроцессор работать на межсетевой экран.

Как это работает (на английском)

Что он делает

Каждый передний порт

Все четырнадцать на XGS 136 и все двенадцать на XGS 3300, вместе с портами модуля расширения, каждый - обычный интерфейс FreeBSD с тем именем, что написано на корпусе.

pf решает, сопроцессор пересылает

Соединение, пропущенное межсетевым экраном, попадает в таблицу потоков сопроцессора, IPv4 со своей трансляцией и IPv6 как есть, и выходит оттуда в тот момент, когда pf его отпускает.

IPsec в движке

Ассоциация, которую strongSwan устанавливает через OPNsense, попадает в криптодвижок сопроцессора без единой команды: AES-GCM, AES-CBC с HMAC, прохождение NAT.

Списки межсетевого экрана по-прежнему режут

Если в список блокировки добавлен адрес или система обнаружения вторжений записала отпечаток TLS из списка (JA4), соединение, уже работающее аппаратно, разрывается.

Часть OPNsense

Один раздел меню, каждая страница на арабском и английском, передние порты, назначенные при первой загрузке, и обновления со своей страницы за секунды.

Честно

Каждая цифра находится на странице вместе с тем, как она получена, и фотографией прогона. Утверждение, оказавшееся неверным, остаётся на своей странице зачёркнутым рядом с тем, что его заменило.

Измерено, а не обещано

Каждое число ведёт на страницу, где оно записано, с тем, как оно получено, и сборкой модуля, на которой его получили.

Два семейства уже отвечают

На кремнии, у которого нет ничего общего. Ещё два, OCTEON TX2 и его 98XX, описаны по двоичным файлам производителя и ждут оборудования; у TOPAZ и GR нет сопроцессора, которым можно управлять.

Все модели

Десять моделей двух семейств, для которых есть драйвер. Две работают здесь; остальные добавлены без проверки, пока сюда не попадёт устройство каждой. У каждой есть страница: её порты там, где они находятся, её плата, данные производителя.

модельсемействосопроцессорпередние портысостояние
XGS 87 87w ARMADA CN9130 5 4 RJ45, 1 SFP добавлено, не проверено
XGS 107 107w ARMADA CN9130 9 8 RJ45, 1 SFP добавлено, не проверено
XGS 116 116w ARMADA CN9131 9 8 RJ45, 1 SFP добавлено, не проверено
XGS 126 126w ARMADA CN9131 14 12 RJ45, 2 SFP добавлено, не проверено
XGS 136 136w ARMADA CN9131 14 12 RJ45, 2 SFP работает здесь
XGS 138 ARMADA CN9131 8 6 RJ45, 2 SFP+ добавлено, не проверено
XGS 2100 OCTEON TX CN8360 10 8 RJ45, 2 SFP добавлено, не проверено
XGS 2300 OCTEON TX CN8360 10 8 RJ45, 2 SFP добавлено, не проверено
XGS 3100 OCTEON TX CN8365 12 8 RJ45, 2 SFP, 2 SFP+ добавлено, не проверено
XGS 3300 OCTEON TX CN8365 12 8 RJ45, 2 SFP, 2 SFP+ работает здесь

Все модели подробно Добавить своё устройство и 13 моделей семейств без драйвера

Устройства этих моделей будут куплены для проверки. До тех пор каждую модель с пометкой «не проверено» подтверждает или исправляет отчёт её первого владельца.

Шесть семейств (на английском)

Похоже на OPNsense, потому что это OPNsense

Раздел XGS в меню показывает переднюю панель со связью каждого порта, сопроцессор, потоки в аппаратуре, движок IPsec, трансиверы, обновления и отчёты о проблемах. Каждая страница сфотографирована на устройстве, на английском и на арабском.

Каждая страница по очереди (на английском)

XGS: Overview на XGS 3300: нарисованная передняя панель со связью каждого порта и карточки сопроцессора, аппаратной выгрузки, движка IPsec, передних портов, микросхемы коммутатора и последнего перезапуска

Репозитории проекта

Драйверы и плагин, а также страница, которая собирает вокруг них целый образ, - каждый на GitHub, со своим последним выпуском, звёздами и форками.

os-xgs-npu

Драйверы FreeBSD для обоих семейств сопроцессоров и плагин OPNsense вокруг них: передние порты, потоки и IPsec в аппаратуре, страницы, которые это показывают.

xgs-image-builder

Образ OPNsense для Sophos XGS со всем необходимым внутри, собираемый с веб-страницы через GitHub Actions в вашем собственном форке.

Плагины вокруг

Каждый в своём репозитории, каждый устанавливается отдельно.

Проект (на английском)

История

Как межсетевой экран без портов стал межсетевым экраном со всеми портами: восемь месяцев поисков, открытые источники, прочитанные ради того, что в них сказано, два сопроцессора без общего и последний шаг - в одиннадцати главах, с фотографиями.

Читать с начала (на английском)

Написать проекту

Вопрос, устройство, которого нет в списке, ваше собственное измерение или работа, которую вы хотите сделать, - страница контактов доходит до человека, который всё это написал. С проблемами устройства лучше обращаться через его собственную страницу Problem Reports, которая отправляет нужное и ничего личного.

Контакты (на английском) Открыть issue

Стенд, устройства и сайт оплачивает один человек. Поддержать проект

Независимый проект, не связанный с Sophos или Deciso. Он не распространяет программное обеспечение или прошивки Sophos. Правообладателям: contact@npuforge.org.