linux 批量免密怎么做
时间: 2023-03-29 20:01:04 浏览: 56
可以使用 ssh-copy-id 命令将本地的公钥复制到远程服务器的 authorized_keys 文件中,实现批量免密登录。具体操作可以参考以下步骤:
1. 生成本地公钥:ssh-keygen -t rsa
2. 将公钥复制到远程服务器:ssh-copy-id user@remote_host
3. 输入远程服务器的密码,完成公钥的复制
4. 现在可以使用 ssh user@remote_host 直接登录远程服务器,无需输入密码
相关问题
linux 批量设置免密
可以通过以下步骤批量设置 Linux 服务器之间的免密登录:
1. 在本机生成 SSH 密钥对:
```
ssh-keygen -t rsa
```
2. 将公钥复制到目标服务器:
```
ssh-copy-id username@remote_server
```
3. 使用 for 循环批量设置多台服务器:
```
for i in `cat server_list`; do ssh-copy-id username@$i; done
```
其中,`server_list` 文件中包含需要设置的服务器列表。
通过以上步骤,可以实现批量设置 Linux 服务器之间的免密登录。
使用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连接到这些主机,否则将无法将本地公钥复制到远程主机上。
相关推荐
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)