NxRelay per l'intera rete
NxRelay è un server DNS di inoltro per NxCloud. Con NxRelay, è possibile associare un indirizzo IP privato a un utente su NxCloud.
Ciò significa che è possibile applicare criteri basati su indirizzi IP privati situati dietro un router dal proprio servizio di filtraggio cloud.
Come funziona
NxRelay è di per sé un server DNS di inoltro. Esegue il filtraggio interrogando NxCloud e funziona come server DNS inoltrando le query DNS
al vostro server DNS locale.
Per NxRelay, NxCloud non è il suo server DNS a monte. È piuttosto un server delle politiche. Il suo server a monte è il vostro server DNS esistente.
Ciò significa che anche se perdete la connessione a NxCloud, non si verificherà un’interruzione del servizio DNS.
Installazione su Windows
Forniamo un programma di installazione per Windows dedicato a NxRelay. Esso installerà NxRelay come servizio di Windows ed eseguirà il programma di configurazione della GUI.
Se è necessario installare manualmente il servizio NxRelay su Windows,
1. Scaricare il pacchetto ZIP
2. Estrarlo in c:/nxrelay
3. Modifica i parametri di configurazione nel file c:/nxrelay/conf/cfg.properties
Da CMD,
cd c:/nxrelay/bin
instsvc.bat
net start NxRelay
Installazione su Linux
Quando si installa NxRelay utilizzando il pacchetto ZIP:
1. Scaricare il pacchetto ZIP
2. Estrarlo in /nxrelay
Dalla riga di comando,
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
Per arrestarlo,
sudo systemctl stop nxrelay.service
Come configurarlo
Sono necessari l’IP del server NxCloud e un token di accesso di uno dei propri account utente. Il programma legge i propri parametri di configurazione
dal file /nxrelay/conf/cfg.properties.
Ad esempio,
server = 192.168.0.100
token = BSYEB28O
local_dns = 8.8.8.8,8.8.4.4
local_domain = mydomain.local
Se nel file di configurazione sono presenti questi valori, l’IP del server NxCloud è 192.168.0.100 e il token di accesso è 'BSYEB28O'
e i server DNS locali o quelli esistenti sono 8.8.8.8 e 8.8.4.4. Se si desidera escludere alcuni domini dal filtraggio
è possibile aggiungerli come valori separati da virgola in 'local_domain'.
Dopo aver modificato il file di configurazione, verifica i valori di configurazione e la connettività al server eseguendo /nxrelay/bin/test.sh.
Quindi riavvia NxRelay e impostalo come unico server DNS per la tua rete.
Parametri di configurazione
NxRelay supporta i seguenti parametri nel file /nxrelay/conf/cfg.properties,
- server
Indirizzo IP di NxCloud.
- token
Token di accesso di un utente.
- local_dns
Server DNS a monte o server DNS locale che esegue l’effettiva risoluzione DNS. Se non viene specificato alcun server DNS
in questa posizione, utilizziamo 8.8.8.8 e 8.8.4.4.
- local_domain
Domini da escludere dal filtraggio. È possibile aggiungere più domini separati da virgole.
- listen_ip
È possibile configurare NxRelay affinché ascolti su un indirizzo IP specifico.
- block_redi_ip
È possibile sovrascrivere Block Redirection IP le impostazioni di NxCloud.
- use_https_dns
È possibile abilitare il DNS over HTTPS (DoH) per la risoluzione DNS.
ex) 0 = false, 1 = true
- https_dns_type
È possibile selezionare un server DNS over HTTPS da utilizzare come servizio DNS a monte.
ex) 1 = Cloudflare, 2 = Google, 3 = Custom DoH server
- https_dns_url
Se si opta per un server DoH personalizzato, è necessario specificare l'URL impostando il parametro 'https_dns_url'.
- use_https_query
Se questa opzione è abilitata, NxRelay effettuerà le sue query relative alle policy tramite HTTPS.
ex) 0 = false, 1 = true
- https_query_port
Le query relative alle policy tramite HTTPS utilizzeranno TCP/443 at default but if you need to use another port
you can change it here.
- query_cache_ttl
NxRelay dispone di una cache di 300 secondi per i risultati delle query dal proprio server delle politiche. È possibile impostare un valore
compreso tra 0 e 3600 secondi. Aumentando il valore, si ridurrà il traffico verso il server delle politiche
ma le modifiche alle politiche di filtraggio saranno applicate solo dopo la scadenza della cache.
ex) 0 = bypass, 300 = 5 minutes, 1200 = 20 minutes
- a_query_only
Se questa opzione è abilitata, NxRelay filtrerà solo le query di tipo A e AAAA, garantendo prestazioni migliori.
ex) 0 = false, 1 = true
- run_mapper
NxRelay dispone di un modulo NxMapper integrato per inviare il nome utente di accesso ad Active Directory quando lo si installa su un controller di dominio.
- radius_accounting_port
La porta su cui si ricevono le richieste di contabilità RADIUS. Per impostazione predefinita utilizziamo UDP/1813 at default.
- radius_shared_secret
Stringa segreta condivisa che consente al router Wi-Fi di comunicare con NxRelay.
- radius_enable_logout
Termina la sessione di accesso dell’utente quando il tipo di stato di una richiesta di contabilità è 'Stop'.
ex) 0 = false, 1 = true
- use_radius
Esegue il server di account RADIUS.
ex) 0 = false, 1 = true
- drop_blocked_request_type
Abilita il controllo del tipo di richiesta su NxRelay. È possibile impostare i tipi di richiesta bloccati su
DNS > Server Protection > Request Type Control .
ex) 0 = false, 1 = true
Quale politica applicare
Per impostazione predefinita, NxRelay applica la politica di filtraggio associata al token di accesso specificato nel proprio file di configurazione.
Questa è la politica predefinita per NxRelay. Se si desidera applicare più politiche agli utenti della propria rete,
è possibile associare gli indirizzi IP privati rilevati da NxRelay agli utenti creati nell’interfaccia grafica dell’operatore di NxCloud. È inoltre possibile collegare i
nomi utente di Windows rilevati da NxRelay alle politiche create su NxCloud.
Script di utilità
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
Per Windows ne abbiamo altri 2,
- instsvc.bat : Installing NxRelay service
- unstsvc.bat : Uninstall NxRelay service
Per Ubuntu Linux, è disponibile uno script systemd denominato /nxrelay/script/nxrelay.service.
Integrazione di Active Directory tramite cloud
L’integrazione di Active Directory tramite cloud è possibile grazie a NxRelay. Quando si installa NxRelay
su un controller di dominio nel proprio Active Directory, esso è in grado di rilevare e inviare al proprio server i nomi utente AD che hanno effettuato l’accesso.
Queste sono le condizioni per implementare l’integrazione con Active Directory tramite cloud.
1. Installare NxRelay su un controller di dominio
Affinché NxRelay possa rilevare i nomi utente che hanno effettuato l’accesso, è necessario installarlo su un controller di dominio. Tuttavia,
potrebbe verificarsi un problema di conflitto di porte con il server DNS Microsoft esistente. In tal caso, è possibile
aggiungere un ulteriore indirizzo IP al server e associare il server DNS Microsoft a un indirizzo IP e NxRelay all’altro
indirizzo IP.
2. Utilizzare il server DNS di Active Directory come server DNS locale
In Active Directory, il DNS svolge un ruolo cruciale. Per non compromettere l’integrazione con Active
Directory, è necessario impostare il server DNS Microsoft come Local DNS of NxRelay and bypass your
Active Directory domain as the Local Domain of NxRelay.
Tuttavia, l’“integrazione con Active Directory tramite cloud” è leggermente diversa rispetto a quando
si esegue l’“integrazione con Active Directory” nella rete locale con NxFilter. Su NxCloud, non supportiamo l’importazione degli utenti da Active Directory.
Quindi, non si tratta ancora di un’integrazione completa con Active Directory. È comunque possibile visualizzare il nome utente di Active Directory nel formato "tokenname_username"
nella vista dei log, in modo da poter identificare chi è chi.
Ad esempio, se nell’Active Directory è presente l’utente “john100” e si esegue NxRelay con il token di accesso dell’utente “myrelay”
su NxCloud, le sue richieste DNS appariranno come “myrelay_john100” su Logging > DNS Request.
E la politica predefinita per "john100" sarebbe quella di "myrelay".
Se si desidera applicare una politica diversa a "john100", è possibile creare un nome utente che corrisponda esattamente
a "john100" su NxCloud oppure collegare "myrelay_john100" a una politica nell’interfaccia utente dell’operatore di NxCloud.
Rilevamento degli utenti tramite autenticazione Wi-Fi 802.1X
NxRelay dispone di un modulo integrato di server di accounting RADIUS. Questo modulo è lo stesso che utilizziamo con NxFilter per il single sign-on
tramite l’autenticazione Wi-Fi 802.1X. NxRelay invierà i nomi utente rilevati a NxCloud.
Per capire come funziona, leggi Single sign-on tramite 802.1X
Rilevamento degli utenti tramite CxLogon
NxRelay supporta CxLogon a partire dalla versione 2.6.4. Ciò significa che è possibile rilevare i nomi utente connessi sui PC della propria
rete senza Active Directory. Per saperne di più su CxLogon,
leggi Single sign-on tramite CxLogon.
Per impostazione predefinita, il nome utente rilevato verrà visualizzato nel formato «tokenname_username», ma se
crei un nome utente che corrisponde esattamente su NxCloud, il nome utente verrà visualizzato così com’è e potrai assegnare una
policy specifica all’utente. Si tratta della stessa regola che utilizziamo con Integrazione di Active Directory tramite cloud.
Bypass dei domini in blocco
È possibile ridurre il traffico verso NxCloud aggirando in blocco i domini dalle query relative alle politiche. Per aggirare i domini in blocco, è necessario creare
il file /nxrelay/conf/bypass.txt e aggiungere i domini al file.
È possibile utilizzare un asterisco per includere i sottodomini.
I domini nel file devono essere separati da righe nuove come di seguito,
www.jahastech.com
mail.jahastech.com
*.nxfilter.org
NxRelay e NxFilter
Potresti lavorare per un’azienda con più filiali. Desideri filtrare tutte le filiali a livello centrale.
Desideri inoltre disporre dell’autenticazione degli utenti e del Single Sign-On, proprio come con NxFilter in una rete locale.
Tuttavia, non vuoi eseguire NxCloud poiché sei l’unico amministratore. Non vuoi effettuare l’accesso a ciascuna interfaccia grafica dell’operatore per modificare le politiche.
Puoi fare tutte queste cose con NxRelay e NxFilter.
Con NxRelay, puoi associare gli indirizzi IP privati dietro un router ai tuoi utenti su NxFilter.
Inoltre, puoi importare gli utenti AD nel tuo NxFilter e quindi eseguire NxRelay in ogni filiale per rilevare i nomi utente AD.
NxRelay supporta anche CxLogon per il single sign-on senza Active Directory. Inoltre, puoi implementare l’autenticazione Wi-Fi 802.1X.
Quindi, è quasi come se non ci fosse alcuna differenza rispetto all’esecuzione di NxFilter in una rete locale.
Tuttavia, c’è una condizione. Ogni filiale deve utilizzare un intervallo di indirizzi IP diverso. Ad esempio, se la Filiale n. 1 utilizza 192.168.0.0/24,
la filiale n. 2 dovrebbe utilizzarne uno diverso, ad esempio 192.168.0.1/24. Questo serve a prevenire la collisione degli indirizzi IP.
Reindirizzamento del dominio
Potrebbe essere opportuno impostare dei reindirizzamenti di dominio per la rete locale su cui è in esecuzione NxRelay.
Per impostare i reindirizzamenti di dominio, creare il file /nxrelay/conf/redirection.txt e
aggiungere al file la mappatura tra dominio e IP come indicato di seguito:
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
Controllo del tipo di richiesta
È possibile bloccare determinati tipi di richieste DNS tramite NxRelay. NxRelay recupererà le impostazioni di controllo del tipo di richiesta da NxFilter e scarterà
le query del tipo bloccato. Per abilitare questa funzionalità, è necessario impostare 'drop_blocked_request_type' su '1' nel
file /nxrelay/conf/cfg.properties come mostrato di seguito:
drop_blocked_request_type = 1