AD系列:Windows Server 2025 搭建NPS-Radius服务器

本文最后更新于 2025年5月8日 上午

简介

通过微软的NPS角色实现一个Radius服务器,身份验证和证书使用微软ADCS、ADDS。

最终可实现通过AD用户进行802.1X协议进行接入认证,配置到接入交换机和WLC(无线控制器),可通过安全组分配指定VLAN。

AD 系列文章:https://songxwn.com/categories/AD/

PS:加入域控的Windows终端可无感认证(通过组策略和域控下发CA。)

示意图

什么是 802.1X?

802.1X 是由IEEE(电气和电子工程师协会)定义的一个网络访问控制标准,主要用于局域网(LAN)和无线局域网(WLAN)的端口级接入控制,保障网络安全。

核心作用

  • 通过身份验证机制控制设备(如计算机、手机)接入网络的权限。

  • 防止未授权设备访问网络资源。

  • 常用于有线网络接入(以太网)和无线Wi-Fi网络的安全访问。

802.1X的组成角色

  1. Supplicant(客户端) 网络接入设备(例如电脑、手机)上运行的客户端软件,负责向网络请求访问权限并提供身份凭证(如用户名/密码、证书等)。

  2. *Authenticator(认证者)*网络设备(如交换机端口、无线接入点AP),作为中介,控制端口是否开放,必须通过认证服务器的授权后才能放行流量。

  3. *Authentication Server(认证服务器)*通常为RADIUS服务器(如微软NPS),负责接收认证请求并验证Supplicant的身份,根据策略决定是否允许访问。

工作流程简述

  1. 设备(Supplicant)连接到交换机/无线AP(Authenticator)。

  2. Authenticator暂时将端口置为封闭状态,只允许传输802.1X相关认证流量。

  3. Supplicant发送认证请求,Authenticator转发给认证服务器(RADIUS服务器)。

  4. 认证服务器验证身份(比如用户名密码、数字证书等)。

  5. 认证成功,Authenticator开放端口,允许设备正常访问网络。

  6. 认证失败,则拒绝访问。

802.1X常见应用

  • 企业无线网络身份验证(结合WPA2-Enterprise)。

  • 有线网络的设备级访问控制,防止非法设备接入。

  • 配合RADIUS服务器实现统一身份管理与安全审计。

802.1X与RADIUS/NPS的关系

  • 802.1X定义如何请求和控制网络接入。

  • RADIUS协议用于802.1X架构中,作为认证服务器和认证者之间的协议来传输认证信息。

  • 微软NPS可作为认证服务器实现,处理802.1X中的认证请求。

相关文档:https://info.support.huawei.com/info-finder/encyclopedia/zh/802.1X.html

https://info.support.huawei.com/info-finder/encyclopedia/zh/NAC.html

微软NPS和Radius概念

什么是 RADIUS?

RADIUS(Remote Authentication Dial-In User Service) 是一种网络协议,用于实现用户的远程身份验证、授权和计费(AAA)。它常用于VPN、无线接入点(Wi-Fi)、拨号接入等需要身份验证的场景。

  • 功能(AAA)

    • 身份验证(Authentication):核实用户身份。

    • 授权(Authorization):确定用户可以访问的资源和权限。

    • 计账(Accounting):记录用户访问资源的相关信息。

  • 工作方式

    • 终端设备(如无线AP、交换机、VPN服务器)作为RADIUS客户端,将用户的认证请求发送给RADIUS服务器。

    • RADIUS服务器验证后返回认证结果,授权或拒绝用户访问。

  • 协议特点

    • 使用UDP端口1812(认证)和1813(计费)或旧端口1645/1646。

    • 传输过程中密码使用共享密钥加密(但整体安全性一般建议结合其它技术如IPSec)。

什么是微软NPS?

微软NPS(Network Policy Server) 是微软Windows Server系统中实现RADIUS服务器功能的服务组件。

  • 作用

    • 是微软的RADIUS服务器和代理解决方案。

    • 支持身份验证、授权和计费功能。

    • 结合Active Directory域,支持基于用户组、时间、设备等条件的策略控制。

  • 功能特点

    • 支持多种身份验证协议,如PEAP、EAP-TLS等,适合无线网络和VPN的安全接入。

    • 能作为RADIUS代理,转发请求到其他RADIUS服务器。

    • 支持配置网络策略,实现灵活的访问控制。

  • 使用场景

    • 企业无线网络控制用户接入。

    • VPN服务器扩展用户认证。

    • 需要集中身份认证及访问控制的场合。

NPS和RADIUS的关系

  • RADIUS是一种协议标准,而NPS是微软基于RADIUS协议实现的服务器端软件。

  • NPS本质上就是Windows环境下的RADIUS服务器。

  • 通过NPS,管理员可以配置和管理RADIUS服务,实现对网络访问的集中身份认证和控制。

总结

名称 类型 作用 举例/说明
RADIUS 网络协议 远程身份验证、授权和计费 802.1x、VPN、Wi-Fi认证协议
微软NPS 服务软件(RADIUS服务器) 根据RADIUS协议,实现身份验证和策略管理 Windows Server 中的RADIUS服务器

为NPS服务器申请计算机证书 - 用于PEAP EAP-MSCHAPv2

注意:需要已加入域控,且域控中有AD 证书服务器。

打开 certlm.msc,点击个人 > 证书 右键 > 所有任务> 申请新证书。

下一步

勾选计算机模板,点击注册。(注意模板默认只有一年有效期,可新建模板进行修改)

NPS配置

安装NPS角色

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
## Powershell 管理员运行

Install-windowsfeature -name npas -IncludeManagementTools


# 安装网络策略服务器NPS和对应管理工具。

netsh ras add registeredserver


# 注册到域控,使用AD进行身份认证。

netsh ras show registeredserver

# 验证

可运行nps.msc 打开GUI管理工具。

关闭防火墙 – 可选

1
2
3
4
## Powershell 管理员运行

Set-NetFirewallProfile -Profile Domain,Public,Private -Enabled False

RADIUS / NAS客户端配置

1
2
3
4
5
6
7
8
9
10
11
12
13
## Powershell 管理员运行

netsh nps add client name="HW_Switch" address=1.1.1.1 sharedsecret="Songxwn.com"

# 增加客户端,指定名称、客户端地址(网络设备访问源IP)、共享密钥。

netsh nps show client

# 查看

netsh nps del client HW_Switch

# 删除

RADIUS / NAS客户端配置 GUI操作

创建连接请求策略 - 802.1x 有线以太网

可运行nps.msc 打开GUI管理工具。

策略 - 连接请求策略 - 右键新建

输入策略命令 - 点击下一页

添加条件 - 选择 NAS端口类型 - 选择 以太网(有线) - 确认添加 - 下一页

继续下一页

继续下一页

继续下一页

至此完成。

创建网络策略 - 802.1x 有线以太网

策略 - 网络策略 - 右键新建

填写策略名称 - 下一页

添加条件 - 指定为用户组(域控安全组)- 添加指定组

注意:添加是完全匹配的。

添加条件 - 指定NAS端口类型为以太网 (有线) 。

PS:可选的,如果NPS是多环境复用的。

下一页

添加EAP类型 - 选择 EAP (PEAP)

添加后选择编辑,确认是之前申请的计算机证书 - 下一页

继续下一页

修改Radius属性 - 标准,全部和上面的一致,就可以分配对应用户组的指定接入VLAN - 继续下一页

至此完成

策略检查 - 802.1x 有线以太网

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
## Powershell 下执行

netsh nps show crp

连接请求策略配置:
---------------------------------------------------------
名称 = 有线以太网-网工格物
状态 = 已启用
处理顺序 = 4
策略来源 = 0

条件属性:

名称 ID 值
---------------------------------------------------------
Condition0 0x3d “^15$

配置文件属性:

名称 ID 值
---------------------------------------------------------
Auth-Provider-Type 0x1025 “0x1”



netsh nps show np

网络策略配置:
---------------------------------------------------------
名称 = 有线以太网网络策略-网工格物
状态 = 已启用
处理顺序 = 5
策略来源 = 0

条件属性:

名称 ID 值
---------------------------------------------------------
Condition0 0x1fb5 “S-1-5-21-3405621554-734450388-1705228783-512
Condition1 0x3d “^15$

配置文件属性:

名称 ID 值
---------------------------------------------------------
EAP-Configuration 0x1fa2 “1900000000000000000000000000000038000000020000003800000001000000140000006B33763E7A447F77902A1921A8A269B068937F770100000001000000100000001A00000000000000”
Ignore-User-Dialin-Properties 0x1005 “FALSE”
NP-Allow-Dial-in 0x100f “TRUE”
NP-Allowed-EAP-Type 0x100a “19000000000000000000000000000000
NP-Authentication-Type 0x1009 “0x5” “0x3” “0x9” “0x4” “0xa”
Service-Type 0x6 “0x2”
Tunnel-Medium-Type 0x41 “0x6”
Tunnel-Pvt-Group-ID 0x51 “927
Tunnel-Type 0x40 “0xd”
MS-Link-Utilization-Threshold 0xffffffaa “0x32”
MS-Link-Drop-Time-Limit 0xffffffa9 “0x78”

创建连接请求策略 - 802.1X 无线WIFI

其他步骤与有线策略已有,只需要把条件 NAS端口类型改为 无线 - IEEE 802.11

创建网络策略 - 802.1X 无线WIFI

其他步骤与有线策略已有,只需要把条件 NAS端口类型改为 无线 - IEEE 802.11

NPS日志查看 - 用于排错

运行eventvwr.msc ,打开事件查看器

自定义视图 - 服务器角色 - 网络策略和访问服务

PS:关注公众号,后续会更新网络设备接入配置、NPS高可用、NPS事件发送到ELK、组策略配置域控客户端无感知认证等。

运维技术交流群

发送邮件到 ➡️ [email protected]

或者关注WX公众号:网工格物

微信扫码

博客(最先更新)

https://songxwn.com/

参考文档

https://learn.microsoft.com/en-us/windows-server/networking/technologies/nps/nps-admintools

https://learn.microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2008-R2-and-2008/cc754758(v=ws.10)

https://theitbros.com/radius-server-configuration-on-windows/

https://sudonull.com/post/64810-Authorization-via-Network-Policy-Server-NPS-for-MikroTik


AD系列:Windows Server 2025 搭建NPS-Radius服务器
https://songxwn.com/AD-NPS-install/
作者
Song
发布于
2025年5月7日
更新于
2025年5月8日
许可协议