FAQ

常见问题

关于 SecureCRT 许可证、升级、SSH 协议、端口转发、平台兼容性等常见问题的解答

共 32 个常见问题
未找到匹配的问题
01SecureCRT 可以出口到美国以外吗?

可以,在大多数情况下是允许的。SecureCRT 和 SecureFX® 可根据美国工业与安全局关于强加密软件的法规进行出口。其他国家的进口限制也可能影响加密软件的可用性。有关更多信息,请参阅我们的加密软件出口网页。

02为什么在 Windows 上看到关于 VanDyke Software 是未知发布者的用户账户控制消息?

2024 年 8 月 8 日,VanDyke Software 获得了新的 DigiCert 证书,这会影响在该日期之后构建的安装程序。

有两种方法可以解决此问题:

查看证书

  1. 右键点击安装程序,从菜单中选择"属性..."
  2. 选择"数字签名"选项卡
  3. 选择签名列表中的项目,然后按"详细信息"按钮
  4. 查看证书通常就足以解决此问题。当再次启动安装程序时,它应该会显示 VanDyke Software, Inc. 作为已验证的发布者

忽略错误

如果 Windows 自带的 PKI 受信任根证书颁发机构不是最新/完整的,您可能需要:(a) 在 Windows 中更新受信任的根证书和中间证书颁发机构,或 (b) 在提示"未知发布者"消息时选择"是"来忽略错误。

如果您在 Windows 上安装 SecureCRT 时需要更多帮助,请联系我们

03SecureCRT 的升级流程是什么?如何保留设置?费用是多少?

升级流程是什么?

SecureCRT 设计为可以直接在旧版本上安装,因此您只需下载安装程序并运行即可。无需在安装新版本之前卸载旧版本,因为在大多数情况下,新版本会自动为您卸载旧版本。从非常旧的版本(5.5.4 及更早版本)升级到新版本时,旧版本可能不会被自动删除。

如何保留设置?

默认的 SecureCRT 安装不会更改、修改、删除或以其他方式危及您现有的会话/设置。但是,如果您的组织最初使用自定义安装部署了 SecureCRT,您需要向组织的部署团队寻求帮助以确定升级安装的预期行为。

有没有快速方法可以了解是否有资格获得更新?

有。请访问更新政策页面了解更多信息。

费用是多少?

根据您购买许可证时选择的选项,SecureCRT 许可证包含 1 年或 3 年的产品更新和技术支持。在 SecureCRT 6.1 及更新版本中,您可以通过点击主 Help 下拉菜单并选择 About SecureCRT... 来确定现有许可证的资格期限。如果您在 macOS 平台上运行 SecureCRT,"关于"对话框在主 SecureCRT 下拉菜单中。有关更多信息,请参阅更新政策页面。如果您的许可证不符合免费更新条件但有兴趣续订,可查看升级定价信息并在线购买,或联系我们

04为什么 SecureCRT 会超时并关闭我的连接?为什么连接断开时窗口或标签页会关闭?

SecureCRT 本身没有"超时"功能来自动断开会话。但是,许多服务器会在一段时间不活动后断开空闲会话。不活动有时被服务器定义为未从客户端收到任何信息,因此即使 SecureCRT 窗口中持续显示新数据,它也可能超时。如果您看到在没有用户输入的一段时间后发生断开连接,则断开连接是由远程系统上的空闲超时设置或 SecureCRT 与远程系统之间网络路径中的防火墙/路由器/VPN 服务器发起的。

为什么其他应用程序(如网页浏览器)不会这样?

其他应用程序(如网页浏览器)可以透明地重试失败的通信,因为它们不需要维护打开的连接。当 SSH(或 Telnet 等)会话被远程服务器或防火墙/路由器/VPN 服务器的空闲超时断开时,这种透明级别不可用。

有什么办法可以防止连接关闭吗?

如果您发现会话在一段时间不活动后被断开,可以利用 SecureCRT 的防空闲功能来尝试保持连接更长时间。您可以在 Session Options / Terminal 类别中找到两个防空闲选项:Send protocol NO-OPSend string

Send protocol NO-OP 选项在使用 SSH2 或 Telnet 协议时可用。它在 TCP 协议级别发送数据,不会向远程发送任何会被显示的数据。建议使用此选项来防空闲,因为它通常不会干扰远程系统上运行的应用程序。

Send string 选项模拟实际的按键,因此发送的数据会到达远程并被显示(可能会干扰远程系统上运行的应用程序)。由于发送按键可能产生意外后果,应仔细选择要发送的数据。模拟空格和退格可能是许多环境的最佳解决方案。要发送空格和退格,请在 Send string 输入框中输入 \b(不含引号)。

为什么连接断开时窗口或标签页会关闭?

SecureCRT 提供了一个选项,允许在连接关闭时自动关闭窗口或标签页。此选项默认未启用。如果您看到此行为,可能是您已经启用了它。

如果您希望在连接关闭时保持窗口/标签页打开,需要将选项恢复为默认设置:

  1. 打开 Session Options 对话框
  2. 选择 Terminal 类别,找到 Close on disconnect 选项
  3. 确保 Close on disconnect 选项未启用
  4. 关闭 Session Options 对话框以保存设置
05SecureCRT 支持两个版本的 Secure Shell 协议。SSH1 和 SSH2 有什么区别?

SSH 协议有两代:SSH(最初的协议草案,始于 1995 年),现在标记为 SSH1;以及 SSH 第 2 版,通常称为 SSH2,首次发布于 1998 年。SSH2 是 Secure Shell 协议的当前版本,在互联网工程任务组 (IETF) Secsh 工作组下开发。

SSH1 的开发持续到 1998 年,此后技术重点转向 SSH2 的安全问题和优化。SSH2 协议是对该协议的完全重新设计,旨在消除 SSH1 中的限制,例如缺少消息认证码 (MAC)。SSH1 草案文档不属于 IETF 流程,与当前的 SSH1 服务器实现不匹配。SSH1 在早期 Secure Shell 用户中拥有大量安装基础,并且对某些组织有更开放的服务器许可。然而,SSH2 的成熟度和改进的安全性使其成为 VanDyke Software 首选的协议。

06VanDyke Software 推荐使用什么 Secure Shell 协议?

VanDyke Software 认为 SSH2 是当前最佳选择协议。SSH2 从底层重新修订,在架构和实际方面比 SSH1 有许多改进,包括解决潜在的安全缺陷。SSH2 最直接的优势是多通道端口转发更快、更可靠。一个通道不再能消耗所有可用带宽并减慢其他通道或会话的速度(如 SSH1 中那样)。SSH2 也是多家公司将新开发工作重点放在的协议,无论是新平台的操作系统支持还是扩展 SSH2 的功能。安全方面的问题最好在 SSH2 协议中解决。

出于许可原因使用 SSH1 服务器的组织现在有了替代的基于 SSH2 的解决方案可供选择。VanDyke Software 提供适用于 Windows、Linux 和 macOS 的 VShell® SSH2 服务器。OpenBSD 开发者进行的 OpenSSH 服务器项目也支持 SSH2,并以免费许可证提供给 OpenBSD 和其他 UNIX/Linux 操作系统。

07如何让 VNC 通过 SSH2 使用 SecureCRT 和 VShell® 安全运行?

注意:此信息适用于 SecureCRT for Windows®

以下步骤将帮助您在 VShell 上运行 VNC。这些步骤假设您使用 SecureCRT 作为端口转发客户端

在 VShell/VNC 服务器上:

  1. 在 VNC 界面中设置以下参数:
    • 勾选 Accept Socket Connections 复选框
    • 将"Display number"设置为"02"(这将配置服务器侦听端口 5902)
    • 设置密码
  2. 注意:将"Display number"直接设置为"5902"可能会导致客户端出错
  3. 创建以下注册表条目:AllowLoopBack REG_DWORD "1"(十六进制)在键 HKEY_LOCAL_MACHINE\SOFTWARE\ORL\WinVNC3
  4. 重启 VNC 服务

在 SecureCRT 客户端中:

  1. 选择 File / Connect... 打开会话管理器
  2. 点击 New Session 按钮并配置连接到 VShell/VNC 服务器的 SSH2 会话
  3. 选择 Connections / Port Forwarding 类别并按 Add 按钮
  4. 创建端口转发条目:Name: VNC,Local Port: 5902,Remote Port: 5902,清除 Destination host is different for the SSH server 复选框
  5. 点击 OK 直到返回会话管理器,然后点击 Connect 启动新会话

在 VNCViewer 中:

Connection details 对话框中输入 localhost:02

08我一直尝试只更改一个会话的前景色和背景色,但更改后所有会话的颜色都变了。我做错了什么?

造成此行为的可能原因是,当您尝试更改会话颜色时,实际上更改的是全局定义的颜色方案中的前景色和背景色值。

要让每个会话使用不同的前景色和背景色组合,您需要为每个想要使用的颜色组合创建一个颜色方案。

例如,如果"Session1"使用名为"blue-black"的自定义颜色方案,而您希望另一个会话具有红色前景和黑色背景,您需要创建一个新的颜色方案(例如,命名为"red-black"),并让 Session2 使用该颜色方案。

09登录 RedHat 时为什么屏幕上出现奇怪字符,特别是查看 man 页面时?

您遇到的问题是 RedHat 默认使用 UTF-8 编码其输出。可能是您使用的 SecureCRT 版本不支持 UTF-8 编码输出,或者当前使用会话的输出编码未设置为 UTF-8。

以下是三种可能的解决方案:

方案 1:为当前使用的会话启用 UTF-8 输出编码

如果您使用的是 4.0.1 之前的 SecureCRT 版本,需要更新版本。根据购买许可证的时间,这可能是免费升级。请查看 VanDyke 网站的升级定价页面。

在 SecureCRT 5.0 中启用 UTF-8 编码:进入 Session Options 对话框,在 Terminal/Appearance 类别中,将 Fonts 组中的 Character encoding 设置为"UTF-8"。

在 SecureCRT 4.0.1 到 4.1.x 中:进入 Session Options 对话框,在 Emulation/Advanced 类别中,将 Character encoding 组中的 Output 条目设置为"UTF-8"。

方案 2:在 RedHat 机器上为您的用户关闭 UTF-8 编码

在您的 .bash_profile 中添加以下行(这是针对 bash shell 的;如果使用不同的 shell,设置可能略有不同):

LANG=en_US
SUPPORTED=en_US:en
export LANG SUPPORTED

注意:上述命令使用 en_US 作为示例;也可以使用其他语言。

方案 3:在 RedHat 机器上全局关闭 UTF-8 编码

注意:此方案要求您具有 root 访问权限。

在文件 /etc/sysconfig/i18n 中有一行:

LANG="en_US.UTF-8"

将其更改为:

LANG="en_US"

注意:上述命令使用 en_US 作为示例;也可以使用其他语言。

10如何将 SecureCRT 设为 Windows 的默认 SSH2 应用程序,以便从网页浏览器启动?

注意:此提示仅适用于 Windows® 平台上的 SecureCRT® 8.1 及更新版本。

  1. 在 SecureCRT 中打开 Options / Global Options 对话框,导航到 Web Browser 类别
  2. Make SecureCRT the Default Application 按钮
  3. 导航到 Windows Settings / Apps / Default apps / Choose defaults by link type,将 SecureCRT 设为所有您需要的协议(ssh、ssh1、ssh2、telnet)的默认处理程序

如果您想在现有 SecureCRT 窗口的标签页中打开连接,有两个选项可供选择:

选项 1:在 SecureCRT 中启用"Single Instance"模式

第一个选项是在 SecureCRT 中启用"Single Instance"模式,这需要更改 SecureCRT 的 Global.ini 文件。启用后,用户仍然可以将标签/平铺发送到新窗口,但所有应用程序窗口将由单个 SecureCRT.exe 进程管理。

  1. 打开 SecureCRT 的 Options / Global Options,选择 Configuration Paths 类别,记下显示的配置路径
  2. 关闭所有 SecureCRT 实例,编辑在步骤 1 中记下的配置路径中找到的 Global.ini 文件,将以下行从:
    D:"Single Instance"=00000000
    更改为:
    D:"Single Instance"=00000001
  3. 保存对 Global.ini 文件的更改

启动的新连接现在将在现有 SecureCRT 窗口的标签/平铺中打开。

选项 2:编辑 Windows 注册表添加 /T 到命令行启动器

警告:如果不正确地使用注册表编辑器,可能会导致严重问题,可能需要重新安装操作系统。在更改注册表之前,应备份计算机上的重要数据。

  1. 打开 regedit 并导航到:
    HKEY_CLASSES_ROOT\VanDyke.SecureCRT.URLHandler.1\shell\open\command
  2. 更改 REG_SZ 注册表值以插入 /T 命令行参数。例如将:
    "C:\Program Files\VanDyke Software\Clients\SecureCRT.EXE" %1
    更改为:
    "C:\Program Files\VanDyke Software\Clients\SecureCRT.EXE" /T %1

现在您应该可以通过在浏览器中输入 ssh2://<hostname> 或在网页中插入该链接来从浏览器启动 SecureCRT,新连接将在现有 SecureCRT 窗口的标签/平铺中打开。

11在 SCO OpenServer 上应该使用什么设置才能正确仿真?

更改以下设置应该可以改善远程机器运行 SCO OpenServer 5.0.6 或更高版本时的仿真效果:

  1. 在 SecureCRT® 的 Session Options 对话框的 Emulation 类别中,选择"SCOANSI"作为 Terminal 仿真。SCOANSI 仿真应与任何 SCO 服务器一起使用。同时确保行和列设置适当,SCO 应用程序通常首选 25x80
  2. Session Options 对话框的 Emulation/Advanced 类别中,勾选 Terminal type 复选框并在关联的文本框中输入"ansi"。这将在连接时发送"ansi"而不是"scoansi"。在 SCO OpenServer 5.0.6 及更高版本中,"scoansi"不再映射到"ansi",因此必须手动指定"ansi"
  3. 在 SecureCRT 4.1 之前的版本中,Terminal 字体效果最佳。在 Session Options 对话框的 Appearance 类别中,选择 Terminal 作为 Normal font。确保 Emulation/Advanced 类别中的 Character encoding 选项设置为"Default"
  4. 在 SecureCRT 4.1 及更高版本中,通过在 Session Options 对话框的 Appearance 类别中选择"Terminal"作为"Normal font"来使用 Terminal 字体。确保同一类别中的 Character encoding 设置为"Default"。也可以使用 TrueType Windows 字体,选择 Courier New 或 Lucida Console 等字体并将"Character encoding"设置为 OEM
  5. 最后,在远程机器上确保 TERM 环境变量设置为"ansi"
12为什么音频铃声不工作?

注意:此提示适用于 SecureCRT® for Windows®

如果在连接到远程系统时 SecureCRT 接收到 BELL 字符但您听不到蜂鸣声,第一步是确保 SecureCRT 会话已配置为播放蜂鸣声:

  1. 从 SecureCRT 的 Options 菜单中选择 Session Options
  2. Session Options 对话框的 Terminal 类别中,验证 Audio bell 选项已启用
  3. 如果仍然听不到蜂鸣声,下一步是检查系统音频设置
  4. 从系统的 Start 菜单中选择 Control Panel
  5. 打开 Sounds and Multimedia 小程序(在 Windows XP 中为 Sounds, Speech, and Audio Devices,然后选择 Sounds and Audio Devices
  6. 选择 Sounds and Audio Devices 对话框上的 Sounds 选项卡
  7. 确保 Windows/Default Beep 事件设置为非"(None)"的值。可以按"Play"按钮测试此设置
  8. 如果"Play"按钮灰显或按下后听不到声音,则可能需要安装或修复系统的声音驱动程序

如果系统音频设置正确但 SecureCRT 中仍然听不到蜂鸣声,可能是由于 Microsoft 的可选工具程序 Tweak UI 进行的注册表设置导致的。

  1. Start 菜单中选择 Control Panel
  2. 如果在控制面板小程序列表中看到 Tweak UI,请打开它并验证其 General 选项卡上的 Beep on errors 选项已启用。如果更改了此设置,可能需要重启才能生效

如果仍然听不到蜂鸣声,请联系 VanDyke Software 技术支持:support@vandyke.com

13如何让我的颜色方案设置生效?

如果您在使颜色方案设置生效方面遇到问题,可能需要在 Session Options 对话框的 Emulation 页面中取消选中 ANSI Color 选项。ANSI Color 选项将覆盖在 Global Options 对话框的 Appearance/Color Schemes 页面中定义的任何颜色方案。

有关更多技巧,请参阅我们的 SecureCRT 颜色配置概述

14如何修改 SecureCRT 中的端口转发过滤器?

SecureCRT 有过滤器控制谁可以连接到在 SecureCRT 中设置的端口转发。默认情况下,只有来自运行 SecureCRT 的机器的连接才能连接到端口转发。

您可以按以下步骤更改端口转发过滤器:

  1. 如果 SecureCRT 正在运行,请在继续之前退出程序
  2. 找到与要修改的会话关联的 .ini 文件。.ini 文件位于 SecureCRT Config 文件夹下名为 Sessions 的子文件夹中。Global Options 对话框也显示 SecureCRT Config 文件夹的位置
  3. 在记事本中打开 .ini 文件
  4. 查找以下行:
    S:"Port Forward Filter"=allow,127.0.0.0/255.0.0.0,0 deny,0.0.0.0/0.0.0.0,0
  5. 将该行修改为:
    S:"Port Forward Filter"=allow,127.0.0.0/255.0.0.0,0 allow,xxx.xxx.xxx.xxx,0 deny,0.0.0.0/0.0.0.0,0
    或者,您可以将该行修改为允许任何 IP 地址连接到端口转发:
    S:"Port Forward Filter"=allow,0.0.0.0/0.0.0.0,0
15如何将 SecureCRT 会话和设置迁移到其他机器和/或平台?

以下说明描述了如何将会话和设置迁移到其他机器和/或平台。SecureCRT 7.3 及更新版本包含导入/导出工具,使创建备份或将 SecureCRT 设置从一台机器复制到另一台机器更加容易。

SecureCRT 7.3 及更新版本

  1. 在目标机器上安装 SecureCRT
  2. 在源机器上运行 SecureCRT,从 Tools 菜单中选择 Export Settings。选择文件夹位置并为将要创建的 XML 文件指定名称(例如 SCRTConfig.xml)
  3. 将步骤 2 中创建的文件复制到目标机器
  4. 在目标机器上运行 SecureCRT,从 Tools 菜单中选择 Import Settings
  5. Import from file 框中选择步骤 3 中的 XML 文件

注意:如果配置设置为使用个人数据文件夹,敏感数据(如用户名、密码和自动登录信息)将不会被复制。如果您希望复制所有内容,需要临时恢复到单一配置文件夹。VanDyke Software YouTube 频道上的 Personal Config Data: Reverting Back to a Single Config Folder 视频展示了如何操作,或者您可以联系技术支持获取帮助。

SecureCRT 7.2 及更早版本

注意:此信息专门针对从旧机器复制整个会话数据库到新机器。如果您在新机器上创建了旧机器上没有的会话,新会话将被删除。许多路径(主机密钥数据库、下载/上传文件夹等)是特定于平台的,在从一个平台复制配置到另一个平台后可能需要修改。

  1. 在目标计算机上安装 SecureCRT
  2. 在目标计算机上打开 SecureCRT 的 Global Options 对话框,选择 General 类别,记下 Configuration folder 位置
  3. 在源计算机上打开 Global Options 对话框,选择 General 类别,记下 Configuration folder 位置
  4. 关闭源和目标计算机上所有 SecureCRT 实例
  5. 将源计算机上 Configuration folder 的内容(包括子文件夹)复制到目标计算机上的 Configuration folder

大多数会话和设置信息在两个平台上的使用方式相同。以下是一些不同的设置:

  • 对于字体,使用默认字体(字体不保证在所有平台上都存在)
  • 串口定义可能需要修改
  • 本地文件夹位置可能需要修改,包括主机密钥数据库、身份、下载、日志、登录脚本以及与映射键或按钮关联的脚本
  • 自定义菜单和工具栏目前仅在 Windows 上支持
  • Rlogin、TAPI 和 Telnet/SSL 连接协议目前仅在 Windows 上支持
16我的 SecureCRT 许可证密钥在 macOS 和 Linux 版本上可以使用吗?

SecureCRT 许可证目前不限特定平台,但最终用户许可协议第三 (3) 节中规定的许可证使用限制仍然适用:

3. 使用和评估期。您可以在一台客户端计算机上使用本软件的一个副本。就本协议而言,"计算机"指物理设备或虚拟机。当本软件被加载到主内存(即 RAM)中时,即视为"正在使用"。您还可以在另一台计算机上使用本软件的一个副本,前提是确保任何时候只有一个副本处于"使用中"状态。您可以在 30 天内使用本软件的评估副本,以确定是否购买本软件。

如果 SecureCRT 在任何给定时间只在一台机器上运行,那么一个 SecureCRT 许可证可以合法地用于在一 (1) 台辅助 Windows/Mac/Linux 机器上注册 SecureCRT。

但是,如果 SecureCRT 需要在多台机器上同时运行,则必须为每台机器购买单独的 SecureCRT 许可证(无论操作系统平台如何)。

注意:此使用政策受 SecureCRT 当前许可协议的管辖,并可能在 SecureCRT 的未来版本中更改。

如果您需要购买额外的 SecureCRT 许可证以在不同机器上同时运行,请访问购买页面。

17升级到 macOS Monterey 12.3.x 后为什么 SecureCRT 在启动时崩溃?

您正在运行的旧版 SecureCRT 不适用于 macOS Monterey 12.x。由于 v9.2 之前的 SecureCRT 版本不支持 macOS Monterey 平台,建议运行旧版本的用户升级 SecureCRT 以解决此问题。

许可证不符合注册新版 SecureCRT 资格的用户可以联系我们或访问定价页面了解购买升级许可证的信息。

18在 macOS 版本的 SecureCRT 中,我想选择 .ssh 文件夹中的身份文件。如何在文件选择对话框中查看隐藏文件夹和文件?

要在文件选择对话框中临时查看隐藏文件夹和文件,请按 COMMAND+SHIFT+. 组合键。

19如何在 macOS 版 SecureCRT 中使端口转发与回环地址一起工作?

Windows 平台上使用 SecureCRT 的用户可能习惯于在端口转发配置中手动选择本地 IP 地址时指定"localhost"或"127.0.0.1"以外的回环地址。

在 Windows 环境中,指定像"127.0.0.2"或任何 127.* 回环地址可以"开箱即用",因为 Windows 操作系统对这些回环地址有内置支持。

相比之下,macOS "开箱即用"仅提供以下网络接口:

  • 机器的 IP 地址
  • localhost
  • 127.0.0.1

具有 root 或管理员权限的 macOS 用户可以使用"ifconfig"命令为额外的回环地址配置别名,以用于 SecureCRT 中的端口转发配置。例如,在 SecureCRT 的"Local Shell"连接中发出以下命令将创建一个额外的"127.0.0.2"回环别名:

sudo ifconfig lo0 alias 127.0.0.2/32

注意:使用"sudo"是因为"ifconfig"需要 root 权限。如果您在 macOS 机器上没有 root/管理员权限,请联系系统管理员以获取帮助设置额外的回环地址以用于 SecureCRT。

20如何将会话从 Windows、macOS 或 Linux 版 SecureCRT 导入到 iOS 版 SecureCRT?

以下说明描述了如何将会话从其他平台导入到 SecureCRT for iOS。

iCloud 说明(macOS)

  1. 确保 macOS 系统上已启用 iCloud
  2. 在 macOS 系统上运行 SecureCRT,从 Tools 菜单中选择 Export Settings。在 Finder 中导航到 iCloud 驱动器,并为将要创建的 XML 文件指定名称(例如 SCRTConfig.xml)
  3. 确保 iOS 设备上已启用 iCloud
  4. 在 SecureCRT for iOS 中,在 Global Options 中选择 Manage Archives
  5. 选择 Import(右上角)
  6. Locations 下选择 iCloud Drive,然后选择在步骤 2 中创建的 XML 文件。导入将开始

如果任何会话使用公钥认证,请参阅下方 FAQ"如何将公钥/私钥导入到 SecureCRT for iOS"。

邮件说明(Windows、macOS 或 Linux)

  1. 在 Windows、macOS 或 Linux 系统上运行 SecureCRT,从 Tools 菜单中选择 Export Settings。选择文件夹位置并为 XML 文件指定名称(例如 SCRTConfig.xml)
  2. 通过电子邮件将 XML 文件发送到 iOS 设备
  3. 在 iOS 设备上的邮件客户端中,将 XML 文件保存到 iCloud DriveOn My iPad/iPhone 位置
  4. 在 SecureCRT for iOS 中,在 Global Options 中选择 Manage Archives
  5. 选择 Import(右上角)
  6. Locations 下选择步骤 3 中使用的位置,然后选择相应的 XML 文件。导入将开始

如果任何会话使用公钥认证,请参阅下方 FAQ"如何将公钥/私钥导入到 SecureCRT for iOS"。

如果您需要更多帮助将会话导入到 SecureCRT for iOS,请联系我们

21如何将公钥/私钥导入到 SecureCRT for iOS?

方法 1:

  1. 将 iOS 设备连接到 Mac
  2. 使用 Finder 应用导航到 iOS 设备(确保已在 iOS 设备和 Mac 之间启用"信任")
  3. 在 Finder 应用中,导航到 iOS 设备的"Files"
  4. 展开 SecureCRT 并找到"Keys"文件夹
  5. 将"Keys"文件夹的副本从 iOS 设备拖到 Mac 上。将要导入的私钥文件及其对应的 .pub 文件添加到 Mac 上 Keys 文件夹的副本中。然后将 Keys 文件夹的副本从 Mac 拖到 Finder 窗口中 iOS 设备的 SecureCRT 文件夹中
  6. 在 Finder 应用中按 Sync 按钮,将新的 Keys 文件夹及其内容复制到 iOS 设备
  7. 在 iOS 设备上关闭并重新打开 SecureCRT;您现在应该可以看到密钥在 SecureCRT 应用程序中可用

方法 2:

导入公钥的说明:

  1. 在 PC 或 Mac 上找到公钥文件并在编辑器中打开。复制文件的密钥部分
  2. 将密钥字符串(在步骤 1 中复制的)粘贴到电子邮件中,并通过电子邮件发送到 iOS 设备
  3. 在 iOS 设备上的邮件客户端中,从步骤 2 中发送的邮件中复制密钥字符串
  4. 打开 SecureCRT for iOS,进入 Global Options
  5. 在 SSH2 下选择 Manage Public Keys,然后选择 Import Private Key
  6. 将步骤 3 中的字符串粘贴到 Private Key 字段中。填写 Name 和 Passphrase(如果适用),然后选择 Import Key

导入密钥后,可以将其配置为与任何新的或现有的会话一起使用。

如果您需要更多帮助,请联系我们

22如何连接到仅支持 Diffie-Hellman 密钥交换的服务器?

如果您使用的是 SecureCRT® 8.0 或更新版本,连接到仅支持 Diffie-Hellman 密钥交换的服务器的尝试可能会导致以下错误:

Key exchange failed.
No compatible key exchange method. The server supports these methods: diffie-hellman

在 SecureCRT 8.0 及更高版本中,由于 Logjam 漏洞,Diffie-Hellman 密钥交换方法默认关闭。对于注重安全的专业人士,应保持 Diffie-Hellman 禁用状态,并且应升级或配置 SSH2 服务器实现以支持更安全的密钥交换算法。

仅在极少数情况下(您连接的设备不支持更安全的密钥交换算法,且无法升级 SSH2 服务器实现时)才应启用 Diffie-Hellman。

如果您必须启用 Diffie-Hellman 密钥交换方法来成功连接到旧服务器,可以按以下步骤配置 SecureCRT:

  1. 打开需要使用 Diffie-Hellman 密钥交换的会话的 Session Options 对话框
  2. 选择 Connection/SSH2 类别
  3. Key exchange 组中,启用"diffie-hellman"
  4. OK 保存会话
23升级到新版本后为什么 SecureCRT 进入评估模式运行?

如果安装较新版本的 SecureCRT 导致其以评估模式运行,这意味着您机器上的许可证数据不符合注册较新版本的资格。

解决问题

如果您安装了现有许可证不符合注册资格的较新版本 SecureCRT,SecureCRT 将提供 30 天的评估期,在此期间您可以继续使用较新版本并评估其是否值得购买升级许可证。

如果评估后您认为不值得购买升级许可证,可以安装在安装较新版本之前运行的旧版本。

VanDyke Software 产品的早期版本安装程序可在以前的版本页面找到。

避免问题

为避免安装现有许可证数据不符合注册资格的较新版本,用户应使用 SecureCRT 主 Help 下拉菜单中的更新菜单项。有关更多信息,请参阅我们的检查更新资格网页。

在 SecureCRT 9.3 及更高版本中,Update 子菜单中有一个名为 Check at Startup 的选项。启用此选项后,SecureCRT 将在启动时自动检查是否有与当前许可证有效的较新版本可用。

24为什么会话管理器的连接在新窗口而不是标签页中打开?

当您从 Session Manager 启动新连接时,可能会看到连接在平铺或级联的独立窗口中打开。

平铺和级联窗口示例

标签页选项未启用的示例

上述情况可能发生在您从 SecureCRT 主 Window 菜单中将会话设置为 Tile (Vertically/Horizontally)Cascade,或者您在 Global OptionsTerminal 类别中禁用了 Connect sessions in tabs 选项时。

Window 菜单中的平铺和级联选项

如果您希望新连接在同一 SecureCRT 窗口的标签页中打开(如下图所示),可以通过以下几个步骤修复:

标签页显示效果

  1. 从 SecureCRT 的 Window 菜单中选择 Tabs
  2. 从 SecureCRT 的 Options 菜单中打开 Global Options
  3. 导航到 Terminal 类别并启用 Connect sessions in tabs
25为什么 SecureCRT 无法记录我在屏幕上看到的命令或其他数据?

问题是什么?

您正在使用 SecureCRT 连接到 HP Aruba 网络设备(或类似设备),并且已启用日志记录。您可以在终端屏幕上看到输入的信息行,但这些行未包含在日志文件中。

为什么会发生这种情况?

为了消除日志文件中出现的多余数据(例如当您输错命令并退格更正时),SecureCRT 仅在到达当前行的末尾时才将数据写入日志文件——换句话说,当收到 CR 或 LF 字符时。一旦收到 CR 或 LF 字符,SecureCRT 会获取当前行上可见的文本并将其写入日志文件。

某些远程主机(如 HP Procurve 和 Aruba 交换机)不遵循基本终端规范(其中"行"以 CR 或 LF 终止)。当您在连接到此类设备时按 Enter 提交命令时,设备不会向 SecureCRT 发送任何行终止字符(CR 或 LF);而是发送一系列光标移动代码,这些代码不能在一般情况下被解释为"行结束标记"。由于该行上的命令没有收到 CR 或 LF 字符——且光标已被移到另一行——带有命令的行将不会被 SecureCRT 记录。

Aruba 设备发送的转义序列的原始日志

解决方案是什么?在哪个 SecureCRT 版本中可用?

从 SecureCRT 8.7 版本开始添加了一个仅限 INI 文件的会话选项 Log Screen。此选项允许在数据出现在屏幕上时记录终端中显示的所有数据,而不是在 SecureCRT 收到 CR 或 LF 时才记录。

从脚本中启用:

Python: crt.Session.Config.SetOption("Log Screen", True)

VBScript (仅 Windows): crt.Session.Config.SetOption "Log Screen", True

使用按钮更改当前会话的 Log Screen 选项

您可以将按钮映射到运行上述脚本代码的脚本。将 Python 代码保存为 SetLogScreen.py 文件,然后将按钮映射为运行该脚本(参见 VanDyke YouTube 频道上的 SecureCRT's Button Bar 视频)。点击按钮时,活动标签页关联的会话将启用 Log Screen 选项。

手动更改选项

如果您想手动更改此设置,导航到该特定会话的 .ini 文件(会话 .ini 文件位于您机器上的 Config\Sessions 文件夹中,配置文件夹路径可在 Global OptionsGeneral / Configuration Paths 类别中看到)。编辑 .ini 文件并进行以下更改:

D:"Log Screen"=00000000 更改为 D:"Log Screen"=00000001

如果 .ini 文件中没有 D:"Log Screen" 行,首先确保您运行的是 SecureCRT 8.7 或更新版本。如果是,您可以直接将 D:"Log Screen"=00000001 行添加到会话 .ini 文件的末尾。

注意:在编辑会话的 .ini 文件之前,应始终关闭所有正在运行的 SecureCRT 实例。

注意事项

Log Screen 选项将记录发送到 SecureCRT 终端屏幕的所有内容。这包括由退格或 Tab 补全引起的重绘,这意味着日志文件通常会显示一些有趣的内容。例如,如果您使用 Tab 补全和退格更正了几次错误后输入了命令 show ip route connected,日志文件中可能会看到类似这样的内容:

Aruba-1# shiAruba-1# shoAruba-1# show ip royAruba-1# show ip rouAruba-1# show ip route connAruba-1# show ip route connected

对于每次退格或 Tab 补全,设备实际上会重新绘制整行;这些重绘事件将显示在日志文件中,因为 SecureCRT 现在正在记录屏幕上显示的每个字符。

26为什么每 60 秒出现一个 ~(和/或其他随机字符)?(Caffeine 应用)

您是否注意到活动 SecureCRT 会话窗口的命令行上定期出现意外字符?

Caffeine 插入字符示例 Caffeine 插入字符示例 2

如果您在活动会话中定期看到 ~、8~ 或其他乱码字符,您的机器上可能安装了 Caffeine 应用程序。

解决方案

卸载 Caffeine 应用程序或按照供应商的说明重新配置它(见下文)。

详细信息

默认情况下,Caffeine 每 59 秒模拟一次按键以防止机器进入休眠/睡眠状态。更多信息由程序作者在其网站上提供:https://www.zhornsoftware.co.uk/caffeine/

Caffeine 通过每 59 秒模拟一次 F15 键弹起事件来工作。在所有可用的按键中,F15 可能是最不具干扰性的,最不可能干扰您的工作。

但是,Caffeine 可能会干扰某些应用:

  • PowerPoint 使用 F15 按键暂停幻灯片中的视频
  • Google Docs/Sheets
  • 终端仿真程序,如 PuTTY

如果您认为这些可能会对您造成问题,请设置 -useshift 命令行参数。

27为什么 SecureCRT 不允许我从系统上的所有字体中选择?

默认情况下,SecureCRT 仅允许您选择系统中已知为"固定宽度"或"等宽"的字体。

如果特定字体未在 SecureCRT 的字体选择器窗口中显示,那是因为该字体缺少"固定宽度"(等宽)标识——换句话说,其创建者/设计者未将该字体标记为固定宽度字体。

字体选择窗口截图

如果您想使用的字体未注册/标记为固定宽度(整个字体映射中的所有字形共享完全相同的水平宽度),您仍然可以在 SecureCRT 中使用该字体。

要允许所有字体在 SecureCRT 的字体选择器中显示:

  1. 关闭所有正在运行的 SecureCRT 实例
  2. 编辑 SecureCRT 配置文件夹中的 Global.ini 文件(参见 Global Options / Configuration Paths
  3. Allow Proportional Fonts 的值修改为 00000001 并保存更改

警告:如果选择了非等宽(即非固定宽度)字体,由于字体内的字形宽度不同,您将遇到显示问题。

固定宽度字体示例

28为什么 SecureCRT 日志显示"Connection failure - 0 bytes received"?

在 SecureCRT、SecureFX 或 SFXCL 中,如果 SSH/SFTP 连接尝试失败,可能是您的应用/计算机的网络连接被阻止成功进行外部连接。这可能是由于配置错误的防火墙(硬件或软件)、交换机、路由器或您和服务器之间的其他设备不允许连接通过到远程服务器或不转发其响应。也可能是安装在系统上的某个应用限制/控制了应用程序进行外部网络连接的能力。

场景 1:已连接 s 秒,发送 0 字节,接收 0 字节

在这种情况下,SecureCRT/SecureFX/SFXCL 已要求操作系统与指定的主机/地址建立 TCP 连接。连接未建立,因此无法发送数据也无法接收数据。这通常由以下情况之一引起(均超出 SecureCRT 的修复/解决能力):

  • 本地应用监控和控制软件阻止了 SecureCRT 进行外部网络连接——通过在监控和控制软件中添加例外来解决
  • 机器上有硬件/软件防火墙或代理不允许进行外部连接——通过正确配置防火墙或代理来解决
  • 远程服务器可能不接受来自您机器的连接——与远程机器管理员核实是否有连接过滤器
  • 远程服务器可能未在配置的地址/端口上侦听——与管理员确认侦听地址+端口
  • 您的机器和远程机器之间可能没有网络连接——验证网络连通性

场景 2:已连接 s 秒,发送 n 字节,接收 0 字节

在这种情况下,SecureCRT 能够成功连接并至少发送了一些初始数据。通常,发送的字节数等于产品发送的 SSH2 标识字符串。此场景是当远程服务器(或客户端和服务器之间的任何网络防火墙/代理)接受连接后,当 SecureCRT 发送其标识字符串时连接被立即关闭或稍后超时而 SecureCRT 未收到任何字节。

可能的原因包括:

  • 远程服务器因配置问题断开连接——与 SSH/SFTP 服务器管理员核实服务器关闭连接的原因
  • 网络路径中的防火墙/交换机/路由器/网络设备在数据返回前终止了连接——通过检查远程服务器日志和所有中间网络设备来排查
29尝试 SSH2 连接时是什么导致延迟/挂起/超时?

如果您的 SSH2 连接尝试似乎挂起、花费很长时间或完全超时,可能是 SecureCRT 配置为在您的机器和 SSH2 主机之间无法使用 GSSAPI/Kerberos 的环境中尝试 GSSAPI 认证或 Kerberos 密钥交换。

要排查大多数连接问题,请打开 Trace Options 并再次尝试建立 SSH 连接。如果您不熟悉 Trace Options,可以查看 Trace Options Debug Logging 视频了解如何创建调试/故障排除日志。

如果您的 Trace Options 输出包含类似以下模式的内容,则延迟/挂起/超时可能是由 SecureCRT 配置导致的:

[LOCAL] : GSS : Requesting full delegation
[LOCAL] : GSS : [Kerberos] SPN : host@<host_you_are_trying_to_reach>

        <...delay...>

[LOCAL] : GSS : [Kerberos (Group Exchange)] InitializeSecurityContext() failed.

上述模式可能会针对系统上可用的每个 GSS/Kerberos 提供程序重复,这解释了您在 SecureCRT 尝试与 SSH 服务器建立连接时看到的延迟/超时。

要解决此问题,只需在 Session OptionsSSH2 类别中禁用所有 GSSAPI 和 Kerberos 相关的 AuthenticationKey exchange 方法。

macOS 中禁用 GSSAPI 和 Kerberos 的截图

Windows 中禁用 GSSAPI 和 Kerberos 的截图

您可以利用编辑 Default 会话的功能将这些更改应用到所有现有和未来的会话。以下是有关使用 Default 会话进行批量更改的提示和视频链接:

Changing Default Settings for New and Existing Sessions (提示)

The Default Session (YouTube 视频)

注意:为了将"更改"应用到所有其他会话,Default 会话中您要修改的选项必须实际被修改/不同于其当前值。这意味着如果 Default 会话的 AuthenticationKey exchange 方法已经如您所愿设置(GSSAPI 认证和所有 Kerberos kex 方法已禁用),您必须先更改 Default 会话以启用其中一个或多个(并将该"更改"仅应用于 Default 会话),然后再次编辑 Default 会话以禁用它们(并将该"更改"应用于所有现有会话)。

30为什么水平滚动条不可见?为什么滚动条不能一直滚动到会话窗口的右侧?

在某些情况下,水平滚动条不可见,或者它不允许一直滚动到右侧以显示会话窗口的全部内容。

水平滚动条只有在 SecureCRT 的 View 菜单中启用时才可见

水平滚动条只有在以下三个设置都到位时才有用

  1. Session Options / Terminal / Emulation 类别的 On resize 组中选择了会话选项 Retain size and font
  2. 会话选项 Logical columns 的值大于 SecureCRT 窗口中可见的列数
  3. 如上所述在 SecureCRT 的 View 菜单中启用了水平滚动条

水平滚动条设置示例

请注意,如果远程系统对列数的理解少于 SecureCRT 所说的可用列数,则远程系统将仅使用 SecureCRT 窗口中可用列的一部分,因为远程 shell/应用的列值与 SecureCRT 的列值不匹配。

这种不匹配通常发生在以下情况:

  1. 在 SecureCRT 已经与远程 shell 协商了列数之后,列数 shell 变量被手动/自动更改(由您手动设置或远程 shell/启动/配置文件脚本将列设置为硬编码值)
  2. 远程 shell 忽略了 SecureCRT 的列大小协商,或远程设备不支持终端大小协商
31如何将许可证转移到新机器?

SecureCRT 按计算机许可,而不是按用户或服务器。

根据 SecureCRT 最终用户许可协议 (EULA) 的定义,计算机可以是以下之一:

  • 运行客户端操作系统(如 Windows、macOS 或 Linux)的客户端机器
  • 一个席位,定义为有权使用安装在集中化机器(如终端服务器、跳板机或 RDS 服务器)上的 SecureCRT 的软件或硬件客户端

每台有权在本地或远程使用 SecureCRT 的计算机都需要一个 SecureCRT 许可证。

如果您从一台计算机上删除 SecureCRT,可以使用在旧计算机上使用的相同许可证在新计算机上注册 SecureCRT。

为了帮助将 SecureCRT 许可证从一台计算机转移到另一台,您可以使用导入/导出向导,步骤如下:

  1. 在旧计算机上启动 SecureCRT,点击主 Tools 下拉菜单并选择 Export Settings…。当 Export Settings 窗口出现时,启用 License 选项(以及 Global Options 和 Sessions,如果需要),指定将要创建的文件的位置和名称,然后按 Export 按钮
  2. 将生成的 XML 文件从旧计算机复制到新计算机
  3. 在新计算机上启动 SecureCRT,点击主 Tools 下拉菜单并选择 Import Settings from XML File…。当 Import Settings 窗口出现时,启用 License 选项(以及 Global Options 和 Sessions,如果需要),使用 Browse 按钮导航到复制到机器上的 XML 文件,然后按 Import 按钮

使用导入/导出向导转移许可证的三个步骤

32如何在 Windows 和 macOS 之间共享文件相关的配置设置?

SecureCRT 支持众所周知路径的跨平台替换。换句话说,如果存储在 SecureCRT 全局或会话配置字段中的任何路径以众所周知的路径开头,则该值会以替换形式而非字面形式保存到配置中。这意味着如果您选择将日志文件存储在从这些众所周知位置之一下降的文件夹中,它将兼容跨平台。

以下是 SecureCRT 在将值写入配置时自动以替换格式保存的众所周知路径列表(并在从配置读取值时转换为系统上的实际路径):

${VDS_CONFIG_PATH}

SecureCRT 的配置文件夹路径(如在 Global Options / Configuration Paths 类别中定义)。如果 SecureCRT 的配置路径设置为 C:\Users\user\AppData\VanDyke\Config,任何包含此路径的文件相关设置将在保存到配置时用 ${VDS_CONFIG_PATH} 替换。

示例:Windows 上 GUI 中的日志文件设置为:
C:\Users\user\AppData\VanDyke\Config\Logs\%S\%Y%M%D_%h%m%s_%t_Log.txt

写入配置时变为:
${VDS_CONFIG_PATH}\Logs\%S\%Y%M%D_%h%m%s_%t_Log.txt

这意味着如果此会话配置加载到配置文件夹设置为 /Users/User/Library/Application Support/VanDyke/SecureCRT/Config 的 macOS 机器上,${VDS_CONFIG_PATH} 会自动转换为该路径。

${VDS_INSTALL_PATH}

SecureCRT 应用程序所在的位置。

${VDS_USER_DATA_PATH}

用户的"我的文档"或"Documents"文件夹的位置。在此情况和其他情况下,您可以将替换与相对路径结合使用(例如 ${VDS_USER_DATA_PATH}\..\..\folderB\etc\)。

${VDS_SSH_DATA_PATH}

用户特定的 SSH 数据位置(在 Windows 上是 My Documents;在 macOS/Linux 上是用户的 .ssh 文件夹)。