linux下SSH服务利用shell脚本实现密钥的批量分发与执行
SSH项目利用shell脚本实现密钥的批量分发与执行 1 ssh密钥的批量分发开始安装sshpass免交互工具并进行SSH-key的批量分发 1.1 下载epel源并更新yum仓库wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo yum -y clean all yum makecache 1.2 安装sshpass工具yum -y install sshpass 2 创建密钥文件2.1 免交互创建密钥对[email?protected]1:~#:ssh-keygen -t dsa -f ~/.ssh/id_dsa -P "" Generating public/private dsa key pair. Your identification has been saved in /root/.ssh/id_dsa. Your public key has been saved in /root/.ssh/id_dsa.pub. The key fingerprint is: SHA256:Ey9bwNHOjrvyfNvNoJCAbUa9OZXrmy8xxB+DYMAz0JU [email?protected]1 The key‘s randomart image is: +---[DSA 1024]----+ | .+.ooo | | =oE... | | .+==o. | | + B*.o | | . = S++. o | | o ..O+ . | | +..o. | | ....o= + | | o+o=+o o | +----[SHA256]-----+ # 查看是否创建成功 [email?protected]-1:~#:ll .ssh/ total 12 -rw------- 1 root root 751 Apr 28 16:04 id_dsa -rw-r--r-- 1 root root 604 Apr 28 16:04 id_dsa.pub -rw-r--r-- 1 root root 515 Apr 27 15:56 known_hosts 2.2 参数说明
程序同时要求输入一个密语字符串(passphrase),空表示没有密语(主机密钥的密语必须为空)。 2.3 支持的非对称加密算法1.rsa,基于大数的质数分解难度的算法,一般都是2048位 3 免交互方式批量分发公钥#!/bin/bash # create key pair rm -fr /root/.ssh/id_dsa* ssh-keygen -t dsa -f /root/.ssh/id_dsa -P "" -q # fenfa key file for ip in 31 41 do echo "=======Batch the file to the host 172.16.1.$ip==========" sshpass -p123456 ssh-copy-id -i /root/.ssh/id_dsa.pub "-o StrictHostKeyChecking=no [email?protected]$ip" echo -e "##########################END##########################n" done ? 参考:https://blog.csdn.net/qq_34672033/article/details/89645010 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |