Mac自带终端免密远程登录

其实就是使用脚本来代替我们输入命令:

1.新建一个SSH文件

这里我在用户目录下新建一个文件夹,存放我们的ssh文件

mkdir sshConfig
cd sshConfig
vim test1.ssh
2.写脚本

上半部分是定义我们的用户名,密码,端口,xxx部分按照你自己的填写就行了

#!/usr/bin/expect -f
set user root
set host xxx.xxx.xxx.xxx
set password xxx
set port xx
set timeout -1

spawn ssh $user@$host -$port
expect "password:*"
send "$password\r"
interact
3.执行
expect test1.ssh

大功告成!这样既不需要其他远程软件,也不需要手输账密了。缺点是每个服务器都需要建立一个ssh文件。


2020.04.01更新
发现用这种方法登陆会导致无法用rzsz命令,我们可以使用一个shell脚本解决:

#!/bin/sh
export LC_CTYPE=en_US
expect ssh文件路径

另存为sh文件,每次执行这个脚本就行了
不过既然已经使用了shell脚本,我们就没必要每个ssh都对应一个shell脚本了,我们可以把它们汇集到一起,通过输入序号选择服务器:

#!/bin/sh
echo "===服务器列表==="
echo "1.A服务器"
echo "2.B服务器"
echo "3.C服务器"
echo "4.D服务器"
echo "================"
echo "请输入您要登录的服务器序号:"
read sort
clear
export LC_CTYPE=en_US
case $sort in
"1" )
	expect ssh文件路径
;;
"2" )
	expect ssh文件路径
;;
"3" )
	expect ssh文件路径
;;
"4" )
	expect ssh文件路径
;;
* )
	echo "您输入的序号不正确!"
esac

这样,每次运行这一个sh就行了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值