名称: nordvpn
描述: 通过 nordvpn CLI 在 Linux 上控制 NordVPN(连接/断开、选择国家/城市/组、查看状态、调整设置、管理允许列表)。适用于需要区域路由或临时 VPN 隧道的自动化任务。
主页: https://nordvpn.com/
一个用于控制 NordVPN Linux CLI (nordvpn) 的 ClawBot 技能,可从自动化和工作流中执行连接/断开、选择位置、验证状态和调整设置等操作。
nordvpn CLI(示例版本:4.3.1 [snap])。nordvpnd)正在运行,并拥有足够的权限。sudo snap install nordvpn
nordvpn --version
如果通过 Nord 的仓库或包管理器安装,只需验证:
which nordvpn
nordvpn --version
# systemd 安装通常如此
systemctl status nordvpnd --no-pager || true
# snap 安装可能不会以相同方式暴露 systemd 单元
nordvpn status || true
# 或者可能需要指定完整路径,例如
/snap/bin/nordvpn status || true
NordVPN CLI 通常要求每台机器/用户会话登录一次。
nordvpn login
如果环境是无头(headless)的,CLI 将引导您完成登录流程(通常通过浏览器链接/代码)。登录后,请确认:
nordvpn account
nordvpn status
ClawBot 指导: 除非您明确自动化基于浏览器的登录流程,否则请将登录视为手动先决条件。
nordvpn status
nordvpn connect
# 别名:
nordvpn c
# 国家
nordvpn connect Sweden
# 城市(必须存在于 `nordvpn cities <country>` 列表中)
nordvpn connect "Stockholm"
# 组(必须存在于 `nordvpn groups` 列表中)
nordvpn connect P2P
nordvpn disconnect
# 别名:
nordvpn d
nordvpn countries
nordvpn cities Sweden
nordvpn groups
nordvpn settings
# 示例(选项因版本而异)
nordvpn set autoconnect on
nordvpn set killswitch on
nordvpn set threatprotectionlite on # 如果支持
nordvpn set protocol nordlynx # 如果支持
# 查看帮助
nordvpn allowlist --help
# 示例(子命令因版本而异)
nordvpn allowlist add port 22
nordvpn allowlist add subnet 192.168.0.0/16
nordvpn allowlist remove port 22
幂等的连接操作
如果连接到其他地方,可选择先断开连接,再连接到目标。
2. 可靠的验证
连接/断开后,始终运行 nordvpn status 并解析结果。
3. 安全的回退机制
如果请求的城市/国家/组无效,通过列出以下内容提供最接近的替代方案:
nordvpn countriesnordvpn cities <country>nordvpn groups如果 nordvpn 报告未登录,则返回结构化响应,指示运行 nordvpn login。
将这些实现为技能的可调用意图/工具:
status() → 返回解析后的连接状态connect_best() → 连接到最佳可用服务器connect_country(country) → 连接到指定国家connect_city(city)(可选附带 country 以消除歧义)connect_group(group) → 连接到指定组disconnect() → 断开连接list_countries() → 列出所有国家list_cities(country) → 列出指定国家的城市list_groups() → 列出所有组get_settings() → 获取当前设置set_setting(key, value) → 更改设置allowlist_add(type, value) → 添加允许列表规则allowlist_remove(type, value) → 移除允许列表规则nordvpn status
解析 CLI 通常返回的字段,例如:
目标: 连接到目标(国家/城市/组)并进行验证。
伪逻辑:
nordvpn statusnordvpn disconnect 然后连接nordvpn status 并确认已连接命令:
nordvpn connect "<target>"
nordvpn status
nordvpn disconnect
nordvpn status
如果用户请求城市:
nordvpn cities <country>nordvpn countries
nordvpn cities "<country>"
nordvpn groups
症状:
处理:
nordvpn login 后重试。”nordvpn account 进行确认。症状:
处理:
systemctl status nordvpnd(systemd 安装)确保用户属于正确的组(某些安装使用 nordvpn 组):
bash
groups
getent group nordvpn || true
症状:
处理:
提供可用选项:
bash
nordvpn countries
nordvpn groups
nordvpn cities "<country>"
nordvpn status | sed -n '1,10p'
nordvpn connect
nordvpn status | sed -n '1,15p'
nordvpn disconnect
nordvpn connect Sweden
nordvpn status
nordvpn set killswitch on
nordvpn settings
命令选项和设置键可能因 NordVPN CLI 版本而异。始终依赖:
bash
nordvpn help
nordvpn set --help
nordvpn allowlist --help
* 如果需要稳定的机器可读输出,请注意 NordVPN CLI 并不始终提供 JSON;请计划采用防御性方式解析人类可读的状态文本(基于行的键/值提取,容忍缺失字段)。