堡垒机python写一个sshe脚本

简介:

目的:当客户在web端登录账户sean时候,系统自动运行某个脚本,脚本内容为各个主机的IP,等终止这个脚本后,系统自动退出当前用户。

编写ssh python脚本:

    

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#!/usr/bin/env python
import  os
ip_file  =  '/home/sean/ip.txt'
log_file  =  '/usr/local/ajaxterm/share/ajaxterm/test.txt'
=  file (ip_file)
ip_dic  =  {}
num  =  0
while  True :
         line  =  f.readline()
         if  len (line)  = =  0 : break
         num  + = 1
         ip_dic[num]  =  line
f.close()
while  True :
    try :
         for  a,b  in  ip_dic.items():
                 print  '\033[32;1m%s. %s\033[0m' % (a,b),
         option  =  int ( raw_input ( 'please choose one server to connect:' ))
         if  option  in  ip_dic.keys():
                 print  ip_dic[option],
                 =  file (log_file, 'a' )
                 f.write( '\nLogin Info: connect to %s\n'  % ip_dic[option])
                 f.close()
                 user  =  raw_input ( 'username:' ).strip()
                 cmd  =  'ssh %s@%s'  % (user,ip_dic[option])
                 os.system(cmd)
         else :
                 print  'Input error!'
    except  ValueError:
         print  'Wrong value!'

在sean用户的宿主目录下修改.bash_profile文件,使其登录便执行脚本

1
2
3
4
5
6
7
8
9
10
11
[root @yunwei  sean] # cat .bash_profile
# .bash_profile
# Get the aliases and functions
if  -f  ~/.bashrc ]; then
         . ~/.bashrc
fi
# User specific environment and startup programs
PATH= $PATH : $HOME /bin
export PATH
python term_console.py
logout

安装Ajaxterm

这里我们有一个python写的程序,能够把ssh转换到http.从而让我们在浏览器中完成我们的远程操作.

     首先是下载ajaxterm这个软件.安装很简单

# ./configure --perfix=/usr/local/ajaxterm

# make

# make install

修改配置文件后启动qweb.QWebWSGIServer(at,ip='localhost',port=int(o.port),threaded=0,log=o.log).serve_forever()  把localhost更改为0.0.0.0 然后启动

[root@yunwei bin]# ./ajaxterm

AjaxTerm at http://localhost:8022/

使用浏览器访问http://192.168.1.160:8022 

切记关闭selinux和iptables命令分别为selinxuenable 0 、service iptables stop

wKiom1TIlpeDut4JAAFPB7hFjZE189.jpg










本文转自 xinsir999 51CTO博客,原文链接:http://blog.51cto.com/xinsir/1609194,如需转载请自行联系原作者
目录
相关文章
|
10天前
|
存储 Shell 区块链
怎么把Python脚本打包成可执行程序?
该文档介绍了如何将Python脚本及其运行环境打包成EXE可执行文件,以便在不具备Python环境的计算机上运行。首先确保Python脚本能够正常运行,然后通过安装PyInstaller并使用`--onefile`参数将脚本打包成独立的EXE文件。此外,还提供了去除命令行窗口和指定可执行文件图标的详细方法。这些步骤帮助用户轻松地将Python程序分发给最终用户。
怎么把Python脚本打包成可执行程序?
|
4天前
|
安全 JavaScript 前端开发
自动化测试的魔法:如何用Python编写你的第一个测试脚本
【8月更文挑战第41天】在软件的世界里,质量是王道。而自动化测试,就像是维护这个王国的骑士,确保我们的软件产品坚不可摧。本文将引导你进入自动化测试的奇妙世界,教你如何使用Python这把强大的魔法杖,编写出能够守护你代码安全的第一道防护咒语。让我们一起开启这场魔法之旅吧!
|
10天前
|
存储 Java 开发者
python脚本实现原理
【9月更文挑战第4天】python脚本实现原理
25 5
|
7天前
|
运维 监控 API
自动化运维:使用Python脚本进行日常管理
【9月更文挑战第6天】在现代的IT环境中,自动化运维已成为提升效率、减少人为错误的关键。本文将介绍如何通过Python脚本简化日常的运维任务,包括批量配置管理和日志分析。我们将从基础语法讲起,逐步深入到脚本的实际应用,旨在为读者提供一套完整的解决方案,以实现运维工作的自动化和优化。
11 1
|
11天前
|
运维 Linux 测试技术
自动化运维:使用Python脚本简化日常任务
【8月更文挑战第34天】在快节奏的IT环境中,自动化运维成为提升效率、降低错误率的关键。本文以Python脚本为例,展示如何通过编写简单的脚本来自动化日常运维任务,如批量更改文件权限、自动备份数据等。文章不仅提供代码示例,还探讨了自动化运维带来的益处和实施时应注意的问题。
|
12天前
|
运维 监控 网络安全
自动化运维:使用Python脚本简化日常任务
【8月更文挑战第33天】在本文中,我们将深入探讨如何通过Python脚本来自动化执行常见的运维任务。从基础的服务器健康检查到复杂的部署流程,Python因其简洁和功能强大的特性,成为自动化工具的首选。文章将展示编写Python脚本的基本方法,并通过实际示例演示如何应用于真实场景,旨在帮助读者提升效率,减少重复性工作。
|
14天前
|
人工智能 数据挖掘 Python
Python 编程入门:从零基础到编写实用脚本
【8月更文挑战第31天】本文旨在为初学者提供一条清晰的学习路径,帮助他们从零开始掌握Python编程。文章将介绍Python的基础概念、语法规则以及如何通过实际项目来巩固知识。我们将避免枯燥的理论阐述,而是通过具体的代码示例和实用的练习任务,让学习过程既有趣又有成效。无论你是想自动化日常任务,还是渴望进入数据科学领域,这篇文章都将为你开启Python世界的大门。
|
11天前
|
运维 监控 Python
自动化运维:使用Python脚本简化日常任务
【8月更文挑战第34天】在数字化时代,高效运维成为企业竞争力的关键。本篇文章将引导你通过Python脚本实现自动化运维,从而提升工作效率和减少人为错误。我们将从简单的文件备份脚本开始,逐步深入到系统监控和自动报告生成,让你的日常工作更加轻松。
|
13天前
|
运维 监控 搜索推荐
自动化运维之宝典:Python脚本实现日常任务管理
在IT运维的日常工作中,重复性任务的自动化处理不仅能提高效率,还能减少人为错误。本文将介绍如何用Python编写简单脚本来自动化常见的运维任务,比如备份文件、监控系统资源和自动更新软件包。我们将一步步构建这些脚本,确保它们易于理解和扩展,最终目标是让读者能够自行定制脚本以适应自己的运维需求。 【8月更文挑战第31天】
|
14天前
|
运维 监控 数据可视化
自动化运维:使用Python脚本进行日志分析
【8月更文挑战第31天】当系统出现问题时,我们通常会查看日志寻找线索。然而,手动阅读大量日志既费时又易出错。本文将介绍如何使用Python脚本自动分析日志,快速定位问题,提高运维效率。我们将从简单的日志读取开始,逐步深入到复杂的正则表达式匹配和错误统计,最后实现一个自动化的日志监控系统。无论你是新手还是老手,这篇文章都将为你提供有价值的参考。让我们一起探索如何用代码解放双手,让运维工作变得更加轻松吧!