用shell写一个自动ssh远程连接的脚本,远程主机名admin,密码123
时间: 2023-09-21 14:05:58 浏览: 164
### 回答1:
您可以使用如下脚本来自动 ssh 远程连接:
```bash
#!/bin/bash
# 设置远程主机名
remote_host=admin
# 设置密码
password=123
# ssh 连接远程主机
sshpass -p "$password" ssh "$remote_host"
```
请注意,这个脚本使用了 sshpass 工具,如果你的系统没有安装 sshpass,请先安装:
```bash
sudo apt install sshpass
```
在执行脚本之前,请确保您已经在本地主机上生成了 ssh 密钥对,并将公钥拷贝到远程主机的 `~/.ssh/authorized_keys` 文件中。这样,你就可以在脚本中省略密码,并使用密钥对进行认证,从而更安全地连接远程主机。
### 回答2:
可以使用以下脚本实现自动ssh远程连接:
```
#!/bin/bash
HOSTNAME="admin"
PASSWORD="123"
# 执行ssh连接命令
sshpass -p $PASSWORD ssh $HOSTNAME
```
在脚本中,我们使用了`sshpass`命令来自动输入密码,以避免手动输入密码。`sshpass`是一个可以自动填充ssh密码的工具,需要事先安装。
将以上脚本保存为`ssh_connect.sh`文件,并赋予执行权限。
在终端中执行以下命令来运行脚本:
```
./ssh_connect.sh
```
脚本会自动连接到远程主机`admin`并输入密码`123`完成身份验证。
请注意,在使用密码进行身份验证的情况下,为了安全,建议在执行脚本之前进行必要的权限和访问控制设置,以确保脚本只能被授权的用户执行。
另外,除了使用密码进行身份验证,还可以通过公钥认证等其他方式来实现更加安全的远程连接。
### 回答3:
可以使用以下脚本来实现自动 ssh 远程连接远程主机。
```shell
#!/bin/bash
# 远程主机的信息
host="admin"
password="123"
# ssh 连接远程主机
sshpass -p $password ssh $host
```
该脚本使用了 `sshpass` 工具来自动输入密码进行 ssh 连接。请确保在运行脚本之前已经安装了 `sshpass` 工具。如果没有安装,可以通过以下命令进行安装:
```shell
sudo apt-get install sshpass
```
脚本中的变量 `host` 和 `password` 分别存储了远程主机的主机名和密码。在实际使用时,可以根据实际情况修改这些变量的值。
要运行该脚本,只需要在终端中执行以下命令:
```shell
./script.sh
```
执行该命令后,将会自动进行 ssh 连接,并提示输入密码。输入正确的密码后,即可成功登录到远程主机。
注意:为了保证脚本的安全性,请确保将脚本的权限设置为只有脚本所有者可执行,即通过以下命令进行设置:
```shell
chmod 700 script.sh
```
请注意,在使用自动 ssh 连接时,请确保密码的安全性,不要将脚本放在可能被他人访问到的位置,并且定期更改密码以保护您的远程主机的安全。
阅读全文