sgcSSH SSH 和 SFTP, 客户端和服务器。 后量子优先。

五个组件覆盖 SSH 连接的两端。 TsgcSSHClient 运行远程命令、打开交互式 shell 并转发端口。 TsgcSFTPClient 和 TsgcSCPClient 传输文件和整个文件夹。 TsgcSSHServer 和 TsgcSFTPServer 把您自己的 SSH 和 SFTP 服务放进应用程序内部。混合密钥交换 mlkem768x25519-sha256 在两端都优先提供。作为独立产品,已包含 sgcWebSockets Core 运行时。

  • SSH 客户端
  • SFTP 和 SCP
  • SSH 和 SFTP 服务器
  • ML-KEM-768 + X25519
  • Delphi 7 至 13
  • .NET
  • 完整源代码
您的客户端 TsgcSSHClient TsgcSFTPClient TsgcSCPClient 您的服务器 TsgcSSHServer TsgcSFTPServer Ed25519、ECDSA 或 RSA 主机密钥 KEXINIT,优先提供: mlkem768x25519-sha256 已协商,密钥由 Rekey 更新 一条加密连接,AES-GCM Execute('uname -a') RequestShell + pty OpenDirectTCPIP Put('invoices.zip') x16 每用户 jail
  • 5个组件,三个客户端和两个服务器,同在一个面板页上
  • 16个并行 SFTP 请求,在本地网络中传输 100 MB 约需一秒
  • 2种语言,Delphi 和 .NET,相同的五个类
  • 1个独立安装程序,内置 Core 运行时
  • 100%每份授权都包含源代码
包含什么

三个客户端,两个服务器,一种 API 风格。

每一个都是非可视化组件,可以拖放到窗体上,也可以在代码中创建。设置主机和凭据,连接事件,然后连接或开始监听。.NET 类使用相同的名称,因此 SSH 工作流在两种语言中的写法一致。

命令、shell 和隧道

TsgcSSHClient 使用密码或私钥连接,OnSSHHostKey 会把主机密钥指纹交给您检查。Execute 一次调用即可运行命令并返回输出。RequestPTY 和 RequestShell 打开交互式终端,OpenDirectTCPIP 和 RequestForwarding 可双向转发端口。

查看 SSH 客户端 →

快速传输文件,一个方法搞定

TsgcSFTPClient 在同一条 SSH 连接上使用 SFTP v3。ListDirectory 返回名称、大小和日期,Put 和 Get 一次调用即可传输文件,Rename、Delete、MakeDirectory 和 RemoveDirectory 覆盖其余操作。传输时保持 16 个请求并行,而不是逐块等待。

查看 SFTP 客户端 →

使用 scp 传输文件和整个文件夹

TsgcSCPClient 通过 SSH 把文件复制到任何允许 scp 命令的服务器,无需单独的文件传输服务。UploadFolder 和 DownloadFolder 递归复制整个文件夹树,PreserveTimes 在另一端保留修改时间和访问时间。

查看 SCP 客户端 →

在您自己的进程中运行您自己的 SSH 服务

TsgcSSHServer 在您选择的端口上监听,使用 Ed25519、ECDSA 或 RSA 主机密钥,GenerateHostKeyEd25519 可为您创建一个。OnSSHAuthPassword 和 OnSSHAuthPublicKey 决定谁可以进入,OnSSHExec 响应远程命令,OnSSHShell 提供交互式会话。

查看 SSH 服务器 →

为每个用户提供 jail 的文件服务器

TsgcSFTPServer 从 RootFolder 提供 SFTP v3 和 scp 传输,客户端无法离开该目录。OnSFTPUserRoot 为每个用户提供独立的文件夹,ReadOnly 拒绝修改,OnSFTPOperation 在每次打开、重命名、删除和列表操作时触发,因此您可以逐一允许、拒绝并记录日志。

查看 SFTP 服务器 →

后量子密钥交换,默认开启

混合交换 mlkem768x25519-sha256 把 ML-KEM-768 与 X25519 结合起来,因此今天被记录的会话在未来的量子计算机面前依然保持私密。PostQuantumKex 默认开启,客户端和服务器都会优先提供。严格密钥交换可封堵 Terrapin 攻击。

算法 →

Delphi 和 .NET,桌面和服务器

同样的五个组件,适用于 Windows 32 位和 64 位以及 Linux 64 位上的 Delphi 7 至 13,也适用于 .NET 8、9 和 10 以及 .NET Standard 2.0。.NET 版本是完全托管的代码,无需部署 OpenSSL。两者都可以运行在桌面应用、控制台工具或服务中。

平台 →

完整源代码,免版税

sgcSSH 是独立软件包。它内置 sgcWebSockets Core 运行时以及密钥交换所依赖的原生加密,每份授权都附带完整源代码,因此您可以在自己的调试器中单步跟踪协议代码。部署免版税。

查看价格 →

各组件的参考页面:

代码

运行命令,提供文件夹。

客户端遵循同一种模式:设置主机和凭据,连接,调用方法。服务器则是另一种:设置端口和主机密钥,连接事件,激活。

var
  SSH: TsgcSSHClient;
  SFTP: TsgcSFTPClient;
begin
  // run a command
  SSH := TsgcSSHClient.Create(nil);
  SSH.Host := 'build01.example.com';
  SSH.Port := 22;
  SSH.Authentication.Username := 'deploy';
  SSH.Authentication.PrivateKeyFile := 'C:\keys\id_ed25519.pem';
  SSH.OnSSHHostKey := SSHHostKey;   // check the fingerprint
  SSH.Connect;
  Memo1.Text := SSH.Execute('uname -a');
  SSH.Disconnect;

  // upload a file over SFTP
  SFTP := TsgcSFTPClient.Create(nil);
  SFTP.Host := 'files.example.com';
  SFTP.Authentication.Username := 'partner';
  SFTP.Authentication.Password := 'secret';
  SFTP.Connect;
  SFTP.Put('C:\export\invoices.zip', '/upload/invoices.zip');
  SFTP.Disconnect;
end;
begin
  SFTPServer := TsgcSFTPServer.Create(nil);
  SFTPServer.RootFolder := 'D:\sftp';
  SFTPServer.SFTP := True;
  SFTPServer.SCP := True;
  SFTPServer.OnSFTPUserRoot := SFTPUserRoot;

  SSHServer := TsgcSSHServer.Create(nil);
  SSHServer.Port := 2222;
  SSHServer.HostKeyFiles.Text := 'hostkey_ed25519.pem';
  SSHServer.OnSSHAuthPassword := SSHAuthPassword;
  SSHServer.SFTPServer := SFTPServer;
  SSHServer.Active := True;
end;

procedure TForm1.SFTPUserRoot(Sender: TObject; const aUsername: string;
  var aRootFolder: string);
begin
  aRootFolder := 'D:\sftp\' + aUsername;   // one jail per user
end;

PostQuantumKex 默认开启,因此只要对方支持,每个会话都会协商 mlkem768x25519-sha256。 完整快速入门 →

  1. 把组件拖到窗体上五个组件位于 SGC SSH 面板页上,也可以在控制台工具或服务中用代码创建。
  2. 设置主机和凭据使用密码,或来自 PEM 或 PKCS#8 文件的私钥,并通过 OnSSHHostKey 检查服务器指纹。
  3. 调用一个方法命令用 Execute,SFTP 用 Put 和 Get,scp 用 UploadFolder,每次传输都有进度事件。
  4. 或者自己提供服务把 TsgcSFTPServer 链接到 TsgcSSHServer,由您自己的用户库决定谁可以登录,任何标准 ssh、sftp 或 scp 客户端都可以连接。
购买之前

四件值得先了解的事。

sgcSSH 协商什么、您是否已经拥有这些组件、Delphi 版本基于什么,以及如何试用。答案都很简短,就写在这个页面上,而不是藏在小字条款里。

side      component          job
client    TsgcSSHClient      exec, shell, pty, port forwarding
client    TsgcSFTPClient     SFTP v3, 16 requests in flight
client    TsgcSCPClient      files and folder trees
server    TsgcSSHServer      password, public key, exec, shell
server    TsgcSFTPServer     SFTP v3, SCP, jail per user

key exchange, offered in this order
mlkem768x25519-sha256   hybrid post-quantum
curve25519, ECDH, DH group14 and group16
ciphers    AES-GCM, AES-CTR
keys       Ed25519, ECDSA, RSA
  1. sgcSSH 是自包含的已包含 sgcWebSockets Core 运行时,以及密钥交换所依赖的原生加密:ML-KEM-768、X25519、ECDH、AES-GCM 和 SHA-2 系列。一个安装程序,完整源代码都在包里。
  2. 您的 sgcWebSockets 版本中是否已经包含?全部五个组件都包含在 sgcWebSockets Enterprise 中,All-Access 则包含所有产品。在 .NET 上,它们属于已注册的 sgcWebSockets 包,不在免费的 Community 版本中。
  3. Delphi 版 SSH 需要 sgcCustomIndyDelphi 组件基于 sgcCustomIndy 附加包所提供的、经过修补的 Indy 库中的 SSH 单元。订购 sgcSSH 时始终包含它,所显示的价格已经涵盖。
  4. 购买前先试用免费试用安装程序就是 sgcWebSockets All-Access 试用版,因此今天就可以评估全部五个组件。Demos\27.SSH 中的演示涵盖每一个组件。

密钥交换、身份验证、通道和传输都是一等公民的方法和事件,完整源代码意味着中间没有任何黑盒。 所有组件和属性 →

sgcWebSockets 的一部分

单独授权,或已包含在您的版本中。

sgcSSH 是 sgcWebSockets 家族中的一个软件包。可以独立购买并内置 Core 运行时,也可以通过 sgcWebSockets Enterprise 或 All-Access 获得全部五个组件。

sgcSSH

SSH、SFTP 和 SCP 客户端以及 SSH 和 SFTP 服务器,独立产品,已包含 sgcWebSockets Core 运行时。

€398 / Single 许可证
  • SSH 客户端:命令、shell、pty 和端口转发
  • 用于文件和文件夹的 SFTP 与 SCP 客户端
  • 为每个用户提供 jail 的 SSH 和 SFTP 服务器
  • 后量子密钥交换,默认开启
  • 完整源代码和 1 年更新
sgcSSH 价格 →

Team 和 Site

同一个软件包,授权给整个团队或整个站点。

Team €648 Site €1,048
  • 包含 Single 许可证的全部内容
  • sgcWebSockets Core 运行时授权,按零费用计算
  • sgcCustomIndy,Delphi SSH 组件需要它,始终包含
  • Delphi 7 至 13 和 .NET
比较许可证 →

sgcWebSockets

完整的库:WebSocket 客户端和服务器、HTTP/2、IoT、P2P 和 AI 组件。其 Enterprise 版本也包含 SSH 和 SFTP 组件。

€699 / Enterprise
  • Enterprise 和 All-Access 包含全部五个 SSH 组件
  • 已注册的 .NET 包同样包含它们
  • Core 运行时就在这里
了解 sgcWebSockets →

如果您拥有 sgcWebSockets Enterprise 或 All-Access,就已经拥有全部五个组件。sgcSSH 适合无需购买完整 sgcWebSockets 版本、只需 SSH 和 SFTP 的用户。

查看价格和许可证
用户评价

开发者怎么说

受到全球各地 Delphi、C++ Builder、Lazarus 和 .NET 开发者的信赖。

你们的 sgcWebSockets 库非常实用,而且易于设置。请继续保持!
Simone Moretti Delphi 开发者
sgcWebSockets 非常出色,你们的支持也是最棒的!
Christian Meyer 创始人兼首席技术官
非常感谢你们的帮助和支持,我很喜欢你们的组件。
Mark Steinfeld 首席技术官

交付 SSH 和 SFTP,面向后量子时代。

一个软件包里有三个客户端和两个服务器,内置 sgcWebSockets Core 运行时,完整源代码都在包里。

生态系统

eSeGeCe 的其他产品

sgcSSH 是 eSeGeCe 面向 Delphi、C++ Builder 和 .NET 的组件库之一。它们遵循统一的约定,附带完整源代码,并可免版税部署。

sgcWebSockets

面向 Delphi、C++ Builder、Lazarus 和 .NET 的 WebSocket、HTTP/2、MQTT、AMQP、WebRTC、AI 以及 30 多种 API 集成。Core 运行时就在这里。

sgcCustomIndy

sgcWebSockets Enterprise 所基于的自定义 Indy 库,以附加组件形式提供。Delphi SSH 组件需要它,sgcSSH 订单中始终包含。

sgcCrypto

对称和非对称加密、哈希以及 ML-KEM 和 ML-DSA 等后量子算法。自 sgcWebSockets Standard 起免费提供。

sgcAuth

OAuth2 和 JWT 客户端、WebAuthn 通行密钥登录、TOTP、LDAP、SAML 和 OpenID Connect。独立产品,随附 sgcWebSockets Core 运行时。

sgcHTTP

面向 Delphi 和 C++ Builder 的 HTTP 服务器、HTTP/2 客户端、gRPC 客户端以及 Google Cloud Pub/Sub、Calendar 和 FCM 客户端。独立产品,随附 sgcWebSockets Core 运行时。

sgcMQ

面向 Delphi 和 C++ Builder 的 MQTT、AMQP 0.9.1 和 1.0、Apache Kafka 与 STOMP 客户端组件。独立产品,随附 sgcWebSockets Core 运行时。

sgcREST

面向 Delphi 和 C++ Builder 的 REST 服务器、OpenAPI 服务器和 OpenAPI 客户端组件。独立产品,随附 sgcWebSockets Core 运行时。

sgcAI

面向 Delphi 和 C++ Builder 的 AI、LLM 和 MCP 组件。一个组件即可对接七家 LLM 提供商,另有 MCP、嵌入和语音。独立产品,随附 sgcWebSockets Core 运行时。

sgcSocial

面向 Delphi 和 C++ Builder 的 Telegram 与 WhatsApp Business 客户端组件。独立产品,内置 sgcWebSockets Core 运行时。

sgcHTML

基于 Bootstrap 5 和 htmx 的服务器端 HTML 与界面组件,用于以 Delphi 编写的 Web 应用程序。

sgcSign

文档使用 XAdES、PAdES、CAdES 和 ASiC,代码使用 Authenticode、ClickOnce、NuGet 和 VSIX。

扩展包、附加组件及更多

博客最新动态

查看全部文章 →

您正在查看 eSeGeCe 的 sgcSSH 视角。

换个角度看看 →
30 天退款保证不满意?可在购买后 30 天内申请全额退款。 查看退款政策