packetfence基于MSPKI的有线网络证书认证

环境介绍

测试packetfence基于MSPKI的有线网络证书认证,基本环境如下

服务器 ip地址
packetfence服务器 192.168.11.253
AD域控服务器 192.168.10.20
测试证书服务器 192.168.10.103

搭建步骤

一.安装证书服务
1.证书服务安装Active Directory证书服务,保证其中以下三个服务启用:
* 证书颁发机构
* 联机响应程序
* 网络设备注册服务
本文因为测试,所以将所有服务启用
image
2. 将此服务challenge password禁用,打开此服务器注册表,Computer->HKEY_LOCAL_MACHINE->SOFTWARE->Microsoft->Cryptography->MSCEP->EnforcePassword.
把 EnforcePassword的值改为 0 (默认是 1).
image

3.扩展请求URL长度
执行下面命令:%systemroot%\system32\inetsrv\appcmd.exe set config /section:system.webServer/security/requestFiltering /requestLimits.maxQueryString:”16384″ /commit:apphost
![image]

二. 配置网络响应程序
1. 为此服务器添加“OCSP响应签名”模板,请确保该模板此服务器有注册权限
image
image
2. 出现对话框,选择“OCSP响应模板”添加
image
3. 下一步为服务器添加吊销配置,右击“吊销配置”,点击“添加吊销配置”
image
进入吊销配置入门向导
image
为配置取一个名字

image
选择CA证书位置
image
选择这台服务器CA证书:TS-SUBCA-CA
image
选择签名证书
image
完成向导后,右击你所新建的吊销配置,选择“编辑属性”,在“签名”处勾选“启用NONCE 扩展支持
image
将OCSP配置在你的CA 设置中,右击你的CA
image
选择“属性”,在“扩展”条目下,”选择扩展”下拉框选择”颁发机构信息访问(AIA)“
image
点击添加,此服务器地址是192.168.10.103
image
添加完成后,在该页面选择”包括在联机证书状态协议(OCSP)扩展中“
image
应用后会重启证书服务,如出现以下错误:
image
解决办法:
* 首先下载一个已办法的证书test.cer放到服务器上,执行下列命令:
certutil –URL
执会出现以下对话框
image
”检索“栏选择”OCSP(来自AIA)“,点击”检索“
image
这样证明你的OCSP服务是正常的.
* 将最近的CA Exchange证书吊销,然后执行 “certutil -cainfo xchg” ,之后错误修复了
image

三. 为packetfence服务器申请证书
1. 在packetfence服务器新建目录
mkdir /usr/local/pf/conf/ssl/tls_certs/
2. 在新建目录下,执行下列命令,生成一个证书请求(CSR)
openssl req -new -newkey rsa:2048 -nodes -keyout packetfence.key -out packetfence.csr
image
这样生成了证书请求还有私钥。
3. 打开证书注册页面 http://192.168.10.103/CertSrv
image
输入验证的用户名和密码,出现申请证书页面,下载根证书放到刚才新建的目录下,点击“申请证书”
image
选择“高级证书申请”
image
将刚才packetfence.csr的内容复制到申请页面,证书模板选择“web 服务器”
image
点击提交后,下载证书到刚才新建目录
image
4. .这样这个/usr/local/pf/conf/ssl/tls_certs/目录,有CA证书,packetfence证书,packetfence私钥,packetfence证书申请请求
image

将证书cer格式转转为pem格式

openssl x509 -in MyCA.cer -inform der -outform pem -out MyCA.pem  
openssl x509 -in packetfence.cer -inform der -outform pem -out packetfence.pem  

image
这样packetfence的证书就全部齐全了。
四.配置packetfence的radius服务
1. 编辑/usr/local/pf/conf/radiusd/eap.conf,在tls配置区域把原来证书位置替换为/usr/local/pf/conf/ssl/tls_certs下的文件
image
2. 配置ocsp,将ocsp启用,并将url改为所配置的ocsp服务器192.168.10.103
image
3.重启packetfence的radius服务,执行下列命令:
/usr/local/pf/bin/pfcmd service radiusd restart
image

验证

加入域的客户端申请证书后,直接可连接
image