Sonicwall SSO với NPS


1

Tôi có SonicWall nơi tôi muốn kích hoạt khả năng RADIUS SSO. Bài viết để làm điều này nêu rõ máy chủ RADIUSSend the user’s IP address in either Framed-IP-Address or Calling-Station-Id attribute in both Start and Stop messages.

Thiết lập của tôi như sau: AP -> NPS -> (RADIUS Accounting forwarded) Sonicwall

Khi kết nối với AP, nó đăng nhập thành công. Khi sự kiện được chuyển tiếp đến SonicWall, nó không có Framed-IP-Addresshoặc IP trong Calling-Station-Id(chỉ địa chỉ MAC).

 Attribute Value Pairs
    AVP: l=19  t=Acct-Session-Id(44): 53AB6162-00000010
    AVP: l=6  t=Acct-Status-Type(40): Stop(2)
    AVP: l=6  t=Acct-Authentic(45): RADIUS(1)
    AVP: l=10  t=User-Name(1): user
    AVP: l=6  t=NAS-IP-Address(4): 10.10.0.150
    AVP: l=14  t=NAS-Identifier(32): xxxxxxxxx
    AVP: l=6  t=NAS-Port(5): 0
    AVP: l=35  t=Called-Station-Id(30): XX-XX-XX-XX-XX-XX:SSID
    AVP: l=19  t=Calling-Station-Id(31): XX-XX-XX-XX-XX-XX
    AVP: l=6  t=NAS-Port-Type(61): Wireless-802.11(19)
    AVP: l=23  t=Connect-Info(77): CONNECT 0Mbps 802.11b
    AVP: l=46  t=Class(25): 420e04e70000013700011700000000000000000000000000...
    AVP: l=6  t=Acct-Session-Time(46): 604
    AVP: l=6  t=Acct-Input-Packets(47): 182
    AVP: l=6  t=Acct-Output-Packets(48): 145
    AVP: l=6  t=Acct-Input-Octets(42): 32797
    AVP: l=6  t=Acct-Output-Octets(43): 47272
    AVP: l=6  t=Event-Timestamp(55): Jun 26, 2014 09:47:54.000000000 PDT
    AVP: l=6  t=Acct-Terminate-Cause(49): User-Request(1)
    AVP: l=22  t=Proxy-State(33): 1700000000000000000000000000000000000039

Tôi phát hiện ra rằng các AP Ubiquiti của tôi không gửi Framed-IP-Addresshoặc IP trong Calling-Station-Idvà họ đề nghị RADIUS lấy thông tin này từ DHCP. Tôi phải thiếu một cái gì đó vì tôi không thể tìm thấy cấu hình ở bất cứ đâu trong NPS hoặc dịch vụ DHCP.

Làm cách nào để có được thông tin chính xác cho SonicWall của tôi thông qua DHCP hoặc NPS?

Câu trả lời:


2

Những người khác đã yêu cầu Ubiquiti cho điều tương tự không có kết quả. Có vẻ như, sau khi kiểm tra mã, sẽ cần một số kỹ thuật hợp lý để thực hiện điều đó. ( Ubiquiti đi đến kết luận tương tự .)

Các AP Ubiquiti dựa trên Linux và sử dụng hostapd để cung cấp chức năng AP của chúng. Tôi đã đào sâu vào nguồn cho hostapd một chút và không thấy rằng nó hỗ trợ điền vào Framed-IP-Addressthuộc tính RADIUS ( src/radius/radius.c, radius_attr_type radius_attrsstruct). Theo như điền vào Calling-Station-Idthuộc tính, hostpad chỉ điền vào địa chỉ MAC, từ những gì tôi có thể thấy ( src/ap/ieee802_11_auth.ctrong chức năng hostapd_radius_acl_querynơi nó lấy MAC từ hostapd_allowed_addressvà trong src/ap/ieee802_1x.cchức năng add_common_radius_sta_attr).

Kể từ hostapd là có liên quan chủ yếu với chứng thực các đơn vị điện thoại di động (MU) (và một chút chút RADIUS kế toán) và không được xử lý lưu lượng IP tùy ý cho MU khi nó đã được chứng thực nó không thực sự sẽ có IP của MU để cung cấp cho RADIUS.

Tôi không nghĩ rằng bạn sẽ nhận được những gì bạn muốn với việc viết mã. Về lý thuyết, bạn có thể gắn một loại proxy RADIUS lớp 7 giữa dịch vụ NPS và Sonicwall và viết lại thuộc tính đó từ MAC sang địa chỉ IP (truy vấn máy chủ DHCP của bạn). Chính sách FreeRADIUS có thể chỉ có thể làm những gì bạn muốn.


0

Theo đề nghị của Evan. Cuối cùng tôi đã viết mã của riêng mình bằng cách sử dụng unifi-api bởi peaceh. Cái ngã ba của dự án của tôi bao gồm các hướng dẫn về cách thiết lập nó với FreeRADIUS.

Tôi đã đi tuyến đường FreeRADIUS> NPS (Auth)> Sonicwall (Acct).

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.