Python3 SSH如何远程连接服务器
下载paramiko
首先,我的windows系统上有python2和python3。使用下面命令切换到python3:
activate py3
接着使用下面命令下载相关模块:
pip install ecdsa
pip install Crypto
pip install paramiko
连接服务器操作:
# -*- coding: utf-8 -*-
import paramiko
# 服务器相关信息,下面输入你个人的用户名、密码、ip等信息
ip = ""
port = 22
user = ""
password = ""
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
# 建立连接
ssh.connect(ip,port,user,password,timeout = 10)
#输入linux命令
stdin,stdout,stderr = ssh.exec_command("pwd")
# 输出命令执行结果
result = stdout.read()
print(result)
#关闭连接
ssh.close()
如下,运行该程序,可以看到控制台输出的结果:
关于know_hosts文件
用ssh连接一台主机
选择yes回车
警告将永久性地把这个地址添加到known hosts文件中,然后输入连接主机的密码
查看known host文件
known hosts文件在/root/目录下,输入命令 ls .然后连按两下tab键查看该目录下的隐藏文件
查看.ssh/目录下的隐藏文件
查看known_hosts里的内容
是一段加密的密文,如果删除的话,下次ssh连接这个地址,还会像最初的那样
python利用跳板机ssh远程连接redis的方法
公司服务器的mysql和redis连接都需要有跳板机,网上有很多python ssh远程连接mysql的,那天我研究了下,利用sshtunnel模块连接上了redis,具体如下:
from sshtunnel import SSHTunnelForwarder # ssh连接库
import redis # redis模块
server = SSHTunnelForwarder(
ssh_address_or_host= , # ssh地址
ssh_username= , # ssh连接的用户名
ssh_password= , # ssh连接的用户名
remote_bind_address=('远程机器地址', 端口号))
server.start()
r=redis.Redis(host='redis地址', port=server.local_bind_port, decode_responses=True)
如上就可以连接上redis啦,要关闭连接,我用的server.close()
以上这篇python利用跳板机ssh远程连接redis的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持码农之家。
以上就是本次给大家分享的关于java的全部知识点内容总结,大家还可以在下方相关文章里找到相关文章进一步学习,感谢大家的阅读和支持。