Hur man laddar ner en fil från en server med SSH/SCP
Användare kan säkert ladda ner en fil från vilken fjärrserver som helst med SSH genom att använda scp-verktyget på kommandoraden. Detta innebär i huvudsak att du kan ha en fil lagrad säkert på en fjärrserver och överföra den till lokal lagring utan att behöva exponera den filen för omvärlden, eftersom scp erbjuder samma säkerhetsnivå och kräver samma autentisering som ssh gör.
Säker nedladdning av filer med scp riktar sig främst till avancerade användare som använder ssh och kommandoraden regelbundet i antingen macOS X, bsd eller linux. För dem med tillräcklig kommandoradserfarenhet är det enkelt att använda ssh och scp för att ladda ner fjärrfiler och, bekvämt, efter att filöverföringen har slutförts kommer fjärranslutningen att avslutas. Detta gör att scp föredras framför sftp för snabba filnedladdningar, även om du självklart kan använda sftp om du också vill.
Hämta en fil från fjärrserver med SSH Secure Copy
Detta förutsätter att fjärrservern har ssh aktiv, och om du kan ssh in i maskinen har den sannolikt även scp aktiv. Om du inte har en fjärrserver att prova detta med kan du prova det mellan Mac OS X-datorer eller med localhost om du aktiverar ssh och fjärrinloggning på Mac i förväg.
Den grundläggande syntaxen för att använda scp (säker kopia) för att säkert ladda ner fjärrfiler är som följer, och ersätter användare, server, sökväg och mål som är lämpligt:
scp user@server:/path/to/remotefile.zip /Local/Target/Destination
För att till exempel ladda ner en fil till det lokala skrivbordet med namnet "filnamn.zip" som finns i hemkatalogen för fjärranvändaren "osxdaily" på servern IP 192.168.0.45, skulle syntaxen vara följande:
% scp [email protected]:filename.zip ~/Desktop/ Lösenord: filnamn.zip 100% 126 10.1KB/s 00:00 %
Förutsatt att autentiseringen är korrekt kommer målfilen omedelbart att börja laddas ned till måldestinationen, vilket ger en procentuell slutförande, nedladdningshastighet och förfluten överföringstid när nedladdningen av filen fortsätter.
Som vanligt med kommandoraden är det viktigt att ange exakt syntax.
Om filen eller sökvägen har ett mellanslag i namnet kan du använda citattecken eller escape på sökvägen så här:
"scp [email protected]:/någon fjärrkatalog/filnamn.zip>"
scp kan också användas för att säkert placera en fil på en fjärrserver genom att justera syntaxen också, men vi fokuserar på att ladda ner en fil istället för att ladda upp filer här.
Om du är ny på ssh och testar detta själv, och om du aldrig har anslutit till fjärrservern tidigare, kommer du att bli ombedd att bekräfta om du verkligen vill ansluta till fjärrkontrollen. maskin. Detta ser ut så, och kräver ett "ja" eller "nej" svar innan nedladdningen börjar. % scp [email protected]:filnamn.zip ~/Desktop/ Äktheten för värd '192.168.0.4 (192.168.0.4)' kan inte fastställas. ECDSA-nyckelfingeravtryck är SHA256:31WalRuSLR83HALK83AKJSAkj972JJA878NJHAH3780. Är du säker på att du vill fortsätta ansluta (ja/nej)? ja Varning: '192.168.0.4' (ECDSA) lades permanent till listan över kända värdar. Lösenord: filnamn.zip 100% 126 0,1KB/s 00:00 %
Återigen, förutsatt att anslutningen är godkänd och inloggningen lyckas, kommer fjärrfilen att laddas ner från målservern till den lokala värden.
Du kan också använda scp för att ladda ner flera filer från en fjärrserver:
scp användare@värd:/remote/sökväg/\{fil1.zip, fil2.zip\} /Local/Path/
Att använda ssh för fjärrfilnedladdningar som denna är mest lämpligt för säkra överföringar som kräver autentisering. Visst kan du också ladda ner filer med curl eller wget från fjärrservrar, men filer som är tillgängliga med curl och wget tenderar att vara tillgängliga från omvärlden också, medan ssh och scp kräver autentisering eller en nyckel och använder 3DES-kryptering, vilket gör det avsevärt mer säker.