1.在不支持TCL自动应答脚本的机器上实现远程的登录操作。
步骤如下:
原理:使用ssh命令和一个指定的密钥文件来进行身份验证。
1.生成密钥对,在本地执行:
ssh-keygen -t rsa
这将在当前用户的主目录下生成一个名为id_rsa的私钥和一个名为id_rsa.pub的公钥文件。我们将公钥文件复制到远程机器的~/.ssh/authorized_keys文件中,这样就可以使用私钥文件进行身份验证。
2.在远程执行:
mkdir -p ~/.ssh && touch ~/.ssh/authorized_keys
将本地的公钥复制到远程机器的~/.ssh/authorized_keys文件中。可以使用下面的命令:
cat /path/to/id_rsa.pub | ssh user@remote_machine "mkdir -p ~/.ssh && cat >>~/.ssh/authorized_keys"
说明:这里的 /path/to/ 请替换成本地id_rsa.pub所在的目录。
编写登录用的脚本:
#!/bin/bash
remote_ip="192.168.1.10" #远程IP地址
remote_user="root" #远程用户名
key_file="/root/.ssh/id_rsa" #这里请指定私钥所在的路径
ssh "$remote_user"@"$remote_ip"