虽然已经讨论过了,但我仍然无法解决这个问题。下面简要回顾一下我做了什么以及我是如何陷入困境的:
安装了 Ubuntu 12.10,安装了 ssh,。sudo apt-get install ssh
最喜欢的 ssh 工作正常,并通过使用 连接ssh localhost
。我删除了 Ubuntu,增加了分区,然后再次安装了 Ubuntu。我再次启动sudo apt-get install ssh
,它向我显示了
Reading package lists... Done
Building dependency tree
Reading state information... Done
当我给出命令时ssh localhost
,它给出了以下错误:
ssh: connect to host localhost port 22: Connection refused
答案1
触发此命令:
sudo iptables -L
如果您发现不允许任何流量(即没有特定规则),则运行以下命令:
sudo iptables -A INPUT -p tcp --dport ssh -j ACCEPT
此命令告诉系统允许传入连接到端口 22......并且通常可以解决您的困境,特别是对于ssh
/ sshd
。
截至 2016 年 7 月 31 日更新:iptables 与 ssh 作为应用程序无关,但另一方面,它充当路由器,允许流量到端口 22。使用 iptables 时,系统实际上理解“ssh”,但它是命令行中的快捷方式,但实际上,它实际上是iptables INPUT -p udp -dport 22
--dport 表示“目标端口”(ssh 使用端口 22)。这可能会导致一些误解,认为“ssh”是一个应用程序,但实际上“22”是端口。