linux下怎么通过脚本实现多台计算机的ssh无密码访问设置,如脚本为a,则执行a ip1 ip2 ip3……。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux下怎么通过脚本实现多台计算机的ssh无密码访问设置,如脚本为a,则执行a ip1 ip2 ip3……。相关的知识,希望对你有一定的参考价值。

执行结果为ip1可以ssh到ip2、ip3……而无需输入密码

可以通过 shell 调用 expect 将正常配置 SSH 无密码访问的过程脚本化。
注意 第一次配置 无密码访问需要 对端密码。密码可以通过文件读入或通过参数传进去。
给你个思路 具体需求就要看你怎么写了。追问

谢谢啊。这些脚本也是刚开始接触,比如我现在要配置192.168.5.74 和192.168.5.75 两台机器,执行a 192.168.5.74 192.168.5.75 后要求192.168.5.74可以ssh 192.168.5.75 无需密码。但是192.168.5.74也并不是执行脚本的这台机器。就是说我要用我现在这台机器,通过该脚本配置很多其他的机器ssh无密码访问

追答

ssh 可以执行远程shell

[root@mondeo ~]# ssh 192.168.5.74 'ssh-keygen'
root@192.168.5.74's password:
Enter file in which to save the key (/root/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Generating public/private rsa key pair.
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:
ab:1a:59:18:1d:d1:9d:11:82:30:99:17:5c:42:c9:d3 root@benz

你需要有三台试验环境来完成脚本编写。

追问

麻烦您帮忙看下这是不是有问题(本机是192.168.5.74,我用本机设置75和76ssh无密码访问,先用您那个命令生成了公钥,但是现在想scp过去,出错了)
[root@three ~]# ssh 192.168.5.75 'scp /root/.ssh/id_rsa.pub root@192.168.5.76:/root/.ssh/'
root@192.168.5.75's password:
Host key verification failed.
lost connection

追答

删除 5.75 /root/.ssh/ 下known_hosts 中有关5.76 的公钥 重新执行。

参考技术A 很简单 配置ssh信任关系就好了到时候直接ssh ip就过去了 有了信任关系 要写脚本也是很简单的事情了追问

谢谢您。不过我不是这个意思,我是指用这个脚本配置好ssh关系。不是配置好ssh再执行别的脚本

以上是关于linux下怎么通过脚本实现多台计算机的ssh无密码访问设置,如脚本为a,则执行a ip1 ip2 ip3……。的主要内容,如果未能解决你的问题,请参考以下文章

linux下怎样设置ssh无密码登录

Linux 如何通过某一台服务器调用执行多台远程服务器上的脚本,结果显示在本地?

Linux ssh无密登陆

Linux ssh无密登陆

怎样用脚本把一个文件同时发送给多台Linux服务器

在MAC下使用VSCode连接远程Linux服务器(无密)