![cygwin ssh 在本地工作,而不是远程](https://linux22.com/image/605222/cygwin%20ssh%20%E5%9C%A8%E6%9C%AC%E5%9C%B0%E5%B7%A5%E4%BD%9C%EF%BC%8C%E8%80%8C%E4%B8%8D%E6%98%AF%E8%BF%9C%E7%A8%8B.png)
我安装了带有 SSH 服务器的 Cygwin(Windows 7)。设置后,我可以使用“ssh localhost -l [myUsername]”本地登录。我输入了密码。成功了。
但是,尝试从另一台机器远程 SSH 到该机器时,会连接,但总是拒绝输入密码,并显示“权限被拒绝”。没有连接问题,显然我正在连接。防火墙设置全部关闭。
为什么会发生这种情况?
答案1
备份文件后运行以下命令,然后重新启动 ssh 服务。
mkpasswd -l > /etc/passwd
mkgroup -l > /etc/group
答案2
我遇到了同样的问题,花了几个小时试图解决它。但解决方案非常简单。问题在于用户名。如果您本地登录,Windows 不区分大小写。但如果您“远程”登录,则必须注意这一点。您必须按照 Windows 中定义的方式准确书写用户名。
答案3
编辑sshd_config
并确保设置了以下内容:
ListenAddress 0.0.0.0
保存文件并重新启动sshd
。这将强制sshd
守护进程监听所有网络接口。
答案4
只有在我使用 /etc/passwd 中写入的名称后,我的工作才有效
这有点像计算机名+管理员
真的很奇怪,本地工作没有计算机名+