Secure copy

Secure copy lub SCP – bezpieczny transfer plików pomiędzy komputerem lokalnym a zdalnym lub między dwoma zdalnymi komputerami, korzystający z protokołu Secure Shell (SSH). Skrót SCP powstał z nazwy protokołu SSH oraz polecenia cp.

Protokół SCP

  • SCP (od ang. secure copy) – protokół SCP jest bardzo podobny do protokołu RCP (BSD), jednak w przeciwieństwie do niego korzysta z szyfrowanego połączenia podczas transferu, dzięki temu podsłuchanie transmisji jest zdecydowanie trudniejsze. Sam protokół SCP nie zapewnia uwierzytelniania, opiera się on na protokole SSH. Protokół SCP zajmuje się tylko transmisją plików, jego przewagą nad protokołem FTP jest to, że oprócz szyfrowania potrafi również przekazać razem z plikiem jego podstawowe atrybuty (np. uprawnienia).

Uniksowe polecenie SCP

  • scp – polecenie scp jest to klient protokołu SCP umożliwiający „bezpieczne kopiowanie” plików; jest dostarczane razem z SSH.

Składnia polecenia (UNIX)

     scp [-1246BCpqrv] [-c szyfr] [-F plik_konfiguracyjny_ssh] [-i plik_tożsamości]
     [-l limit] [-o opcje ssh] [-P port] [-S program]
     [[użytkownik@]]host1:]plik1 [...] [[użytkownik@]]host2:]plik2

Opis opcji polecenia scp

ArgumentZnaczenie
-1Wymuszenie użycia pierwszej wersji protokołu.
-2Wymuszenie użycia drugiej wersji protokołu.
-4Wymuszenie użycia tylko adresów IPv4.
-6Wymuszenie użycia tylko adresów IPv6.
-BTryb wsadowy.
-CWłącza kompresję, przekazanie flagi -C do programu ssh
-pZachowanie atrybutów pliku, takich jak czasy modyfikacji oraz dostępu, prawa.
-qWyłączenie wyświetlania pasku postępu.
-rKopiuje całe katalogi (rekurencyjnie).
-vTryb wyświetlania informacji (debug), pomocne przy sprawdzaniu problemów z połączeniem.
-c szyfrWybranie rodzaju szyfru używanego do kodowania danych.
-F plik_konfiguracyjny_sshOkreślenie innego niż domyślny pliku konfiguracyjnego ssh.
-i plik_tożsamościPodanie pliku, który zawiera klucz prywatny dla uwierzytelnienia RSA
-l limitLimit transferu danych w Kb/s.
-o opcje sshOpcja używana do przekazywania parametrów do ssh, opcje muszą być podane w formacie opisanym w ssh_config(5).
-P portPort, do którego klient ma się podłączyć.
-S programPrzekazanie nazwy programu do tworzenia zakodowanego połączenia.

Przykłady użycia

  • Kopiowanie pliku ze zdalnej lokalizacji na lokalny dysk
     $ scp uzytkownik@serwer.pl:/scieżka/plik_serwer plik_lokalny
  • Kopiowanie pliku z dysku lokalnego do zdalnej lokalizacji
     $ scp plik_lokalny uzytkownik@serwer.pl:/sciezka/plik_serwer

Implementacja

Zobacz też

Linki zewnętrzne