Python的Crypto模块使用:自动输入Shell中的密码 概述: 准备工作: 安装步骤: 使用:

  现在我们已经越来越多地使用程序去代替人工执行一些操作(比如说,安装一些软件、登录一些服务等等),可是这些操作又有很多的情况是要和人之间进行互动(比如说输入一些yes or no、输入密码、输入自定义数据等)。如果Shell中需要我们去输入这个值,我们的程序又没有提供这样的功能,那么流程就会卡在了这个流程中。当然,我们不希望有这样的情况发生。那么希望这篇文章可以提供一个思路,帮助你解决一些棘手的问题。


准备工作:

1.python

2.pycrypto-2.4.1.tar

  http://download.csdn.net/detail/u013761665/8941689

3.paramiko-1.7.7.1.tar

  http://download.csdn.net/detail/u013761665/8941689


安装步骤:

PyCrypto安装

# wget http://ftp.dlitz.net/pub/dlitz/crypto/pycrypto/pycrypto-2.6.tar.gz
# tar -zxvf pycrypto-2.6.tar.gz
# cd pycrypto-2.6/
# python setup.py build && python setup.py install


paramiko安装

# wget http://www.lag.net/paramiko/download/paramiko-1.7.7.1.tar.gz
# tar xvzf paramiko-1.7.7.1.tar.gz
# cd paramiko-1.7.7.1/
# python setup.py build && python setup.py install


使用:

1.使用paramiko免密码登录SSH

#!/usr/bin/env python
import paramiko

hostname='your ip address'
username='root'
password='your login password'

#port=22
if __name__=='__main__':
    # paramiko.util.log_to_file('paramiko.log')
    s = paramiko.SSHClient()

    s.set_missing_host_key_policy(paramiko.AutoAddPolicy())
    s.connect(hostname = hostname,username=username, password=password)
    stdin, stdout, stderr = s.exec_command('ifconfig;free;df -h')
    print stdout.read()
    s.close()

执行效果:

Python的Crypto模块使用:自动输入Shell中的密码
概述:
准备工作:
安装步骤:
使用: