När du håller på att konfigurera fjärröverföringsfunktioner för dina anställda vill du att saker och ting ska vara så enkla och säkra som möjligt. Med det i åtanke, vilket är bättre, FTPS eller SFTP? Dagens SuperUser Q & A-inlägg har svaren på en nyfiken läsares fråga.
Dagens Fråga & Svar-session kommer till oss med tillstånd av SuperUser - en underavdelning av Stack Exchange, en community-driven gruppering av Q & A-webbplatser.
Skärmdump med tillstånd av Koji Hachisu (Fickr) .
Frågan
SuperUser-läsaren user334875 vill veta vad som är skillnaden mellan FTPS och SFTP, och vilken som är bättre:
Jag försöker skapa ett system för fyra av mina anställda som arbetar på distans så att de kan överföra filer. Jag behöver det också för att vara säkert. Är SFTP bättre än FTPS? Vad är skillnaden mellan de två?
Vad är skillnaden mellan de två och vilken som är bättre?
Svaret
SuperUser-bidragsgivare NuTTyX och Vdub har svaret för oss. Först upp, NuTTyX:
De är två helt olika protokoll.
FTPS är FTP med SSL för säkerhet. Den använder en kontrollkanal och öppnar nya anslutningar för dataöverföringen. Eftersom den använder SSL kräver det ett certifikat.
SFTP (SSH File Transfer Protocol / Secure File Transfer Protocol) utformades som en förlängning av SSH för att ge filöverföringsfunktioner, så den använder vanligtvis bara SSH-porten för både data och kontroll.
I de flesta SSH-serverinstallationer har du SFTP-stöd, men FTPS behöver ytterligare konfiguration av en FTP-server som stöds.
Följt av svaret från Vdub:
FTPS (FTP / SSL) är ett namn som används för att tillhandahålla ett antal sätt som FTP-programvara kan utföra säkra filöverföringar. Varje sätt innebär användning av ett SSL / TLS-lager under standard FTP-protokollet för att kryptera kontroll- och / eller datakanalerna.
Fördelar:
- Mycket känd och använd
- Kommunikationen kan läsas och förstås av en människa
- Tillhandahåller tjänster för filöverföring från server till server
- SSL / TLS har bra autentiseringsmekanismer (X.509-certifikatfunktioner)
- FTP- och SSL / TLS-stöd är inbyggt i många ramar för internetkommunikation
Nackdelar:
- Har inte ett enhetligt katalogförteckningsformat
- Kräver en sekundär DATA-kanal, vilket gör det svårt att använda bakom brandväggar
- Definierar inte en standard för filnamnsteckenuppsättningar (kodningar)
- Inte alla FTP-servrar stöder SSL / TLS
- Har inte ett vanligt sätt att hämta och ändra fil- eller katalogattribut
SFTP (SSH File Transfer Protocol) är ett nätverksprotokoll som ger filöverföring och manipulationsfunktionalitet över alla tillförlitliga dataströmmar. Den används vanligtvis med SSH-2-protokollet (TCP-port 22) för att tillhandahålla säker filöverföring, men är också avsedd att användas med andra protokoll.
Fördelar:
- Har en god standardbakgrund som strikt definierar de flesta (om inte alla) aspekter av verksamheten
- Har bara en anslutning (inget behov av en DATA-anslutning)
- Anslutningen är alltid säker
- Kataloglistan är enhetlig och maskinläsbar
- Protokollet innehåller operationer för behörighet och attributhantering, fillåsning och mer funktionalitet
Nackdelar:
- Kommunikationen är binär och kan inte loggas ”som den är” för mänsklig läsning
- SSH-nycklar är svårare att hantera och validera
- Standarderna definierar vissa saker som valfria eller rekommenderade, vilket leder till vissa kompatibilitetsproblem mellan olika programtitlar från olika leverantörer.
- Ingen server-till-server-kopiering och rekursiv katalogborttagning
- Inget inbyggt SSH / SFTP-stöd i VCL- och .NET-ramar
Har du något att lägga till förklaringen? Ljud av i kommentarerna. Vill du läsa fler svar från andra tekniskt kunniga Stack Exchange-användare? Kolla in hela diskussionstråden här .