我想通过位于公有子网上的
Linux SSH堡垒服务器连接到私有子网上的Linux数据库服务器.我还想创建一个到3306端口的隧道.
当我尝试从Bastion服务器创建SSH连接时,我收到“Permission Denied(publickey)”.信息.
ssh -L 10.0.0.10:22:10.0.1.10:22 user@10.0.1.10
这是失败的调试输出:
> debug1: Authentications that can continue: publickey debug1: Next authentication method: publickey debug1: Trying private key: /root/.ssh/identity debug1: Trying private key: /root/.ssh/id_rsa debug1: Trying private key: /root/.ssh/id_dsa debug1: No more authentication methods to try. Permission denied (publickey).
数据库服务器上已有正确的公钥,因此我认为我需要在某处输入私有RSA密钥.我在哪里输入私钥?还有在3306上创建隧道所需的任何sshd配置更改吗?
解决方法
client <-----> Bastion Server <-----> Database Server (10.0.1.10) (10.0.0.10)
所以,试试这个:
$ssh -C -N -L 3306:10.0.0.10:3306 user@10.0.1.10
然后您可以通过执行以下命令连接到数据库服务器:
$MysqL -u <user> -p -h localhost
Where do I enter the private key?
默认值为〜/ .ssh /,但您可以放在任何您想要的位置并使用-i选项指定.
Also are there any sshd config changes required to create the tunnel
on 3306?
确保AllowTcpForwarding行已注释掉或设置为yes.