11个版本
0.5.2 | 2024年8月15日 |
---|---|
0.5.1 | 2024年3月17日 |
0.5.0 | 2023年12月16日 |
0.4.2 | 2023年8月5日 |
0.1.1 | 2023年3月28日 |
#398 在 网络编程
125 每月下载量
130KB
3K SLoC
ACSRS
用Rust编写的简单ACS。
您可以使用简单的curl命令从任何由该ACS管理的CPE获取或设置datamodel。
支持的功能包括
- 零配置服务器:服务器在第一次启动时尝试安全地配置自己。
- 支持HTTP、HTTPS和身份验证。
- ACS配置和连接的CPE是持久的。
- 具有高级自动完成的CLI,以与CPE交互。
- GetParameterValues、SetParameterValues、Upgrade。
一些限制包括
- 没有实现通知机制。
- 可能不完全符合TR-069标准。
安装ACSRS
可以从cargo直接安装应用程序
cargo install acsrs
运行ACSRS
只需不带任何参数启动应用程序
acsrs
它将通过生成新的用户、密码、证书和CA来自动配置自己。一切都在 $HOME/.acrs
目录下,并且可以覆盖。一些有用的文件包括
- config.toml:ACS配置。
- ca.pem:证书颁发机构。将此文件安装到您的CPE上以验证ACS。
- identity.p12:ACS使用的PKCS12身份。
- cert.pem:ACS公共证书。
注意:默认情况下,ACS公共证书的通用名(CN)是通过您的公共IP地址派生的。您可以通过编辑 $HOME/.acsrs/config.toml 并在那里设置主机名来覆盖它。您还可以禁用自动生成证书机制,如果您希望安装自己的证书。
使用acscli的使用
acscli是ACSRS的交互式UNIX CLI
全局命令
- help:显示此帮助
- exit:退出此应用程序
断开连接时的可用命令
- ls:列出连接到此ACS的CPE
- cd|connect [SN]:连接到指定序列号的CPE
- monitor:监视ACS收到的所有Inform消息
连接到CPE时的可用命令
- disconnect:从当前CPE断开连接
- ls [路径]:列出当前对象下的参数
- cd [路径]:更改目录
- get [路径] | [路径]?:获取对象或参数值
- set [路径]=值 | [路径]=值:设置参数值
- add [路径] | [路径]+:向对象集合中添加新对象。
- del [路径] | [路径]-:删除对象。
- upgrade [文件名]:将CPE升级到提供的固件
ACS管理API
ACS服务器默认可以通过http://127.0.0.1:8000/api URL使用JSON API进行管理。JSON API定义在https://github.com/guillaumepellegrino/acsrs/blob/master/src/api.rs
依赖项
~15–31MB
~510K SLoC