Configurazione del server WAPT con Kerberos senza richiedere l'autenticazione

Domande sul server WAPT / Richieste e assistenza relative al server WAPT
Regole del forum
Regole del forum della community
* Supporto in inglese su www.reddit.com/r/wapt
* Supporto della community in francese disponibile su questo forum
* Si prega di anteporre [RISOLTO] al titolo dell'argomento se è stato risolto.
* Si prega di non modificare un argomento contrassegnato con [RISOLTO]. Aprire un nuovo argomento facendo riferimento a quello precedente.
* Specificare la versione di WAPT installata, la versione completa e il numero di build (2.2.1.11957 / 2.2.2.12337 / ecc.) nonché l'edizione Enterprise/Discovery.
* Le versioni 1.8.2 e precedenti non sono più supportate. Le uniche domande accettate relative alla versione 1.8.2 riguardano l'aggiornamento a una versione supportata (2.1, 2.2, ecc.).
* Specificare il sistema operativo del server (Linux/Windows) e la versione (Debian Buster/Bullseye - CentOS 7 - Windows Server 2012/2016/2019).
* Specificare il sistema operativo della macchina di amministrazione/creazione dei pacchetti e della macchina con l'agente problematico, se applicabile (Windows 7/10/11/Debian 11/ecc.).
* Evitare di porre più domande quando si apre una discussione, altrimenti potrebbe essere ignorata. Se ci sono più discussioni, aprirle separatamente, preferibilmente una dopo l'altra e non tutte contemporaneamente (ovvero, non intasare il forum).
* Includere frammenti di codice, screenshot e altre immagini direttamente nel post. I link a Pastebin, Bitly e altri siti di terze parti verranno sistematicamente rimossi.
* Come in qualsiasi forum della community, il supporto è fornito volontariamente dai membri. Se si necessita di supporto commerciale, è possibile contattare il reparto vendite di Tranquil IT al numero 02.40.97.57.55
RebeccaS
Messaggi: 10
Registrazione: 31 gennaio 2020 - 09:47

25 febbraio 2020 - 8:30

Sì, il biglietto è qui.

Codice: Seleziona tutto

C:\Windows\system32>klist

LogonId est 0:0x3e7

Tickets mis en cache : (14)

#0>     Client :  client$ @ MYDOMAIN.LAN
        Serveur : krbtgt/MYDOMAIN.LAN @ MYDOMAIN.LAN
        Type de chiffrement KerbTicket : AES-256-CTS-HMAC-SHA1-96
        Indicateurs de tickets 0x60a10000 -> forwardable forwarded renewable pre_authent name_canonicalize
        Heure de démarrage : 2/25/2020 0:14:35 (Local)
        Heure de fin :   2/25/2020 10:14:25 (Local)
        Heure de renouvellement : 3/3/2020 0:14:25 (Local)
        Type de clé de session : AES-256-CTS-HMAC-SHA1-96
        Indicateurs de cache : 0x2 -> DELEGATION
        KDC appelé : srvrodc.MYDOMAIN.LAN

#7>     Client :  client$ @ MYDOMAIN.LAN
        Serveur : HTTP/srvwapt.MYDOMAIN.LAN @ MYDOMAIN.LAN
        Type de chiffrement KerbTicket : AES-256-CTS-HMAC-SHA1-96
        Indicateurs de tickets 0x40a10000 -> forwardable renewable pre_authent name_canonicalize
        Heure de démarrage : 2/25/2020 0:14:45 (Local)
        Heure de fin :   2/25/2020 10:14:25 (Local)
        Heure de renouvellement : 3/3/2020 0:14:25 (Local)
        Type de clé de session : AES-256-CTS-HMAC-SHA1-96
        Indicateurs de cache : 0
        KDC appelé : srvrodc.MYDOMAIN.LAN
Avatar utente
sfontenau
Esperto WAPT
Messaggi: 2312
Registrato: 10 luglio 2014 - 23:52
Contatto:

25 febbraio 2020 - 17:47

Hai anche un server Rodc o hai usato solo il mio esempio?
RebeccaS
Messaggi: 10
Registrazione: 31 gennaio 2020 - 09:47

26 febbraio 2020 - 09:24

No, ho solo copiato quella parte, ma è un DC standard.
Avatar utente
sfontenau
Esperto WAPT
Messaggi: 2312
Registrato: 10 luglio 2014 - 23:52
Contatto:

26 febbraio 2020 - 18:17

Quindi il tipo di crittografia KerbTicket è effettivamente AES-256-CTS-HMAC-SHA1-96?

Lo stesso vale per la chiave di sessione (quindi non so cosa è stato copiato...)

Altrimenti faremo un test senza usare wapt:

È possibile configurare Firefox per l'autenticazione Kerberos?
https://docs.oracle.com/cd/E41633_01/pt...36673.html

E naviga su:
https://srvwapt.mydomain.lan/add_host_kerberos

Se l'autenticazione Kerberos riesce, il messaggio sarà:

Codice: Seleziona tutto

Method Not Allowed

The method is not allowed for the requested URL.
Al contrario, se l'autenticazione fallisce, il messaggio sarà 401 (richiesta di autenticazione)
RebeccaS
Messaggi: 10
Registrazione: 31 gennaio 2020 - 09:47

27 febbraio 2020 - 8:26

Sì, esatto; la chiave di crittografia e la chiave di sessione non sono state modificate.

Ho eseguito nuovamente i comandi stamattina (ho evidenziato le modifiche in rosso).

C:\Windows\system32>wapt-get register
Utilizzo del file di configurazione: C:\Program Files (x86)\wapt\wapt-get.ini
Registrazione dell'host rispetto al server: https://srvwapt.mydomain.lan
Controlli alimentazione di sistema
ERRORE FATALE: HTTPError: 403 Errore client: Accesso negato per l'URL: https://srvwapt.mydomain.lan/add_host_kerberos

C:\Windows\system32>
C:\Windows\system32>klist

LogonId è 0:0x3e7

Ticket memorizzati nella cache: (15)

#0> Client: client$ @ MYDOMAIN.LAN
Server: krbtgt/MYDOMAIN.LAN @ MYDOMAIN.LAN

Tipo di crittografia KerbTicket: AES-256-CTS-HMAC-SHA1-96
Flag ticket 0x60a10000 -> inoltrabile inoltrato rinnovabile pre_autenticazione nome_canonicalize
Avvia Ora: 27/02/2020 7:52:02 (Locale)
Ora di fine: 27/02/2020 17:52:01 (Locale)
Ora di rinnovo: 05/03/2020 7:52:01 (Locale)
Tipo di chiave di sessione: AES-256-CTS-HMAC-SHA1-96
Flag cache: 0x2 ->
Delega KDC chiamata: SRVDC.MYDOMAIN.LAN

#1> Client: client$ @ MYDOMAIN.LAN
Server: krbtgt/MYDOMAIN.LAN @ MYDOMAIN.LAN

Tipo di crittografia KerbTicket: AES-256-CTS-HMAC-SHA1-96
Flag ticket 0x40e10000 -> inoltrabile rinnovabile iniziale pre_autenticazione nome_canonicalize
Ora di inizio: 27/02/2020 7:52:01 (Locale)
Ora di fine: 27/02/2020 17:52:01 (Locale)
Ora di rinnovo: 05/03/2020 7:52:01 (Locale)
Tipo di chiave di sessione: AES-256-CTS-HMAC-SHA1-96
Flag cache: 0x1 ->
KDC PRIMARY chiamato: SRVDC.MYDOMAIN.LAN

#2> Client: client$ @ MYDOMAIN.LAN
Server: HTTP/srvwapt.mydomain.lan @ MYDOMAIN.LAN

Tipo di crittografia KerbTicket: AES-256-CTS-HMAC-SHA1-96
Flag ticket 0x40a10000 -> inoltrabile rinnovabile pre_authent name_canonicalize
Ora di inizio: 27/02/2020 8:02:38 (Locale)
Ora di fine: 27/02/2020 17:52:01 (Locale)
Ora di rinnovo: 05/03/2020 7:52:01 (Locale)
Tipo di chiave di sessione: AES-256-CTS-HMAC-SHA1-96
Flag della cache: 0
KDC chiamato: SRVDC.MYDOMAIN.LAN


Risultati del test:
Allegati
2020-02-27 08_00_32-401 Autorizzazione richiesta.png
2020-02-27 08_00_32-401 Autorizzazione richiesta.png (15,72 KB) Visualizzato 11422 volte
Avatar utente
sfontenau
Esperto WAPT
Messaggi: 2312
Registrato: 10 luglio 2014 - 23:52
Contatto:

27 febbraio 2020 - 13:43

Dopo aver configurato l'autenticazione Kerberos in Firefox, hai un ticket nella klist (nell'ambiente utente, non in psexe)?


In tal caso, la parte Python di WAPT non è il problema (visto il messaggio 401).

Potresti provare a disinstallare libnginx-mod-http-auth-spnego e reinstallarlo con questo pacchetto .deb:
https://wapt.tranquil.it/debian/wapt-1. ... _amd64.deb

Simon
RebeccaS
Messaggi: 10
Registrazione: 31 gennaio 2020 - 09:47

27 febbraio 2020 - 15:26

Dopo aver configurato l'autenticazione Kerberos in Firefox:

H:\>klist

LogonId è 0:0x7ddc0

Biglietti memorizzati nella cache: (2)

#0> Client: utente @ MIODOMAIN.LAN
Server: krbtgt/MYDOMAIN.LAN @ MIODOMAIN.LAN

Tipo di crittografia KerbTicket: AES-256-CTS-HMAC-SHA1-96
Flag ticket 0x40e10000 -> pre_authent iniziale rinnovabile inoltrabile name_canonicalize
Ora di inizio: 27/02/2020 14:33:53 (ora locale)
Ora di fine: 28/02/2020 0:33:53 (Locale)
Ora di rinnovo: 05/03/2020 14:33:53 (ora locale)
Tipo di chiave di sessione: AES-256-CTS-HMAC-SHA1-96
Indicatori della cache: 0x1 -> PRIMARY
KDC chiamato: SRVDC.MYDOMAIN.LAN

#1> Client: utente @ MYDOMAIN.LAN
Server: HTTP/srvwapt.MYDOMAIN.LAN @ MYDOMAIN.LAN

Tipo di crittografia KerbTicket: AES-256-CTS-HMAC-SHA1-96
Flag ticket 0x40a10000 -> forwardable renewable pre_authent name_canonicalize
Ora di inizio: 27/02/2020 14:33:53 (ora locale)
Ora di fine: 28/02/2020 0:33:53 (Locale)
Ora di rinnovo: 05/03/2020 14:33:53 (ora locale)
Tipo di chiave di sessione: AES-256-CTS-HMAC-SHA1-96
Indicatori della cache: 0
KDC chiamato: SRVDC.MYDOMAIN.LAN



Ho provato a reinstallare il file deb, ma è lo stesso...


Tuttavia, ho una domanda:

Quando configuro il server Firefox, devo assolutamente includere il mio nome di dominio? Che differenza fa se non lo faccio?
Perché non è lo stesso errore se non includo il mio nome di dominio.

Se inserisco il mio nome di dominio, ricevo un errore 403:
2020-02-27 14_34_21-403 Proibito.png
2020-02-27 14_34_21-403 Forbidden.png (7,55 KB) Visualizzato 11410 volte
Se non includo il mio nome di dominio, ricevo un errore 401:
2020-02-27 14_36_49-401 Autorizzazione richiesta.png
2020-02-27 14_36_49-401 Authorization Required.png (9,9 KB) Visualizzato 11410 volte
Ho l'impressione che il problema si verifichi quando eseguo questo comando

Codice: Seleziona tutto

msktutil --server DOMAIN_CONTROLER --auto-update --keytab /etc/nginx/http-krb5.keytab --host $(hostname) -N
Utilizzando un prolisso - - ottengo questo:

Codice: Seleziona tutto

root@srvwapt:/home/wapt# msktutil --server srvdc --auto-update --keytab /etc/nginx/http-krb5.keytab --host $(home) -N --verbose
 -- init_password: Wiping the computer password structure
 -- generate_new_password: Generating a new, random password for the computer account
 -- generate_new_password:  Characters read from /dev/urandom = 91
 -- create_fake_krb5_conf: Created a fake krb5.conf file: /tmp/.msktkrb5.conf-qimnoe
 -- reload: Reloading Kerberos Context
 -- get_short_hostname: Determined short hostname: srvwapt
 -- finalize_exec: SAM Account Name is: srvwapt$
 -- try_machine_keytab_princ: Trying to authenticate for srvwapt$ from local keytab...
 -- try_machine_keytab_princ: Error: krb5_get_init_creds_keytab failed (Generic preauthentication failure)
 -- try_machine_keytab_princ: Authentication with keytab failed
 -- try_machine_keytab_princ: Trying to authenticate for srvwapt$ from local keytab...
 -- try_machine_keytab_princ: Error: krb5_get_init_creds_keytab failed (Generic preauthentication failure)
 -- try_machine_keytab_princ: Authentication with keytab failed
 -- try_machine_keytab_princ: Trying to authenticate for host/srvwapt.microtec-agora.lan from local keytab...
 -- try_machine_keytab_princ: Error: krb5_get_init_creds_keytab failed (Client not found in Kerberos database)
 -- try_machine_keytab_princ: Authentication with keytab failed
 -- try_machine_password: Trying to authenticate for srvwapt$ with password.
Crea comunque le voci in /etc/nginx/http-krb5.keytab... poiché il resto procede senza errori.
Avatar utente
sfontenau
Esperto WAPT
Messaggi: 2312
Registrato: 10 luglio 2014 - 23:52
Contatto:

27 febbraio 2020 - 18:49

Il biglietto si sta chiaramente vendendo bene visto che appare nella klist

Tuttavia, a quanto pare è stato rifiutato da nginx.

Per me 401 = 403, quindi non c'è differenza.

Il file krb5.conf del server è corretto? (normalmente non dovrebbe avere alcun impatto, ma per sicurezza)

Altrimenti potrebbe esserci una differenza di fuso orario tra il server wapt e il client.

In Kerberos il ritardo massimo è di 5 minuti.

Per verificare correttamente, il server:

Comando Python o WaptPython su Windows:

Codice: Seleziona tutto

Python 2.7.13 (default, Sep 26 2018, 18:42:22) 
[GCC 6.3.0 20170516] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import datetime
>>> datetime.datetime.utcnow()
datetime.datetime(2020, 2, 27, 17, 43, 21, 864084)


Ciò consente di controllare l'ora senza tenere conto dell'ora legale, del fuso orario, ecc.

Altrimenti non capisco, ho rifatto la procedura con deb libnginx-mod-http-auth-spnego_1.14.2-2+deb10u1_amd64.deb nginx quindi in 1.14 e funziona bene.

Forse una conferenza speciale sulla sicurezza a livello AD?

Un altro possibile problema: c'è un livello di proxy inverso sopra?
Avatar utente
sfontenau
Esperto WAPT
Messaggi: 2312
Registrato: 10 luglio 2014 - 23:52
Contatto:

4 marzo 2020 - 10:55

Ciao

, hai fatto qualche progresso?
RebeccaS
Messaggi: 10
Registrazione: 31 gennaio 2020 - 09:47

12 marzo 2020 - 14:27

Ciao,

scusa per il ritardo nella risposta...

Ho riprovato da zero stamattina, ma il problema persiste...

È un peccato, avevamo scelto questa soluzione per l'autenticazione Kerberos...

Grazie comunque.
Bloccato