Linux生成ssh公钥免密码登录远程主机和Xshell跨跳板机登录

时间:2022-08-31 11:34:19
Linux生产秘钥、公钥可以免密码登录远程主机,因为公司内网host设置了禁止直接登录,需经过跳板机ssh登录.
#在登录host(或跳板机)生成认证密钥(私钥公钥对)  
1:ssh-keygen -t rsa
#把本机(或跳板机)的公钥追加到目标host对应登录账号的 ~/.ssh/authorized_keys 里,可以手动添加或使用ssh-copy-id
2:ssh-copy-id -i ~/.ssh/id_rsa.pub user_acount@remote_ip
执行后需输入hejm账号对应的密码,后续可以直接ssh登录
注:如果ssh的端口不是22,需指定端口号
ssh-copy-id -i ~/.ssh/id_rsa.pub -p 23 user_acount@remote_ip
3.XShell使用Xagent代理自动进行跳转机登录后登录远程主机(免密码登录)
Xshell>Tools>Launch Xagent,开启Xagent
 
4.在Session(会话)管理中,XShell>File>Open>Sessions管理里,配置对应Sessions,配置对应跳板机的账号密码.
同时Login Scripts里输入执行登录脚本ssh user_acount@remote_ip, SSH编辑项里启用Use Xagent和Launch Xagent automatically,
保存之后便可以使用该会话登录remote_ip
 
5.除了在跳板机生成认证秘钥,Xshell的Xagent也提供生成管理认证秘钥的功能,另一种方式:
a)Xshell>Tools>Launch Xagent>Manage Keys,可以生成对应秘钥(会要求需要秘钥管理输入密码,密码可以为空,同上面跳板机上生成方式一样)
 
b)把对应秘钥添加到目标登录远程主机的~/.ssh/authorized_keys 里, 只能手工添加
 
c)同跳板机登录设置一样,执行第4步即可.