Rozdíl mezi FTP a SFTP

FTP vs SFTP

FTP (File Transfer Protocol) je protokol používaný pro přenos souborů mezi hostiteli na internetu (nebo jinými sítěmi založenými na TCP). Je to protokol založený na modelu klient-server. FTP server uchovává soubory a databáze, které jsou vyžadovány pro poskytování služeb požadovaných klienty. FTP server je nejčastěji zařízení s vysokým výkonem, které dokáže zpracovat více požadavků klientů současně. FTP klient je obecně osobní počítač používaný koncovým uživatelem nebo mobilním zařízením, které provozuje potřebný software, který je schopen požadovat a přijímat soubory přes internet z FTP serveru. FTP udržuje oddělená spojení mezi klientem a serverem pro přenos řídících informací a dat. Klientské aplikace FTP se během této doby vyvinuly z aplikací příkazového řádku do aplikací s grafickým uživatelským rozhraním. SFTP (Secure File Transfer Protocol) je protokol používaný pro přenos souborů přes zabezpečený kanál. Byl vyvinut jako rozšíření protokolu Secure Shell (SSH) pracovní skupinou Internet Engineering Task Force (IETF). SFTP předpokládá, že kanál používaný pro komunikaci je bezpečný a že klient je autentizován serverem a informace o klientovi jsou k dispozici pro použití protokolu.

Co je FTP?

FTP je protokol používaný pro přenos souborů přes internet. Aktuální specifikace FTP je obsažena v RFC 959. Tento protokol pracuje na aplikační vrstvě. Jak bylo uvedeno výše, FTP udržuje dvě spojení pro přenos řídících informací a dat. Protokol FTP funguje následovně. FTP server naslouchá příchozím požadavkům od klientů. Klient, který chce komunikovat se serverem, by tak mohl udělat přes port 21 a nazývá se řídicí připojení. Řídicí spojení je otevřeno po celou dobu relace a používá se ke sdělování administrativních informací. Poté se FTP server otevře přes druhé spojení přes port 20 s komunikovaným klientem a toto spojení se nazývá datové připojení. Soubory jsou přenášeny datovým připojením a probíhající přenos by mohl být zastaven odesláním signálu pro zrušení přes řídicí spojení.

Co je SFTP?

SFTP je protokol používaný pro přenos souborů přes zabezpečený kanál. SFTP je také založen na architektuře klient-server. Široce známý SFTP server je OpenSSH a SFTP klienti jsou implementováni jako programy příkazového řádku (jak jsou dodávány s OpenSSH) nebo GUI aplikace. SFTP zajišťuje šifrování dat i příkazů, které jsou přenášeny, a zajišťuje tak bezpečnost citlivých informací, jako jsou hesla. Nahrané soubory využívající SFTP jsou navíc spojeny s atributy souborů, například časovým razítkem, což u FTP není možné. SFTP není jen protokol pro přístup a přenos souborů, je to vlastně protokol systému souborů.

Jaký je rozdíl mezi FTP a SFTP?

SFTP poskytuje bezpečný mechanismus pro přenos souborů přes internet. SFTP poskytuje mechanismus pro šifrování dat a příkazů, které jsou přenášeny mezi klientem a serverem, zatímco informace přenášené mezi klientem a serverem pod FTP jsou prostým textem. Nahrané soubory využívající SFTP jsou navíc spojeny s atributy souborů, například časovým razítkem, což u FTP není možné. Přestože SFTP poskytuje podobnou (bezpečnější) funkčnost jako FTP, kvůli základním rozdílům v protokolech nelze FTP klienta použít ke komunikaci se SFTP serverem a SFTP klienta nelze použít ke komunikaci se FTP serverem.