首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在python中使用不同的主机和密码通过ssh连接多台服务器?

在Python中,可以使用paramiko库来实现通过SSH连接多台服务器的操作。paramiko是一个用于SSH2协议的Python实现,可以用于连接、执行命令和传输文件等操作。

以下是在Python中使用不同的主机和密码通过SSH连接多台服务器的步骤:

  1. 安装paramiko库:在命令行中执行以下命令来安装paramiko库:
  2. 安装paramiko库:在命令行中执行以下命令来安装paramiko库:
  3. 导入paramiko库:在Python脚本中导入paramiko库,以便使用其中的类和方法:
  4. 导入paramiko库:在Python脚本中导入paramiko库,以便使用其中的类和方法:
  5. 创建SSH客户端对象:使用paramiko库的SSHClient类创建一个SSH客户端对象:
  6. 创建SSH客户端对象:使用paramiko库的SSHClient类创建一个SSH客户端对象:
  7. 设置自动添加主机密钥:在连接之前,可以设置自动添加主机密钥的策略,以避免手动确认主机密钥的指纹。以下是一个示例,将自动添加主机密钥的策略设置为接受所有主机密钥:
  8. 设置自动添加主机密钥:在连接之前,可以设置自动添加主机密钥的策略,以避免手动确认主机密钥的指纹。以下是一个示例,将自动添加主机密钥的策略设置为接受所有主机密钥:
  9. 连接服务器:使用SSH客户端对象的connect方法连接服务器。在connect方法中,传入主机名、用户名和密码等连接参数:
  10. 连接服务器:使用SSH客户端对象的connect方法连接服务器。在connect方法中,传入主机名、用户名和密码等连接参数:
  11. 执行命令:连接成功后,可以使用SSH客户端对象的exec_command方法执行命令。以下是一个示例,执行一个简单的命令并打印输出:
  12. 执行命令:连接成功后,可以使用SSH客户端对象的exec_command方法执行命令。以下是一个示例,执行一个简单的命令并打印输出:
  13. 关闭连接:在完成所有操作后,记得关闭SSH连接:
  14. 关闭连接:在完成所有操作后,记得关闭SSH连接:

通过以上步骤,你可以在Python中使用不同的主机和密码通过SSH连接多台服务器。请注意,这只是一个简单的示例,实际应用中可能需要处理异常、使用密钥认证等更复杂的操作。

推荐的腾讯云相关产品:如果你想在腾讯云上管理和部署多台服务器,可以考虑使用腾讯云的云服务器(CVM)产品。云服务器提供了丰富的功能和灵活的配置选项,适用于各种场景和需求。你可以通过以下链接了解更多关于腾讯云云服务器的信息:

请注意,以上答案仅供参考,实际应用中可能需要根据具体情况进行调整和扩展。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

python之fabric模块

python 之 fabric 模块 Fabric 是一个用 Python 开发的部署工具,最大特点是不用登录远程服务器,在本地运行远程命令,几行 Python 脚本就可以轻松部署。...Fabric部署,只需简单地输入两条命令: $ fab pack $ fab deploy Fabric提供几个简单的API来完成所有的部署,最常用的是local()和run(),分别在本地和远程执行命令...Fabric是如何在远程执行命令的呢?其实Fabric所有操作都是基于SSH执行的,必要时它会提示输入口令,所以非常安全。更好的办法是在指定的部署服务器上用证书配置无密码的ssh连接。...-H 指定目标主机,多台主机用‘,’号分隔 -p 远程账号的密码,fab执行时默认使用root账户 -P 以异步并行方式运行多主机任务,默认为串行运行 -R 指定role(角色),以角色名区分不同业务组设备...``ssh``下的私钥文件 --port=PORT 指定SSH连接端口 -R ROLES 根据角色操作,逗号分隔 -s SHELL 指定新shell,默认是``'

1K50

004.Ansible Ad-Hoc命令集

场景4:将172.24.8.31服务器以root执行sleep 20,设置最大连接超时为2s,且设置为后台运行模式,执行过程每2s输出一次进度,如5s还未执行完则终止该任务。...limit参数限定主机做变更 场景2:通过指定具体IP限定主机做变更。...No Yes/no 创建为系统账号,不会改变已经存在的用户 uid 否 可选,设定为用户的uid update_password 否 Always Always On_create always:只有当用户密码不同才会更新密码....Pip简介及使用》,passlib对于不同Python版本使用方式略有差异,Python多版本管理参考《Python多环境管理》。...提示:sha512加密的密码包括特殊元字符,如\n,在传输至远程服务器可能导致密码被转移异常的问题。

1.1K40
  • 如何在多个 Linux 服务器上运行多个命令

    动动发财的小手,点个赞吧! 如果你正在管理多台 Linux 服务器,并且你想在所有 Linux 服务器上运行多个命令,但你不知道该怎么做。...创建 Shell 脚本 因此,您需要首先准备一个脚本,其中包含您要在不同服务器上执行的 Linux 命令。...但我们建议您使用可以在 .ssh/config 文件中指定的 ssh 别名,如如何配置自定义 ssh 连接以简化远程访问中所述。...这种方法更有效和可靠,它允许您为每个远程服务器指定配置选项(如主机名、标识文件、端口、用户名等)。 以下是我们的示例 ssh 主机别名文件,也就是用户特定的 ssh 配置文件。.../commands.sh 上述命令中使用的标志的含义: -h – 读取主机文件。 -P – 告诉 pssh 在输出到达时显示输出。 -I – 读取输入并发送到每个 ssh 进程。

    32620

    【5分钟玩转Lighthouse】Python绘制图表

    本文将讲解如何在Lighthouse等云服务器上通过display、Python、Matplotlib等工具查看和绘制各类图表。...0x02 SSH X11连接 相信大家都会使用SSH客户端连接Linux远程主机,然后通过命令行CLI——通常是shell——来与主机进行交互。...建立支持X11 Fowarding的SSH连接 在SSH会话中实现X11 Forwarding需要SSH的服务器端和客户端都支持,目前较新发行版的系统SSH服务器端配置都是默认支持的。...当然我们可以用display命令查看指定的图片,如: display my-demo-image.png 如果SSH连接时,忘记指定-X参数的话,运行display命令时会报类似地错误,它通常意味着X11...display1.png 上图中可以看到,已打开的gvim和firefox是运行在远程服务器上的GUI应用,(实验的本地主机是没有这两个应用程序的)只是通过SSH X11转发将程序窗口显示转到本地。

    10.1K4617

    自动化运维之Ansible安装部署

    默认通过SSH协议进行远程命令执行或下发配置,无需部署任何客户端代理软件,从而使得自动化环境部署变得更加简单。可同时支持多台主机并行管理,使得管理主机更加便捷。...,同时也支持自定义动态主机清单和指定其他配置文件的位置 Connection plugins 连接插件:负责和被管理主机实现通信。...除支持使用SSH连接被管理主机外,ansible还支持其它的连接方式,所以需要有连接插件将各个主机用连接插件连接到ansible Playbooks(yam1,jinja2)剧本:用来集中定义ansible...#被管理主机分类 192.168.199.131 3 设置SSH无密码登录 为了避免ansible下发指令时输入被管理主机的密码,可以通过证书签名达到SSH无密码登录的效果,使用ssh-keygen产生一对密匙...,使用ssh-copy-id来下发生成的公匙 关闭三台服务器的防火墙 systemctl stop firewalld.service setenforce 0 配置秘钥验证 ssh-keygen -t

    1.5K50

    第二章 SSH服务

    2.1.2 基本实验 下面先来看一下ssh的基本部署步骤: 首先需要两台Linux主机(可以是两台虚拟机),都配置好ip,如:192.168.10.10和192.168.10.11。...用户名@服务器的IP/主机名 示例:ssh 192.168.10.10 ---登录服务器,默认以当前自己的用户名登录服务器 注:会提示是否确定建立连接...windows客户端软件的使用,如:xshell,在实际生产环境中使用颇多,大家一定多加练习与熟悉。...顾名思义,可逆加密就是可以通过算法的逆向操作将数据推回来,即解密,如:加法的逆算法是减法;不可逆算法是无法做逆向计算的,如:md5,hash2算法。...而私钥一般都是本机自己使用的,公钥是发送给其他主机(可发送给多台)使用的,这样这台主机就可以与多台不同的主机加密通信了。 ssh作为安全登录的服务,对账号、密码的传输是加密处理的,采用的是可逆算法。

    1.3K31

    Linux集群管理工具PSSH批量管理服务器

    当你有多台服务器,如果一台一台登录上去管理那就说不出的麻烦,所以批量管理工具就应运而生了。...只要你设置了SSH无密码登录: ssh-keygen -t rsa ssh-copy-id user@host 将密钥分发到响应的host上就可以实现无密码ssh登录和操作了。...安装 python setup.py install pssh使用简介 -h 执行命令的远程主机列表  或者 -H user@ip:port  文件内容格式[user@]host[:port]      ...      -A 提示输入密码并且把密码传递给ssh       -O 设置ssh参数的具体配置,参照ssh_config配置文件       -x 传递多个SSH 命令,多个命令用空格分开,用引号括起来...      软件包内其他命令         pscp  传输文件到多个hosts,他的特性和scp差不多         pslurp  从多台远程机器拷贝文件         pnuke

    1.8K20

    【远程虚拟机】ESXI部署Ubuntu22.04虚拟机无公网IP远程ssh详细攻略

    前言 本篇文章讲解如何在VMware ESXi中创建Linux虚拟机,并结合 Cpolar内网穿透工具配置公网地址,轻松实现随时随地通过SSH远程访问管理本地创建的虚拟机。...VMware Workstation它是一款专业的虚拟机软件,可以在一台物理机上运行多个操作系统,支持Windows、Linux等操作系统,可以模拟多台虚拟机,支持网络虚拟化,可以模拟多台虚拟机之间的网络连接...192.168.50.153 接下来进行在宿主机Windows上SSH远程刚创建的Ubuntu 需要使用SSH客户端来远程连接Ubuntu,这里我使用的ssh客户端是Xshell, 点击新建: 名称:自定义...主机号:Ubuntu的IP地址 端口号:填写22 点击连接 填写Ubuntu用户名、密码点击确定 可以看到使用SSH在本地局域网下连接成功,下面我们安装cpolar内网穿透,实现在公网也可以随时随地远程连接新创建的...Xshell连接,同上步骤一样 主机:填写cpolar生成的公网地址(复制tcp://后面) 端口号:填写生成的tcp地址:后面 (这里我是14216) 点击连接 再输入用户名密码,可以看到同样连接成功

    15610

    python使用paramiko管理多台服务器

    痛点 举个工作中常见的例子,现有这样的需求:需要使用mac客户端,远程连接到Linux服务器,查看上面的文件大小,通常使用的方法是如下几种: 用telnet 用PUTTY 用SCP 用XManager等...paramiko仅需要在本地上安装python以及PyCrypto,对于连接多台服务器,进行复杂及重复的操作的操作特别有帮助。...paramiko 介绍 paramiko是用python语言写的一个第三方库,支持加密认证的方式,遵循SSH2协议,可以进行远程服务器的连接。...)) ssh.connect("123.56.xx.xx",22,"root", "口令") #上面的第二行代码的作用是允许连接不在know_hosts文件中的主机。...,因为现在一般公司级测试环境服务器,运维部门是不提供服务器的密码,会统一使用"跳板机"登陆服务器,所以只能使用秘钥连接方式。

    1.8K20

    自动化运维管理工Ansible安装与配置

    Ruby C/S Ruby语法格式 通过模块实现 Ansible Ansible基于Python开发,集合了众多优秀运维工具的优点,实现了批量运行命令、部署程序、配置系统等功能。...默认通过SSH协议进行远程命令执行或下发配置,无需任何客户端代理软件,从而使得自动化环境部署变得简单,同时支持多台主机并行管理,使得管理主机更加便携。...[mysql] 192.168.144.114 2.3、利用SSH实现登录 控制服务器上操作,为了避免ansible下发指令时输入被管理主机的密码,需要使用SSH证书签名达到免密登录效果。...ssh-keygen -t rsa ssh-copy-id root@192.168.144.111 //发送公匙给被控服务器 ssh-copy-id root@192.168.144.114 当被控制服务器接收到公匙后...,实际已经可以通过ansible进行命令控制,只是,存在每次都需要输入私钥密码交互式验证较为麻烦,因此需要设置免交互代理。

    84220

    SSH连接与自动化部署工具parami

    paramiko paramiko是基于Python实现的SSH2远程安全连接,支持认证及密钥方法。可以实现远程命令执行,文件传输,中间SSH代理等功能,相对于Pexpect,封装层次更高。...注意不同的情况,如果执行完telnet命令后,telnet的换行符是\r\n # ssh=s.invoke_shell() #在SSH server端创建一个交互式的shell,且可以按自己的需求配置伪终端...(policy):设置连接的远程主机没有本地主机密钥时的策略。...,堡垒机)IP -H 指定目标主机,多个用“,”分割 -P 异步运行多主机任务 -R 指定角色,以角色来区分机组 -t 设备连接超时时间,秒 -T 远程主机命令执行超时时间,秒 -w 当命令执行失败,发出警告...reboot,重启远程主机,如reboot() @task函数装饰器,标识函数为fab可调用的,否则对fab不可见 @runs_once,标识函数只会执行一次,不受多台主机影响。

    1.3K10

    说下ansible吧(基础篇)

    前言 之前一直用的都是saltstack,C/S架构的,需要master端以及minion端,一台或者多台master端,批量控制minion端 ansible呢,没那么复杂,基于ssh协议来的批量部署工具...源码安装(不作说明,自行百度,建议源或者pip) 基础介绍 准备 书写hosts文件 vim /etc/ansible/hosts ---------------- [test] xxx.xx.xx 无密码连接远程服务器设置...(ansible默认通过ssh公钥方式登录) 添加公钥文件,见上面无密码连接远程服务器设置 添加一个--ask-pass参数 ansible text -m shell -a "ls /www" --user...比如ping,shell -M --module-path 指定模块存放的路径,一般是自定义的一些模块 -i --inventory 改变默认的行为 连接目标主机参数 -K --ask-pass 密码方式连接远程主机...=root 这样,这个主机的别名就是jumper Inventory连接参数 ansible_ssh_host # 连接的远程主机名 ansible_ssh_port # ssh端口号 ansible_ssh_user

    64930

    Linux 下自动化工具 Parallel SSH 中文使用指南

    parallel-ssh 是为小规模自动化而设计的异步并行的 SSH 库,包括 pssh、pscp、prsync、pslurp 和 pnuke工具,其源代码使用 Python语言编写开发的。.../libexec/bin/pssh-askpass 编号 子命令 对应功能解释 1 pssh 通过 ssh 协议在多台主机上并行地运行命令 2 pscp 通过 ssh 协议把文件并行地复制到多台主机上...3 rsync 通过 rsync 协议把文件高效地并行复制到多台主机上 4 slurp 通过 ssh 协议把文件并行地从多个远程主机复制到中心主机上 5 pnuke 通过 ssh 协议并行地在多个远程主机上杀死进程...1. pssh 通过 ssh 协议在多台主机上并行地运行命令 命令参数使用 编号 参数选项 对应参数解释 1 -h HOST_FILE 指定主机文件列表文件;内容格式为”[user@]host[:port...设置 SSH 的选项 9 -x ARGS 额外的命令行参数使用空白符号、引号、反斜线处理 10 -X ARG 额外的命令行参数,单个参数模式,同-x 参数 11 -A 手动输入密码模式 12 -i 每个服务器内部处理信息输出

    97720

    Linux 下自动化工具 Parallel SSH 中文使用指南

    parallel-ssh 是为小规模自动化而设计的异步并行的 SSH 库,包括 pssh、pscp、prsync、pslurp 和 pnuke工具,其源代码使用 Python语言编写开发的。.../libexec/bin/pssh-askpass 编号 子命令 对应功能解释 1 pssh 通过 ssh 协议在多台主机上并行地运行命令 2 pscp 通过 ssh 协议把文件并行地复制到多台主机上...3 rsync 通过 rsync 协议把文件高效地并行复制到多台主机上 4 slurp 通过 ssh 协议把文件并行地从多个远程主机复制到中心主机上 5 pnuke 通过 ssh 协议并行地在多个远程主机上杀死进程...1. pssh 通过 ssh 协议在多台主机上并行地运行命令 命令参数使用 编号 参数选项 对应参数解释 1 -h HOST_FILE 指定主机文件列表文件;内容格式为”[user@]host[:port...设置 SSH 的选项 9 -x ARGS 额外的命令行参数使用空白符号、引号、反斜线处理 10 -X ARG 额外的命令行参数,单个参数模式,同-x 参数 11 -A 手动输入密码模式 12 -i 每个服务器内部处理信息输出

    84060

    Ansible快速入门

    ,Ansible不需要在远程主机上安装client/agents,因为它们是基于ssh来和远程主机通讯的。...Ansible的特点 部署简单, 只需要在控制主机上部署ansible环境,被控制端上只要求安装ssh和python 2.5以上版本,这个对于类unix系统来说相当与无需配置. 1、no angents...: 基于yaml语法编写playbook 5、基于推送模式: 不同于puppet的拉取模式,直接由调用者控制变更在服务器上发生的时间 6、模块是幂等性的:定义的任务已存在则不会做任何事情,意味着在同一台服务器上多次执行同一个...可以同时操作一个组的多台主机,组与主机组之间的关系都是通过inventory文件配置。...="123456" # 方法二 主机+端口+密码 [test] 192.168.1.7[6:8] [test:vars] ansible_ssh_pass="123456" 基于密钥连接 基于秘钥连接需要先创建公钥和私钥

    43720

    Linux 远程连接之 SSH 新手指南

    本文介绍了如何配置两台计算机的 安全外壳协议(secure shell)(简称 SSH)连接,以及如何在没有密码的情况下安全地从一台计算机连接到另一台计算机。...相关术语 在讨论多台计算机时,如何将不同计算机彼此区分开可能会让人头疼。IT 社区拥有完善的术语来描述计算机联网的过程。...在每台主机上激活 SSH 要通过 SSH 连接两台计算机,每个主机都必须安装 SSH。SSH 有两个组成部分:本地计算机上使用的用于启动连接的命令,以及用于接收连接请求的 服务器。...如果我正在使用我的个人计算机(即作为当前的本地计算机),并且想通过 SSH 连接到我的工作计算机,我可以通过将自己标识为 sethkenlon 并使用我的工作密码来实现连接。...要通过 SSH 连接到远程计算机,你必须知道其 IP 地址或可解析的主机名。

    4.3K40

    如何在Ubuntu 18.04上安装和配置Ansible

    介绍 配置管理系统旨在使管理员和运营团队轻松控制大量服务器。它们允许您从一个中心位置以自动方式控制许多不同的系统。...步骤2 - 配置对Ansible主机的SSH访问 如前所述,Ansible主要通过SSH与客户端计算机通信。虽然它当然能够处理基于密码的SSH身份验证,但使用SSH密钥可以让事情变得更简单。...hosts文件非常灵活,可以通过几种不同的方式进行配置。...此时,可以通过键入以下内容从Ansible服务器访问这些服务器: ssh root@ansible_host_ip 如果您已正确设置密码,则不应提示您输入密码。...这些基本上是可以在远程主机上运行的命令。ping模块以多种方式运行,如Linux中的普通ping实用程序,但它会检查Ansible连接。

    6.1K30

    python paramiko模块简介

    python paramiko模块简介 一:简介     paramiko是用python语言写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接。     ...由于使用的是python这样的能够跨平台运行的语言,所以所有python支持的平台,如Linux, Solaris, BSD, MacOS X, Windows等,paramiko都可以支持,因此,如果需要使用...举个常见的例子,现有这样的需求:需要使用windows客户端,远程连接到Linux服务器,查看上面的日志状态,大家通常使用的方法会是: 1:用telnet 2:用PUTTY 3:用WinSCP 4:用XManager...使用paramiko可以很好的解决以上问题,比起前面的方法,它仅需要在本地上安装相应的软件(python以及PyCrypto),对远程服务器没有配置要求,对于连接多台服务器,进行复杂的连接操作特别有帮助...连接的远程主机地址和端口 t=paramiko.Transport((ip,port)) #设置登录名和密码 t.connect(username=username,password=password)

    1.1K10

    Ansible自动化批量管理入门

    ansible服务概念介绍 是基于python语音开发的自动化软件工具 是基于SSH远程管理服务实现远程管理主机 批量管理多台主机 提高运维工作效率 降低运维工作难度 ansible批量管理特点 优点:...(基于ssh,无需安装客户端,如zabbix的客户端要安装agent) 可读性强(采用YAML格式) 缺点: 对Windows系统的排斥(服务端无法安装在windows) 运行效率较低(task任务是串行运行...主机清单配置(inventory:默认文件:/etc/ansible/hosts) 软件模块信息(module 通过其他语言编写而成,能实现某个特定的功能的工具,例如思科配置接口的模块,修改ip地址的模块等等...smart表示智能选择ssh和paramiko,当SSH支持ControlPersist(即持久连接)时使用ssh,否则使用paramiko。...local和docker是非基于ssh连接的方式,winrm是连接windows的插件 ansible_connection=ssh ansible_ssh_private_key_file 指定密钥认证

    49620
    领券