【问题标题】:Allow ssh protocol through win 10 firewall允许 ssh 协议通过 win 10 防火墙
【发布时间】:2021-10-06 04:36:46
【问题描述】:

我有一个安装了 OpenSSH 服务器的 Win 10 工作站。如果我尝试连接到它(在命令提示符下使用 ssh 从另一台装有 Win 10 的机器)我看到它给出了以下错误:

ssh: 连接到主机 Test3 端口 22: 连接超时

在wireshark 上发送了Syn 数据包,但没有收到回复。 如果我在目标上禁用 Windows 防火墙,则连接已建立。

我想启用防火墙并仅禁用 ssh 端口。

【问题讨论】:

    标签: ssh firewall openssh


    【解决方案1】:

    您可以轻松使用 netsh.exe。

    netsh advfirewall firewall add rule name="Open SSH Port 22" dir=in action=allow protocol=TCP localport=22 remoteip=any
    

    您还可以将 remoteip 更改为特定主机:

    remoteip=any|localsubnet|dns|dhcp|wins|defaultgateway|<IPv4 address>|<IPv6 address>|<subnet>|<range>|<list>
    

    【讨论】:

    【解决方案2】:

    我在 microsoft 网站上找到了一个 link,它允许使用图形界面进行操作。 我以管理员身份执行以下步骤解决了我的问题:

    • 打开组策略管理控制台/文件/添加管理单元/具有高级安全性的 Windows Defender 防火墙(或 Windows 设置/Windows Defender 防火墙/高级设置)。
    • 入站规则/操作/新规则
    • 规则类型/端口/下一个
    • TCP / 特定端口:22 / 下一个
    • 允许连接/下一个/下一个
    • 名称/打开 ssh 端口 22/完成

    【讨论】: