加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

一行命令登录服务器

发布时间:2020-12-15 20:07:59 所属栏目:安全 来源:网络整理
导读:相信程序员们都避免不了通过堡垒机登录服务器来查看问题,如何快速登录服务器而不用繁琐地输入密码等等步骤呢?下面的shell脚本帮你完成。 auto-login.sh #!/usr/bin/expect -f#定义堡垒机账号/密码/IPset user ***set passwd ***set bastion_host ***if { $

相信程序员们都避免不了通过堡垒机登录服务器来查看问题,如何快速登录服务器而不用繁琐地输入密码等等步骤呢?下面的shell脚本帮你完成。
auto-login.sh

#!/usr/bin/expect -f

#定义堡垒机账号/密码/IP

set user ***
set passwd ***
set bastion_host ***

if { $argc == 1 } {
    #将第一个参数赋值给dest_host
 set dest_host [lindex $argv 0]
 #qa
 if { $dest_host == "qa" } {
  set dest_host qa-web-v01
 }
 #preview
 if { $dest_host == "pre" } {
  set dest_host sys-pre-v01
 }
}

#执行ssh操作,登陆到堡垒机
spawn ssh $user@$bastion_host
#检测命令行的返回信息,匹配password关键字
expect "*password:"
#自动输入密码 回车
send "$passwdn"
#没有参数直接返回终端
if { $argc == 0 } {
 interact
 exit 1
}
#监测命令行的返回信息,匹配下面关键字
expect "Opt or Host>:"
#发送登录的机器
send "$dest_hostn"
#自动交互
interact

然后就是将这个脚本执行放到.bashrc文件或是your_custom.zsh(mac os)文件中别名就ok啦

alias autologin='/usr/local/sbin/auto-login.sh'

接下来就可以:

$ autologin qa //直接到qa机器
$ autologin pre //直接到preview机器
$ autologin {machineName} //直接到指定机器
$ autologin //跳到堡垒机欢迎界面 可以查看需要的机器名称

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读