当连接被拒绝时尝试在 LAN 中进行 SSH 连接

当连接被拒绝时尝试在 LAN 中进行 SSH 连接

我尝试连接到 192.168.0.1 的 SSH 服务器。192.168.0.2 是客户端计算机。我使用的命令是

ssh -p1111 [email protected] 

我收到错误:连接被拒绝。我已编辑配置文件以在 SSH 中指定相同的端口。以下是我在 iptables 中使用的规则。我应该怎么做才能使连接正常工作?

#!/bin/sh
iptables -F
iptables -P INPUT DROP
iptables -P OUTPUT ACCEPT
iptables -P FORWARD DROP

iptables -A INPUT -p tcp --sport 1111 --src \
192.168.0.1 -j ACCEPT
iptables -A INPUT -p tcp --dport 1111 --dst \
192.168.0.2 -j ACCEPT

iptables -A INPUT -p tcp --sport 1111 --src \
192.168.0.2 -j ACCEPT
iptables -A INPUT -p tcp --dport 1111 --dst \
192.168.0.1 -j ACCEPT

iptables -A INPUT -p tcp ! --syn -m state --state NEW -j DROP
iptables -A INPUT -f -j DROP
iptables -A INPUT -p tcp --tcp-flags ALL ALL -j DROP
iptables -A INPUT -p tcp --tcp-flags ALL NONE -j DROP
iptables -A INPUT -m state --state INVALID -j LOG \
--log-level 4 --log-prefix 'InvalidDrop '
iptables -A INPUT -m state --state INVALID -j DROP
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -m limit --limit 2/min -j LOG \
--log-level 4 --log-prefix 'In2/m '
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -p tcp --sport 80 -j ACCEPT
iptables -A INPUT -p tcp --sport 443 -j ACCEPT
iptables -A INPUT -j LOG --log-level 4 --log-prefix 'InDrop '
iptables -A INPUT -j DROP
iptables -A OUTPUT -o lo -j ACCEPT
iptables -A OUTPUT -m limit --limit 6/hour -j LOG \
--log-level 4 --log-prefix 'OutAllow6/h '
iptables -A OUTPUT -j ACCEPT

答案1

192.168.0.1 上的 SSH 守护程序是否确实在侦听端口 1111?您的 SSH 命令和防火墙都表明您想在端口 1111 上使用 SSH,但您是否实际配置了 SSH 守护程序来侦听此端口?

你必须在以下位置执行此操作/etc/ssh/sshd_config

Port 1111

然后重新启动 SSH 守护程序就好了。

此外,您的防火墙指示反向 SSH 连接也将使用端口 1111,因此您必须在客户端计算机的 SSH 服务器上执行相同操作。

相关内容