sgcSSH: client e server SSH e SFTP per Delphi e .NET
Cinque componenti coprono entrambi i lati di una connessione SSH. TsgcSSHClient esegue comandi remoti, apre una shell interattiva con pty e inoltra le porte. TsgcSFTPClient e TsgcSCPClient spostano file e intere cartelle. TsgcSSHServer e TsgcSFTPServer portano un servizio SSH e SFTP tutto tuo dentro la tua applicazione, con una jail per utente. Lo scambio di chiavi ibrido post-quantum mlkem768x25519-sha256, il predefinito delle ultime versioni di SSH, viene proposto per primo sia dal client sia dal server.
Scambio di chiaviML-KEM-768 + X25519mlkem768x25519-sha256, proposto per primo da entrambi i lati
ClientSSH, SFTP, SCP
ServerSSH, SFTP
5ComponentiTre client e due server
16Richieste SFTP in paralleloUn trasferimento da 100 MB richiede circa un secondo su una rete locale
2LinguaggiDelphi e .NET, le stesse cinque classi
100%Codice sorgente inclusoOgni componente e il runtime Core incluso
12Mesi di aggiornamentiOgni versione pubblicata mentre la tua licenza è attiva
PRIMA DI ACQUISTARE
Tre cose da sapere prima
Che cosa serve a sgcSSH da parte tua, se possiedi già questi componenti e su che cosa si basa la versione Delphi. Le tre risposte sono brevi.
sgcSSH è autosufficiente
Come prodotto autonomo include il runtime sgcWebSockets Core, insieme alla crittografia nativa su cui gira lo scambio di chiavi: ML-KEM-768, X25519, ECDH, AES-GCM e la famiglia SHA-2. Un solo SKU, un solo installer.
Il codice sorgente completo è incluso in ogni licenza, così il codice del protocollo si può seguire nel tuo debugger invece di sparire dentro un binario.
Sovrapposizione con le edizioni
Già nella tua edizione di sgcWebSockets?
Tutti e cinque i componenti SSH sono inclusi in sgcWebSockets Enterprise, e All-Access comprende tutto. Su .NET sono nel pacchetto sgcWebSockets registrato, non nell'edizione Community gratuita.
sgcSSH esiste per il caso opposto: vuoi SSH e SFTP nella tua applicazione senza acquistare una licenza completa di sgcWebSockets. Controlla che cosa copre già la tua edizione prima di acquistare.
Componente aggiuntivo richiesto
SSH per Delphi richiede sgcCustomIndy
I componenti Delphi si basano sulle unit SSH della libreria Indy modificata che sgcCustomIndy distribuisce come componente aggiuntivo. sgcCustomIndy è sempre incluso quando ordini sgcSSH.
Il prezzo di sgcSSH mostrato copre già sgcCustomIndy.
COSA C'È NELLA CONFEZIONE
Tre client, due server
Ognuno è un componente non visuale che trascini su un form o crei da codice, registrato nella pagina SGC SSH della palette. Imposta host e credenziali, collega gli eventi, poi connetti o avvia l'ascolto. Le classi .NET hanno gli stessi nomi.
Client SSH1 componente
Comandi, shell e tunnel
TsgcSSHClient si connette con una password o con una chiave privata, e OnSSHHostKey ti passa il tipo di chiave dell'host e la sua impronta da confrontare con il tuo archivio degli host noti. Execute esegue un comando e restituisce il suo output in una sola chiamata. Per una sessione interattiva, OpenChannel, RequestPTY e RequestShell aprono un terminale, SendChannelData vi scrive e OnSSHChannelData restituisce ciò che il server stampa, con SendWindowChange e SendSignal per il resto del protocollo del terminale. OpenDirectTCPIP inoltra una connessione locale attraverso il server, RequestForwarding chiede al server di inoltrarti una porta remota, e Rekey rinnova le chiavi di sessione di una connessione di lunga durata.
TsgcSSHClientexec · shell · pty · port forwarding · rekey
Client SFTP1 componente
Trasferimenti di file veloci, un metodo per ciascuno
TsgcSFTPClient parla SFTP v3 sulla stessa connessione SSH. RealPath risolve la cartella home, ListDirectory restituisce nomi, dimensioni, date e il flag di cartella, e Put e Get caricano e scaricano un file in una sola chiamata. Rename, Delete, MakeDirectory e RemoveDirectory coprono il resto di un file manager, e OnSFTPProgress riporta i byte trasferiti per una barra di avanzamento. I trasferimenti mantengono 16 richieste in parallelo invece di attendere ogni blocco, quindi un file da 100 MB richiede circa un secondo su una rete locale.
TsgcSCPClient copia file via SSH su qualsiasi server che consenta il comando scp, senza un servizio di trasferimento file separato. Upload e Download copiano un file, UploadFolder e DownloadFolder copiano ricorsivamente un intero albero di cartelle, e PreserveTimes mantiene le date di modifica e di accesso dall'altra parte. OnSCPProgress riporta il nome del file e i byte trasferiti.
TsgcSSHServer resta in ascolto sulla porta che scegli e dimostra la sua identità con chiavi host Ed25519, ECDSA o RSA caricate da HostKeyFiles, e GenerateHostKeyEd25519 ne crea una per te. OnSSHAuthPassword e OnSSHAuthPublicKey decidono chi entra, il secondo con il tipo di chiave e la sua impronta SHA256. OnSSHExec risponde ai comandi remoti, OnSSHShell serve una sessione interattiva, e le richieste di subsystem vengono instradate al tuo gestore o a TsgcSFTPServer. Qualsiasi client SSH standard si connette, compresi gli strumenti a riga di comando standard ssh, sftp e scp.
TsgcSFTPServer si collega al server SSH tramite la proprietà SFTPServer e serve SFTP v3 e, con SCP attivo, trasferimenti scp a partire da RootFolder. I client non possono uscirne. OnSFTPUserRoot dà a ogni utente una cartella tutta sua, ReadOnly rifiuta upload, eliminazioni e rinomine, e OnSFTPOperation scatta per ogni apertura, rimozione, rinomina, cambio di cartella, cambio di attributi ed elenco, così consenti o neghi ciascuna operazione e la registri. Il controllo di flusso mantiene costante la memoria di un download di grandi dimensioni, qualunque sia la dimensione del file.
TsgcSFTPServerSFTP v3 · SCP · jail per utente · sola lettura
CASI D'USO
SSH e SFTP dal tuo codice
I componenti sono normali componenti non visuali, quindi si adattano a qualsiasi tipo di applicazione: un'app desktop VCL o FMX, uno strumento console, un servizio Windows, un daemon Linux o un worker .NET. Questi sono gli schemi che i clienti realizzano, ciascuno abbinato al membro che lo guida.
EX
Eseguire comandi di manutenzione su server LinuxExecute
Riavvia un servizio, leggi un log o controlla lo spazio su disco da uno strumento Delphi o .NET e ottieni l'output come stringa.
TM
Una finestra di terminale integrataRequestPTY
Apri una shell con pty e mostrala nella tua interfaccia, per strumenti di assistenza e console di dispositivi.
FT
Scambio di file pianificato con i partnerPut / Get
Carica fatture e scarica report via SFTP da un servizio, con eventi di avanzamento e di errore.
TN
Raggiungere un database dietro un bastion hostOpenDirectTCPIP
Inoltra una connessione attraverso il server SSH invece di aprire la porta del database alla rete.
SV
Una cartella di scambio SFTP dentro il tuo prodottoOnSFTPUserRoot
Dai a ogni cliente una cartella privata, con il tuo database utenti che decide chi accede.
PQ
Traffico che resta privato anche in futuroPostQuantumKex
Lo scambio ibrido ML-KEM-768 e X25519 protegge le sessioni registrate oggi da un futuro computer quantistico.
COME FUNZIONA
Prima il post-quantum, solo algoritmi moderni
Client e server negoziano gli algoritmi più forti supportati da entrambi, a partire dallo scambio di chiavi ibrido post-quantum. Non serve configurare nulla per ottenerlo.
mlkem768x25519-sha256 viene proposto per primo
Lo scambio ibrido combina ML-KEM-768 con X25519, così le chiavi di sessione restano al sicuro anche contro un aggressore che registra il traffico oggi e avrà un computer quantistico domani. È il predefinito delle ultime versioni di SSH, e i client e i server SSH attuali lo negoziano automaticamente. PostQuantumKex è attivo per impostazione predefinita.
Algoritmi classici come ripiego
Quando l'altra parte non lo supporta, lo scambio ripiega su curve25519, ECDH e Diffie-Hellman group14 e group16. I cifrari sono AES-GCM e AES-CTR, e le chiavi host e utente sono Ed25519, ECDSA o RSA.
Strict key exchange contro Terrapin
Lo strict key exchange chiude l'attacco Terrapin di troncamento del prefisso, e server-sig-algs permette al client di scegliere una firma RSA con SHA-2 invece di quella SHA-1 obsoleta. Le chiavi private si caricano da file PEM e PKCS#8, e la versione .NET legge anche il formato di chiave OpenSSH.
Crittografia nativa su entrambe le piattaforme
Lo scambio di chiavi gira sulle unit di crittografia nativa di sgcWebSockets in Delphi e su codice completamente gestito in .NET, senza OpenSSL da distribuire per la versione .NET. Da .NET 8 in poi AES-GCM è accelerato in hardware.
GUIDA RAPIDA
Esegui un comando, servi una cartella
I client seguono un solo schema: imposta host e credenziali, connetti, chiama un metodo. I server ne seguono un altro: imposta la porta e la chiave host, collega gli eventi, attiva.
PostQuantumKex è attivo per impostazione predefinita, quindi entrambe le sessioni negoziano mlkem768x25519-sha256 ogni volta che il server lo supporta.
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.SSHAuthPassword(Sender: TObject;
aConnection: TsgcSSHServerConnection; const aUsername, aPassword: string;
var aAccept: Boolean);
begin
aAccept := CheckUser(aUsername, aPassword); // il tuo archivio utentiend;
procedure TForm1.SFTPUserRoot(Sender: TObject; const aUsername: string;
var aRootFolder: string);
begin
aRootFolder := 'D:\sftp\' + aUsername; // una jail per utenteend;
Connettiti con sftp -P 2222 user@127.0.0.1 o scp -P 2222 file.txt user@127.0.0.1:/. Le demo in Demos\27.SSH coprono tutti e cinque i componenti.
PIATTAFORME
Delphi e .NET, desktop e server
Gli stessi cinque componenti su entrambe le piattaforme, per applicazioni desktop, strumenti console e servizi.
DelphiDa Delphi 7 a 13, VCL, FMX, console e servizi
Windows Win32Windows Win64Linux64
.NETCodice completamente gestito, senza OpenSSL
.NET 8.NET 9.NET 10.NET Standard 2.0
ComponentiRegistrati nella pagina SGC SSH della palette
sgcSSH è concesso in licenza da solo, a partire da €398 per un singolo sviluppatore. Tutte le licenze includono il codice sorgente completo, 1 anno di aggiornamenti e uno sconto sul rinnovo dal 50% al 70%: il 50% se rinnovi un pacchetto, il 60% con due, il 70% con tre o più. sgcAI, sgcMQ, sgcSocial, sgcCustomIndy, sgcAuth, sgcHTTP, sgcREST, sgcCrypto e sgcSSH contano ciascuno come un pacchetto.
sgcSSH
€398
Licenze Single, Team e Site disponibili.
Client SSH: comandi, shell con pty, port forwarding, rekey
Client SFTP e SCP per file e cartelle
Server SSH e SFTP con una jail per utente
Scambio di chiavi post-quantum mlkem768x25519-sha256
Runtime sgcWebSockets Core e sgcCustomIndy inclusi
Da Delphi 7 a 13 e .NET
Codice sorgente completo
1 anno di aggiornamenti
sgcSSH include il runtime sgcWebSockets Core, quindi non c'è nient'altro da acquistare per i componenti SSH e SFTP.
Il pagamento elenca tre voci: il diritto d'uso del runtime sgcWebSockets Core, addebitato a zero, il pacchetto sgcSSH stesso e sgcCustomIndy, richiesto dai componenti SSH per Delphi. sgcCustomIndy è sempre incluso e il prezzo mostrato lo copre già. Dettagli completi sui prezzi.
3,000+Sviluppatori
20+Anni
761+Componenti
30+Integrazioni API
5Piattaforme
Garanzia soddisfatti o rimborsati di 30 giorniNon sei soddisfatto? Richiedi un rimborso completo entro 30 giorni dall'acquisto. Vedi la politica di rimborso
Rilascia SSH e SFTP, pronti per l'era post-quantum
Client e server in codice nativo Delphi e .NET, con il runtime incluso e il codice sorgente completo nella confezione. Scarica l'installer di prova All-Access e connettiti oggi al tuo primo server.
La libreria Indy personalizzata su cui è costruito sgcWebSockets Enterprise, distribuita come componente aggiuntivo. Richiesta dai componenti SSH per Delphi, sempre inclusa negli ordini di sgcSSH.