打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
一键SSH免密脚本

大型项目一键SSH免密脚本

#!/usr/bin/env bashroot=$(        cd $(dirname $0)/..        pwd      )source ${root}/dragonrcread -p "请您输入主机用户:" userif [ -z $user ];thenechoecho -e "\033[1;32;31m警告:您输入的用户名为空!\033[0m"echoexit 0firead -p "请您输入主机密码:" mimaif [ -z $mima ];thenechoecho -e "\033[1;32;31m警告:您第一次输入的密码为空!\033[0m"echoexit 0firead -p "请您再次输入密码:" querenif [ -z $queren ];thenechoecho -e "\033[1;32;31m警告:您第二次输入的密码为空!\033[0m"echoexit 0fiif [ $mima == $queren ];thenecho "您输入的密码为:$queren" && sleep 1echo "正在为您创建密钥对儿,请您注意" && sleep 1elseechoecho -e "\033[1;32;31m不好意思~您两次输入的密码不匹配,请您重新输入!\033[0m"echoread -p "请您输入主机用户:" userif [ -z $user ];thenechoecho -e "\033[1;32;31m警告:您输入的用户名为空!\033[0m"echoexit 0firead -p "请您输入主机密码:" mimaif [ -z $mima ];thenechoecho -e "\033[1;32;31m警告:您第一次输入的密码为空!\033[0m"echoexit 0firead -p "请您再次输入密码:" querenif [ -z $queren ];thenechoecho -e "\033[1;32;31m警告:您第二次输入的密码为空!\033[0m"echoexit 0fiif [ $mima == $queren ];thenecho "您输入的密码为:$queren"echo "正在为您创建密钥对儿,请您注意" && sleep 1elseechoecho -e "\033[1;32;31m抱歉~您两次输入的密码不匹配,请您重新执行脚本!\033[0m"echoexit 1fifi> /root/.ssh/authorized_keysif [ -f /root/.ssh/id_rsa.pub ];thenecho "您的主机已经有密钥对儿了,不需要再次创建"elsessh-keygen -t rsa -P "" -f ~/.ssh/id_rsafirpm -q sshpass &> /dev/nullif [ $? -ne 0 ];thenrpm -ivh ${root}/rpm/other/sshpass-1.06-2.el7.x86_64.rpm &> /dev/nullecho "StrictHostKeyChecking no" > /root/.ssh/configecho "UserKnownHostsFile=/dev/null" >> /root/.ssh/configelseecho "StrictHostKeyChecking no" > /root/.ssh/configecho "UserKnownHostsFile=/dev/null" >> /root/.ssh/configfiIFS=',' read -r -a all_nodes <<<"${ALL_NODES}"for ip in "${all_nodes[@]}"; dosshpass -p $queren ssh-copy-id $user@$ip &> /dev/nullssh $user@$ip "pwd" &> /dev/nullif [ $? -eq 0 ];thenecho "$ip is add successful"elseecho "$ip is failure"fidoneansible ${OTHER_NODES} -m shell -a "rm -rf /root/.ssh/id_rsa*"ansible ${OTHER_NODES} -m shell -a "ssh-keygen -t rsa -P \"\" -f ~/.ssh/id_rsa"echo -e "\033[5;32;31m温馨提示:主机双向互信ing...\033[0m"IFS=',' read -r -a nodes <<<"${OTHER_NODES}"for oip in "${nodes[@]}"; dossh -T $user@$oip cat /root/.ssh/id_rsa.pub >> /root/.ssh/authorized_keysdoneansible dragon -m copy -a "src=/root/.ssh/authorized_keys dest=/root/.ssh/authorized_keys"echo -e "\033[1;32;31m双向互信已完成!\033[0m"
来源:https://www.icode9.com/content-4-754301.html
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
分享:linux一键安装powershell的shell脚本
干货 | 揭秘一下,如何巧用手机快捷指令一键调用服务端脚本
使用siri远程控制电脑开关机.pdf
介绍一个超级好用的浏览器插件!
chrome扩展推荐第二弹
shell 中使用 ssh 连接(sshpass)
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服