使用 ssh 进行端口转发时,提示 Authentication failed. 错误
binbinyounimen opened this issue · comments
lubinbin commented
我是之前使用了mycli
,某日升级mac系统时,提示无法使用mycli
。然后进行brew reinstall mycli
。再次使用mycli --help
没问题。但是使用mycli --ssh-user=<user name> --ssh-port=<port> --ssh-host=<use> --dsn=<dsn_a>
报错。提示如下
mycli --ssh-user=<user name> --ssh-port=<port> --ssh-host=<use> --dsn=<dsn_a>
To enable certain SSH features you need to install paramiko:
pip install paramiko
It is required for the following configuration options:
--list-ssh-config
--ssh-config-host
--ssh-host
之前都是可用的。根据提示应该是需要安装paramiko
。查看引用的python
路径,进行安装
# which mycli
/usr/local/bin/mycli
# head -n 1 /usr/local/bin/mycli
#!/usr/local/Cellar/mycli/1.26.1_1/libexec/bin/python3.11
## 找到python 位置,进行安装
# /usr/local/Cellar/mycli/1.26.1_1/libexec/bin/python3.11 -m pip install paramiko
再次执行 mycli --ssh-user=<user name> --ssh-port=<port> --ssh-host=<use> --dsn=<dsn_a>
# mycli --ssh-user=<user name> --ssh-port=<port> --ssh-host=<use> --dsn=<dsn_a>
Authentication failed.
认证错误。这是由于 paramiko
版本问题,需要指定到 2.8.1 版本
/usr/local/Cellar/mycli/1.26.1_1/libexec/bin/python3.11 -m pip uninstall paramiko
/usr/local/Cellar/mycli/1.26.1_1/libexec/bin/python3.11 -m pip install paramiko==2.8.1
再次尝试,问题得到解决