Jak pobrać plik z serwera za pomocą SSH / SCP
Użytkownicy mogą bezpiecznie pobrać plik z dowolnego zdalnego serwera za pomocą SSH, używając narzędzia scp w wierszu poleceń. Zasadniczo oznacza to, że możesz bezpiecznie przechowywać plik na zdalnym serwerze i przesyłać go do lokalnego magazynu bez konieczności ujawniania tego pliku światu zewnętrznemu, ponieważ scp oferuje ten sam poziom bezpieczeństwa i wymaga tego samego uwierzytelniania, co ssh.
Bezpieczne pobieranie plików za pomocą scp jest przeznaczone głównie dla zaawansowanych użytkowników, którzy regularnie korzystają z ssh i wiersza poleceń w systemie macOS X, bsd lub linux. Dla tych, którzy mają odpowiednie doświadczenie z linią poleceń, używanie ssh i scp do pobierania zdalnych plików jest łatwe i wygodnie, po zakończeniu przesyłania plików, zdalne połączenie zostanie zakończone. To sprawia, że scp ma pierwszeństwo przed sftp w przypadku szybkiego pobierania plików, chociaż oczywiście możesz również użyć sftp, jeśli chcesz.
Pobieranie pliku ze zdalnego serwera za pomocą bezpiecznego kopiowania SSH
Zakłada się, że zdalny serwer ma aktywne ssh, a jeśli jesteś w stanie połączyć się z maszyną przez ssh, prawdopodobnie będzie również aktywne scp. Jeśli nie masz zdalnego serwera, na którym możesz to wypróbować, możesz wypróbować to między komputerami z systemem Mac OS X lub z hostem lokalnym, jeśli wcześniej włączysz ssh i zdalne logowanie na komputerze Mac.
Podstawowa składnia używania scp (bezpiecznej kopii) do bezpiecznego pobierania plików zdalnych jest następująca, zastępując odpowiednio użytkownika, serwer, ścieżkę i cel:
scp user@server:/path/to/remotefile.zip /Local/Target/Destination
Na przykład, aby pobrać plik na pulpit lokalny o nazwie „nazwa_pliku.zip” znajdujący się w katalogu domowym zdalnego użytkownika „osxdaily” na serwerze o adresie IP 192.168.0.45, składnia będzie następująca:
% scp [email protected]:nazwapliku.zip ~/Desktop/ Hasło: nazwapliku.zip 100% 126 10,1 KB/s 00:00 %
Zakładając, że uwierzytelnianie jest prawidłowe, plik docelowy natychmiast rozpocznie pobieranie do docelowego miejsca docelowego, podając procent ukończenia, prędkość pobierania i czas przesyłania, który upłynął w miarę postępu pobierania pliku.
Jak zwykle w wierszu poleceń, ważne jest określenie dokładnej składni.
Jeśli nazwa pliku lub ścieżki zawiera spację, możesz użyć cudzysłowów lub znaków ucieczki na ścieżce w następujący sposób:
"scp [email protected]:/jakiś katalog zdalny/nazwapliku.zip>"
scp może również służyć do bezpiecznego umieszczania pliku na serwerze zdalnym poprzez dostosowanie składni, ale tutaj skupiamy się na pobieraniu pliku, a nie na przesyłaniu plików.
Jeśli jesteś nowy w ssh i sam to testujesz, i jeśli nigdy wcześniej nie łączyłeś się ze zdalnym serwerem, zostaniesz poproszony o potwierdzenie, czy chcesz faktycznie połączyć się ze zdalnym serwerem maszyna. Wygląda to tak i wymaga odpowiedzi „tak” lub „nie” przed rozpoczęciem pobierania. % scp [email protected]:filename.zip ~/Desktop/ Nie można ustalić autentyczności hosta „192.168.0.4 (192.168.0.4)”. Odcisk palca klucza ECDSA to SHA256:31WalRuSLR83HALK83AKJSAkj972JJA878NJHAH3780. Czy na pewno chcesz kontynuować połączenie (tak/nie)? tak Ostrzeżenie: Dodano na stałe „192.168.0.4” (ECDSA) do listy znanych hostów. Hasło: nazwa_pliku.zip 100% 126 0,1 KB/s 00:00 %
Ponownie, zakładając, że połączenie zostało zatwierdzone i logowanie się powiodło, zdalny plik zostanie pobrany z serwera docelowego do hosta lokalnego.
Możesz także użyć scp do pobrania wielu plików ze zdalnego serwera:
scp user@host:/remote/path/\{file1.zip, file2.zip\} /Local/Path/
Używanie ssh do zdalnego pobierania plików w ten sposób jest najbardziej odpowiednie w przypadku bezpiecznych transferów wymagających uwierzytelnienia. Jasne, że możesz również pobierać pliki za pomocą curl lub wget ze zdalnych serwerów, ale pliki dostępne za pomocą curl i wget są zwykle dostępne również ze świata zewnętrznego, podczas gdy ssh i scp wymagają uwierzytelnienia lub klucza i używają szyfrowania 3DES, co znacznie więcej Ochrony.