写一个Linux免密登录的shell脚本
时间: 2023-04-05 11:04:43 浏览: 59
我可以回答这个问题。您可以使用ssh-keygen命令生成公钥和私钥,然后将公钥添加到目标Linux服务器的authorized_keys文件中。这样,您就可以通过ssh连接到服务器而无需输入密码。具体步骤可以参考以下链接:https://www.linuxidc.com/Linux/2018-01/150845.htm
相关问题
使用shell写一个Linux批量免密的脚本
以下是一个简单的脚本,可以批量将本地的公钥添加到多台远程Linux机器的authorized_keys文件中,实现免密登录。
```shell
#!/bin/bash
# 定义远程主机的IP地址和用户名
hosts=(
"192.168.1.100 root"
"192.168.1.101 root"
"192.168.1.102 root"
)
# 生成本地公钥
ssh-keygen -t rsa
# 循环遍历所有主机
for host in ${hosts[@]}
do
# 获取主机IP和用户名
ip=$(echo $host | cut -d ' ' -f 1)
user=$(echo $host | cut -d ' ' -f 2)
# 将本地公钥复制到远程主机的authorized_keys文件中
ssh-copy-id -i ~/.ssh/id_rsa.pub $user@$ip
done
```
请注意,使用此脚本需要在本地生成公钥,并且每个远程主机需要安装ssh服务。您还需要确保可以通过SSH连接到这些主机,否则将无法将本地公钥复制到远程主机上。
写一个ssh批量免密登录的shell脚本
好的,我可以回答这个问题。以下是一个 ssh 批量免密登录的 shell 脚本:
```
#!/bin/bash
# 遍历服务器列表
for server in $(cat servers.txt)
do
# 使用 ssh-copy-id 免密登录
ssh-copy-id $server
done
```
请注意,此脚本假定您已将所有的服务器名称存储在 `servers.txt` 文件中,并且您已正确配置了 SSH 的免密登录功能。如果您不确定如何完成这些操作,请参考相关文档或网上搜索相关信息。