sgcSSH Özellik Matrisi
sgcSSH'ın yaptığı her şey; üç istemci bileşeni, iki sunucu bileşeni ve görüştükleri algoritmalar üzerinden eşlenmiştir. Aynı sınıflar Delphi ve .NET'te de bulunur ve her lisans tam kaynak kodunu içerir.
sgcSSH'ın yaptığı her şey; üç istemci bileşeni, iki sunucu bileşeni ve görüştükleri algoritmalar üzerinden eşlenmiştir. Aynı sınıflar Delphi ve .NET'te de bulunur ve her lisans tam kaynak kodunu içerir.
Komutlar, kabuklar, yönlendirme ve rekey
Hızlı aktarımlar, 16 eşzamanlı istek
Dosyalar ve tüm klasörler
Kimlik doğrulama, exec, kabuk ve alt sistemler
Kullanıcı başına jail, salt okunur mod
Önce kuantum sonrası anahtar değişimi
Delphi 7'den 13'e ve .NET
sgcSSH kendi kendine yeterlidir. sgcWebSockets Core çalışma zamanı dahil olarak gelir ve Delphi bileşenlerinin üzerine kurulduğu sgcCustomIndy eklentisi siparişe her zaman dahildir.
sgcWebSockets içinde de var. Beş bileşenin tamamı sgcWebSockets Enterprise ile de gelir ve All-Access her şeyi kapsar. .NET'te bileşenler ücretsiz Community sürümünün değil, kayıtlı paketin parçasıdır. sgcSSH, yalnızca SSH ve SFTP'ye ihtiyaç duyan ekipler için bağımsız pakettir.
Üç istemci ve iki sunucu, SGC SSH palet sayfasına kayıtlı.
| Bileşen | Sınıf | İş | Açıklama |
|---|---|---|---|
| SSH İstemcisi | TsgcSSHClient | Komut çalıştırır | Uzak komutlar, pty ile etkileşimli kabuk, yerel ve uzak bağlantı noktası yönlendirme ve uzun süren oturumların rekey işlemi. |
| SFTP İstemcisi | TsgcSFTPClient | Dosya aktarır | 16 eşzamanlı istekle SFTP v3 dosya yöneticisi işlemleri; böylece 100 MB'lık bir aktarım yerel ağda yaklaşık bir saniye sürer. |
| SCP İstemcisi | TsgcSCPClient | Dosya ve klasör kopyalar | scp ile tek dosyaları veya tüm klasör ağaçlarını yükler ve indirir, isteğe bağlı olarak dosya zamanlarını korur. |
| SSH Sunucusu | TsgcSSHServer | SSH istemcilerini kabul eder | Parola ve açık anahtar kimlik doğrulaması, exec, kabuk ve alt sistem istekleri; Ed25519, ECDSA ve RSA ana bilgisayar anahtarlarıyla. |
| SFTP Sunucusu | TsgcSFTPServer | Bir klasör sunar | Bir kök klasörden SFTP v3 ve SCP; kullanıcı başına jail, salt okunur mod ve her işleme izin vermek veya reddetmek için bir olayla. |
TsgcSSHClient kimliği doğrulanmış tek bir SSH bağlantısı açar ve üzerinde ihtiyaç duyduğunuz kadar kanal çalıştırır.
| Yetenek | API | Notlar |
|---|---|---|
| Bağlantı | Host, Port, Connect, Disconnect | Varsayılan olarak 22 numaralı bağlantı noktası. |
| Parola kimlik doğrulaması | Authentication.Username, Authentication.Password | Düz kullanıcı adı ve parola ile oturum açma. |
| Açık anahtar kimlik doğrulaması | Authentication.PrivateKeyFile, Authentication.Passphrase | PEM veya PKCS#8 dosyalarında Ed25519, ECDSA ve RSA özel anahtarları, .NET'te ayrıca OpenSSH biçimi. |
| Ana bilgisayar anahtarı denetimi | OnSSHHostKey | Anahtar türünü ve parmak izini alır; böylece bunları bilinen ana bilgisayarlar deponuzla karşılaştırır, bilinmeyen veya değişmiş bir anahtarı reddedersiniz. |
| Uzak komut | Execute | Bir kanal açar, komutu çalıştırır ve çıktısını zaman aşımıyla birlikte bir dize olarak döndürür. |
| Etkileşimli kabuk | OpenChannel, RequestPTY, RequestShell | Seçtiğiniz terminal türü ve boyutuyla bir terminal oturumu. |
| Kabuk girişi ve çıkışı | SendChannelData, OnSSHChannelData | Kullanıcının yazdığını gönderir, sunucunun yazdığını alır. |
| Terminal denetimi | SendWindowChange, SendSignal, SendEOF | Terminali yeniden boyutlandırır, sinyal gönderir veya bir kanalın girişini sonlandırır. |
| Exec ve alt sistem kanalları | RequestExec, RequestSubsystem | SSH üzerinden özel protokoller için düşük düzeyli kanal istekleri. |
| Yerel bağlantı noktası yönlendirme | OpenDirectTCPIP | Sunucudan erişilebilen bir ana bilgisayara ve bağlantı noktasına direct-tcpip kanalı açar. |
| Uzak bağlantı noktası yönlendirme | RequestForwarding, CancelForwarding | Sunucudan bir bağlantı noktasını dinlemesini ve bağlantılarını istemciye geri yönlendirmesini ister. |
| Rekey | Rekey | Uzun süren bir bağlantının oturum anahtarlarını yeniler. |
| Kuantum sonrası anahtar değişimi | PostQuantumKex | Varsayılan olarak açıktır: mlkem768x25519-sha256 değerini ilk sırada sunar. |
TsgcSFTPClient, aynı SSH aktarımı üzerinden SFTP v3 uygular; kimlik doğrulama ve anahtar değişimi seçenekleri SSH istemcisiyle aynıdır.
| Yetenek | API | Notlar |
|---|---|---|
| Ana klasör | RealPath | . gibi bir yolu sunucudaki mutlak yola çevirir. |
| Klasör listesi | ListDirectory | Her girdinin adı, boyutu, değiştirilme tarihi ve klasör bayrağı. |
| Yükleme ve indirme | Put, Get | Dosya başına tek çağrı, 16 eşzamanlı istekle. 100 MB'lık bir aktarım yerel ağda yaklaşık bir saniye sürer. |
| Dosya yönetimi | Rename, Delete, MakeDirectory, RemoveDirectory | Bir dosya yöneticisinin ihtiyaç duyduğu her şey. |
| İlerleme | OnSFTPProgress | Aktarılan bayt sayısını bildirir, ilerleme çubuğuna hazırdır. |
TsgcSCPClient, scp komutuna izin veren herhangi bir sunucuya SSH üzerinden dosya kopyalar.
| Yetenek | API | Notlar |
|---|---|---|
| Tek dosyalar | Upload, Download | Bir dosyayı uzak yola veya uzak yoldan kopyalar. |
| Klasör ağaçları | UploadFolder, DownloadFolder | Tüm klasörü özyinelemeli olarak kopyalar. |
| Dosya zamanları | PreserveTimes | Karşı tarafta değiştirme ve erişim zamanlarını korur. |
| İlerleme | OnSCPProgress | Dosya adını ve aktarılan bayt sayısını bildirir. |
TsgcSSHServer, standart ssh, sftp ve scp komut satırı araçları dahil her standart SSH istemcisini kabul eder.
| Yetenek | API | Notlar |
|---|---|---|
| Dinleme | Port, Active | Sunucuyu başlatır ve durdurur. |
| Ana bilgisayar anahtarları | HostKeyFiles, GenerateHostKeyEd25519 | Ed25519, ECDSA ve RSA ana bilgisayar anahtarları. Sınıf yordamı sizin için bir Ed25519 anahtar dosyası oluşturur. |
| Parola kimlik doğrulaması | OnSSHAuthPassword | Kullanıcı adını ve parolayı kendi kullanıcı deponuzla karşılaştırır. |
| Açık anahtar kimlik doğrulaması | OnSSHAuthPublicKey | Anahtar türünü ve SHA256 parmak izini alır; böylece yalnızca bildiğiniz anahtarları kabul edersiniz. |
| Uzak komutlar | OnSSHExec, SendChannelData, SendExitStatus, CloseChannel | Bir komutu yanıtlayın, çıkış durumunu bildirin ve kanalı kapatın. |
| Etkileşimli kabuk | OnSSHShell, OnSSHChannelData | Bir terminal oturumunu kendi kodunuzdan sunar. |
| Alt sistemler | SFTPServer | sftp gibi alt sistem istekleri, bağlı bir TsgcSFTPServer'a yönlendirilir. |
| Bağlantı olayları | OnSSHConnect, OnSSHDisconnect | Her bağlantıyı karşı tarafın adresiyle günlüğe yazar. |
TsgcSFTPServer, TsgcSSHServer'a takılır ve istemcilerin çıkamayacağı bir klasörden dosyalar sunar.
| Yetenek | API | Notlar |
|---|---|---|
| Protokoller | SFTP, SCP | SFTP v3, etkinleştirildiğinde ayrıca scp aktarımları. |
| Kök klasör | RootFolder | İstemcilere gösterilen klasör. Dışındaki yollar reddedilir. |
| Kullanıcı başına bir klasör | OnSFTPUserRoot | Her kullanıcının kökünü döndürün; böylece her kullanıcı yalnızca kendi dosyalarını görür. |
| Salt okunur mod | ReadOnly | Yüklemeleri, silmeleri ve yeniden adlandırmaları reddeder. |
| İşlem başına denetim | OnSFTPOperation | Okuma veya yazma için her açma, silme, yeniden adlandırma, klasör oluşturma ve silme, öznitelik değişikliği ve listeleme için tetiklenir. aAccept değerini False yapın, istemci izin reddedildi hatası alır. |
| Büyük indirmeler | Akış denetimi | İndirmeler, dosya boyutu ne olursa olsun sabit bellek kullanır. |
İstemci ve sunucu önce en güçlü algoritmaları sunar ve klasik olanlara yalnızca karşı tarafın ihtiyacı olduğunda geri döner.
| Alan | Algoritmalar | Notlar |
|---|---|---|
| Anahtar değişimi | mlkem768x25519-sha256 | ML-KEM-768 ile X25519'un birleşimi, en son SSH sürümlerinin varsayılanı. İstemci ve sunucu tarafından ilk sırada sunulur. |
| Klasik anahtar değişimi | curve25519, ECDH, Diffie-Hellman group14 ve group16 | Karşı taraf hibrit değişimi desteklemediğinde kullanılır. |
| Şifreler | AES-GCM, AES-CTR | AES-GCM, .NET 8 ve sonrasında donanımla hızlandırılır. |
| Ana bilgisayar ve kullanıcı anahtarları | Ed25519, ECDSA, RSA | SHA-2 ile RSA imzaları, server-sig-algs üzerinden seçilir. |
| Anahtar dosyaları | PEM, PKCS#8, OpenSSH (.NET) | Şifrelenmiş özel anahtarlar bir parola ile açılır. |
| Katı anahtar değişimi | Terrapin önlemi | SSH el sıkışmasındaki önek kırpma saldırısını kapatır. |
Delphi ve .NET'te aynı beş bileşen.
| Alan | Ayrıntı |
|---|---|
| Delphi | Delphi 7'den 13'e, VCL, FMX, konsol uygulamaları ve hizmetler için. |
| Delphi hedefleri | Windows Win32, Windows Win64 ve Linux64. |
| .NET | .NET 8, .NET 9, .NET 10 ve .NET Standard 2.0, OpenSSL olmadan tamamen yönetilen kodla. |
| Demolar | Demos\27.SSH: SSH istemcisi, SFTP istemcisi, SCP istemcisi, SSH sunucusu ve SFTP sunucusu. |
| Sürümler | Beş bileşenin tamamı sgcWebSockets Enterprise ile de gelir ve All-Access her şeyi kapsar. .NET'te Community sürümünde değil, kayıtlı pakette yer alırlar. |
| Lisanslama | Bağımsız. sgcWebSockets Core çalışma zamanı dahildir, sgcCustomIndy siparişe dahildir ve tam kaynak kodu verilir. |