Linux UCS + wsdd: copertina

Aggiungere Il meccanismo di discovery sul server AD di UCS.

UCS (Univention Corporate Server https://www.univention.com/ ) è un buon progetto server, basato su Linux, facile da gestire, ricco di futures che permette di creare un completo server Active Directory tramite SAMBA 4, come se avessimo un server Windows UCS, però, non implementa il nuovo meccanismo di discovery della Microsoft.
Inoltre da quando è stato dismesso il protocollo SMB1 i sistemi diversi da Microsoft non riescono più a scoprire agevolmente server e condivisioni Windows presenti nella rete lolace. Ciò dipende dal cambio tecnologico fatto dalla Microsoft per motivi di sicurezza: il discovery non è più affidato alle informazioni veicolate tramite il protocollo SMB, ma al meccanismo "WS-Discovery (WSD)".
Il mondo open e anche SAMBA non integrano nativamente questo meccanismo di discovery. Nel caso di UCS come server rischia di essere invisibile nella rete. Una soluzione lo troviamo nel pacchetto wsdd o wsdd2.
Essi incarnano il nuovo meccanismo Microsft di discovery, sia lato server, sia lato host.

Dopo questa premessa passiamo all'implementazione, iniziando dalle differenze tra wsdd e wsdd2, poi l'installazione, la configurazione ed il test finale.

wsdd VS wsdd2

wsdd e wsdd2 sono due procetti indipendenti, ma che incrementano lo stesso protocollo di discovery.
Oltre al linguaggio di programmazione si differenziano per l'uso di porte diverse di dialogo.
Entrambi sono presenti nei pacchetti di UCS.
Infine wsdd2 oltre al supporto del protocollo WSD supporta anche LLMNR (Link-Local Multicast Name Resolution).

Installazione e configurazione

Procediamo a fare tutte le operazioni da terminale.
Le operazioni comporteranno:

  • installazione
  • opzionale: configurazione di wsdd
  • configurazione del firewall.

Per operare da terminale apriamo una connessione ssh dal PC da cui operiamo

ssh username@ip-di-UCS

installiamo wsdd

sudo univention-install wsdd

configuriamo wsdd. Editiamo /etc/default/wsdd

sudo nano /etc/default/wsdd

e personalizziamo la variabile ``WSDD_PARAMS``

WSDD_PARAMS="-i enp1s0 -4"

NB: possiamo specificare molti parametri a seconda del nostro obiettivo. Per conoscere tutti i parametri possibili puoi usare ``man wsdd``. I parametri qui usati:

  • "-i": specifichiamo di usare la sola porta di rete enp1s0
  • "-4": specifichiamo di usare solo IPv4 .

riavviamo il demone wsdd

sudo systemctl restart wsdd

apriamo le porte 3702 e 5357 del firewall

ucr set security/packetfilter/tcp/3702/all=ACCEPT
ucr set security/packetfilter/udp/3702/all=ACCEPT
ucr set security/packetfilter/tcp/5357/all=ACCEPT
ucr set security/packetfilter/udp/5357/all=ACCEPT

e riavviamolo

systemctl restart univention-firewall.service

Test

Il test più semplice è avviare un PC Windows presente nella rete, aprire esplora risorse e fargli scansionare la rete. Dopo un pò mostrerà il server UCS.
Possiamo usare anche un PC Linux a patto che abbiamo installato wsdd.

Webgrafia

https://sssd.io/docs/ad/ad-provider-manual.html
https://github.com/kochinc/wsdd2
https://github.com/christgau/wsdd
https://help.univention.com/t/problem-windows-10-11-clients-cannot-discover-ucs-server-via-network-view/25040
https://learn.microsoft.com/it-it/intune/configmgr/core/servers/deploy/configure/about-discovery-methods