Question :Comment exécuter la commande scp sans demander de mot de passe sous Linux ?
L'opération sans mot de passe peut être ajoutée à cron ou à la planification en cas de réduction de l'intervention manuelle. Les différentes méthodes d'opérations de copie incluent rsync, bacula et keygen avec scp.
1. Générez une clé en utilisant ssh-keygen pour tout utilisateur et serveur particulier. Par exemple, vous pouvez suivre ceci :
# ssh-keygen -t rsa -b 4096 -C "root@localhost" Generating public/private rsa key pair. Enter file in which to save the key (/root/.ssh/id_rsa): Created directory '/root/.ssh'. Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /root/.ssh/id_rsa. Your public key has been saved in /root/.ssh/id_rsa.pub. The key fingerprint is: 33:4c:b1:a1:b0:f7:3a:85:0c:85:b9:6b:eb:c6:69:8b root@localhost The key's randomart image is: +--[ RSA 4096]----+ | .o. o | | o+ . + | | o.o o | | .+ = | | .o S | | o o o | | o oo | | .* . | | E+o. | +-----------------+
Nous pouvons voir la clé générée comme indiqué ci-dessous avec .pub extension :
# ls -l .ssh/ total 8 -rw-------. 1 root root 3239 Aug 13 13:11 id_rsa -rw-r--r--. 1 root root 736 Aug 13 13:11 id_rsa.pub
2. Une fois la clé publique générée, copiez le fichier .pub en tant que authorized_keys sous .ssh répertoire sous l'accueil de l'utilisateur pour l'utilisateur dans le serveur de destination. Une fois fait, essayez de faire ssh qui se connectera sans mot de passe.
# cat .ssh/id_rsa.pub | ssh root@server2 'cat >> .ssh/authorized_keys'
# ssh root@server2
Vous pouvez maintenant copier un fichier en utilisant scp comme indiqué ci-dessous :
# scp test_file.txt root@server2:/tmp/ test_file.txt 100% 20 0.0KB/s 00:00