远程管理服务+免密分发公钥脚本

SSH实现基于秘钥连接的部署步骤

第一个历程: 管理端创建秘钥对信息

[root@m01 ~]# ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):          
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:KDdW1s+rw8GJOq0loT8fJnlvgszBRRsMybMrxT6pt/Y root@m01
The key's randomart image is:
+---[RSA 2048]----+
|     ..+         |
|      + +.       |
|     . +oo.      |
|      ++o  o     |
|    .+*+So .o    |
|    .=B+. +  .   |
|    .=+*=. ..    |
|    ..X*oo+.     |
|     o+BEoo.     |
+----[SHA256]-----+

会在/root/目录中生成一个.ssh文件夹,同时在文件夹中创建以下文件

[root@m01 ~]# ls .ssh/
id_rsa  id_rsa.pub

第二个历程: 管理端需要将公钥进行分发
身份不写则默认为当前用户,分发的公钥文件不需要指定保存目录

ssh-copy-id -i /root/.ssh/id_dsa.pub root@172.16.1.41

第三个历程: 进行远程连接测试
不需要输入密码信息就可以直接连接

ssh 172.16.1.41

不用交互输入密码信息,进行远程连接分发公钥

第一步骤: 管理端下载安装软件

yum install -y sshpass

第二步骤: 执行免交互方式分发公钥命令

sshpass -p123456 ssh-copy-id -i /root/.ssh/id_dsa.pub root@172.16.1.41

如何不要输入连接yes或no的确认信息

ssh-copy-id -i /root/.ssh/id_dsa.pub root@172.16.1.41 "-o StrictHostKeyChecking=no"

公钥分发脚本

写入被管理端的地址

172.16.1.200
172.16.1.101
172.16.1.102

分发公钥的脚本

#!/bin/bash

for ip in `cat /server/scripts/ip_list`
do
 echo "$ip"
 sshpass -p 123456 ssh-copy-id -i /root/.ssh/id_dsa.pub root@"$ip" "-o StrictHostKeyChecking=no" &>/dev/null
 echo "host $ip fenfa success"

done

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值