shell脚本里scp免密码登录(远程scp免输入密码)(从远程机器上拷文件到本地)
一、在本机上
# ssh-keygen -t rsa (连续三次回车,即在本地生成了公钥和私钥,不设置密码)
scp ~/.ssh/id_rsa.pub root@xxx.xxx.xxx.xxx:.ssh/id_rsa.pub (需要输入密码) 将生成的公钥拷到远程机器上
二、在远程机上
# touch /root/.ssh/authorized_keys (如果已经存在这个文件, 跳过这条)
# chmod 600 ~/.ssh/authorized_keys (# 注意: 必须将~/.ssh/authorized_keys的权限改为600, 该文件用于保存ssh客户端生成的公钥,可以修改服务器的ssh服务端配置文件/etc/ssh/sshd_config来指定其他文件名)
# cat /root/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys (将id_rsa.pub的内容追加到 authorized_keys 中, 注意要用>>,不要用 > ,否则会清空原有的内容,使其他人无法使用原有的密钥登录)
三、在本机上
# ssh root@172.24.253.2 (不需要密码, 登录成功)
四、创建shell脚本
# vars
DATE=`date +%F-%k-%M-%S`
# TODO
scp root@182.92.190.75:/usr/share/tomcat6/logs/catalina.out /home/genekang-db/genekang_tomcat_logs/catalina_$DATE.out
@樊波 ssh-keygen -t rsa -C "cbd-server-test"
@樊波 cat ~/.ssh/id_rsa.pub