- ssh-keygen工具可以实现免密码登录服务器
可参考之前的blog:http://www.cnblogs.com/Mrhuangrui/p/4565333.html
写的比较粗糙 - 原理说明
使用ssh-keygen会生成了私钥id_rsa、公钥id_rsa.pub
将公钥id_rsa.pub 文件内容拷贝到目标机器的 authorized_keys 中
私钥存在就可以直接访问目标机器
目标机器对我完全信任
私钥万万不可泄露
目标机器只要存在公钥
修改密码同样也可以使用私钥登录
快捷复制公钥到目标机器的命令:ssh-copy-id root@10.10.0.1
密钥区分用户,私钥置于当前用户~/.ssh/目录,权限赋予600 - 私钥的应用场景有跳板机、Ansible服务器,实现免密码登录管理批量服务器
- 简单的rsync调用id_rsa,实现2台机器文件互相同步(脚本使用了www用户)
脚本如下(本机备份到远程服务器):#!/bin/bash cd `dirname $`
KEY_FILE='/home/www/.ssh/id_rsa'
SSH_OPTIONS='-C -o StrictHostKeyChecking=no ' chmod ${KEY_FILE} /usr/bin/rsync -rzt -e "ssh -p 22 -i ${KEY_FILE} ${SSH_OPTIONS}" /data/ www@10.10.0.1:/data/ >/dev/null
status=$?
if [ $status -ne ];then
echo ""
else
echo ""
fiscp2remote.sh
只做增量覆盖,不做删除操作