返回顶部
首页 > 资讯 > 后端开发 > Python >python模块之paramiko学习<
  • 691
分享到

python模块之paramiko学习<

模块pythonparamiko 2023-01-31 05:01:54 691人浏览 薄情痞子

Python 官方文档:入门教程 => 点击学习

摘要

简介: paramiko是python(2.2或更高)的模块,遵循ssh2协议实现了安全(加密和认证)连接远程机器。 安装所需软件包: Http://ftp.dlitz.net/pub/dlitz/crypto

简介:
paramiko是python(2.2或更高)的模块,遵循ssh2协议实现了安全(加密和认证)连接远程机器。
安装所需软件包:
Http://ftp.dlitz.net/pub/dlitz/crypto/pycrypto/pycrypto-2.5.tar.gz
http://www.lag.net/paramiko/download/paramiko-1.7.7.1.tar.gz
tar zxvf pycrypto-2.5.tar.gz
cd pycrypto-2.5
Python setup.py build
python setup.py install

tar zxvf paramiko-1.7.7.1.tar.gz
cd paramiko-1.7.7.1
python setup.py build
python setup.py install

python脚本简单编写:
管理单台服务器:
脚本一:查询172.16.22.23磁盘使用情况

  1. #!/usr/bin/python 
  2. import paramiko 
  3. hostname='172.16.22.23' 
  4. port=22 
  5. username='root' 
  6. passWord='larryroot' 
  7. if __name__=="__main__": 
  8.         s=paramiko.SSHClient() 
  9.         s.set_missing_host_key_policy(paramiko.AutoAddPolicy()) 
  10.         s.connect(hostname,port,username,password) 
  11.         stdin,stdout,sterr=s.exec_command('df -Th') 
  12.         print stdout.read() 
  13.         s.close() 

脚本二:在远程服务器上执行相应命令

  1. #!/usr/bin/python 
  2. #by larry 
  3. #2011/01/30 
  4. import sys 
  5. import paramiko 
  6.  
  7. hostname=sys.argv[1] 
  8. command = " ".join(sys.argv[2:]) 
  9. port=22 
  10. username='root' 
  11. password='larryroot' 
  12. if __name__=="__main__": 
  13.         s=paramiko.SSHClient() 
  14.         s.set_missing_host_key_policy(paramiko.AutoAddPolicy()) 
  15.         s.connect(hostname,port,username,password) 
  16.         stdin,stdout,sterr=s.exec_command(command) 
  17.         print stdout.read() 
  18.         s.close() 

使用方法:
python single1.py  ip地址   命令
[root@localhost ~]# python single1.py  172.16.22.23 df -TH
Filesystem    Type     Size   Used  Avail Use% Mounted on
/dev/sda2     ext3      13G   6.0G   5.7G  52% /
/dev/sda1     ext3     104M    12M    87M  13% /boot
tmpfs        tmpfs      61M      0    61M   0% /dev/shm
/dev/sda4     ext3     7.6G   465M   6.8G   7% /data
/dev/sdb1     ext3      32G   5.9G    25G  20% /autocd

[root@localhost ~]# python single1.py  172.16.22.23 free -m
             total       used       free     shared    buffers     cached
Mem:           114        112          2          0         26         35
-/+ buffers/cache:         50         64
Swap:         1027          0       1027

脚本三:管理多台服务器:批量查询ip列表中对应服务器的磁盘使用情况

  1. #!/usr/bin/python 
  2. #by larry 
  3. #2011/01/30 
  4. import paramiko 
  5. port=22 
  6. username='root' 
  7. file=open('ip.list') 
  8. for line in file: 
  9.         hostname=str(line.split('\t')[1]) 
  10.         password=str(line.split('\t')[4]).strip() 
  11.         print "##########################",hostname,"########################" 
  12.         s=paramiko.SSHClient() 
  13.         s.set_missing_host_key_policy(paramiko.AutoAddPolicy()) 
  14.         s.connect(hostname,port,username,password) 
  15.         stdin,stdout,sterr=s.exec_command('df -Th') 
  16.         print stdout.read() 
  17.         s.close() 
  18. file.close() 

用法:
[root@localhost ~]# python ssh.py
############################ 172.16.22.22 ########################
Filesystem    Type    Size  Used Avail Use% Mounted on
/dev/sda2     ext3     12G  5.6G  5.3G  52% /
/dev/sda1     ext3     99M   12M   83M  13% /boot
tmpfs        tmpfs     58M     0   58M   0% /dev/shm
/dev/sda4     ext3    7.1G  443M  6.3G   7% /data
/dev/sdb1     ext3     30G  5.5G   23G  20% /autocd

############################ 172.16.22.23 ########################
Filesystem    Type    Size  Used Avail Use% Mounted on
/dev/sda2     ext3     15G  2.6G   11G  19% /
/dev/sda1     ext3     99M   12M   82M  13% /boot
tmpfs        tmpfs     60M     0   60M   0% /dev/shm
/dev/sda4     ext3     33G  377M   31G   2% /data
ip.list文件内容:
dx     172.16.22.22    22   root    larryroot
wt     172.16.22.23    22   root    larryroot

脚本四:类似于脚本三,在所有远程服务器上执行相应命令

  1. #!/usr/bin/python 
  2. #by larry 
  3. #2011/01/30 
  4. import paramiko 
  5. import sys 
  6. port=22 
  7. username='root' 
  8. command = " ".join(sys.argv[1:]) 
  9. file=open('ip.list') 
  10. for line in file: 
  11.         hostname=str(line.split('\t')[1]) 
  12.         password=str(line.split('\t')[4]).strip() 
  13.         print "##################",hostname,"######################" 
  14.         s=paramiko.SSHClient() 
  15.         s.set_missing_host_key_policy(paramiko.AutoAddPolicy()) 
  16.         s.connect(hostname,port,username,password) 
  17.         stdin,stdout,sterr=s.exec_command(command) 
  18.         print stdout.read() 
  19.         s.close() 
  20. file.close() 

用法:
python ssh.py 命令

简单整理到这里通过python的paramiko模块可以很方便的管理服务器,文件的上传下载后续会整理出来。

--结束END--

本文标题: python模块之paramiko学习<

本文链接: https://lsjlt.com/news/188478.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • python模块之paramiko学习<
    简介: paramiko是python(2.2或更高)的模块,遵循SSH2协议实现了安全(加密和认证)连接远程机器。 安装所需软件包: http://ftp.dlitz.net/pub/dlitz/crypto...
    99+
    2023-01-31
    模块 python paramiko
  • Python学习—paramiko模块实
    paramiko模块 paramiko模块提供了ssh及sft进行远程登录服务器执行命令和上传下载文件的功能。这是一个第三方的软件包,使用之前需要安装。 import paramiko # ssh root@ip # 创建一个ssh对象 ...
    99+
    2023-01-31
    模块 Python paramiko
  • Python 之 paramiko 模块
    paramiko模块是用python语言写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接1.安装#paramiko模块的安装需要先安装PyCrypto模块 wget https://pypi.python.or...
    99+
    2023-01-31
    模块 Python paramiko
  • Python模块学习之IPy模块
    IP地址规划是网络设计中非常重要的一个环节,规划的好坏会直接影响路由协议算法的效率,包括网络性能、可扩展性等方面,在这个过程当中,免不了要计算大量的IP地址,包括网段、网络掩码、广播地址、子网数、IP类型等。Python提供了一个强大的第...
    99+
    2023-01-31
    模块 Python IPy
  • Python学习记录-paramiko模
    [TOC] paramiko模块基于SSH用于连接远程服务器并执行相关操作。 1. SSHClient 用于连接远程服务器并执行基本命令 基于用户名密码连接: import paramiko # 创建SSH对象 ssh = parami...
    99+
    2023-01-31
    Python paramiko
  • Python学习之PyYaml模块
    我需要解析twemproxy的配置文件中的pool和后端的redis主机。采用shell解析yml文件太麻烦,正好python有正对于yaml文件解析的pyyaml模块例如twemporxy的配置文件nutcracker.yamlalpha...
    99+
    2023-01-31
    模块 Python PyYaml
  • python学习之argparse模块
    一、简介:argparse是python用于解析命令行参数和选项的标准模块,用于代替已经过时的optparse模块。argparse模块的作用是用于解析命令行参数,例如 python parseTest.py input.txt outpu...
    99+
    2023-01-31
    模块 python argparse
  • Python学习之MySQLdb模块
    CentOS下安装sudo yum install MySQL-python可以参考http://www.mikusa.com/python-mysql-docs/index.html  获取更多信息MySQL-python 为Python...
    99+
    2023-01-31
    模块 Python MySQLdb
  • python paramiko模块
        paramiko模块是python中很重要的模块,他的功能呢主要分为两大块功能。一个是模拟SSH功能登录到远程主机上执行命令。一个是模拟SFTP功能传输文件。paramiko支持密码登陆方式和免密码的私钥登录方式。密码登陆方式代码如...
    99+
    2023-01-31
    模块 python paramiko
  • python之web模块学习-- htt
    1  httplib简介httplib 是python中http协议的客户端实现,可以使用该模块来与 HTTP 服务器进行交互    httplib是一个相对底层的http请求模块,其上有专门的包装模块,如urllib内建模块,goto等第...
    99+
    2023-01-31
    模块 python web
  • python之web模块学习-- url
      下面继续学习python的web模块 ---  urllib2,一个源于urllib又高于urllib的模块。1  urllib2 简介    urllib2是python自带的一个访问网页及本地文件的库。    与urllib相比,显...
    99+
    2023-01-31
    模块 python web
  • python的paramiko模块
      paramiko是用python语言写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接。  由于使用的是python这样的能够跨平台运行的语言,所以所有python支持的平台,如Linux, Solaris, ...
    99+
    2023-01-31
    模块 python paramiko
  • Python学习笔记之json模块和pickle模块
    目录json模块序列化与反序列化json模块中的方法pickle模块总结json模块 json用于不同语言之间的数据交换,比如C和Python之间等等,即可跨语言。而pickle只能...
    99+
    2023-05-18
    json模块 pickle模块 python各个模块讲解
  • python模块学习----nmap模块
    安装nmap模块:pip install python_nmanmap模块说明:python-nmap是一个帮助使用nmap端口扫描器的python库。它允许轻松操纵nmap扫描结果,并且将是一个完美的选择,为需要自动完成扫描任务的系统管理...
    99+
    2023-01-31
    模块 python nmap
  • 小白学习Python之路---re模块学
    本节大纲:   1.正则表达式   2.re模块的学习   3.速记理解技巧   4.挑战练习--开发一个简单的python计算器   5.心得总结   6.学习建议     正则表达式:   正则表达式,又称规则表达式。(英语:Regu...
    99+
    2023-01-31
    之路 模块 Python
  • Python 模块学习
        模块学习: http://wsyht90.blog.51cto.com/9014030/1845737 1、getpass 2、os 3、sys 4、subprocess 5、hashlib 6、json 7、pickle 8、sh...
    99+
    2023-01-31
    模块 Python
  • python模块学习
    系统相关的信息模块: import sys sys.argv 是一个 list,包含所有的命令行参数. sys.stdout sys.stdin sys.stderr 分别表示标准输入输出,错误输出的文件对象. sys.st...
    99+
    2023-01-31
    模块 python
  • python模块paramiko与ssh
      paramiko是用python语言写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接。paramiko支持Linux, Solaris, BSD, MacOS X, Windows等平台通过SSH从一个平台连...
    99+
    2023-01-31
    模块 python ssh
  • python paramiko模块讲解
    Windows下有很多非常好的SSH客户端,比如Putty。在Python的世界里,你可以使用原始套接字和一些加密函数创建自己的SSH客户端或服务端,但如果有现成的模块,为什么还要自己实现呢。使用Paramiko库中的PyCrypto能够让...
    99+
    2023-01-31
    模块 python paramiko
  • Python paramiko模块(实现
    开发堡垒机之前,先来学习Python的paramiko模块,该模块基于SSH用于连接远程服务器并执行相关操作 安装paramiko模块 pip3 install paramiko 基于用户密码方式 import paramiko # 创建...
    99+
    2023-01-31
    模块 Python paramiko
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作