可以自动登录远程服务器的python脚本
程序员文章站
2022-04-28 22:00:41
...
在企业里面,为了IDC机器的安全,通常不能直接登录IDC里面的机器,通过需要通过跳板机登录,在跳板机上面放置如下脚本,可以省去大量的登录工作。当然,也可以通过secureCRT的login script,但是每次输入跳板机的密码也是件麻烦事情。
以下脚本存在不足的地方是需要明文保存密码,vi之后会出现点可视区域变小。实现来源来自互联网,只是稍加改动,增加了信任机器间直接登录的情况。需要安装pexpect,安装方式搜索pexpect+python即可。
以下脚本存在不足的地方是需要明文保存密码,vi之后会出现点可视区域变小。实现来源来自互联网,只是稍加改动,增加了信任机器间直接登录的情况。需要安装pexpect,安装方式搜索pexpect+python即可。
#!/usr/bin/python #coding=utf-8 # 这是一个登录服务器的自动ssh脚本 ,需要安装pexpect module # # # @created on 2012.3.7 5:56 am # import os import sys import pexpect import string Server_Ip={ "主机代号":["主机IP地址","登录账户","密码","服务器用途"] # 在此处添加主机列表 } def auto_connect(): """ 自动登录实现,提供选择功能 """ while True: print "\n\n###########################################################" for server in Server_Ip.keys(): print "["+server+"]=>"+"["+Server_Ip[server][0]+"]"+" [服务器用途]=>"+"["+Server_Ip[server][3]+"]" print "###########################################################\n" destination=raw_input("[forest,which server do you want to connect?]=>") if(Server_Ip.has_key(destination)): print "\n正在连接服务器"+destination break else: print "\n服务器没有添加到列表中" return URL="ssh %s@%s"%(Server_Ip[destination][1],Server_Ip[destination][0]) # print URL # 发起连接进程 try: p=pexpect.spawn(URL) if Server_Ip[destination][2] != "": p.expect("password:") p.sendline(Server_Ip[destination][2]+"\n") p.interact() except: print "关闭连接" auto_connect()
上一篇: [20190226]测试使用bbed恢复索引.txt
下一篇: 网站登录,个人遇到的问题