finch-remote-host 0.0.0-stage → 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,3 +1,93 @@
1
- # Temporary Holding Version
1
+ # 远程主机
2
2
 
3
- This version is a temporary placeholder for this package. An operational version to replace this has been submitted for review and is awaiting a staged release.
3
+ 在 Finch 里管理自己的远程 Linux 主机,让 Agent 通过 SSH 执行命令、查日志、看服务状态,危险操作先经确认,全部动作留审计。
4
+
5
+ ![](https://static.yicode.tech/images/202611/1793506026613.png)
6
+
7
+ ## 怎么用?
8
+
9
+ ![](./docs/demo.svg)
10
+
11
+ 你说「看下这台机器磁盘还剩多少」,Agent 在远端跑一条 `df -h`,结果直接贴回来。
12
+
13
+ 你说「把 nginx 重启一下」,它不直接动手,先弹一张卡片,把目标机与完整命令写清楚,你点亮确认它才执行。
14
+
15
+ 命令跑完、审计写完、退出码留着,事后能查。
16
+
17
+ ## 操作对比
18
+
19
+ | | 手动 SSH | 自己写脚本 | 远程主机 |
20
+ | -------------- | ------------------------- | ---------------- | ---------------------- |
21
+ | 记住主机与端口 | 靠 ssh config,换机器要翻 | 自己维护一份清单 | 配一次,所有会话共用 |
22
+ | 危险命令 | 全靠自己把关 | 全靠自己把关 | 先确认,删根目录直接拒 |
23
+ | 操作留痕 | 终端一滚就没了 | 自己打日志 | 自动写本机审计 |
24
+ | 长任务 | 挂着终端不敢关 | 自己接 nohup | 后台跑,能查退出码 |
25
+
26
+ ## 安全策略
27
+
28
+ ![安全策略示意:一条命令要过三道关](docs/safety.svg)
29
+
30
+ 有些命令不该有「点一下就好」的机会,删根目录、清空一级目录、格式化文件系统、写裸盘、关机重启,这些在任何模式下都直接拒绝,连确认按钮都不给。
31
+
32
+ 系统目录与密钥目录整棵子树受保护,删除、清空、截断、重定向写入都拦得住。
33
+
34
+ `/home`、`/opt`、`/srv`、`/var/lib` 只保护到直属子目录,给缓存和日志留了正常的清理路子。
35
+
36
+ 其余命令按每台主机的策略走,四档从严到松。
37
+
38
+ | 模式 | 只读命令 | 写操作 | 读凭据文件 |
39
+ | ----------------- | -------- | ------ | ---------- |
40
+ | `query` | 直接跑 | 拒绝 | 拒绝 |
41
+ | `readonly` | 直接跑 | 拒绝 | 确认 |
42
+ | `confirm`(默认) | 直接跑 | 确认 | 确认 |
43
+ | `trusted` | 直接跑 | 直接跑 | 直接跑 |
44
+
45
+ 密码与私钥只存在系统安全区,不进配置文件、不进审计,也不会回给 Agent。
46
+
47
+ 每次判定与执行都写一条本地审计,命令、目标机、判定理由、退出码、耗时都在里面,只有本机用户能看。
48
+
49
+ ## 常见场景
50
+
51
+ **排查线上故障**
52
+
53
+ 线上 502,先说「看下 nginx 最近五十行错误日志」,Agent 把日志取回来贴着错往下查,不用切终端,也不用回忆日志路径。
54
+
55
+ **部署与发版**
56
+
57
+ 拉代码、装依赖、重启服务、清缓存,一句话说清楚,要动服务器的那几步会先问你。
58
+
59
+ **日常巡检**
60
+
61
+ 磁盘占用、内存余量、服务状态、证书到期,随口问一句就有答案。
62
+
63
+ **多机来回切**
64
+
65
+ 开发机、测试机、生产机同时配好,会话里换个下拉就是另一台机器。
66
+
67
+ ## 安装与使用
68
+
69
+ ![](https://static.yicode.tech/images/202611/1793507765432.png)
70
+
71
+ 在 Finch 安装 「远程主机」小程序。
72
+
73
+ ![](https://static.yicode.tech/images/202611/1793507808927.png)
74
+
75
+ 装完在 Finch 右侧面板的「远程主机」里添机器,密钥填绝对路径,密码填一次保存进系统安全区。
76
+
77
+ 密码认证要求 OpenSSH 8.4 以上,Windows 10 1809 之后自带的版本都满足。
78
+
79
+ 主机策略默认是 `confirm`,要放宽就在面板里改,改完当场生效。
80
+
81
+ ![](https://static.yicode.tech/images/202611/1793507642579.png)
82
+
83
+ 在会话中选择要操作的主机,然后触发 `当前主机` 关键词即可,比如:`查看当前主机信息`。
84
+
85
+ ## 关于开发者
86
+
87
+ - 农村程序员(`2020年回农村,至今未出村`)
88
+ - 独立开发者(`致力于开发 1000 个小产品`)
89
+ - 技术观察者(`分享编程技术,行业资讯等`)
90
+ - 前端之虎陈随易(`自封的`)
91
+ - 我的官网是:`https://yicode.tech`
92
+ - 微信:`chensuiyime`(备注「finch」进交流群)
93
+ - 公众号:陈随易