TR069 Http Digest 验证流程

1 流程及流程图

1.1盒端主动发起Http Digest认证流程







机顶盒(CPE)通过HTTP Digest Authentication发起与终端管理系统(ACS)的认证连接,连接方式遵循RFC 2617的规定。

机顶盒连接终端管理系统的地址由Device.ManagementServer.URL参数提供。

机顶盒主动想终端管理系统发起一个HTTP 连接请求,终端管理系统会要求进行HTTP Digest Authentication认证。并按照RFC2671规范,盒端和盒端管理系统在之后的请求和应答时信息均带有认证头信息。

认证中的用户名、密码为Device.ManagementServer.Username Device.ManagementServer.Password

l终端管理系统地址(ACS地址)在出厂时和快速放装时进行统一配置。

详细交互流程:

1.盒端(CPE)首先发起不带Digest 验证头的sendInform请求报文,内容如下:

图片
 
图片
 
 

2.盒端管理系统(ACS)收到上述报文后,发现没有认证消息(带有Authorization:标识的报文),然后发送401错误报文:

图片

3.盒端(cpe)收到报文后,经过分析得到报文错误为401,代码中通过分析报文中是否有WWW-Authenticate:  Digest 字段,如果有,那么将其中的realm,nonce,opaque,qop的值存储下来,并将程序中的Http Digest认证参数:DaEnabled置为true,使发送下一个回复报文之前初始化Http Digest认证插件。通过函数:http_da_post_header,(本地配置的realm必须与收到的realm一致否则验证不能通过)将本地文件配置的realm和从盒端管理系统(ACS)收到的nonce,opaque,qop等值通过函数http_da_calc_HA1,生成一个唯一的字符串并存入response字段,并将这些信息组合到报文的头部,最后发送给ACS的报文为:

图片

4.盒端管理系统(ACS)收到上述报文后,确认其Authorization:字段,并且Authorization:段中的response的值正确,那么认证通过,并发送回复报文:

图片

5.盒端(CPE)收到回复报文后,分析为认证通过报文后,发送一个inform内容为空的确认报文:——其实就是个空报文

图片

  6.到此认证结束

      1.2盒端管理系统主动发起的连接流程

图片

1.在盒端管理系统主动发起对盒端的连接请求之前,通过心跳,已获得盒端的连接地址。

2.盒端在收到UDP请求后,应主动返回相应数据包。

3.盒端与盒端管理系统进行交互后,由盒端作为客户端打开TCP连接,进行正常的PRC交换,并在Inform方法的EventCode代码中填写6CONNECTION REQUEST

4.打开连接,建立HTTP摘要认证链接其交互过程与盒端发起的主动连接请求相同

2盒端(CPE)发送Inform报文函数流程

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
OpenWRT是一种基于Linux的开源嵌入式操作系统,常用于路由器等网络设备中。TR069是一种用于远程管理和配置设备的协议。在OpenWRT中,CPE(Customer Premises Equipment)和ACS(Auto Configuration Server)之间的通信是通过TR069协议实现的。 CPE与ACS之间的通信需要进行认证,其中包括Digest认证过程。在这个过程中,CPE和ACS之间首先建立一个非加密的连接,然后可以选择使用https来进行加密通信。为了使用https,需要生成一个证书。在OpenWRT中,可以使用openssl来生成证书,具体的步骤如下: 1. 执行以下命令生成私钥文件key.pem: ``` openssl genrsa 1024 > key.pem ``` 2. 执行以下命令生成证书文件cert.pem: ``` openssl req -new -x509 -key key.pem > cert.pem ``` 这样,就生成了一个用于https通信的证书。接下来,CPE和ACS就可以通过TR069协议进行通信,实现远程管理和配置设备的功能。在选择ACS时,可以考虑使用GenieACS,因为它是一个开源的ACS,目前仍在维护,并且有全面的文档支持。 请注意,以上提到的是OpenWRT中使用TR069协议进行CPE与ACS之间通信的基本步骤和一些选项,具体的配置和细节可能会根据具体情况有所不同。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [TR069之CPE与ACS的Digest验证](https://blog.csdn.net/zzj000/article/details/80182992)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值