0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

[Q3] 没有ssh客户端怎么快速连接?

jf_09956657 2023-01-06 18:14 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

不同的机器常有ssh的需求,可惜客户端实在太难找,用paramiko可以快速完成连接,比如,

# coding : utf-8
# @Goal : use paramiko to ssh
# prepare : see below
# input : none
# output : command output
# @Author : chi
# @Time : 2022.12.12
# @Prepare :
# 1 Scriptspip3 install paramiko
# @License : MIT
# -*- coding: utf-8 -*-
import paramiko
RED_COLOR='33[1;31;48m'  #红 ,配置终端输出的颜色
BLUE_COLOR='33[1;34;48m'  #蓝 ,配置终端输出的颜色
RES='33[0m'
def SSH_Pkey(Host,UserName,Pkey,Port=22):
   #基于用户名密钥连接并执行命令
   try:
       SSH = paramiko.SSHClient()
       # use key_file
       # private_key = paramiko.RSAKey.from_private_key_file(Pkey)
       # SSH.set_missing_host_key_policy(paramiko.AutoAddPolicy())
       # SSH.connect(hostname=Host, port=Port, username=UserName,key_filename=Pkey)
       # or use key_word
       know_host = paramiko.AutoAddPolicy()
       SSH.set_missing_host_key_policy(know_host)
       SSH.connect(hostname=Host, port=Port, username=UserName,password=Pkey)
       # 执行命令
       print ("%s成功登录到服务器%s,请输入操作命令!%s"%(RED_COLOR,Host,RES) )
       while True:
           CMD=input('%s请输入输入操作命令:%s'%(BLUE_COLOR,RES))
           if CMD=='exit':
               print ("%s执行%s命令退出!%s" %(RED_COLOR,CMD,RES))
               # 关闭连接
               SSH.close()
               break
           else:
               stdin, stdout, stderr = SSH.exec_command(CMD)
               print ("%s执行命令%s返回结果:%s"%(RED_COLOR,CMD,RES))
               for i in stdout.read().splitlines():
                   print (i.decode('utf-8'))
   except :
       print ("%sSSH远程登录失败,退出程序!n" %(RED_COLOR,RES ))
if __name__ == '__main__':
   Host='192.1.1.1'
   UserName='root'
   SSH_Key=r'root' # or file 'D:\key'
   Port = 22
   SSH_Pkey(Host=Host,UserName=UserName,Pkey=SSH_Key,Port=Port)
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • SSH
    SSH
    +关注

    关注

    0

    文章

    201

    浏览量

    17868
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    各种PLC设备、智能仪表快速实现OPC UA服务(含客户端测试过程)

    埃和智能网关支持各种PLC设备、智能仪表通过HTTP、MQTT协议JSON格式对接MES等系统平台,也可以对接MySQL等SQL数据库,还可将设备数据转为OPC UA服务,支持多客户端访问。包含
    的头像 发表于 04-30 13:48 209次阅读
    各种PLC设备、智能仪表<b class='flag-5'>快速</b>实现OPC UA服务<b class='flag-5'>端</b>(含<b class='flag-5'>客户端</b>测试过程)

    EtherCAT FOE工作原理揭秘:客户端-服务器模型如何运转?

    上期我们聊了EtherCATFOE的五大应用场景,本期深入解析其底层工作机制。FOE究竟是如何实现文件传输的?答案藏在客户端-服务器模型中。核心架构:一客户端多服务器在EtherCAT网络中,FOE
    的头像 发表于 03-02 11:50 318次阅读
    EtherCAT FOE工作原理揭秘:<b class='flag-5'>客户端</b>-服务器模型如何运转?

    SSH与Xshell的本质区别及功能对比

    供图形界面工具,需依赖命令行或第三方客户端实现功能。 Xshell:是一款商业化的终端模拟软件,属于SSH协议的实现工具之一。它通过图形化界面封装SSH协议的复杂性,提供便捷的远程连接
    发表于 11-07 06:40

    agile_ftp传输文件时客户端报错误怎么解决?

    ]客户端使用的filezilla [size=21.3333px] [size=21.3333px]现象: [size=21.3333px]filezilla客户端可以正常上传文件,但传输完毕时客户端会报
    发表于 11-05 10:49

    飞凌嵌入式ElfBoard-常用的网络服务的搭建之SSH服务搭建

    SSH客户端包含SSH远程连接命令以及远程拷贝scp命令等。3.安装SSH1)在ubuntu(
    发表于 10-24 08:48

    libmodbus库问题:TCP模式下客户端超时断开后无法再次重连怎么解决?

    情况1 :用libmodbus的TCP demo,发现用客户端软件连接收发如果超时后在启动连接就无法连接上libmodbus服务器了,声明:客户端
    发表于 10-14 08:17

    SSH 远程连接内网 Linux 服务器

    利用 ZeroNews,您可对用内网的 Linux 服务器进行统一的 SSH 远程连接管理,当用户外出时,可通过 ZeroNews 分配的公网域名地址,快速访问企业内部、家庭的 Linux
    的头像 发表于 09-17 19:52 660次阅读
    <b class='flag-5'>SSH</b> 远程<b class='flag-5'>连接</b>内网 Linux 服务器

    OrangePi Zero 3,轻量级客户端的完美选择

    千兆以太网端口用于充电的USB-C接口我很喜欢在较小的单板计算机(SBC)上看到以太网端口,因为这使它们作为瘦客户端更有用,而且对于这种尺寸的单板计算机来说,充裕的
    的头像 发表于 09-12 13:44 1668次阅读
    OrangePi Zero <b class='flag-5'>3</b>,轻量级<b class='flag-5'>客户端</b>的完美选择

    SOLIDWORKS PDM Professional安装部署指南:从服务器到客户端的详细步骤

    一份详尽的SOLIDWORKS PDM Professional安装指南,面向IT管理员,涵盖从SQL Server配置、服务器安装到客户端设置的全过程,确保您高效、正确地完成PDM系统部署
    的头像 发表于 09-11 17:37 2146次阅读

    【HZ-RK3568开发板免费体验】MQTT服务搭建与客户端移植

    耦合。 使用 TCP/IP 提供网络连接。 提供Last Will 和 Testament 特性通知有关各方客户端异常中断的机制。 对消息中间件,估计大家不得不关心的就是消息的可靠性,也就是消息的发布
    发表于 08-30 21:05

    Python modbus-tk如何获得客户端信息?

    Python modbus-tk如何获得客户端信息
    发表于 08-07 06:01

    是否可以将客户端控件与CYW920706WCDEVAL一起使用?

    是否可以将客户端控件与CYW920706WCDEVAL一起使用? 我想用它来发现蓝牙 BR/EDR,然后将其与其他设备配对。 有客户端控制的下载链接或文档吗? 另外,你有 AIROC Connect 蓝牙应用程序的文档吗?
    发表于 07-04 07:50

    CYW20820 GATT服务器可以支持多少个来自GATT客户端的同时连接吗?

    有人能告诉我 CYW20820 GATT 服务器可以支持多少个来自 GATT 客户端的同时连接吗?
    发表于 06-30 07:47

    极简教程:快速在树莓派上运行OpenVPN客户端

    这两样东西后,你需要:1.准备服务器2.配置客户端3.测试连接准备服务器:假设你已经有了OpenVPN服务器,你需要:提供客户端配置为树莓派设置静态IP地址1.提
    的头像 发表于 06-25 18:00 1755次阅读
    极简教程:<b class='flag-5'>快速</b>在树莓派上运行OpenVPN<b class='flag-5'>客户端</b>!

    Modbus TCP连接多个客户端解决方法-深圳市振鑫通信科技

    ZP-MBS008多主站模块是实现Modbus-TCP连接多个客户端或者服务器通讯设备
    的头像 发表于 06-25 11:07 2169次阅读
    Modbus TCP<b class='flag-5'>连接</b>多个<b class='flag-5'>客户端</b>解决方法-深圳市振鑫通信科技