Sto configurando una rete wireless per circa 150 utenti. In breve, sto cercando una guida per impostare il server RADIUS per autenticare WPA2 rispetto a un LDAP. Su Ubuntu.
- Ho ottenuto un LDAP funzionante, ma poiché non è in uso nella produzione, può essere facilmente adattato a qualsiasi cambiamento possa richiedere questo progetto.
- Ho guardato FreeRADIUS, ma qualsiasi server RADIUS lo farà.
- Abbiamo una rete fisica separata solo per WiFi, quindi non troppe preoccupazioni per la sicurezza su quel fronte.
- I nostri AP sono prodotti aziendali di fascia bassa di HP: sembrano supportare qualunque cosa tu possa pensare.
- Tutti i server Ubuntu, piccola!
E le cattive notizie:
- Ora qualcuno meno esperto di me finirà per assumere l'amministrazione, quindi l'installazione deve essere il più "banale" possibile.
- Finora, la nostra configurazione si basa solo sul software dei repository Ubuntu, ad eccezione della nostra applicazione Web di amministrazione LDAP e di alcuni piccoli script speciali. Quindi niente "recupera pacchetto X, untar, ./configure"-things se evitabile.
AGGIORNAMENTO 18-08-2009:
Mentre ho trovato diverse risorse utili, c'è un grave ostacolo:
Ignoring EAP-Type/tls because we do not have OpenSSL support.
Ignoring EAP-Type/ttls because we do not have OpenSSL support.
Ignoring EAP-Type/peap because we do not have OpenSSL support.
Fondamentalmente la versione Ubuntu di FreeRADIUS non supporta SSL ( bug 183840 ), il che rende inutili tutti i tipi EAP sicuri. Bummer.
Ma una documentazione utile per chiunque sia interessato:
- http://vuksan.com/linux/dot1x/802-1x-LDAP.html
- http://tldp.org/HOWTO/html_single/8021X-HOWTO/#confradius
AGGIORNAMENTO 19-08-2009:
Ho finito per compilare il mio pacchetto FreeRADIUS ieri sera - c'è una ricetta davvero buona su http://www.linuxinsight.com/building-debian-freeradius-package-with-eap-tls-ttls-peap-support.html (Vedi i commenti al post per istruzioni aggiornate).
Ho ricevuto un certificato da http://CACert.org (probabilmente dovresti ottenere un certificato "reale" se possibile)
Quindi ho seguito le istruzioni su http://vuksan.com/linux/dot1x/802-1x-LDAP.html . Questo link a http://tldp.org/HOWTO/html_single/8021X-HOWTO/ , che è una lettura molto utile se vuoi sapere come funziona la sicurezza WiFi.
AGGIORNAMENTO 2009-08-27:
Dopo aver seguito la guida sopra, sono riuscito a convincere FreeRADIUS a parlare con LDAP:
Ho creato un utente di prova in LDAP, con la password mr2Yx36M
- questo dà una voce LDAP all'incirca di:
uid: testuser
sambaLMPassword: CF3D6F8A92967E0FE72C57EF50F76A05
sambaNTPassword: DA44187ECA97B7C14A22F29F52BEBD90
userPassword: {SSHA}Z0SwaKO5tuGxgxtceRDjiDGFy6bRL6ja
Durante l'utilizzo radtest
, posso collegarmi bene:
> radtest testuser "mr2Yx36N" sbhr.dk 0 radius-private-password
Sending Access-Request of id 215 to 130.225.235.6 port 1812
User-Name = "msiebuhr"
User-Password = "mr2Yx36N"
NAS-IP-Address = 127.0.1.1
NAS-Port = 0
rad_recv: Access-Accept packet from host 130.225.235.6 port 1812, id=215, length=20
>
Ma quando provo attraverso l'AP, non vola - mentre conferma che capisce le password NT e LM:
...
rlm_ldap: sambaNTPassword -> NT-Password == 0x4441343431383745434139374237433134413232463239463532424542443930
rlm_ldap: sambaLMPassword -> LM-Password == 0x4346334436463841393239363745304645373243353745463530463736413035
[ldap] looking for reply items in directory...
WARNING: No "known good" password was found in LDAP. Are you sure that the user is configured correctly?
[ldap] user testuser authorized to use remote access
rlm_ldap: ldap_release_conn: Release Id: 0
++[ldap] returns ok
++[expiration] returns noop
++[logintime] returns noop
[pap] Normalizing NT-Password from hex encoding
[pap] Normalizing LM-Password from hex encoding
...
È chiaro che le password NT e LM differiscono da quanto sopra, eppure il messaggio [ldap] user testuser authorized to use remote access
- e l'utente viene in seguito rifiutato ...