我有centos5。
有什么办法可以让root用户仅从特定IP地址登录到我的vps服务器。
我已经读过我可以使用私钥登录sshd。但是问题是我正在为所有网站管理员使用SFTP,并且我不希望非IT用户使用密钥登录SFTP。
或有什么方法,只有root可以使用密钥登录shell,而对于其他用户,则可以使用常规密码登录
我有centos5。
有什么办法可以让root用户仅从特定IP地址登录到我的vps服务器。
我已经读过我可以使用私钥登录sshd。但是问题是我正在为所有网站管理员使用SFTP,并且我不希望非IT用户使用密钥登录SFTP。
或有什么方法,只有root可以使用密钥登录shell,而对于其他用户,则可以使用常规密码登录
Answers:
采用:
允许RootLogin无密码
在/ etc / ssh / sshd_config中。除root用户外,每个用户都可以使用密码登录。根需要使用密钥登录。
git pull:/ etc / ssh / ssh_config:第68行:错误的配置选项:allowrootlogin
man ssh_config
ssh -o PreferredAuthentications=password
编辑sshd_config(通常在中/etc/ssh),然后添加或更改以下指令
PermitRootLogin yes
AllowUsers root@thehosttoallow
然后重新启动守护程序
service ssh restart
AllowUsers,他将需要指定他想要访问的所有用户。您的示例仅允许root通过ssh进行身份验证。
*@thehosttoallow进入,确实允许任何用户进入。
ssh -o PreferredAuthentications=password
首先,为什么要阻止用户使用密钥身份验证?这对我来说毫无意义。
其次,不允许通过ssh进行root登录。只是不要这样做-没有充分的理由需要这样做。它有充分的理由违反现有的所有最佳实践。如果您需要授予读取/写入某些文件的权限,则应该能够通过标准linux文件系统权限来执行此操作。如果您需要更多细粒度的访问控制,请查看linux ACL系统。
root从唯一主机允许并不安全。有反对的一种趋势root通过访问telnet在几年前(besore ssh很常见),但允许root通过ssh到只有一台主机不看不安全。
root用户执行管理任务。root在这种情况下,仅允许一台主机直接访问是一种合理的选择。