## 配置ssh免秘钥登录 ssh 无密码登录要使用公钥与私钥。linux下可以用用ssh-keygen生成公钥/私钥对,下面我以CentOS为例。 有机器A(130.75.131.245),B(130.75.131.246)。现想A通过ssh免密码登录到B。 * 在130.75.131.245机下生成公钥/私钥对。 [root@localhost .ssh]# ssh-keygen -t rsa -P表示密码,-P '' 就表示空密码,也可以不用-P参数,这样就要三车回车,用-P就一次回车。 它在/home/chenlb下生成.ssh目录,.ssh下有id_rsa和id_rsa.pub。 * 把130.75.131.245下的id_rsa.pub复制到B机下,在B机的.ssh/authorized_keys文件里, 从A机复制的id_rsa.pub添加到.ssh/authorzied_keys文件里。 A机器 mv id_rsa.pub authorized_keys ftp authorized_keys上传到B机器 由于还没有免密码登录的,所以要输入密码。 [root@localhost .ssh]$catid_rsa.pub>>.ssh/authorized_keys [root@localhost .ssh]$chmod 600 .ssh/authorized_keys **authorized_keys的权限要是600**。 * 130.75.131.245机登录130.75.131.246机。 ssh -p 130.75.131.246 Theauthenticityofhost'130.75.131.246(130.75.131.246)'can'tbeestablished. RSAkeyfingerprintisab:35:91:08:b7:48:52:35:aa:d2:53:f9:51:fe:c2:55. Areyousureyouwanttocontinueconnecting(yes/no)yes Warning:Permanentlyadded'130.75.131.246'(RSA)tothelistofknownhosts. 第一次登录是时要你输入yes。 现在A机可以无密码登录B机了。 小结:登录的机子可有私钥,被登录的机子要有登录机子的公钥。这个公钥/私钥对一般在私钥宿主机产生。上面是用rsa算法的公钥/私钥对,当然也可以用dsa(对应的文件是id_dsa,id_dsa.pub) 想让A,B机无密码互登录,那B机以上面同样的方式配置即可。 参考:SSH-KeyGen 的用法[http://blog.163.com/chen98_2006@126/blog/static/158584272007101862513886/](http://blog.163.com/chen98_2006@126/blog/static/158584272007101862513886/) ## 130.75.131.245制作同步脚本 /root/webapps/ 下存应用 ![](https://box.kancloud.cn/119572bc5282d84312decd35a88e34f6_683x133.png) * [root@localhost ~]# vi /root/synwas.ini 130.75.131.246 :wq ``` [root@localhost ~]# cat synwas.ini 130.75.131.246 ``` * [root@localhost ~]# vi synwas.sh ``` #!/bin/bash for DESIP in `cat /root/synwas.ini | grep -v "#"` do #--node1 rsync -avze ssh --delete --exclude="eureka-server/logs/**/*" --exclude="auth-server/logs/**/*" --exclude="user-center/logs/**/*" --exclude="api-gateway/logs/**/*" --exclude="file-center/logs/**/*" --exclude="back-center/logs/**/*" /root/webapps/ ${DESIP}:/root/webapps/ done ``` * [root@localhost ~]# chmod -R 777 synwas.sh * [root@localhost ~]# ./synwas.sh sending incremental file list sent 38,007 bytes received 142 bytes 1,774.37 bytes/sec total size is 371,068,157 speedup is 9,726.81 根据以上部署,升级只需要往130.75.131.245升级 验证通过后,执行./synwas.sh同步到130.75.131.246,当然你也可以配置多台服务器到synwas.ini,注意免密登录