Saya menyiapkan jaringan nirkabel untuk ~ 150 pengguna. Singkatnya, saya mencari panduan untuk mengatur server RADIUS untuk mengotentikasi WPA2 terhadap LDAP. Di Ubuntu.
- Saya mendapat LDAP yang berfungsi, tetapi karena tidak digunakan dalam produksi, ia dapat dengan mudah disesuaikan dengan perubahan apa pun yang mungkin diperlukan proyek ini.
- Saya sudah mencari di FreeRADIUS, tetapi server RADIUS akan melakukannya.
- Kami punya jaringan fisik terpisah hanya untuk WiFi, jadi tidak terlalu banyak kekhawatiran tentang keamanan di bagian depan itu.
- AP kami adalah perangkat perusahaan kelas bawah HP - mereka tampaknya mendukung apa pun yang dapat Anda pikirkan.
- Semua Server Ubuntu, sayang!
Dan berita buruknya:
- Saya sekarang seseorang yang kurang berpengetahuan daripada saya akhirnya akan mengambil alih administrasi, jadi pengaturannya harus sesederhana mungkin.
- Sejauh ini, pengaturan kami hanya didasarkan pada perangkat lunak dari repositori Ubuntu, dengan pengecualian aplikasi web administrasi LDAP kami dan beberapa skrip khusus kecil. Jadi tidak ada "ambil paket X, untar, ./configure"- hal jika dapat dihindari.
UPDATE 2009-08-18:
Sementara saya menemukan beberapa sumber daya yang bermanfaat, ada satu kendala serius:
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.
Pada dasarnya FreeRADIUS versi Ubuntu tidak mendukung SSL ( bug 183840 ), yang membuat semua jenis EAP aman tidak berguna. Kekecewaan.
Tetapi beberapa dokumentasi bermanfaat bagi siapa pun yang tertarik:
- http://vuksan.com/linux/dot1x/802-1x-LDAP.html
- http://tldp.org/HOWTO/html_single/8021X-HOWTO/#confradius
UPDATE 2009-08-19:
Saya akhirnya mengkompilasi paket FreeRADIUS saya sendiri kemarin malam - ada resep yang sangat bagus di http://www.linuxinsight.com/building-debian-freeradius-package-with-eap-tls-ttls-peap-support.html (Lihat komentar pada posting untuk instruksi terbaru).
Saya mendapat sertifikat dari http://CACert.org (Anda mungkin harus mendapatkan sertifikat "nyata" jika memungkinkan)
Kemudian saya mengikuti instruksi di http://vuksan.com/linux/dot1x/802-1x-LDAP.html . Tautan ini ke http://tldp.org/HOWTO/html_single/8021X-HOWTO/ , yang merupakan bacaan yang sangat bermanfaat jika Anda ingin tahu cara kerja keamanan WiFi.
UPDATE 2009-08-27:
Setelah mengikuti panduan di atas, saya berhasil membuat FreeRADIUS berbicara dengan LDAP:
Saya telah membuat pengguna uji di LDAP, dengan kata sandi mr2Yx36M
- ini memberikan entri LDAP kira-kira dari:
uid: testuser
sambaLMPassword: CF3D6F8A92967E0FE72C57EF50F76A05
sambaNTPassword: DA44187ECA97B7C14A22F29F52BEBD90
userPassword: {SSHA}Z0SwaKO5tuGxgxtceRDjiDGFy6bRL6ja
Saat menggunakan radtest
, saya dapat terhubung dengan baik:
> 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
>
Tetapi ketika saya mencoba melalui AP, itu tidak terbang - sementara itu mengkonfirmasi bahwa ia menemukan kata sandi NT dan 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
...
Jelas bahwa kata sandi NT dan LM berbeda dari yang di atas, namun pesannya [ldap] user testuser authorized to use remote access
- dan pengguna kemudian ditolak ...