python3.5-ssh免输入密码过程
ssh远程批量执行命令要输密码很蛋疼,虽然有很多种方式,大概有4、5种。原理基本类似。 这里我就讲一个python的模拟登陆 模块
此刻的时间是:2015年11月19日11:11:47 基本上所有都官网最新的,除了centos - -! 。下面链接也为此刻官网最新的安装包。我是雷锋
环境:centos 6.6
python:3.5 wget https://www.python.org/ftp/python/3.5.0/Python-3.5.0.tgz
paramiko:1.7.7.1 wget http://www.lag.net/paramiko/download/paramiko-1.7.7.1.tar.gz
pip:7.1.2 wget https://pypi.python.org/packages/source/p/pip/pip-7.1.2.tar.gz
setuptools : wget https://bootstrap.pypa.io/ez_setup.py -O - | python
pycrypto2.6 https://ftp.dlitz.net/pub/dlitz/crypto/pycrypto/pycrypto-2.6.1.tar.gz
一、安装paramiko模块
python模拟登陆需要安装paramiko模块,而paramiko模块又依赖于pycrypto2.6 这个里面有版本限制,就是不能太低版本,这里我们可以通过paramiko的setup.py的安装文件来看语句

下面还有这个模块所支持的python 版本,果然支持最新的3.5

废话那么多,开始安装吧。
首先安装openssl 和openssl-devel 因为这2个安装包要在安装python3.5之前安装,不然以后安装pip就会报这样的错误

如果出现这样的报错,就先安装上面的2个包,然后在删掉python的安装目录,重新安装python即可。
openssl用yum 安装就好。yum默认用的是python2.6的解释环境,将系统默认的python改成3之后记得要去改yum的解释环境哦。python3.5的安装这里就不BB了。
yum -y install openssl openssl-devel
然后在安装python3.5 并将python3.5改为python默认解释。
编译时报错:error: command 'gcc' failed with exit status 1;这是因为缺少python-dev的软件包,所yum -y install python-devel
ln -s /usr/local/bin/python3 /usr/bin/python
安装pip之前先安装一个依赖模块setuptools :
wget https://bootstrap.pypa.io/ez_setup.py -O - | python
安装pip
tar zxf pip-7.1.2.tar.gz
cd pip-7.1.2
python setup.py build && python setup.py install
接下来安装paramiko的依赖模块pycrypto2.6
tar zxf pycrypto2.6.tar.gz
cd pycrypto2.6
python setup.py build && python setup.py install
然后在安装paramiko-1.7.7
tar zxf paramiko-1.7.7.tar.gz
cd paramiko-1.7.7
python setup.py build && python setup.py install
然后我们在python 里面来测试一下模块是否安装好了。

如果其他系统有报错,提示上面模块没安装用pip install 安装即可。至此模块安装完毕。
二、功能实现
#/usr/bin/python
#++++++++++++++++++++++++++this version python3.5+++++++++++++++++++syw
import paramiko
ipadd = str(input("Enter your ipaddr:"))
cmd = str(input("Enter your command:"))
port = 22
name = "root"
pwd = "yingzi"
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect(ipadd,port,name,pwd)
stdin,stdout,stderr = ssh.exec_command(cmd)
print (stdout.readlines(),end='')
ssh.close()
其中stdout 返回命令的结果,格式很乱。我也不知道什么原因。希望知道的大神给小弟点拨点拨。 谢谢
python3.5-ssh免输入密码过程的更多相关文章
- ssh免输入密码登录
ssh免输入密码登录 ubuntu下生成ssh密钥参见. https://confluence.atlassian.com/display/BITBUCKET/Use+the+SSH+prot ...
- SSH免密码(日志三)
上一篇:JDK安装以及安装过程中出现的问题(日志二) 原理,就是RSA加密,含有公钥和私钥,具体言之,用公钥来确认请求人是否是私钥的持有人. 1, 2, 3, 4, ssh免密码过程中遇到的问题:需要 ...
- SSH免密登陆配置过程和原理解析
SSH免密登陆配置过程和原理解析 SSH免密登陆配置过很多次,但是对它的认识只限于配置,对它认证的过程和基本的原理并没有什么认识,最近又看了一下,这里对学习的结果进行记录. 提纲: 1.SSH免密登陆 ...
- gitlab用户添加ssh免密钥认证后clone还是要求输入密码
今天在centos 7公网服务器上安装gitlab在配置ssh免密钥时遇到一个奇怪的事,正确添加了本机的公钥到gitlab账户上,进行clone时死活都要你输入密码gitlab使用yum安装的,之前在 ...
- linux ssh rsa免输入密码
A为本地主机(即用于控制其他主机的机器) ; B为远程主机(即被控制的机器Server), 假如ip为172.24.253.2 ; 在A上的命令: ssh-keygen -t rsa (连续三 ...
- Hadoop集群搭建过程中ssh免密码登录(二)
一.为什么设置ssh免密码登录 在集群中,Hadoop控制脚本依赖SSH来执行针对整个集群的操作.例如,某个脚本能够终止并重启集群中的所有守护进程.所以,需要安装SSH,但是,SSH远程登陆的时候,需 ...
- Linux的SSH免密登录认证过程研究
一.先看下SSH免密登录使用到的工具和生成的文件 工具:ssh-keygen用于生成秘钥文件,其中秘钥分为公钥和私钥.ssh-copy-id用于复制公钥文件到被控制机. 文件:ssh-keygen生成 ...
- 解决:centos配置ssh免密码登录后仍要输入密码
转自https://www.jb51.net/article/121180.htm 第一步:在本机中创建秘钥 1.执行命令:ssh-keygen -t rsa 2.之后一路回车就行啦:会在-(home ...
- 配置SSH使用密钥认证:实现免输入密码登陆
一.实际工作生产场景分析 张三是某公司员工,由于业务上的需求,需要经常使用SSH工具登陆服务器A的root账户进行操作,为避免重复进行密码验证身份.现采用张山的公钥发送给服务器A,免输入密码登陆到服务 ...
随机推荐
- C#工具类OracleHelper,基于Oracle.ManagedDataAccess.Client封装
基于Oracle.ManagedDataAccess.Client封装的Oracle工具类OracleHelper,代码如下: using System; using System.Data; usi ...
- 实验吧——你真的会PHP吗?(intval范围 php中\00的利用)
题目地址:http://ctf5.shiyanbar.com/web/PHP/index.php 抓包在header中发现提示 访问得到源码 <?php $info = "" ...
- 不懂APS系统?十个问答让你对APS瞬间明明白白
本文为您解答APS自动排程系统导入中客户常见的问题,帮助您评估企业是否适合导入APS,并了解需要的人力和资金的投入. Q1:哪些企业需要导入APS? A1: 编制生产计划有困难的企业都可以开始考虑导入 ...
- MySQL Backup--使用mysqldump依次备份所有数据库
某些场景下需要将数据库分开备份,有些场景又需要将所有数据库合在一起备份,特此整理此备份脚本 #!/bin/bash ##======================================== ...
- 【MySQL】自增步长调整
mysql> show variables like '%increment%'; +-----------------------------+-------+ | Variable_name ...
- 超快速度下载MNIST数据集
Download mnist dataset and extract in 1 second! For Caffe users: create $CAFFE/data/mnist/get_mnist_ ...
- linux环境安装配置nginx
安装依赖 yum install gcc yum install pcre-devel yum install zlib zlib-devel yum install openssl openssl- ...
- Windows Server 2008 R2(x64) IIS7+PHP5.6.30(FastCGI)环境搭建
相关软件下载: 1.PHP下载地址: http://windows.php.net/downloads/releases/ 1.安装Microsoft Visual C++ 2012 Redistri ...
- db.sqlite如何导出转储为sql文件
在使用 django框架写博客时,用的是sqlite数据库,想要将其中的db.sqlite转储为sql文件, 我是在linux下使用的,很多linux系统下都自带sqlite 检查是否安装sqlite ...
- C++对c中函数的拓展,函数重载
函数参数的拓展 inline内联函数 最好 小的函数都写成内联函数, 写上inline 编译器不一定内联, C++中推荐使用内联函数替代宏代码片段 C++中使用inline关键字声明内联函数 内联函数 ...