องค์กร WiFi FreeRadius + FreeIPA + Ubiquiti

องค์กร WiFi FreeRadius + FreeIPA + Ubiquiti

มีการอธิบายตัวอย่างบางส่วนของการจัดการ WiFi ขององค์กรแล้ว ที่นี่ฉันจะอธิบายวิธีการใช้โซลูชันที่คล้ายกันและปัญหาที่ฉันเผชิญเมื่อเชื่อมต่อกับอุปกรณ์ต่างๆ เราจะใช้ LDAP ที่มีอยู่กับผู้ใช้ที่ลงทะเบียน เพิ่ม FreeRadius และกำหนดค่า WPA2-Enterprise บนตัวควบคุม Ubnt ทุกอย่างดูเหมือนจะเรียบง่าย มาดูกัน…

เล็กน้อยเกี่ยวกับวิธีการ EAP

ก่อนที่เราจะเริ่มงาน เราต้องตัดสินใจว่าเราจะใช้วิธีการรับรองความถูกต้องแบบใดในโซลูชันของเรา

จากวิกิพีเดีย:

EAP เป็นกรอบการตรวจสอบความถูกต้องที่มักใช้ในเครือข่ายไร้สายและการเชื่อมต่อแบบจุดต่อจุด รูปแบบนี้อธิบายครั้งแรกใน RFC 3748 และอัปเดตใน RFC 5247
EAP ใช้เพื่อเลือกวิธีการตรวจสอบสิทธิ์ โอนคีย์ และประมวลผลคีย์เหล่านั้นโดยใช้ปลั๊กอินที่เรียกว่าวิธี EAP มีวิธีการ EAP มากมาย ทั้งที่กำหนดด้วย EAP เองและที่เผยแพร่โดยผู้จำหน่ายแต่ละราย EAP ไม่ได้กำหนดเลเยอร์ลิงก์ แต่จะกำหนดรูปแบบข้อความเท่านั้น แต่ละโปรโตคอลที่ใช้ EAP จะมีโปรโตคอลการห่อหุ้มข้อความ EAP ของตัวเอง

วิธีการเอง:

  • LEAP เป็นโปรโตคอลกรรมสิทธิ์ที่พัฒนาโดย CISCO พบช่องโหว่ ปัจจุบันไม่แนะนำให้ใช้
  • EAP-TLS ได้รับการสนับสนุนอย่างดีจากผู้จำหน่ายอุปกรณ์ไร้สาย เป็นโปรโตคอลที่ปลอดภัยเนื่องจากเป็นโปรโตคอลที่สืบทอดมาจากมาตรฐาน SSL การตั้งค่าไคลเอนต์ค่อนข้างซับซ้อน คุณต้องมีใบรับรองไคลเอ็นต์นอกเหนือจากรหัสผ่าน รองรับหลายระบบ
  • EAP-TTLS - รองรับอย่างกว้างขวางในหลายระบบ ให้ความปลอดภัยที่ดีโดยใช้ใบรับรอง PKI บนเซิร์ฟเวอร์การตรวจสอบความถูกต้องเท่านั้น
  • EAP-MD5 เป็นอีกหนึ่งมาตรฐานแบบเปิด ให้ความปลอดภัยน้อยที่สุด มีช่องโหว่ ไม่รองรับการตรวจสอบสิทธิ์ร่วมกันและการสร้างคีย์
  • EAP-IKEv2 - อิงตาม Internet Key Exchange Protocol เวอร์ชัน 2 ให้การรับรองความถูกต้องร่วมกันและการสร้างคีย์เซสชันระหว่างไคลเอนต์และเซิร์ฟเวอร์
  • PEAP เป็นโซลูชันร่วมกันของ CISCO, Microsoft และ RSA Security ในรูปแบบมาตรฐานเปิด มีอยู่ในผลิตภัณฑ์อย่างกว้างขวางให้ความปลอดภัยที่ดีมาก คล้ายกับ EAP-TTLS ซึ่งต้องการเพียงใบรับรองทางฝั่งเซิร์ฟเวอร์
  • PEAPv0/EAP-MSCHAPv2 - หลังจาก EAP-TLS นี่เป็นมาตรฐานที่ใช้กันอย่างแพร่หลายเป็นอันดับสองของโลก ใช้ความสัมพันธ์ระหว่างไคลเอนต์และเซิร์ฟเวอร์ใน Microsoft, Cisco, Apple, Linux
  • PEAPv1/EAP-GTC - สร้างโดย Cisco เพื่อเป็นทางเลือกแทน PEAPv0/EAP-MSCHAPv2 ไม่ปกป้องข้อมูลการตรวจสอบสิทธิ์แต่อย่างใด ไม่รองรับระบบปฏิบัติการ Windows
  • EAP-FAST เป็นวิธีการที่ Cisco พัฒนาขึ้นเพื่อแก้ไขข้อบกพร่องของ LEAP ใช้ข้อมูลรับรองการเข้าถึงที่ได้รับการป้องกัน (PAC) ยังไม่เสร็จโดยสิ้นเชิง

จากความหลากหลายทั้งหมดนี้ ทางเลือกยังไม่ค่อยดีนัก จำเป็นต้องมีวิธีการรับรองความถูกต้อง: การรักษาความปลอดภัยที่ดี รองรับทุกอุปกรณ์ (Windows 10, macOS, Linux, Android, iOS) และยิ่งง่ายก็ยิ่งดีเท่านั้น ดังนั้นตัวเลือกจึงตกอยู่กับ EAP-TTLS ร่วมกับโปรโตคอล PAP
คำถามอาจเกิดขึ้น - ทำไมต้องใช้ PAP? เพราะเขาส่งรหัสผ่านชัดเจน?

ถูกต้องเลย. การสื่อสารระหว่าง FreeRadius และ FreeIPA จะเกิดขึ้นในลักษณะนี้ ในโหมดแก้ไขข้อบกพร่อง คุณจะติดตามวิธีการส่งชื่อผู้ใช้และรหัสผ่านได้ ใช่ และปล่อยมันไป มีเพียงคุณเท่านั้นที่สามารถเข้าถึงเซิร์ฟเวอร์ FreeRadius

คุณสามารถอ่านเพิ่มเติมเกี่ยวกับวิธีการทำงานของ EAP-TTLS ที่นี่

ฟรีRADIUS

FreeRadius จะถูกยกระดับบน CentOS 7.6 ไม่มีอะไรซับซ้อนที่นี่เราตั้งค่าไว้ตามปกติ

yum install freeradius freeradius-utils freeradius-ldap -y

มีการติดตั้งเวอร์ชัน 3.0.13 จากแพ็คเกจ อย่างหลังก็รับได้ https://freeradius.org/

หลังจากนั้น FreeRadius ก็ใช้งานได้แล้ว คุณสามารถยกเลิกการใส่ข้อคิดเห็นบรรทัดใน /etc/raddb/users

steve   Cleartext-Password := "testing"

เปิดตัวเข้าสู่เซิร์ฟเวอร์ในโหมดแก้ไขข้อบกพร่อง

freeradius -X

และทำการทดสอบการเชื่อมต่อจาก localhost

radtest steve testing 127.0.0.1 1812 testing123

เราได้รับคำตอบ ได้รับรหัสการเข้าถึงที่ยอมรับ 115 จาก 127.0.0.1:1812 ถึง 127.0.0.1:56081 ความยาว 20หมายความว่าทุกอย่างเรียบร้อยดี ไปข้างหน้า.

เราเชื่อมต่อโมดูล LDAP.

ln -s /etc/raddb/mods-available/ldap /etc/raddb/mods-enabled/ldap

และเราจะเปลี่ยนมันทันที เราต้องการ FreeRadius เพื่อให้สามารถเข้าถึง FreeIPA

เปิดใช้งาน mods/ldap

ldap {
server="ldap://ldap.server.com"
port=636
start_tls=yes
identity="uid=admin,cn=users,dc=server,dc=com"
password=**********
base_dn="cn=users,dc=server,dc=com"
set_auth_type=yes
...
user {
base_dn="${..base_dn}"
filter="(uid=%{%{Stripped-User-Name}:-%{User-Name}})"
}
...

รีสตาร์ทเซิร์ฟเวอร์รัศมีและตรวจสอบการซิงโครไนซ์ของผู้ใช้ LDAP:

radtest user_ldap password_ldap localhost 1812 testing123

กำลังแก้ไข เข้ามาครับ. เปิดใช้งาน mods/eap
ที่นี่เราเพิ่ม eap สองอินสแตนซ์ จะแตกต่างกันเฉพาะในใบรับรองและคีย์เท่านั้น ด้านล่างนี้ฉันจะอธิบายว่าทำไมจึงเป็นเช่นนี้

เปิดใช้งาน mods/eap

eap eap-client {                                                                                                                                                                                                                           default_eap_type = ttls                                                                                                                                                                                                                 timer_expire = 60                                                                                                                                                                                                                       ignore_unknown_eap_types = no                                                                                                                                                                                                          cisco_accounting_username_bug = no                                                                                                                                                                                                      max_sessions = ${max_requests}
           tls-config tls-common {
           private_key_file = ${certdir}/fisrt.key
           certificate_file = ${certdir}/first.crt
           dh_file = ${certdir}/dh
           ca_path = ${cadir}
           cipher_list = "HIGH"
           cipher_server_preference = no
           ecdh_curve = "prime256v1"
           check_crl = no
           }
                                                                                                                                                                                                                                                                                                                                                                                                                                                 
           ttls {
           tls = tls-common
           default_eap_type = md5
           copy_request_to_tunnel = no
           use_tunneled_reply = yes
           virtual_server = "inner-tunnel"
           }
}
eap eap-guest {
default_eap_type = ttls                                                                                                                                                                                                                 timer_expire = 60                                                                                                                                                                                                                       ignore_unknown_eap_types = no                                                                                                                                                                                                          cisco_accounting_username_bug = no                                                                                                                                                                                                      max_sessions = ${max_requests}
           tls-config tls-common {
           private_key_passwotd=blablabla
           private_key_file = ${certdir}/server.key
           certificate_file = ${certdir}/server.crt
           dh_file = ${certdir}/dh
           ca_path = ${cadir}
           cipher_list = "HIGH"
           cipher_server_preference = no
           ecdh_curve = "prime256v1"
           check_crl = no
           }
                                                                                                                                                                                                                                                                                                                                                                                                                                                 
           ttls {
           tls = tls-common
           default_eap_type = md5
           copy_request_to_tunnel = no
           use_tunneled_reply = yes
           virtual_server = "inner-tunnel"
           }
}

แก้ไขเพิ่มเติม เปิดใช้งานไซต์/ค่าเริ่มต้น. ส่วนการอนุญาตและการรับรองความถูกต้องเป็นที่สนใจ

เปิดใช้งานไซต์/ค่าเริ่มต้น

authorize {
  filter_username
  preprocess
  if (&User-Name == "guest") {
   eap-guest {
       ok = return
   }
  }
  elsif (&User-Name == "client") {
    eap-client {
       ok = return 
    }
  }
  else {
    eap-guest {
       ok = return
    }
  }
  ldap
  if ((ok || updated) && User-Password) {
    update {
        control:Auth-Type := ldap
    }
  }
  expiration
  logintime
  pap
  }

authenticate {
  Auth-Type LDAP {
    ldap
  }
  Auth-Type eap-guest {
    eap-guest
  }
  Auth-Type eap-client {
    eap-client
  }
  pap
}

ในส่วนการอนุญาต เราจะลบโมดูลทั้งหมดที่เราไม่ต้องการออก เราเหลือเพียง ldap เท่านั้น เพิ่มการยืนยันลูกค้าด้วยชื่อผู้ใช้ นั่นเป็นสาเหตุที่เราเพิ่ม eap สองอินสแตนซ์ด้านบน

EAP หลายรายการความจริงก็คือเมื่อเชื่อมต่ออุปกรณ์บางอย่างเราจะใช้ใบรับรองระบบและระบุโดเมน เรามีใบรับรองและคีย์จากผู้ออกใบรับรองที่เชื่อถือได้ โดยส่วนตัวแล้วในความคิดของฉัน ขั้นตอนการเชื่อมต่อดังกล่าวนั้นง่ายกว่าการโยนใบรับรองที่ลงนามด้วยตนเองในแต่ละอุปกรณ์ แต่ถึงแม้จะไม่มีใบรับรองที่ลงนามด้วยตนเอง แต่ก็ยังไม่ได้ผล อุปกรณ์ Samsung และ Android =< 6 เวอร์ชันไม่สามารถใช้ใบรับรองระบบได้ ดังนั้นเราจึงสร้างอินสแตนซ์ eap-guest แยกต่างหากสำหรับพวกเขาด้วยใบรับรองที่ลงนามด้วยตนเอง สำหรับอุปกรณ์อื่นๆ ทั้งหมด เราจะใช้ eap-client ที่มีใบรับรองที่เชื่อถือได้ ชื่อผู้ใช้จะถูกกำหนดโดยฟิลด์ไม่ระบุชื่อเมื่อเชื่อมต่ออุปกรณ์ อนุญาตให้ใช้เพียง 3 ค่าเท่านั้น: แขก ลูกค้า และฟิลด์ว่าง ทุกอย่างอื่นจะถูกทิ้ง โดยจะมีการกำหนดค่าในตัวนักการเมือง ฉันจะยกตัวอย่างในภายหลังเล็กน้อย

มาแก้ไขส่วนการอนุญาตและรับรองความถูกต้องกัน เปิดใช้งานไซต์/อุโมงค์ภายใน

เปิดใช้งานไซต์/อุโมงค์ภายใน

authorize {
  filter_username
  filter_inner_identity
  update control {
   &Proxy-To-Realm := LOCAL
  }
  ldap
  if ((ok || updated) && User-Password) {
    update {
        control:Auth-Type := ldap
    }
  }
  expiration
  digest
  logintime
  pap
  }

authenticate {
  Auth-Type eap-guest {
    eap-guest
  }
  Auth-Type eap-client {
    eap-client
  }
  Auth-Type PAP {
    pap
  }
  ldap
}

ถัดไป คุณต้องระบุในนโยบายว่าชื่อใดที่สามารถใช้ในการเข้าสู่ระบบโดยไม่ระบุชื่อได้ การแก้ไข Policy.d/ตัวกรอง.

คุณต้องค้นหาบรรทัดที่คล้ายกับสิ่งนี้:

if (&outer.request:User-Name !~ /^(anon|@)/) {
  update request {
    Module-Failure-Message = "User-Name is not anonymized"
  }
  reject
}

และด้านล่างใน elsif ให้เพิ่มค่าที่ต้องการ:

elsif (&outer.request:User-Name !~ /^(guest|client|@)/) {
  update request {
    Module-Failure-Message = "User-Name is not anonymized"
  }
  reject
}

ตอนนี้เราต้องย้ายไปยังไดเร็กทอรี ใบรับรอง. ที่นี่คุณจะต้องใส่คีย์และใบรับรองจากผู้ออกใบรับรองที่เชื่อถือได้ ซึ่งเรามีอยู่แล้วและจำเป็นต้องสร้างใบรับรองที่ลงนามด้วยตนเองสำหรับ eap-guest

เปลี่ยนพารามิเตอร์ในไฟล์ ca.cnf.

ca.cnf


...
default_days = 3650
default_md = sha256
...
input_password = blablabla
output_password = blablabla
...
countryName = RU
stateOrProvinceNmae = State
localityNmae = City
organizationName = NONAME
emailAddress = [email protected]
commonName = "CA FreeRadius"

เราเขียนค่าเดียวกันในไฟล์ เซิร์ฟเวอร์.cnf. เราเปลี่ยนเท่านั้น
ชื่อสามัญ:

เซิร์ฟเวอร์.cnf


...
default_days = 3650
default_md = sha256
...
input_password = blablabla
output_password = blablabla
...
countryName = RU
stateOrProvinceNmae = State
localityNmae = City
organizationName = NONAME
emailAddress = [email protected]
commonName = "Server Certificate FreeRadius"

สร้าง:

make

พร้อม. ได้รับ server.crt и เซิร์ฟเวอร์.คีย์ เราได้ลงทะเบียนข้างต้นใน eap-guest แล้ว

และสุดท้าย เรามาเพิ่มจุดเข้าใช้งานของเราลงในไฟล์ ลูกค้า.conf. ฉันมี 7 จุด เพื่อไม่ให้เพิ่มแต่ละจุดแยกกันเราจะเขียนเฉพาะเครือข่ายที่จุดนั้นตั้งอยู่เท่านั้น (จุดเชื่อมต่อของฉันอยู่ใน VLAN แยกต่างหาก)

client APs {
ipaddr = 192.168.100.0/24
password = password_AP
}

คอนโทรลเลอร์ Ubiquiti

เรายกเครือข่ายแยกต่างหากบนคอนโทรลเลอร์ ให้เป็น 192.168.2.0/24
ไปที่การตั้งค่า -> โปรไฟล์ เราสร้างอันใหม่:

องค์กร WiFi FreeRadius + FreeIPA + Ubiquiti

เราจดที่อยู่และพอร์ตของเซิร์ฟเวอร์รัศมีและรหัสผ่านที่เขียนไว้ในไฟล์ ลูกค้า.conf:

องค์กร WiFi FreeRadius + FreeIPA + Ubiquiti

สร้างชื่อเครือข่ายไร้สายใหม่ เลือก WPA-EAP (Enterprise) เป็นวิธีการรับรองความถูกต้อง และระบุโปรไฟล์รัศมีที่สร้างขึ้น:

องค์กร WiFi FreeRadius + FreeIPA + Ubiquiti

เราบันทึกทุกอย่าง นำไปใช้และเดินหน้าต่อไป

การตั้งค่าลูกค้า

มาเริ่มกันที่ส่วนที่ยากที่สุดกันดีกว่า!

หน้าต่าง 10

ปัญหาเกิดขึ้นจากการที่ Windows ยังไม่ทราบวิธีเชื่อมต่อกับ WiFi ขององค์กรผ่านโดเมน ดังนั้นเราจึงต้องอัปโหลดใบรับรองของเราด้วยตนเองไปยังที่เก็บใบรับรองที่เชื่อถือได้ ที่นี่คุณสามารถใช้ทั้งที่ลงนามด้วยตนเองและจากหน่วยงานออกใบรับรอง ฉันจะใช้อันที่สอง

ต่อไปคุณจะต้องสร้างการเชื่อมต่อใหม่ ในการดำเนินการนี้ ไปที่การตั้งค่าเครือข่ายและอินเทอร์เน็ต -> ศูนย์เครือข่ายและการแบ่งปัน -> สร้างและกำหนดค่าการเชื่อมต่อหรือเครือข่ายใหม่:

องค์กร WiFi FreeRadius + FreeIPA + Ubiquiti

องค์กร WiFi FreeRadius + FreeIPA + Ubiquiti

องค์กร WiFi FreeRadius + FreeIPA + Ubiquiti

เราป้อนชื่อเครือข่ายด้วยตนเองและเปลี่ยนประเภทความปลอดภัย จากนั้นคลิกที่ เปลี่ยนการตั้งค่าการเชื่อมต่อ และในแท็บความปลอดภัย ให้เลือกการตรวจสอบสิทธิ์เครือข่าย - EAP-TTLS

องค์กร WiFi FreeRadius + FreeIPA + Ubiquiti

องค์กร WiFi FreeRadius + FreeIPA + Ubiquiti

องค์กร WiFi FreeRadius + FreeIPA + Ubiquiti

ไปที่การตั้งค่า ตั้งค่าการรักษาความลับของการตรวจสอบสิทธิ์ - ไคลเอนต์. ในฐานะผู้ออกใบรับรองที่เชื่อถือได้ ให้เลือกใบรับรองที่เราเพิ่ม ทำเครื่องหมายที่ช่อง "อย่าออกคำเชิญให้กับผู้ใช้หากเซิร์ฟเวอร์ไม่ได้รับอนุญาต" และเลือกวิธีการตรวจสอบสิทธิ์ - รหัสผ่านที่ไม่ได้เข้ารหัส (PAP)

องค์กร WiFi FreeRadius + FreeIPA + Ubiquiti

จากนั้นไปที่การตั้งค่าขั้นสูง ทำเครื่องหมายที่ "ระบุโหมดการรับรองความถูกต้อง" เลือก "การตรวจสอบสิทธิ์ผู้ใช้" และคลิกที่ บันทึกข้อมูลรับรอง. ที่นี่คุณจะต้องป้อนชื่อผู้ใช้_ldap และรหัสผ่าน_ldap

องค์กร WiFi FreeRadius + FreeIPA + Ubiquiti

องค์กร WiFi FreeRadius + FreeIPA + Ubiquiti

องค์กร WiFi FreeRadius + FreeIPA + Ubiquiti

เราบันทึกทุกอย่าง สมัคร ปิด คุณสามารถเชื่อมต่อกับเครือข่ายใหม่ได้

ลินุกซ์

ฉันทดสอบบน Ubuntu 18.04, 18.10, Fedora 29, 30

ขั้นแรก มาดาวน์โหลดใบรับรองของเรากันก่อน ฉันไม่พบใน Linux ว่าสามารถใช้ใบรับรองระบบได้หรือไม่และมีร้านค้าดังกล่าวเลยหรือไม่

มาเชื่อมต่อกับโดเมนกันเถอะ ดังนั้นเราจึงต้องการใบรับรองจากหน่วยงานออกใบรับรองที่ซื้อใบรับรองของเรา

การเชื่อมต่อทั้งหมดทำในหน้าต่างเดียว การเลือกเครือข่ายของเรา:

องค์กร WiFi FreeRadius + FreeIPA + Ubiquiti

ลูกค้าที่ไม่ระบุชื่อ
โดเมน - โดเมนที่ออกใบรับรอง

Android

ไม่ใช่ของซัมซุง

ตั้งแต่เวอร์ชัน 7 เมื่อเชื่อมต่อ WiFi คุณสามารถใช้ใบรับรองระบบได้โดยระบุเฉพาะโดเมน:

องค์กร WiFi FreeRadius + FreeIPA + Ubiquiti

โดเมน - โดเมนที่ออกใบรับรอง
ลูกค้าที่ไม่ระบุชื่อ

ซัมซุง

ตามที่ฉันเขียนไว้ข้างต้น อุปกรณ์ Samsung ไม่ทราบวิธีใช้ใบรับรองระบบเมื่อเชื่อมต่อกับ WiFi และพวกเขาไม่สามารถเชื่อมต่อผ่านโดเมนได้ ดังนั้น คุณต้องเพิ่มใบรับรองหลักของผู้ออกใบรับรองด้วยตนเอง (ca.pem เราใช้บนเซิร์ฟเวอร์ Radius) นี่คือที่ที่จะใช้การลงนามด้วยตนเอง

ดาวน์โหลดใบรับรองลงในอุปกรณ์ของคุณแล้วติดตั้ง

การติดตั้งใบรับรององค์กร WiFi FreeRadius + FreeIPA + Ubiquiti

องค์กร WiFi FreeRadius + FreeIPA + Ubiquiti

องค์กร WiFi FreeRadius + FreeIPA + Ubiquiti

องค์กร WiFi FreeRadius + FreeIPA + Ubiquiti

ในเวลาเดียวกัน คุณจะต้องตั้งค่ารูปแบบการปลดล็อคหน้าจอ รหัสพิน หรือรหัสผ่าน หากยังไม่ได้ตั้งค่า:

องค์กร WiFi FreeRadius + FreeIPA + Ubiquiti

องค์กร WiFi FreeRadius + FreeIPA + Ubiquiti

ฉันแสดงการติดตั้งใบรับรองเวอร์ชันที่ซับซ้อน บนอุปกรณ์ส่วนใหญ่ เพียงคลิกที่ใบรับรองที่ดาวน์โหลดมา

เมื่อติดตั้งใบรับรองแล้ว คุณสามารถดำเนินการเชื่อมต่อต่อได้:

องค์กร WiFi FreeRadius + FreeIPA + Ubiquiti

ใบรับรอง - ระบุใบรับรองที่ติดตั้ง
ผู้ใช้ที่ไม่ระบุชื่อ - แขก

MacOS

อุปกรณ์ Apple ที่แกะกล่องสามารถเชื่อมต่อกับ EAP-TLS ได้เท่านั้น แต่คุณยังคงต้องส่งใบรับรองไปที่อุปกรณ์เหล่านั้น หากต้องการระบุวิธีการเชื่อมต่ออื่น คุณต้องใช้ Apple Configurator 2 ดังนั้น คุณต้องดาวน์โหลดลงใน Mac ก่อน สร้างโปรไฟล์ใหม่ และเพิ่มการตั้งค่า WiFi ที่จำเป็นทั้งหมด

ตัวกำหนดค่าของ Appleองค์กร WiFi FreeRadius + FreeIPA + Ubiquiti

องค์กร WiFi FreeRadius + FreeIPA + Ubiquiti

ป้อนชื่อเครือข่ายของคุณที่นี่
ประเภทความปลอดภัย - WPA2 Enterprise
ประเภท EAP ที่ยอมรับ - TTLS
ชื่อผู้ใช้และรหัสผ่าน - เว้นว่างไว้
การรับรองความถูกต้องภายใน - PAP
ตัวตนภายนอก-ไคลเอนต์

แท็บความน่าเชื่อถือ ที่นี่เราระบุโดเมนของเรา

ทั้งหมด. สามารถบันทึก ลงนาม และแจกจ่ายโปรไฟล์ไปยังอุปกรณ์ได้

หลังจากที่โปรไฟล์พร้อมแล้ว คุณจะต้องดาวน์โหลดลงใน Mac ของคุณและติดตั้ง ในระหว่างกระบวนการติดตั้ง คุณจะต้องระบุ usernmae_ldap และpassword_ldapของผู้ใช้:

องค์กร WiFi FreeRadius + FreeIPA + Ubiquiti

องค์กร WiFi FreeRadius + FreeIPA + Ubiquiti

องค์กร WiFi FreeRadius + FreeIPA + Ubiquiti

iOS

กระบวนการนี้คล้ายกับ macOS คุณต้องใช้โปรไฟล์ (คุณสามารถใช้โปรไฟล์เดียวกันกับ macOS ได้ ดูวิธีสร้างโปรไฟล์ใน Apple Configurator ที่ด้านบน)

ดาวน์โหลดโปรไฟล์ ติดตั้ง ป้อนข้อมูลรับรอง เชื่อมต่อ:

องค์กร WiFi FreeRadius + FreeIPA + Ubiquiti

องค์กร WiFi FreeRadius + FreeIPA + Ubiquiti

องค์กร WiFi FreeRadius + FreeIPA + Ubiquiti

องค์กร WiFi FreeRadius + FreeIPA + Ubiquiti

องค์กร WiFi FreeRadius + FreeIPA + Ubiquiti

องค์กร WiFi FreeRadius + FreeIPA + Ubiquiti

นั่นคือทั้งหมดที่ เราตั้งค่าเซิร์ฟเวอร์ Radius ซิงค์กับ FreeIPA และบอกให้ Ubiquiti AP ใช้ WPA2-EAP

คำถามที่เป็นไปได้

ที่: จะโอนโปรไฟล์/ใบรับรองให้กับพนักงานได้อย่างไร?

เกี่ยวกับ: ฉันจัดเก็บใบรับรอง/โปรไฟล์ทั้งหมดไว้บน ftp ด้วยการเข้าถึงเว็บ ยกระดับเครือข่ายแขกด้วยการจำกัดความเร็วและเข้าถึงได้เฉพาะอินเทอร์เน็ต ยกเว้น FTP
การตรวจสอบสิทธิ์จะใช้เวลา 2 วัน หลังจากนั้นจะถูกรีเซ็ตและไคลเอ็นต์จะถูกทิ้งไว้โดยไม่มีอินเทอร์เน็ต ที่. เมื่อพนักงานต้องการเชื่อมต่อ WiFi ก่อนอื่นเขาจะเชื่อมต่อกับเครือข่ายแขก เข้าถึง FTP ดาวน์โหลดใบรับรองหรือโปรไฟล์ที่ต้องการ ติดตั้ง จากนั้นจึงเชื่อมต่อกับเครือข่ายองค์กรได้

ที่: ทำไมไม่ใช้โครงร่างกับ MSCHAPv2? มันปลอดภัยกว่า!

เกี่ยวกับ: ประการแรก รูปแบบดังกล่าวทำงานได้ดีบน NPS (Windows Network Policy System) ในการนำไปใช้งานของเรา จำเป็นต้องกำหนดค่า LDAP เพิ่มเติม (FreeIpa) และจัดเก็บแฮชรหัสผ่านบนเซิร์ฟเวอร์ เพิ่ม. ไม่แนะนำให้ทำการตั้งค่าเพราะว่า สิ่งนี้สามารถนำไปสู่ปัญหาต่าง ๆ ของการซิงโครไนซ์อัลตราซาวนด์ ประการที่สอง แฮชคือ MD4 ดังนั้นจึงไม่ได้เพิ่มความปลอดภัยมากนัก

ที่: เป็นไปได้ไหมที่จะอนุญาตอุปกรณ์ด้วยที่อยู่ mac?

เกี่ยวกับ: ไม่ มันไม่ปลอดภัย ผู้โจมตีสามารถเปลี่ยนที่อยู่ MAC ได้ และยิ่งไปกว่านั้น การอนุญาตโดยที่อยู่ MAC ไม่ได้รับการสนับสนุนบนอุปกรณ์จำนวนมาก

ที่: โดยทั่วไปแล้วใบรับรองทั้งหมดนี้จะใช้อะไร? คุณสามารถเข้าร่วมโดยไม่มีพวกเขาได้ไหม?

เกี่ยวกับ: ใบรับรองใช้เพื่ออนุญาตเซิร์ฟเวอร์ เหล่านั้น. เมื่อเชื่อมต่อเครื่องจะตรวจสอบว่าเป็นเซิร์ฟเวอร์ที่เชื่อถือได้หรือไม่ หากเป็นเช่นนั้น การรับรองความถูกต้องจะดำเนินต่อไป หากไม่เป็นเช่นนั้น การเชื่อมต่อจะถูกปิด คุณสามารถเชื่อมต่อได้โดยไม่ต้องใช้ใบรับรอง แต่หากผู้โจมตีหรือเพื่อนบ้านตั้งค่าเซิร์ฟเวอร์รัศมีและจุดเชื่อมต่อที่มีชื่อเดียวกับของเราที่บ้าน เขาสามารถสกัดกั้นข้อมูลรับรองของผู้ใช้ได้อย่างง่ายดาย (อย่าลืมว่าข้อมูลเหล่านั้นจะถูกส่งเป็นข้อความที่ชัดเจน) และเมื่อใช้ใบรับรอง ศัตรูจะเห็นเฉพาะชื่อผู้ใช้สมมติของเราในบันทึก - แขกหรือไคลเอนต์ และข้อผิดพลาดประเภท - ใบรับรอง CA ที่ไม่รู้จัก

เพิ่มเติมเล็กน้อยเกี่ยวกับ macOSโดยปกติแล้วบน macOS การติดตั้งระบบใหม่จะทำผ่านทางอินเทอร์เน็ต ในโหมดการกู้คืน Mac จะต้องเชื่อมต่อกับ WiFi และทั้ง WiFi ขององค์กรและเครือข่ายแขกจะไม่ทำงานที่นี่ โดยส่วนตัวแล้วฉันยกเครือข่ายอื่นขึ้นมาซึ่งเป็น WPA2-PSK ปกติซึ่งซ่อนไว้เพื่อการดำเนินการทางเทคนิคเท่านั้น หรือคุณสามารถสร้างแฟลชไดรฟ์ USB ที่สามารถบู๊ตได้ล่วงหน้าด้วยระบบ แต่หากเป็นดอกป๊อปปี้หลังปี 2015 คุณยังคงต้องหาอะแดปเตอร์สำหรับแฟลชไดรฟ์รุ่นนี้)

ที่มา: will.com

เพิ่มความคิดเห็น