SSH 隧道 Socks 代理的密码

SSH 隧道 Socks 代理的密码

我需要一个带有 ssh 隧道的 socks5 代理,命令如下:

ssh -p <SSH_PORT> -CnfND 0.0.0.0:<Port> Username@ServerIP

问题是如何为该连接设置密码?

正如您所看到的,每个人都可以连接到上述命令在其中调用的服务器,并且知道Port由于 而打开0.0.0.0

答案1

要使用密码保护连接,您可以使用公钥身份验证而不是密码。在此方法中,您在本地计算机上生成公钥/私钥对,将公钥复制到服务器,然后使用私钥对连接进行身份验证。

以下是分步指南:

  1. 在本地机器上生成公钥/私钥对:
ssh-keygen -t rsa
  1. 将公钥复制到服务器:
ssh-copy-id -p <SSH_PORT> -i ~/.ssh/id_rsa.pub UserName@ServerIP
  1. 使用私钥连接服务器:
ssh -p <SSH_PORT> -CnfND 0.0.0.0:<Port> -i ~/.ssh/id_rsa UserName@ServerIP

通过此设置,您将提示输入私钥密码(如果已设置)而不是密码,并且只有当服务器上的公钥与您本地计算机上的私钥匹配时才会建立连接。

注意:确保私钥的安全,因为任何有权访问私钥的人都可以使用它连接到服务器。

相关内容