Open-source Grok free registration CLI, xai_enroller auth pipeline, local auth service, tests and docs.
68 lines
2.2 KiB
Markdown
68 lines
2.2 KiB
Markdown
# 本地认证服务
|
||
|
||
认证服务把已有的 SSO 会话转换为 CPA 可直接读取的 OAuth 凭据。注册与认证可以在同一台机器,也可以分开运行。
|
||
|
||
## 默认同机运行
|
||
|
||
同一个项目目录已经或正在运行注册服务时,直接启动认证:
|
||
|
||
```bash
|
||
bash auth-service.sh
|
||
```
|
||
|
||
未配置 SSH 主机时,认证服务自动读取本项目 `keys/` 中的完整会话与历史账号。注册可以继续追加,认证服务只安装经过校验的完整快照。
|
||
|
||
## 配置远端同步
|
||
|
||
先把无密码导出器放到服务器项目目录:
|
||
|
||
```bash
|
||
scp scripts/export_registered_sessions.py user@server.example:/opt/grok-free-register/scripts/
|
||
```
|
||
|
||
在本地终端设置连接信息:
|
||
|
||
可以直接 `export`,也可以把 `.env.example` 复制为 `.env` 后填写;认证入口会自动读取 `.env`。
|
||
|
||
```bash
|
||
export XAI_AUTH_SERVICE_SSH_HOST=user@server.example
|
||
export XAI_AUTH_SERVICE_SSH_IDENTITY=/path/to/key.pem
|
||
export XAI_AUTH_SERVICE_REMOTE_ROOT=/opt/grok-free-register
|
||
```
|
||
|
||
使用 `ssh-agent` 时可省略 `XAI_AUTH_SERVICE_SSH_IDENTITY`。
|
||
|
||
设置了 `XAI_AUTH_SERVICE_SSH_HOST` 后,默认的 `auto` 模式会选择 SSH。需要明确覆盖时使用:
|
||
|
||
```bash
|
||
export XAI_AUTH_SERVICE_SOURCE=local # 强制读取同机注册结果
|
||
export XAI_AUTH_SERVICE_SOURCE=ssh # 强制使用 SSH,必须配置主机
|
||
```
|
||
|
||
## 运行
|
||
|
||
```bash
|
||
bash auth-service.sh
|
||
```
|
||
|
||
首次运行会自动安装项目依赖。该命令在当前终端持续运行并直接接受控制命令;输入 `q` 或按 `Ctrl-C` 停止,再次执行同一命令即可重启。不需要额外的会话管理工具。
|
||
|
||
普通模式只在来源连接、发现新账号、任务开始、认证结果、限流和控制状态变化时输出。查看队列、重试、节拍和冷却探针时使用:
|
||
|
||
```bash
|
||
bash auth-service.sh --debug
|
||
```
|
||
|
||
运行中终端底部会保持 `认证> ` 输入行。日志更新不会清掉尚未提交的内容;直接输入命令并回车:
|
||
|
||
```text
|
||
s 查看状态
|
||
take N 取用 N 个凭据
|
||
p 暂停
|
||
r 恢复
|
||
c 取消当前任务
|
||
q 安全退出
|
||
```
|
||
|
||
快照默认每 30 秒更新一次;内容无变化时终端保持安静。有效快照和已生成凭据会在重启后继续使用。
|