Scp

From ICO wiki
Revision as of 17:11, 9 December 2014 by Jarnek (talk | contribs)
Jump to navigationJump to search

Sissejuhatus

Scp ehk secure copy on programm mõeldud failide kopeerimiseks hostide vahel võrgus. Scp on asendus ebaturvalisele rcp protokollile. Erinevalt rcp-st, kasutab scp ssh-d andmete edastamiseks. SSH võimaldab scp-l faile edastada, kasutades samu protokolle ja autentimis viise, et krüpteerida hostide vahelist ühendust ja teha kindlaks, kas edastatakse failid õigele hostile. Lisaks võib scp küsida parooli autentimiseks kui vajalik.

Kuidas töötab

Scp-d saab kasutada, et kopeerida faile väljaspool kohalikku võrku asuvast serverist või siis serverisse. Võimalik on ka kopeerida faile ühest kaugserverist teise kaugserverisse ilma, et andmeliiklus käiks läbi kasutaja arvuti, kes kopeerib. Kopeerides algset faili sihtkohta, mis on juba olemas, siis scp asendab sihtkohas oleva faili, jättes infosõlme samaks. Kui sihtkohas fail ei ole olemas, siis luuakse tühi fail sihtmärgi nimega ja täidetakse algse faili sisuga.

Süntaks

scp [-12346BCpqrv] [-c cipher] [-F ssh_config] [-i identity_file] [-l limit] [-o ssh_option] [-P port] [-S program] [[user@]host1:]file1 ...[[user@]host2:]file2


Võtmed

Option Tähendus
-1 Käsib scp-l kasutada prokoll 1.
-2 Käsib scp-l kasutada prokoll 2.
-3 Koopiad kahe erinevas võrgus asuva hosti vahel edastatakse läbi lokaalse hosti. Ilma selle lisavalikuta andmed kopeeritakse otse kahe erinevas võrgus oleva hosti vahel. See lisavalik keelab ka progressi mõõdiku.
-4 Käsib scp-l kasutada ainult IPv4 aadresse.
-6 Käsib scp-l kasutada ainult IPv6 aadresse.
-B Valib batch viisi, mis võimaldab scp-l töötada ilma interaktiivse klaviatuurita. See valik takistab ka kasutajal enda autentimise, sest ei saada sisestada parooli.

Seega peab üles seadma mitteinteraktiivse viisi autentimiseks.

Kuidas üles seada mitteinteraktiivne autentimine
-C Võimaldab ssh-l krüpteeritud ühenduse pakkimise. Serveri poolt saadetud andmed pakitakse kokku enne saatmist ja pakitakse lahti kliendi pool.
-c cipher Valib šifri, millega krüpteeritakse saadetavad andmed. See valik mõjutab otseselt ssh-d.
-F ssh_config Spetsifitseerib alternatiivse konfiguratsiooni faili kasutaja kohta. Valik mõjutab otseselt ssh-d.
-i identity_file Valib faili, kust saadakse salavõti, millega RSA autendib identiteedi. Valik mõjutab otseselt ssh-d.
-l limit Piirab kasutatava „bandwisth-i“, täpsustatakse Kbit/s.
-P port Spetsifitseerib millise pordiga toimub ühendus kui ühendutakse kaughostiga.
-o ssh_option Võimaldab ssh-le määrata suvandeid. Kasulik, spetsifitseerida sätteid, mille jaoks ei ole eraldi scp käsurea käskluseid.

Võimalikke suvandeid lieba siit

List erinevaid ssh_option'eid
-p Säilitab modifikatsiooni ajad, ligipääsu ajad ja režiimid originaalsest failist.
-q Keelab progressi mõõdiku ning vaigistab erinevad hoiatus ja diagnostika sõnumid.
-r Valib faili, kust saadakse salavõti, millega RSA autendib identiteedi. Valik mõjutab otseselt ssh-d.
-S program Programmi nimi, mida kasutatakse ühenduse krüpteerimiseks. Programm peab olema ühilduv ssh suvanditega.
-v Paljusõnaline režiim, mis paneb scp ja ssh trükkima silumis (debugging) sõnumeid. Aitab siluda ühenduse, autentimis ja konfiguratsiooni probleeme.


Exit koodid

Kood Tähendus
0 Õnnestus
>0 Error

Scp paigaldamine

Scp on paigaldatud kõikidel Linuxi distrodel OpenSSH paketiga, seega ei ole vaja ise midagi teha peale scp kasutama õppimise.

Kasutus

scp [[user@]from-host:]source-file [[user@]to-host:][destination-file]


from-host

Hosti nimi või IP aadress, kus asub kopeeritav fail, selle võib välja jätta, kui from-host on see host, kus sisestatakse käsud.

user

User spetsifitseerib seda kasutajat, kellel on õigus ligi pääseda failile ja kaustale, mida kopeeritakse from-host puhul ning kasutajat, kellel on õigus kirjutada to-host hostis.

source-file

Fail või failid, mida hakatakse kopeerima teise hosti, kopeerida võib ka kataloogi, sellel puhul peab aga kasutama -r võtit, et kopeerideks tuleks kaasa ka kataloogi sisu.

destination-file

On nimi, mis antakse kopeeritavale failile to-host hostis, kui destination-file ei spetsifitseerita, siis kõik kopeeritavad failid jätavad oma vanad nimed.

Näited

Kasutades scp-d, peab meeles pidama, et kui tahad ühest hostist teise faile kopeerida, siis seal hostis, kuhu tahad kopeerida, peab sellel kasutajal kellena sisse logid, olema kirjutamisõigused(write), kas siis terve hosti piires või siis ainult spetsiifilises kausta.


scp minufail.txt nimi@näide.domeeninimi.com:minufail.txt

Kopeerib faili minufail.txt kaughosti näide.domeeninimi.com, kasutades kasutajanime nimi, et sisse logida.


scp minukasutajanimi@minukaughost.com:/home/kaust/*

Kopeerib kõik failid kaugkaustas /home/kaust, mis asuvad kaughostis minukaughost.com kohalikku kausta, kus hetkel ollakse (seda saab teada käsuga pwd).


scp -r kasutajanimi@myhost.com:/home/kasutajanimi/documents /home/kasutajanimi/downloads/documents

Kopeerib kõik kaugkaustas /home/kasutajanimi/documents olevad failid, kaasaarvatud alamkaustad, mis asuvad serveril myhost.com kohalikku kausta /home/kasutajanimi/downloads/documents


scp -l 100 kasutajanimi@myhost.com:/home/kasutajanimi/archive.zip

Piirates edastus kiiruse 100 kbit/s, edastab välivõrgus asuva faili /home/kasutajanimi/archive.zip, mis asub kaughostis myhost.com, kasutajana kasutajanimi kohalikku töötavasse kausta.


scp kasutajanimi1@esimenehost.com:/files/file1.zip kasutajanimi2@teinehost.com:/archives

Kopeerib faili kaugkaustast /files/files1.zip, mis asub kaughostis esimenehost.com kaugkaustas /archives, mis asub kaughostis teinehost.com. Käskluse sisestamisel, kästakse sisestada paroolid nii kasutajanimi1 ja kasutajanimi2 jaoks ning failid edastatakse otse ühest kaughostilt teisele.


scp -3 kasutajanimi1@firsthost.com:/files/file1.zip kasutajanimi2@secondhost.com:/archives

Käitub samamoodi nagu „scp kasutajanimi1@esimenehost.com:/files/file1.zip kasutajanimi2@teinehost.com:/archives“, kuid tänu -3 võtmele, toimub faili edastus kahe kaughosti vahel läbi kohaliku hosti.


scp fail1.txt fail2.txt kasutajanimi@kaughost:/path/directory/

Võimaldab saata mitu faili, eraldades faili nimed tühikutega.


scp username@remotehost:/path/directory/\{foo.txt,bar.txt\}

Võimaldab kopeerida mitu faili kaughostist kohalikku kasutatavasse kausta.