diff --git a/docs/man-en.md b/docs/man-en.md index f2efcb2..7e36600 100644 --- a/docs/man-en.md +++ b/docs/man-en.md @@ -84,7 +84,7 @@ Let's see some example of this particular syntax, since it's very comfortable an #### AWS S3 address argument -Aws S3 has a different syntax for CLI address argument, for obvious reasons, but I managed to keep it the more similiar as possible to the generic address argument: +Aws S3 has a different syntax for CLI address argument, for obvious reasons, but I managed to keep it the more similar as possible to the generic address argument: ```txt s3://@[:profile][:/wrkdir] diff --git a/docs/man-zh.md b/docs/man-zh.md index 6a6dc7b..9ff77d6 100644 --- a/docs/man-zh.md +++ b/docs/man-zh.md @@ -3,6 +3,7 @@ - [操作指南 🎓](#操作指南-) - [用法](#用法) - [地址参数](#地址参数) + - [AWS S3 地址参数](#aws-s3-地址参数) - [如何输入密码](#如何输入密码) - [文件浏览](#文件浏览) - [快捷键](#快捷键) @@ -12,12 +13,14 @@ - [书签](#书签) - [我的密码安全吗?](#我的密码安全吗) - [Linux Keyring](#linux-keyring) - - [KeepassXC setup for termscp](#keepassxc-setup-for-termscp) + - [用于 termcp 的 KeepassXC 设置](#用于-termcp-的-keepassxc-设置) + - [Aws S3 凭证](#aws-s3-凭证) - [配置](#配置) - [SSH Key Storage](#ssh-key-storage) - [资源管理器格式](#资源管理器格式) - [主题](#主题) - [样式](#样式) + - [我的主题无法加载](#我的主题无法加载) - [登录页](#登录页) - [文件传输页](#文件传输页) - [Misc](#misc) @@ -78,6 +81,20 @@ termscp有两种不同的启动模式,不带参数时,termscp将显示登录 termscp scp://omar@192.168.1.31:4022:/tmp ``` +#### AWS S3 地址参数 + +出于显而易见的原因,Aws S3 对 CLI 地址参数有不同的语法,但我设法使其与通用地址参数尽可能相似: + +```txt +s3://@[:profile][:/wrkdir] +``` + +例如 + +```txt +s3://buckethead@eu-central-1:default:/assets +``` + #### 如何输入密码 你可能已经注意到,url参数中没有办法直接附加密码,你可以通过以下三种方式提供密码: @@ -90,13 +107,12 @@ termscp有两种不同的启动模式,不带参数时,termscp将显示登录 ## 文件浏览 - termscp中的文件资源管理器是指你与远程建立连接后可以看到的面板。 面板由3个部分组成(是的,就这三个): - 本地资源管理器面板:它显示在你的屏幕左侧,显示localhost的当前目录文件列表。 - 远程资源管理器面板:它显示在你屏幕的右边,显示远程主机的当前目录文件列表。 -- Find results panel: depending on where you're searching for files (local/remote) it will replace the local or the explorer panel. This panel shows the entries matching the search query you performed.查找结果面板:根据你搜索文件的位置(本地/远程),它将取代对应资源管理器面板。这个面板显示与你执行的搜索查询相匹配的条目。 +- 查找结果面板:根据你搜索文件的位置(本地/远程),它将取代对应资源管理器面板。这个面板显示与你执行的搜索查询相匹配的条目。 为了切换面板,你需要输入 `` 来移动远程资源管理器面板,`` 来移动回本地资源管理器面板。当在查找结果面板时,你需要按``来退出面板,回到前一个面板。 @@ -153,11 +169,11 @@ termscp中的文件资源管理器是指你与远程建立连接后可以看到 启用时,同步浏览将允许你在两个面板之间同步导航操作。这意味着,每当你在一个面板上改变工作目录时,同样的动作会在另一个面板上重现。如果你想启用同步浏览,只需按下``;按两次就可以禁用。当启用时,同步浏览的状态将在状态栏上显示为`ON`。 -*警告*:目前,每当你试图访问一个不存在的目录,你不会被提示创建它。这点可能会在未来的更新中改进。 +> ❗ 目前,每当你试图访问一个不存在的目录,你不会被提示创建它。这点可能会在未来的更新中改进。 ### 打开/打开方式 -打开和打开方式的功能是由[open-rs](https://docs.rs/crate/open/1.7.0)提供的。 +打开和打开方式的功能是由 [open-rs](https://docs.rs/crate/open/2.1.0)提供的。 执行视图命令(``)时,关联该文件类型的系统默认应用程序会被调用以打开当前文件。这依赖于操作系统默认的服务,所以要确保你的系统中至少安装了一个这样的服务: - **Windows** 用户: 无需额外操作,程序内部会调用 `start` 命令。 @@ -186,13 +202,7 @@ termscp中的文件资源管理器是指你与远程建立连接后可以看到 对于书签(不包括服务器连接历史记录)而言,也可以保存用于验证的密码。注意默认情况下不保存密码,必须在保存新书签时通过提示指定密码。 -> 我对在termscp中存储密码的做法非常持保留意见。原因是什么?在你的电脑上保存密码可能会让黑客进入你所注册的任何服务器。但我必须承认,对许多机器来说,每次都输入密码真的很无聊,而且很多时候我必须与局域网内的机器一起工作,这对攻击者来说没有任何好处,所以我想出了一个折衷办法来处理密码。 - -我强烈建议你遵循这些原则,以决定你是否应该本地保存密码: - -- **绝对不要** 在连接公网的机器上本地保存密码,只可以在局域网机器上这么做 -- 确保你的机器有网络保护措施。可以的话,对你的磁盘进行加密,并且在你离开时锁定你的电脑。 -- 最好是在确保目标机器不易受影响的情况下才保存密码。 +如果您担心为您的书签保存的密码的安全性,请阅读[以下章节](#我的密码安全吗?)👀 请按照以下步骤新建书签: @@ -226,7 +236,7 @@ termscp中的文件资源管理器是指你与远程建立连接后可以看到 - ❗对于其他桌面环境的用户,有一个很好的程序,你可以用它来获得钥匙串,这就是[KeepassXC](https://keepassxc.org/),我在我的Manjaro中使用它(带KDE),一切都很正常。唯一的问题是,你必须设置它与termscp一起使用(但这很简单)。要开始使用KeepassXC,请阅读更多[这里](#keepassxc-setup-for-termscp)。 - ❗如果你不想安装任何这些服务呢?好吧,这没有问题! **termscp依然能正常工作**,但它会将密钥保存在一个文件中,就像它通常为BSD和WSL做的那样。 -##### KeepassXC setup for termscp +##### 用于 termcp 的 KeepassXC 设置 参照以下步骤,为termscp配置keepassXC: @@ -240,6 +250,30 @@ termscp中的文件资源管理器是指你与远程建立连接后可以看到 --- +## Aws S3 凭证 + +为了连接到 Aws S3 存储桶,您显然必须提供一些凭据。 +基本上有两种方法可以实现这一点,而且您可能已经注意到您**不能**通过身份验证表单来做到这一点。 +因此,您可以通过以下方式为 s3 提供凭据: + +1. 使用您的凭证文件:只需通过`aws configure` 配置AWS cli,您的凭证应该已经位于`~/.aws/credentials`。 如果您使用的配置文件不同于“默认”,只需在身份验证表单的配置文件字段中提供它。 +2. **环境变量**: 您始终可以将您的凭据作为环境变量提供。 请记住,这些凭据**将始终覆盖**位于 `credentials` 文件中的凭据。 下面看看如何配置环境: + + 这些应该始终是强制性的: + + - `AWS_ACCESS_KEY_ID`: aws 访问密钥 ID(通常以 `AKIA...` 开头) + - `AWS_SECRET_ACCESS_KEY`: 秘密访问密钥 + + 如果您配置了更强的安全性,您*可能*也需要这些: + + - `AWS_SECURITY_TOKEN`: 安全令牌 + - `AWS_SESSION_TOKEN`: 会话令牌 + +⚠️ 您的凭据是安全的:termscp 不会直接操作这些值! 您的凭据直接由 **s3** crate 使用。 +如果您对安全有一些担忧,请联系 [Github](https://github.com/durch/rust-s3) 上的库作者 ⚠️ + +--- + ## 配置 termscp支持一些用户定义参数,这些参数可以通过配置来修改。 @@ -259,6 +293,7 @@ termscp和书签一样,只需要保证这些路径是可访问的: - **Default Protocol**:默认协议是termscp中默认使用的文件传输协议。这适用于登录页和地址中的CLI参数。 - **Show Hidden Files**:选择是否应默认显示隐藏文件。你可以在运行时按 `A` 来切换是否显示隐藏的文件。 - **Check for updates**:如果设置为 `yes`,termscp将通过Github API检查是否有新版本的termscp。 +- **Prompt when replacing existing files?**: 如果设置为 `yes`,则在文件传输会导致目标主机上的现有文件被替换时,termscp 将提示您确认。 - **Group Dirs**:选择在文件浏览器中是否对文件夹进行分组。如果选择 `Display first`,目录将根据设置的方法排序,但仍显示在文件之前;如果选择 `Display last`,则正好相反。 - **Remote File formatter syntax**:在远程资源管理器中为每个文件显示文件信息的语法。参见[资源管理器格式](#资源管理器格式) - **Local File formatter syntax**:在本地资源管理器中显示每个文件的文件信息的语法。参见[资源管理器格式](#资源管理器格式) @@ -269,11 +304,11 @@ termscp和书签一样,只需要保证这些路径是可访问的: 你可以从配置中切换到到 `SSH Keys` tab页来访问SSH密钥存储,在那里你可以: -- **Add a new key**:只需按下``,你将被提示创建一个新的密钥。提供主机名/ip地址和与该钥匙关联的用户名,最后会打开一个文本编辑器:将**PRIVATE** SSH key粘贴到文本编辑器中,保存并退出。 -- **Remove an existing key**:只要在你想删除的密钥上按下``或``,就可以从 termscp 中永久删除该密钥。 -- **Edit an existing key**:只需在你想编辑的密钥上按下``,就可以修改私钥。 +- **添加新密钥**:只需按下``,你将被提示创建一个新的密钥。提供主机名/ip地址和与该钥匙关联的用户名,最后会打开一个文本编辑器:将**PRIVATE** SSH key粘贴到文本编辑器中,保存并退出。 +- **删除现有密钥**:只要在你想删除的密钥上按下``或``,就可以从 termscp 中永久删除该密钥。 +- **编辑现有密钥**:只需在你想编辑的密钥上按下``,就可以修改私钥。 -> 问:等等,我的私钥受密码保护,也是可以用的吗? +> 问:等等,我的私钥受密码保护,也是可以用的吗? > 答:当然可以。termscp中提供的认证密码,对用户名/密码认证和RSA密钥认证都有效。 ### 资源管理器格式 @@ -325,6 +360,24 @@ termscp支持传统的十六进制(`#rrggbb`)和RGB`rgb(r, g, b)`语法来 你可以在下面的表格中找到每个样式字段的描述。 请注意,**样式在配置页面不起作用**,以保证它总是可以访问,以防你把一切都弄乱了。 +### 我的主题无法加载 + +这可能是由于最近的更新破坏了主题。 每当我向主题添加新密钥时,保存的主题都不会加载。 要解决此问题,有两个真正的快速修复解决方案: + +1. 重新加载主题:每当我发布更新时,我也会修补“官方”主题,因此您只需再次从存储库下载它并通过 `-t` 选项重新导入主题 + + ```sh + termscp -t + ``` + +2. 修复您的主题:如果您使用自定义主题,那么您可以通过 `vim` 进行编辑并添加缺少的键。 主题位于 `$CONFIG_DIR/termscp/theme.toml`,其中 `$CONFIG_DIR` 是: + + - FreeBSD/GNU-Linux: `$HOME/.config/` + - MacOs: `$HOME/Library/Application Support` + - Windows: `%appdata%` + + ❗ 对于您刚刚安装的版本,在 `BREAKING CHANGES` 下的 `CHANGELOG` 中报告了丢失的键。 + #### 登录页 | 字段 | 描述 | @@ -362,6 +415,7 @@ termscp支持传统的十六进制(`#rrggbb`)和RGB`rgb(r, g, b)`语法来 | 字段 | 描述 | |-------------------|---------------------------------------------| | misc_error_dialog | 报错信息的颜色 | +| misc_info_dialog | 信息对话框的颜色 | | misc_input_dialog | 输入对话框的颜色(比如拷贝文件时) | | misc_keys | 键盘输入文字的颜色 | | misc_quit_dialog | 退出窗口的颜色 |