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

    文章

    189

    浏览量

    16392
收藏 人收藏

    评论

    相关推荐

    迈威通信工业无线客户端:智能制造的高效连接新解法

    随着智能制造的兴起,企业越来越依赖自动化和数字化技术来提高生产效率和灵活性。工业无线客户端作为连接各个设备和系统的桥梁,其重要性日益凸显。通过工业无线客户端,可以实现设备间的实时数据交换和远程监控,从而进一步提升生产过程的智能化
    的头像 发表于 11-22 16:10 190次阅读
    迈威通信工业无线<b class='flag-5'>客户端</b>:智能制造的高效<b class='flag-5'>连接</b>新解法

    AT模式建立TCP客户端连接一直不成功是怎么回事?

    =\"TCP\",\"192.168.0.111\",8080 ERROR CLOSED 网络调试助手软件建立 TCP 服务 端口号:8080 如果用8266建立服务,网络调试助手建立客户端,则可以正常
    发表于 07-18 06:42

    esp_iot_sdk_v0.9.6_b1客户端断开连接导致WDT重置怎么解决?

    客户端断开连接,服务器一定不会挂起。实际上,由于客户端启动了连接,因此客户端理所当然地应该能够断开连接
    发表于 07-18 06:33

    如果ESP上的TCP客户端与服务器断开连接,如何启用自动重连?

    ESP - TCP 客户端 嵌入式 Linux 服务器 - TCP 服务器 如果ESP上的TCP客户端与服务器断开连接,如何启用自动重连?
    发表于 07-17 06:25

    如何获取连接的TCP客户端的ESPCONN指针?

    我几乎阅读了 SDK API 指南版本 1.0.1 的所有文档 并开始了解如何添加用户 AT 命令。 这真的很简单,只需拨打at_cmd_array_register。 BUT! 如何获取连接的 TCP 客户端的 ESPCONN 指针?
    发表于 07-12 14:54

    Esp8266与SSL REST的连接失败,并显示“客户端握手失败”,为什么?

    Esp8266 与 SSL REST 的连接失败,并显示“客户端握手失败”
    发表于 07-12 07:43

    如何同时在ESP8266上运行TCP客户端和TCP服务?

    我们是 esp8266 的长期用户,并在该芯片上运行数千台家庭自动化类别的现场设备。然而,一个小小的限制阻碍了我们开发一些更有趣和创新的产品。 要求:我们需要同时运行 TCP 客户端连接
    发表于 07-08 08:26

    嵌入式学习-飞凌嵌入式ElfBoard ELF 1板卡-scp出现报错no matching host key type found. Their offer: ssh-rsa

    这个报错通常出现在使用SSH连接时,SSH客户端与服务器之间无法达成共识,无法找到匹配的主机密钥类型,可能是因为SSH
    发表于 06-29 09:33

    飞凌嵌入式ElfBoard ELF 1板卡-scp出现报错no matching host key type found. Their offer: ssh-rsa

    这个报错通常出现在使用SSH连接时,SSH客户端与服务器之间无法达成共识,无法找到匹配的主机密钥类型,可能是因为SSH
    发表于 06-29 09:30

    求助,关于ESP32C3 TCP客户端连接断线问题求解

    ESP32C3开启AP模式做TCP服务器,手机做客户端连接服务器;超过默认最大连接数(5)以后,即使有部分客户端断开了,也无法再发起
    发表于 06-27 07:54

    请问esp32能支持多个客户端同时连接吗?

    根据我现在的测试结果,esp32作为ble server时同时支持一个客户端连接,前一个客户端必须断开蓝牙连接,后一个才能连接。实际esp3
    发表于 06-11 06:25

    服务测试和客户端测试区别在哪

    服务测试和客户端测试是软件开发过程中的两个重要环节,它们分别针对服务器客户端的软件进行测试。本文将详细介绍服务测试和
    的头像 发表于 05-30 15:27 3403次阅读

    电脑TCP客户端连接开发板时LWIP出现错误怎么解决?

    开发板使用的STM32F407,UCOSII+LWIP,开发板作TCP服务器时,用电脑作TCP客户端连接连接数在第四个时LWIP出现错误:memp_malloc: out of memory in pool NETCONN。请
    发表于 05-09 06:38

    使用FreeRTOS+LwIP开发版做客户端断开后不能够重新连接

    ,服务器也能够发送数据到开发版客户端,服务器断开、连接操作都正常 3、是不是开发版做客户端
    发表于 04-30 07:48

    HarmonyOS开发实例:【分布式新闻客户端

    基于栅格布局、设备管理和多端协同,实现一次开发,多端部署的分布式新闻客户端页面。
    的头像 发表于 04-17 15:57 926次阅读
    HarmonyOS开发实例:【分布式新闻<b class='flag-5'>客户端</b>】