我正在构建一个RADIUS服务器,以便在node.js中使用MS-CHAPv2。 我有一个RADIUS CLient,它是一个VPN服务器,它在Access-Request中向我发送以下内容:
用户-名称
MS-CHAP质询
MS-chap2的-响应
我使用实际的Microsoft RADIUS服务器进行了测试,并且Access-Accept响应始终包含以下内容:
MS-MPPE-RECV-KEY:长字符串
MS-MPPE-SEND-KEY:长字符串
MS-CHAP2-SUCESS:长字符串
我尝试使用RFC材料,但它非常复杂,我只需要理解:
我应该将Access-Request属性(挑战和响应)作为服务器做什么?
我应该如何在Access-Accept中创建3个键?
我读过许多文章和地点,包括测试范例。
有些人说使用了RC4,3DES,MD4,MD5,SHA1,我不知道应该遵循哪个,因为它只提供2-3行解释。
什么是加密的?我如何验证用户?我是否应该创建挑战/响应的哈希副本,因为它包含MD4和3DES加密密码?
请帮助......
答案 0 :(得分:0)
构建radius服务器非常复杂,
我应该将Access-Request属性(挑战和响应)作为服务器做什么?
服务器需要响应客户端请求,要求做握手,创建ssl隧道,请求识别等等。
我应该如何在Access-Accept中创建3个键?
ms-mppe密钥是通过握手和验证过程生成的数据,而且非常复杂,必须进行大量的计算和加密,比使用rc4,3des,md4更复杂...
什么是加密的?我如何验证用户?我是否应该创建挑战/响应的哈希副本,因为它包含MD4和3DES加密密码?
如果使用ssl,则所有内容都从change cipher Spec加密到access-accept。要对用户进行身份验证,您必须比较客户端提供的数据和数据库,最后向NAS发送访问接受。取决于使用哪种身份验证方法,密码比仅使用md4& amp; 3DES。例如,如果使用ms-chapv2,则必须使用其他一些数据进行哈希处理。