zoukankan      html  css  js  c++  java
  • webAPI2

    web api

    需要开启请先去掉nps.confauth_key的注释并配置一个合适的密钥

    webAPI验证说明

    • 采用auth_key的验证方式
    • 在提交的每个请求后面附带两个参数,auth_key 和timestamp
    auth_key的生成方式为:md5(配置文件中的auth_key+当前时间戳
    timestamp为当前时间戳
    curl --request POST 
      --url http://127.0.0.1:8080/client/list 
      --data 'auth_key=2a0000d9229e7dbcf79dd0f5e04bb084&timestamp=1553045344&start=0&limit=10'

    注意: 为保证安全,时间戳的有效范围为20秒内,所以每次提交请求必须重新生成。

    获取服务端时间

    由于服务端与api请求的客户端时间差异不能太大,所以提供了一个可以获取服务端时间的接口

    POST /auth/gettime

    获取服务端authKey

    如果想获取authKey,服务端提供获取authKey的接口

    POST /auth/getauthkey

    将返回加密后的authKey,采用aes cbc加密,请使用与服务端配置文件中cryptKey相同的密钥进行解密

    注意: nps配置文件中auth_crypt_key需为16位

    • 解密密钥长度128
    • 偏移量与密钥相同
    • 补码方式pkcs5padding
    • 解密串编码方式 十六进制

    获取客户端列表

    POST /client/list/
    参数含义
    search 搜索
    order 排序asc 正序 desc倒序
    offset 分页(第几页)
    limit 条数(分页显示的条数)

    获取单个客户端

    POST /client/getclient/
    参数含义
    id 客户端id

    添加客户端

    POST /client/add/
    参数含义
    remark 备注
    u basic权限认证用户名
    p basic权限认证密码
    limit 条数(分页显示的条数)
    vkey 客户端验证密钥
    config_conn_allow 是否允许客户端以配置文件模式连接 1允许 0不允许
    compress 压缩1允许 0不允许
    crypt 是否加密(1或者0)1允许 0不允许
    rate_limit 带宽限制 单位KB/S 空则为不限制
    flow_limit 流量限制 单位M 空则为不限制
    max_conn 客户端最大连接数量 空则为不限制
    max_tunnel 客户端最大隧道数量 空则为不限制

    修改客户端

    POST /client/edit
    参数含义
    remark 备注
    u basic权限认证用户名
    p basic权限认证密码
    limit 条数(分页显示的条数)
    vkey 客户端验证密钥
    config_conn_allow 是否允许客户端以配置文件模式连接 1允许 0不允许
    compress 压缩1允许 0不允许
    crypt 是否加密(1或者0)1允许 0不允许
    rate_limit 带宽限制 单位KB/S 空则为不限制
    flow_limit 流量限制 单位M 空则为不限制
    max_conn 客户端最大连接数量 空则为不限制
    max_tunnel 客户端最大隧道数量 空则为不限制
    id 要修改的客户端id

    删除客户端

    POST /client/del/
    参数含义
    id 要删除的客户端id

    获取域名解析列表

    POST /index/hostlist/
    参数含义
    search 搜索(可以搜域名/备注什么的)
    offset 分页(第几页)
    limit 条数(分页显示的条数)

    添加域名解析

    POST /index/addhost/
    参数含义
    remark 备注
    host 域名
    scheme 协议类型(三种 all http https)
    location url路由 空则为不限制
    client_id 客户端id
    target 内网目标(ip:端口)
    header request header 请求头
    hostchange request host 请求主机

    修改域名解析

    POST /index/edithost/
    参数含义
    remark 备注
    host 域名
    scheme 协议类型(三种 all http https)
    location url路由 空则为不限制
    client_id 客户端id
    target 内网目标(ip:端口)
    header request header 请求头
    hostchange request host 请求主机
    id 需要修改的域名解析id

    删除域名解析

    POST /index/delhost/
    参数含义
    id 需要删除的域名解析id

    获取单条隧道信息

    POST /index/getonetunnel/
    参数含义
    id 隧道的id

    获取隧道列表

    POST /index/gettunnel/
    参数含义
    client_id 穿透隧道的客户端id
    type 类型tcp udp httpProx socks5 secret p2p
    search 搜索
    offset 分页(第几页)
    limit 条数(分页显示的条数)

    添加隧道

    POST /index/add/
    参数含义
    type 类型tcp udp httpProx socks5 secret p2p
    remark 备注
    port 服务端端口
    target 目标(ip:端口)
    client_id 客户端id

    修改隧道

    POST /index/edit/
    参数含义
    type 类型tcp udp httpProx socks5 secret p2p
    remark 备注
    port 服务端端口
    target 目标(ip:端口)
    client_id 客户端id
    id 隧道id

    删除隧道

    POST /index/del/
    参数含义
    id 隧道id

    隧道停止工作

    POST /index/stop/
    参数含义
    id 隧道id

    隧道开始工作

    POST /index/start/
    参数含义
    id 隧道id
  • 相关阅读:
    卷积神经网络的权值参数个数的量化分析
    Torch 的安装与基本用法
    Torch 的安装与基本用法
    操作系统的 (program)loader(程序加载器)
    操作系统的 (program)loader(程序加载器)
    Python 模块学习:os模块
    Python 正则表达式-OK
    Perl参考函数
    svn: E200030: sqlite[S10]: disk I/O error
    Perl调用外部命令的方式和区别
  • 原文地址:https://www.cnblogs.com/XYDsoft/p/14028293.html
Copyright © 2011-2022 走看看