Skip to main content

阿里云控制台工具 (aliyun-controller)

这是一个调用阿里云 Python SDK 的终端用户界面(TUI)工具,基于 Textual 构建,用于在终端中完成账单查询与 DNS 解析管理等常用操作。

功能特性

  • 流量统计:查询指定月份的公网流出流量(IPv4 / IPv6 / 合计),明细表格 + 20GB 免费额度双色进度条
  • 账单归纳:按产品归纳指定月份的消费金额,附消费汇总面板(总额 / 产品数 / 占比最高项)
  • DNS 管理:管理域名解析记录,支持搜索、排序以及增删改、启用/禁用
  • 现代化 TUI:艺术字首页、统一键位、页面内折叠菜单、状态栏与非阻塞异步加载

后续计划

  • 加入 ECS 控制 的相关内容
  • 加入 OOS 控制 的相关内容

界面与快捷键

场景 快捷键 作用
全局 Tab 切换焦点
Ctrl+Q 退出程序
Home / End / PgUp / PgDn 页面滚动到顶 / 底 / 翻页(焦点在文本框时自动让位给文本框)
主菜单 1 / 2 / 3 / 4 / 5 直达流量查询 / 账单归纳 / DNS 管理 / 设置 / 退出
↑ / ↓ · 回车 移动光标 · 确认
q 退出程序
功能页 Ctrl+R 刷新数据
Esc 返回上一级(折叠菜单打开时优先关闭菜单)
↑ / ↓ · 回车 表格内移动光标 · 操作所选行
/ 聚焦搜索框(实时模糊过滤)
← / → 月份选择器切换账期(焦点在选择器上时)
DNS 记录页 Ctrl+N / Ctrl+E / Ctrl+D 新增 / 编辑 / 删除(作用于当前行)
弹窗 Esc 取消并关闭
回车 提交表单或确认

鼠标全程可用:按钮 / 选项 / 列表行一律单击即执行(表格行单击即进入下一级或打开编辑),滚轮滚动光标所在的滚动区域。

安装指南

通过 pip 安装(推荐)

pip install aliyun-controller

安装后,可以直接使用 aliyunctl 命令运行程序:

aliyunctl

需要 Python 3.10 及以上版本。

从源码运行(开发模式)

  1. 克隆此项目到本地:

    git clone <项目地址>
    cd aliyun-controller
    
  2. 创建虚拟环境(推荐):

    python -m venv venv
    source venv/bin/activate  # Linux/Mac
    # 或在 Windows 上: venv\Scripts\activate
    
  3. 安装依赖:

    pip install -e .
    
  4. 创建阿里云 RAM 用户并授权:

    • 登录阿里云控制台。
    • 进入 RAM 访问控制。
    • 在左侧导航栏选择 用户 > 创建用户。
    • 设置登录名称和显示名称,勾选 为该用户自动生成 AccessKey。
    • 创建成功后,请务必保存好 AccessKey ID 和 AccessKey Secret,它们只显示一次。
    • 为新创建的 RAM 用户授权:
      • 在用户详情页,点击 添加权限。
      • 选择 AliyunBSSReadOnlyAccess 和 AliyunDNSFullAccess 权限。
      • 点击 确定 完成授权。
  5. 配置阿里云访问密钥: 默认情况下,程序会在 ~/.config/aliyun-controller 目录下查找配置文件。 首次运行或配置文件不存在时,程序会自动进入 Textual 配置向导,依次填写:

    • access_key_id
    • access_key_secret

    填写完成后会自动生成 config.yaml。之后也可从主菜单的「设置」中随时修改访问密钥。

    你也可以使用 --dir/-D 参数指定配置文件所在的目录:

    aliyunctl -D /path/to/your/config/dir
    

使用方法

安装后,可以直接使用 aliyunctl 命令运行程序:

aliyunctl

程序将显示 Textual 交互界面,你可以选择以下功能:

  1. 流量查询:查看指定月份的公网总流出流量
  2. 账单归纳:查看指定月份按产品汇总的账单明细
  3. DNS 解析管理:管理域名解析记录
  4. 设置:查看 / 修改阿里云访问密钥

你也可以使用 --dir/-D 参数指定配置文件所在的目录:

aliyunctl -D /path/to/your/config/dir

账单查询

  • 进入后默认查询当前月份的账单
  • 顶栏的 ◀ YYYY-MM ▶ 月份选择器可逐月切换(点击月份还会弹出年份 + 12 月的快捷选择浮层),切换后自动重新查询(范围:2020-01 至当月)
  • 流量页附带 20GB 免费额度进度条:额度内绿色,超出部分红色(量程随用量自适应)
  • 查询在后台线程执行,界面不会阻塞;结果以汇总面板 + 明细表格展示

DNS 管理

  • 选择要管理的域名,进入解析记录列表
  • 支持按主机记录 / 记录值模糊筛选
  • 支持按创建时间、二级域名、首字母排序(正序 / 逆序)
  • 回车可对所选记录执行编辑、启用 / 禁用、删除操作,并可新增记录

权限要求

为了正常使用所有功能,你的阿里云 RAM 用户记得开放以下权限:

  • AliyunBSSReadOnlyAccess:用于账单查询
  • AliyunDNSFullAccess:用于 DNS 管理

开发

本项目遵循 Python 3.10+ 规范。

git clone https://github.com/Moha-Master/Aliyun-Controller.git
cd Aliyun-Controller
python -m venv venv
source venv/bin/activate
pip install -e ".[dev]"

许可证

MIT

Release files for aliyun-controller 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for aliyun-controller 0.2.0
File Size Uploaded
aliyun_controller-0.2.0.tar.gz 32.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for aliyun-controller 0.2.0
File Interpreter ABI Platform
aliyun_controller-0.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 70.6 kB

Release files / aliyun_controller-0.2.0.tar.gz

Download URL aliyun_controller-0.2.0.tar.gz
Size 32.8 kB
Tags Source
SHA-256 checksum
How to use checksums
1495086df6fc5ced45e63b7e181e1137b8e3b9223573f89d66bd93671175dfb3
BLAKE2b-256 checksum
How to use checksums
eb8ce0b7fb53ddd2e179deae69bca02e4cc4deb9c52f594c4af0a5bb205055e2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.7

Release files / aliyun_controller-0.2.0-py3-none-any.whl

Download URL aliyun_controller-0.2.0-py3-none-any.whl
Size 37.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
99ab2988aad4af79a4f17d019285a2d48f2905058abde4d333ba052926adc9ae
BLAKE2b-256 checksum
How to use checksums
dd97ec91bd91b903214ffaa8bad5b61f07c766d322773f08b5812f464a5ec230
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.7

Release history Release notifications | RSS feed

0.2.3

2 release files

0.2.2

2 release files

0.2.1

2 release files

This release

0.2.0 This release

2 release files

0.1.8

2 release files

0.1.7

2 release files

0.1.6

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page