NxRelay для всей сети
NxRelay — это промежуточный DNS-сервер для NxCloud. С помощью NxRelay вы можете привязать частный IP-адрес к пользователю в NxCloud.
Это означает, что вы можете применять политики на основе частных IP-адресов, расположенных за маршрутизатором, из вашей службы облачной фильтрации.
Как это работает
Сам по себе NxRelay является DNS-сервером переадресации. Он осуществляет фильтрацию, запрашивая NxCloud, и работает как DNS-сервер, перенаправляя DNS-запросы
на ваш локальный DNS-сервер.
Для NxRelay NxCloud не является его вышестоящим DNS-сервером. Скорее, это сервер политик. Его вышестоящим сервером является ваш существующий DNS-сервер.
Это означает, что даже если вы потеряете соединение с NxCloud, у вас не возникнет сбоя в работе DNS.
Установка в Windows
Мы предоставляем установщик NxRelay для Windows. Он установит NxRelay в качестве службы Windows и запустит программу настройки с графическим интерфейсом.
Если вам нужно установить службу NxRelay в Windows вручную,
1. Загрузите ZIP-пакет
2. Распакуйте его в c:/nxrelay
3. Измените параметры конфигурации в файле c:/nxrelay/conf/cfg.properties
В командной строке (CMD),
cd c:/nxrelay/bin
instsvc.bat
net start NxRelay
Установка в Linux
При установке NxRelay с помощью ZIP-пакета:
1. Загрузите ZIP-пакет
2. Распакуйте его в /nxrelay
В командной строке,
cd /nxrelay
sudo chmod +x bin/*.sh
sudo cp script/nxrelay.service /lib/systemd/system/nxrelay.service
sudo systemctl enable nxrelay.service
sudo systemctl start nxrelay.service
Чтобы остановить его,
sudo systemctl stop nxrelay.service
Как настроить
Вам понадобится IP-адрес вашего сервера NxCloud и токен входа от одной из ваших учетных записей. Программа считывает параметры конфигурации
из файла /nxrelay/conf/cfg.properties.
Например,
server = 192.168.0.100
token = BSYEB28O
local_dns = 8.8.8.8,8.8.4.4
local_domain = mydomain.local
Если в файле конфигурации указаны следующие значения: IP-адрес вашего сервера NxCloud — 192.168.0.100, а токен входа — 'BSYEB28O'
, а ваши локальные DNS-серверы или существующие DNS-серверы — 8.8.8.8 и 8.8.4.4. Если у вас есть домены, которые необходимо исключить из фильтрации,
вы можете добавить их в качестве значения, разделенного запятыми, в поле «local_domain».
После изменения файла конфигурации проверьте значения настроек и подключение к серверу, запустив скрипт /nxrelay/bin/test.sh.
Затем перезапустите NxRelay и установите его в качестве единственного DNS-сервера для вашей сети.
Параметры конфигурации
NxRelay поддерживает следующие параметры в файле /nxrelay/conf/cfg.properties,
- server
IP-адрес NxCloud.
- token
Токен входа пользователя.
- local_dns
Уверхпотоковый DNS-сервер или локальный DNS-сервер, выполняющий фактическое разрешение DNS. Если здесь не указан
DNS-сервер, мы используем 8.8.8.8 и 8.8.4.4.
- local_domain
Домены, которые следует исключить из фильтрации. Можно добавить несколько доменов, разделяя их запятыми.
- listen_ip
Можно настроить NxRelay на прослушивание определенного IP-адреса.
- block_redi_ip
Можно переопределить Block Redirection IP NxCloud.
- use_https_dns
Можно включить DNS over HTTPS (DoH) для разрешения DNS.
ex) 0 = false, 1 = true
- https_dns_type
Можно выбрать сервер DNS over HTTPS для использования в качестве исходного DNS-сервиса.
ex) 1 = Cloudflare, 2 = Google, 3 = Custom DoH server
- https_dns_url
При выборе пользовательского сервера DoH необходимо указать URL, установив параметр «https_dns_url».
- use_https_query
Если эта опция включена, NxRelay будет отправлять запросы по политикам через HTTPS.
ex) 0 = false, 1 = true
- https_query_port
Запросы политик через HTTPS будут использовать TCP/443 at default but if you need to use another port
you can change it here.
- query_cache_ttl
NxRelay имеет кэш на 300 секунд для результатов запросов к серверу политик. Вы можете установить значение
в диапазоне от 0 до 3600 секунд. Если вы увеличите это значение, это снизит нагрузку на ваш сервер политик,
но изменения в политике фильтрации будут применены только после истечения срока действия кэша.
ex) 0 = bypass, 300 = 5 minutes, 1200 = 20 minutes
- a_query_only
Если эта опция включена, NxRelay будет фильтровать только запросы типов A и AAAA, что обеспечит более высокую производительность.
ex) 0 = false, 1 = true
- run_mapper
NxRelay имеет встроенный модуль NxMapper для отправки имени пользователя Active Directory при входе в систему, если вы устанавливаете его на контроллер домена.
- radius_accounting_port
Порт, на котором принимаются запросы учета RADIUS. По умолчанию используется UDP/1813 at default.
- radius_shared_secret
Строка общего секретного ключа для связи вашего Wi-Fi-роутера с NxRelay.
- radius_enable_logout
Прекратить сеанс входа пользователя, если тип статуса запроса учета равен 'Stop'.
ex) 0 = false, 1 = true
- use_radius
Запустить сервер учета RADIUS.
ex) 0 = false, 1 = true
- drop_blocked_request_type
Включить контроль типов запросов на NxRelay. Вы можете задать заблокированные типы запросов в поле
DNS > Server Protection > Request Type Control .
ex) 0 = false, 1 = true
Какую политику применять
По умолчанию NxRelay применяет политику фильтрации, связанную с токеном входа, указанным в его конфигурационном файле.
Это политика по умолчанию для NxRelay. Если вы хотите применять несколько политик для пользователей в вашей сети,
вы можете связать частные IP-адреса, обнаруженные NxRelay, с пользователями, созданными вами в графическом интерфейсе оператора NxCloud. Вы также можете связать имена пользователей Windows
имена пользователей, обнаруженные NxRelay, с политиками, созданными вами в NxCloud.
Вспомогательные скрипты
In /nxrelay/bin
there are several utility scripts included.
- startup.sh : Starting NxRelay
- shutdown.sh : Stopping NxRelay
- test.sh : Test the connectivity to NxCloud
- ping.sh : Test if it is running
Для Windows у нас есть ещё 2,
- instsvc.bat : Installing NxRelay service
- unstsvc.bat : Uninstall NxRelay service
Для Ubuntu Linux у нас есть скрипт systemd: /nxrelay/script/nxrelay.service.
Интеграция с Active Directory через облако
Интеграция с Active Directory через облако возможна с помощью NxRelay. При установке NxRelay
на контроллере домена в вашей Active Directory программа может обнаруживать и отправлять на свой сервер имена пользователей AD, вошедших в систему.
Ниже приведены условия для реализации интеграции с Active Directory через облако.
1. Установите NxRelay на контроллер домена
Чтобы NxRelay мог обнаруживать имена пользователей, вошедших в систему, необходимо установить его на контроллер домена. Однако у вас
может возникнуть проблема конфликта портов с существующим DNS-сервером MS. В этом случае вы можете
добавить ещё один IP-адрес на сервер и привязать DNS-сервер MS к одному IP-адресу, а NxRelay — к другому
IP-адресу.
2. Используйте DNS-сервер Active Directory в качестве локального DNS-сервера
В Active Directory DNS играет ключевую роль. Чтобы не нарушить работу интеграции с Active
Directory, необходимо настроить DNS-сервер MS в качестве Local DNS of NxRelay and bypass your
Active Directory domain as the Local Domain of NxRelay.
Однако «интеграция с Active Directory через облако» немного отличается от того случая, когда
вы осуществляете «интеграцию с Active Directory» в локальной сети с помощью NxFilter. В NxCloud мы не поддерживаем импорт пользователей из Active Directory.
Поэтому это пока не полноценная интеграция с Active Directory. Тем не менее, в окне просмотра журналов по-прежнему может отображаться имя пользователя Active Directory в формате «tokenname_username»,
чтобы вы могли определить, кто есть кто.
Например, если у вас в Active Directory есть пользователь «john100» и вы запускаете NxRelay с токеном входа пользователя «myrelay»
в NxCloud, его DNS-запросы будут отображаться как «myrelay_john100» в Logging > DNS Request.
А политикой по умолчанию для «john100» будет политика «myrelay».
Если вы хотите применить к «john100» другую политику, вы можете создать точно совпадающее имя пользователя
— «john100» — в NxCloud или привязать «myrelay_john100» к политике в графическом интерфейсе оператора NxCloud.
Обнаружение пользователей с помощью аутентификации Wi-Fi по стандарту 802.1X
NxRelay имеет встроенный модуль сервера учёта RADIUS. Этот модуль аналогичен тому, который мы используем с NxFilter для единого входа
посредством аутентификации Wi-Fi по стандарту 802.1X. NxRelay будет отправлять обнаруженные им имена пользователей в NxCloud.
Чтобы понять, как это работает, прочтите Единый вход (Single Sign-On) с помощью 802.1X
Определение пользователей с помощью CxLogon
NxRelay поддерживает CxLogon начиная с версии 2.6.4. Это означает, что вы можете определять имена пользователей, вошедших в систему на ПК в вашей
сети, без использования Active Directory. Чтобы узнать больше о CxLogon,
прочитайте Единый вход с помощью CxLogon.
По умолчанию обнаруженное имя пользователя отображается в формате «tokenname_username», но если вы
создадите в NxCloud имя пользователя, точно совпадающее с ним, оно будет отображаться в исходном виде, и вы сможете назначить
политику. Это то же правило, которое мы используем с Интеграция с Active Directory через облако.
Массовый обход доменов
Вы можете уменьшить трафик в NxCloud, массово обходя домены при запросах политик. Для массового обхода доменов необходимо создать
файл /nxrelay/conf/bypass.txt и добавить в него домены.
Для включения субдоменов можно использовать звездочку.
Домены в файле должны быть разделены символами новой строки, как показано ниже:
www.jahastech.com
mail.jahastech.com
*.nxfilter.org
NxRelay и NxFilter
Возможно, вы работаете в компании, имеющей несколько филиалов. Вы хотите централизованно фильтровать трафик всех филиалов.
Кроме того, вам нужна аутентификация пользователей и единый вход (SSO), как в случае с NxFilter в локальной сети.
Однако вы не хотите запускать NxCloud, так как являетесь единственным администратором. Вы не хотите входить в графический интерфейс каждого оператора, чтобы изменять политики.
Все это можно реализовать с помощью NxRelay и NxFilter.
С помощью NxRelay вы можете сопоставить частные IP-адреса, расположенные за маршрутизатором, с вашими пользователями в NxFilter.
Кроме того, вы можете импортировать пользователей AD в NxFilter, а затем запустить NxRelay в каждом филиале для распознавания имён пользователей AD.
NxRelay также поддерживает CxLogon для единого входа без использования Active Directory. И вы можете реализовать аутентификацию Wi-Fi по стандарту 802.1X.
Таким образом, это практически ничем не отличается от работы NxFilter в локальной сети.
Однако есть одно условие. Каждый филиал должен использовать свой диапазон IP-адресов. Например, если филиал № 1 использует 192.168.0.0/24,
филиал № 2 должен использовать другой, например 192.168.0.1/24. Это необходимо для предотвращения конфликта IP-адресов.
Перенаправление домена
Возможно, вам потребуется настроить перенаправление доменов для локальной сети, в которой работает NxRelay.
Чтобы настроить перенаправление доменов, создайте файл /nxrelay/conf/redirection.txt и
добавьте в него сопоставление доменов и IP-адресов, как показано ниже:
router.mynet.local 192.168.0.1
printer.mynet.local 192.168.0.10
*.myorg.local 192.168.0.12
wpad 192.168.0.20
wpad.mynet.local 192.168.0.1
Управление типами запросов
Вы можете заблокировать определённые типы DNS-запросов с помощью NxRelay. Он будет получать настройки управления типами запросов из NxFilter и отбрасывать
запросы заблокированных типов. Чтобы включить эту функцию, необходимо установить значение 'drop_blocked_request_type' равным '1' в
файле /nxrelay/conf/cfg.properties, как показано ниже:
drop_blocked_request_type = 1