带有 PuTTY 的 AWS 入站连接规则问题

AWS Inbound connection rule issue w/ PuTTY

我正在尝试通过 PuTTY 连接到我的实例,但是当我尝试连接到我的私人范围(即 192.168.2.0/24)的入站规则时,它就无法工作。当我将它设置为不安全的 0.0.0.0/24 时,一切都很好。任何人都可以解释或解决这个问题。我 运行 Windows 7 有所有当前更新。我的 IP 地址不是静态的。

192.168.0.0/16 CIDR 范围被认为是 private network,这意味着它不可 路由。这也意味着 AWS 在从您机器上的 PuTTY 客户端(例如,IP 地址可能为 192.168.2.1)接收连接时,不会 看到远程地址该连接作为您服务器的 IP 地址。相反,AWS 可能将该传入连接的远程地址视为来自您的 ISP 的 IP 地址。这就是允许“0.0.0.0”作为入站规则的原因;它允许来自任何地方的传入地址。

要找出将哪个 CIDR 范围用作您的 AWS 安全组的更具限制性的入站范围,您可以连接到您的实例,然后执行:

$ env | grep SSH_CONNECTION
SSH_CONNECTION=1.2.3.4 54068 5.6.7.8 22

特别是,您正在寻找 SSH_CONNECTION 环境变量。根据 ssh man pageSSH_CONNECTION 环境变量

Identifies the client and server ends of the connection. The variable contains four space-separated values: client IP address, client port number, server IP address, and server port number.

因此,该值的第一部分,即我人为设计的示例中的“1.2.3.4”,将向您显示 AWS 认为您的 PuTTY 连接来自的 IP 地址;然后您可以使用该 IP 地址作为 CIDR 范围的基础。

希望对您有所帮助!