Jag hade ett utbyte med några tredjepartssystemadministratörer igår angående installationen av ett filöverföringsgränssnitt mellan våra servrar.
Jag föreslog att använda SFTP eftersom vår applikation har bra stöd för det. Min samtalspartner vill absolut ha FTP + S (FTP + TLS) som vi för närvarande inte stöder och skulle behöva utveckla.
Jag hävdade att jag inte såg någon verklig fördel med FTP + S över SFTP eftersom båda erbjuder gedigen trafikkryptering. SFTP är lättillgängligt och kan göras ännu säkrare med autentisering av offentlig nyckel. Sist men inte minst gör dess enda anslutningsläge det mycket trevligare att använda bakom företagets brandväggar.
Sysadmin kallade mig nästan en idiot och sa att SFTP fungerar ovanpå SSH vilket är ett protokoll som är utformat för administrationsändamål. och att öppna en SSH-port för annan användning än administration är helt klart en dålig idé eftersom det öppnar en bred attackvektor mot värdsystemet.
Jag undrar om detta argument är giltigt. Det verkar finnas olika sätt att begränsa en SSH-session för att endast tillåta SFTP-filöverföring. Det finns det interna sftp-delsystemet som levereras med openSSH, där du enkelt kan ställa in en chroot och inaktivera TCP-vidarebefordran. Jag hörde till och med om lösningar som förmodligen tillåter användare att ansluta via SFTP utan att behöva ange passwd-filen ... Jag ser inget tydligt problem med SFTP som du inte skulle ha med FTP + S, men jag kan sakna något?
Så, trots de begränsningar som du kan tillämpa på SSH, är FTP + S ett bättre alternativ för filöverföring, säkerhetsmässigt?