python ssh 连接远程服务器,修改文本内容,调用脚本

今天小编get到一个用python的paramiko库创建ssh对象,连接到远程服务器,并且修改文件内容调用脚本的好方法!!

主角当然是paramiko库啦,利用paramiko创建一个ssh对象,用于连接远程服务器

import paramiko
ssh = paramiko.SSHClient()#创建SSH对象

设置允许连接不在know_hosts的主机,ssh会将 访问过计算机的公钥(public key)都记录在~/.ssh/known_hosts,当下次访问相同计算机时,OpenSSH会核对公钥。如果公钥不同,OpenSSH会发出警告,所以我们得设置ssh允许连接不在know_hosts的主机

ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())#允许连接不在know_hosts文件中的主机

设置好之后就可以开始连接服务器了,分别输入IP地址,端口,用户名和密码

ssh.connect(hostname=‘‘, port=, username=‘‘, password=‘‘)#连接服务器

然后就可以输入命令了,只要在linux终端能够执行的命令都能输入。

返回的第一个值为输入的命令,第二个值为命令返回的结果,第三个值为命令错误返回的结果

stdin,stdout,stderr = ssh.exec_command("")

打印出来

print(stdin.read()) print(stdout.read()) print(stderr.read())

用完之后记得把ssh给关了,免用占用资源

ssh.close()

原文地址:https://www.cnblogs.com/4991tcl/p/11053069.html

时间: 2024-11-12 20:19:06

python ssh 连接远程服务器,修改文本内容,调用脚本的相关文章

Mac下ssh连接远程服务器时自动断开问题

在mac下使用securecrt通过ssh连接远程服务器时,总会一段时间没有动作后,ssh被自动断开.在windows下用xmanager貌似没有遇到过这个问题. 在网上找了解决方法如下: 客户端配置: Global.ini文件中将D:"Disconnect After Resume Timeout"=00000000改为D:"Disconnect After Resume Timeout"=FFFFFFFF securecrt界面上配置:send string \

Python3 写的远程批量修改文件内容的脚本

一.说明: 1.利用Python的paramiko模块,调用远程的shell命令去修改相应文件. 2.有一个专用配置文件,列出服务器清单. 3.Python循环读取配置文件的服务器IP去连接它,并执行相应的命令. 4.主要是有一个正则,匹配Zabbix agent中的IP设置. [[email protected] ~]# sed -i 's/^Server=[0-9]*\.[0-9]*\.[0-9]*\.[0-9]*/Server=33.66.88.99/g' zabbix_agentd.co

ssh连接云服务器Host key verification failed

一.用ssh连接远程服务器意外报错. 报错信息 $ ssh [email protected]*.* @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ IT IS POSSIBLE THAT SOMEON

python利用paramiko连接远程服务器执行命令

python中的paramiko模块是用来实现ssh连接到远程服务器上的库,在进行连接的时候,可以用来执行命令,也可以用来上传文件. 1.得到一个连接的对象 在进行连接的时候,可以使用如下的代码: def connect(host): 'this is use the paramiko connect the host,return conn' ssh = paramiko.SSHClient() ssh.set_missing_host_key_policy(paramiko.AutoAddP

用Python写个自动ssh登录远程服务器的小工具

很多时候我们喜欢在自己电脑的终端直接ssh连接Linux服务器,而不喜欢使用那些有UI界面的工具区连接我们的服务器.可是在终端使用ssh我们每次都需要输入账号和密码,这也是一个烦恼,所以我们可以简单的打造一个在Linux/Mac os运行的自动ssh登录远程服务器的小工具.来个GIF动画示例下先: 概述 我们先理一下我们需要些什么功能: 1. 添加/删除连接服务器需要的IP,端口,密码 2. 自动输入密码登录远程服务器 对,我们就做这么简单的功能 开始写代码代码比较长,所以我也放在在Github

ssh免密连接远程服务器

ssh免密连接远程服务器 借助ssky-keygen和ssh-copy-id工具,通过4个简单的步骤实现无需输入密码登录远程Linux主机 生成密钥 通过内置的工具生成RSA算法加密的密钥 ssh-keygen -t rsa 回车默认选项即可,会在当前用户的home文件下生成密钥文件 拷贝密钥 ssh-copy-id -i .ssh/id_rsa.pub -p port [email protected] 输入目标服务器的用户名user,地址ip,端口port即可(如采用默认22端口可忽略-p)

连接远程服务器的几种方式/Vscode + Remote

连接远程服务器的几种方式 前言 最近在尝试做网盘,使用的技术栈大概是 .net core + MVC + Mysql + Layui,主要目的是通过这个具体的项目,熟悉熟悉 .net core 开发,.net 的未来就是他了! 但是作为一个菜鸟,还是希望自己的项目能在某个服务器上跑起来的(可能大多数学计算机的人都有过类似的想法吧),所以就在 vultr 上租了个 vps 打算实验了,顺便尝试一下各种 remote 方法吧! 必要的准备 首先你得有个VPS-- 阿里云,vultr,banwagon

ssh连接linux服务器只显示-bash-4.1#不显示路径解决方法

ssh连接linux服务器只显示-bash-4.1#不显示路径时,我们只需要修改  ~/.bash_profile文件,如果不存在这个文件,那么新建一个,增加内容  export PS1='[\[email protected]\h \W]\$’ 保存退出,最后执行, source ~/.bash_profile 这时shell就可以显示路径了

使用WinScp连接远程服务器和传输文件

早在3月份,我就使用到了WinScp,WinSCP是一个Windows环境下使用SSH的开源图形化SFTP客户端.同时支持SCP协议. 它的主要功能就是在本地与远程计算机间安全的复制文件..WinScp也可以链接其他系统,比如linux系统. 搬回原部门后,我庆幸没有那么早的删除掉这个工具,相对于XShell而言,你可以更加直观的看到文件的层级结构和控制文件的传输,无需再依赖其他插件. WinSCP的下载和安装 这个没什么好说的,直接百度就好. WinSCP连接远程服务器 先来介绍一下基本使用吧