SSHTunnelForwarder和dbeaver中的SSH公钥身份验证失败

2024-10-04 01:34:07 发布

您现在位置:Python中文网/ 问答频道 /正文

我已经使用ssh-keygen命令,标准问题,在MacOS上生成了一个SSH密钥

我试图获得在Python中使用DBeaver和SSHTunnelForwarder的关键。两者都失败了,出现了一条Auth fail的园艺品种消息

我读到here我需要生成一个PEM密钥,现在我的密钥以

-----BEGIN RSA PRIVATE KEY-----

而不是

-----BEGIN OPENSSH PRIVATE KEY-----

但这没有效果。奇怪的是,我可以在终端上使用两种密钥格式的密钥auth登录到服务器

当我使用SSHTunnelForwarder时:

# Have tried both OpenSSH and RSA (pem) formats
mypkey = paramiko.RSAKey.from_private_key_file('/Users/some_user/.ssh/id_rsa')

with SSHTunnelForwarder(
          ("host", 22),
          ssh_username="some_user",
          ssh_pkey=mypkey,
          remote_bind_address=("localhost", 3306)
     ) as server:
    with connect(
        host="127.0.0.1",
        user="some_user",
        password='some_password'
     ) as connection:
        print(connection)
[2021-05-11 15:43:55,476] {transport.py:1819} INFO - Connected (version 2.0, client OpenSSH_8.5)
[2021-05-11 15:43:55,801] {transport.py:1819} INFO - Authentication (publickey) failed.

如果我使用密码验证,我就可以进入


Tags: keyhostaswith密钥somepasswordprivate