我试图将我的Arch Linux安装设置为SSH主机,但是这里是这样的:
我可以ssh localhost ,它无法通过公钥login,并要求input用户名和密码,但仍然能够login。
当我尝试ssh my_wan_ip它给ssh_exchange_identification: Connection closed by remote host错误ssh_exchange_identification: Connection closed by remote host 。 我已经阅读了关于这个错误的所有主题,没有任何帮助。 顺便说一句,刚刚确认,它给ssh: connect to host my_dyndns_hostname port 22: Connection refused从另一台机器(我的networking外,它有不同的WAN IP)。
我有sshd: ALL在“hosts.allow” ALL:ALL在“hosts.deny”。 我能够通过SSH连接到我自己的电脑,ping我自己的电脑,但我的SSH设置似乎是问题,当我尝试从WAN的ssh给出了这个恼人的错误。
的/ etc / SSH / ssh_config中
的/ etc / SSH / sshd_config中
最后,这里是sshd和ssh的debugging输出:(我运行了ssh命令,之后我把输出传给sshddebugging):
sshddebugging
sshdebugging
我可以根据你的需要编辑我的问题。 只是要求提供更多的信息。 顺便说一句,我没有运行iptables。 我有一个电缆dsl调制解调器连接到一个华硕wl-330gE无线接入点,他们都禁用了他们的防火墙。 我configuration了NAT,所以端口22是针对我有这个麻烦的电脑。
任何帮助表示感谢,谢谢..
我注意到你的SSH客户端debugging输出(第28-29行)中的这些行:
debug3: Incorrect RSA1 identifier debug3: Could not load "/home/kerem/.ssh/id_dsa" as a RSA1 public key
那么,原因可能是你的客户机上的密钥? 尝试以这种方式重新生成它们:
ssh-keygen -t rsa ssh-keygen -t dsa
我也会备份旧的。 以防万一。
以下几行很容易让人误解:
debug3: Incorrect RSA1 identifier debug3: Could not load "/home/kerem/.ssh/id_dsa" as a RSA1 public key
另一个答案表明:
那么,原因可能是你的客户机上的密钥? 尝试重新生成它们。
从经验来看,我可以说这个问题可能是由服务器configuration引起的,即使这些消息使得它看起来像是严格的客户端关键问题。 当然,你也想检查你的客户端configuration。 但是你做到了,注意到没有任何改变。 这表明问题不是您的客户端机器上的密钥(因此错误信息是误导性的)。
你应该看看服务器configuration。
例如,我发现如果您的用户不被服务器上的ssh config所允许,ssh客户端会给出完全相同(误导性)的错误消息。 如果您不允许所有用户,请检查以下内容:
sudo nano /etc/sshd_config AllowUsers yourname@*
另外检查denyhosts,但在我的情况下,问题是sshd_config AllowUsers,它给了这个相同的误导性的错误信息。 修复服务器解决了问题,而无需修复客户端上的任何键。