利用脚本实现ssh远程免密连接
当我们进行ssh远程连接服务器的时候,需要记住服务器用户名、ip地址以及密码,比较麻烦。本文介绍了一种使用脚本来进行ssh远程连接到服务器的方法。
1 写一个ssh脚本
首先输入以下指令,创建一个脚本文件,将其命名为ssh_example.sh(你可以自定义名字),并用vim打开。
vim ssh_example.sh
然后在文件中添加以下内容:
ssh user@192.164.112.64 #注意:user为你所要登陆服务器的用户名,@后面为服务器的ip地址
按 Esc
,回到正常模式,并输入 :wq
保存并退出。
2 为脚本添加可执行权限
输入以下指令,为脚本文件添加用户可执行权限:
chmod u+x ssh_example.sh
然后我们就可以通过 ./ssh_example.sh
来对服务器进行远程连接了,不过此时我们还需要输入服务器的密码。
3 配置公钥和密钥
3.1 在主机生成秘钥对
ssh-keygen -t rsa
默认回车,如果有问yes/no的地方输入yes,直到出现以下信息,则表示成功:
The key's randomart image is:
+---[RSA 3072]----+
| . B+ |
| .. B +o |
| .o. =.. |
| oo.+ oo . |
| ++S+ +. . |
| .+ o+ .. . |
| o*o. . o |
| .. B+.o o |
| ..o*BX+ E |
+----[SHA256]-----+
3.2 将公钥复制到服务器
ssh-copy-id -p 22 -i ~/.ssh/id_rsa.pub user@192.164.112.64 # 注意:这里的服务器用户名和ip地址填你自己的
# 然后会让输入密码
这时候登录服务器,会发现在/home/user/.ssh/目录下多了个文件authorized_keys。
现在你只需要输入 ssh_example.sh
就可以直接连接到服务器了,不再需要输入密码了。
还没有评论,来说两句吧...