Introduksjon
Forutsetninger
Generering og bruk av SSH-nøkler
Overføre filer med SCP
Overføre filer med Rsync
Introduksjon
Når du bruker kommandoer som scpeller rsyncmed den offentlige IP-adressen til serveren din, vil du automatisk overføre filene over det (offentlige) internett. Hvis du har to forekomster med privat nettverk aktivert, kan du også overføre disse filene over det private nettverket og forhindre ekstra kostnader for den brukte båndbredden.
Forutsetninger
- To forekomster (vi kaller dem
server_aog server_b) med privat nettverk aktivert
- Begge forekomstene skal ha private IP-adresser konfigurert i samme undernett (se Konfigurere privat nettverk )
- SSH-tilkobling bør være mulig mellom begge instanser
- En bruker som ikke er root (vi kaller det
your_user)
Generering og bruk av SSH-nøkler
Overføring av filer er mulig ved å bruke brukernavn og passordautentisering, men det er mye tryggere å bruke SSH-nøkler. Genereringen av den offentlig-private nøkkelen er beskrevet i Hvordan genererer jeg SSH-nøkler? . Hvis du bestemmer deg for å hoppe over denne delen, må du skrive inn den eksterne brukerens passord i hver kommando.
Forutsatt at det offentlige-private nøkkelparet på server_aer plassert i ~/.ssh/id_rsa, kan du kjøre følgende kommando for å overføre den offentlige nøkkelen til server_b. Bruk den private IP-adressen til server_b.
ssh-copy-id your_user@192.168.0.101
Når du blir bedt om det, oppgi passordet for your_user.
ssh-copy-id your_user@192.168.0.101 /usr/bin/ssh-copy-id: INFO: Source of
key(s) to be installed: "/home/your_user/.ssh/id_rsa.pub" The
authenticity of host '192.168.0.101 (192.168.0.101)' can't be
established. ECDSA key fingerprint is
SHA256:g9dfqycqU25b567/HDjPTqaQqKhep/fysNCQAG9yJG4. ECDSA key
fingerprint is MD5:41:67:be:68:51:9b:38:a8:95:82:71:47:f1:35:39:66.
Are you sure you want to continue connecting (yes/no)? yes
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s),
to filter out any that are already installed /usr/bin/ssh-copy-id:
INFO: 1 key(s) remain to be installed -- if you are prompted now it is
to install the new keys your_user@192.168.0.101's password:
Number of key(s) added: 1
Prøv nå å logge på maskinen.
ssh your_user@192.168.0.101
Kontroller at bare nøkkelen(e) du ønsket ble lagt til.
Hvis du nå SSH fra server_atil server_b, vil den ikke lenger be om passord. Dersom offentlig-privat nøkkelpar ikke ligger i ~/.ssh/id_rsaså kan du spesifisere det beliggenhet med -iparameter (må du også denne parameteren med scpog rsynckommando).
ssh-copy-id -i /path/to/your/public_key your_user@192.168.0.101
ssh -i /path/to/your/private_key your_user@192.168.0.101
Overføre filer med SCP
SCP står for Secure Copy og overfører alle data over en SSH-tilkobling. For å kopiere en enkelt fil, ~/myfile, fra server_atil /tmpkatalogen på kan server_bvi gi følgende kommando.
scp ~./myfile your_user@192.168.0.101:/tmp
For å kopiere en komplett mappe med alt dens innhold (inkludert symbolske lenker) kan du legge til -ralternativet
scp -r ~./mydir your_user@192.168.0.101:/tmp
Overføre filer med Rsync
Rsync er et allsidig verktøy for å kopiere filer, det brukes oftest til å synkronisere innholdet på to steder. Den bruker den samme sikre SSH-tunnelen til å overføre data. En komplett mappe kan synkroniseres til en ekstern /tmpdir med følgende kommando
rsync -av ~/mydir your_user@192.168.0.101:/tmp
Den -valternativet øker detaljnivå, slik at du kan følge utviklingen av overføringen. Det -aalternativet gjør 'arkiv-modus' som kopierer filene dine rekursivt samtidig bevare attributter som eier, gruppe og tillatelser.