Introducció
Requisits previs
Generació i ús de claus SSH
Transferència de fitxers amb SCP
Transferència de fitxers amb Rsync
Introducció
Quan utilitzeu ordres com scpo rsyncamb l'adreça IP pública del vostre servidor, transferireu automàticament els fitxers a Internet (públic). Si teniu dues instàncies amb la xarxa privada activada, també podeu transferir aquests fitxers a la xarxa privada i evitar càrrecs addicionals per l'ample de banda utilitzat.
Requisits previs
- Dues instàncies (els anomenarem
server_ai server_b) amb la xarxa privada activada
- Les dues instàncies haurien de tenir adreces IP privades configurades a la mateixa subxarxa (vegeu Configuració de la xarxa privada )
- La connectivitat SSH hauria de ser possible entre ambdues instàncies
- Un usuari que no és root (l'anomenarem
your_user)
Generació i ús de claus SSH
La transferència de fitxers és possible mitjançant l'autenticació de nom d'usuari i contrasenya, però és molt més segur utilitzar claus SSH. La generació de la clau pública-privada es descriu a Com puc generar claus SSH? . Si decidiu ometre aquesta secció, haureu d'introduir la contrasenya de l'usuari remot a cada comanda.
Suposant que la parella de claus pública-privada activada server_aes troba a ~/.ssh/id_rsa, podeu executar l'ordre següent per transferir la vostra clau pública a server_b. Utilitzeu l'adreça IP privada de server_b.
ssh-copy-id your_user@192.168.0.101
Quan se us demani, proporcioneu la contrasenya per a 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
Ara proveu d'iniciar sessió a la màquina.
ssh your_user@192.168.0.101
Comproveu per assegurar-vos que només s'han afegit les claus que volíeu.
Si ara feu SSH de server_aa server_b, ja no us demanarà una contrasenya. En cas que la parella de claus pública-privada no es trobi ~/.ssh/id_rsa, podeu especificar la seva ubicació amb el -iparàmetre (també necessitareu aquest paràmetre amb l' ordre scpi rsync).
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
Transferència de fitxers amb SCP
SCP significa Secure Copy i transfereix totes les dades mitjançant una connexió SSH. Per copiar un únic fitxer, ~/myfile, server_aal /tmpdirectori on server_bpodem emetre l'ordre següent.
scp ~./myfile your_user@192.168.0.101:/tmp
Per copiar una carpeta completa amb tot el seu contingut (inclosos els enllaços simbòlics) podeu afegir l' -ropció
scp -r ~./mydir your_user@192.168.0.101:/tmp
Transferència de fitxers amb Rsync
Rsync és una eina versàtil per copiar fitxers, s'utilitza més sovint per sincronitzar el contingut de dues ubicacions. Utilitza el mateix túnel SSH segur per transferir dades. Es pot sincronitzar una carpeta completa amb un /tmpdirectori remot amb l'ordre següent
rsync -av ~/mydir your_user@192.168.0.101:/tmp
L' -vopció augmenta la verbositat perquè pugueu seguir el progrés de la transferència. L' -aopció activa el "mode d'arxiu" que copia els vostres fitxers de forma recursiva tot preservant atributs com el propietari, el grup i els permisos.