我的 Fedora 系统通过代理服务器连接到互联网,我们为每个通过 LAN 连接的系统分配了 IP - 我的系统就是这样的192.168.0.103
(顺便问一下,这种 IP 叫什么?技术术语是什么?谁知道)。我试图设置 smartsvn,发现 SSH 已停止,这就是它无法工作的原因。您可以查看我之前的问题SmartSVN-无法创建新的存储库配置文件。
sshd
在我的系统上停止了。尝试说。然后发生了以下事情 - 我不记得它们发生的确切顺序 -ssh [email protected]
Connection refused
- 我这样做了
service sshd start
,然后在尝试 ssh 时收到密码提示。 - 我输入了正确的用户密码
root
,但它一直拒绝说-Permission denied, please try again.
。 - 我可能重新启动了 sshd,它不再要求输入密码,而是继续显示。
ssh [email protected]
ssh_exchange_identification: Connection closed by remote host
我检查了这个解决方案ssh_exchange_identification:远程主机关闭连接并发现 -
- 我的 IP 出现在
/etc/hosts.deny
-sshd: 192.168.0.103
- 中有次登录尝试失败
/var/log/secure
。
所以我从这两个文件中删除了这些内容。之后,再次提示输入密码,但还是同样的问题。输入正确的密码显示 - ssh [email protected]
Permission denied, please try again.
该文件中写道
> This file describes the names of the
> hosts which are
> # *not* allowed to use the local INET services, as decided
> # by the '/usr/sbin/tcpd' server.
但该文件无法以文本形式查看。似乎需要纠正一些设置,将其设置为禁止此 IP 进行 SSH 连接。我需要修复什么?
我尝试通过 LAN 连接其他系统,进行 ssh 连接。权限也被拒绝。在完成这些文件更改后,我注销并重新登录,重新启动 sshd,确认这两个文件现在不包含任何此类内容。
但仍然不起作用。我遗漏了什么。有什么指点吗?
谢谢,
Sandeepan
答案1
以 root 身份登录系统通常被认为是一件坏事。您可能会发现 sshd 拒绝 root 登录。检查 /etc/ssh/sshd_config 中的行
PermitRootLogin no
将 no 改为 yes 并重新启动 sshd 将允许 root 登录。但这不是个好主意。您应该以普通用户身份连接并使用sudo
或su
执行管理任务。
您的 IP 地址是来自私人地址块。
答案2
大多数 Linux 系统不允许 root 连接到 ssh。查找以下行
PermitRootLogin 否
在文件 /etc/ssh/sshd_config 中
如果可以的话,我会选择使用权限较低的用户。
答案3
- 尝试使用密码以普通用户身份进行连接。这样可行吗?
- 检查 /etc/ssh/sshd_config 中是否有包含“PermitRootLogin”的行。此参数允许/拒绝用户 root 通过 ssh 登录。如果设置为“no”,请将其更改为“yes”并重新启动 ssh 服务器。然后尝试再次登录。
您不必删除 /var/log/* 中的行。这些文件包含先前操作的日志,而不是状态信息。
IP 地址 192.168.*.*、10.*.*.*、172.16.0.0 – 172.31.255.255 被称为“私有地址”,在 RFC1918 中定义用于私有网络。