配置:Debian Lenny Apache2
我已将 SSH 配置为“PermitRootLogin 否“并创建了另一个用户来登录并执行”苏“。
现在我想通过 SFTP 连接 Filezilla。我可以通过创建一个只能访问“/var/www“(我的所有网站都位于那里,例如”/var/www/域名.com“)
但这是否有点违背了使用“苏“? 当然 ”苏“在这种情况下将确保其他一切安全,但”/var/www“将不会获得额外的保护。我创建“苏“首先设置是为了更好地保护我的网站。
顺便说一句,我是唯一一个将东西上传到服务器的人。
我错过了什么?
答案1
答案2
您缺少的是对通过 ssh 登录时 su 的含义以及以加密方式传输文件的含义的理解。您在这里混淆了几个概念。
您通过 ssh 拒绝 root 登录的做法是正确的。这将限制暴力攻击,并防止您(因为您需要使用 sudo 或 su 提升您的权限)犯下不必要的错误。
通过 sftp 访问不会赋予您通过 ssh 使用 su 的相同权限。它保证您的密码不会以明文形式发送,并且您的文件传输是安全的。
我要冒险一试,并建议您搜索 Linux 文件权限(针对用户和组)。了解这些内容将有助于您保护 Web 服务器的安全,并帮助您理解为什么拥有可以 su 的用户并不意味着您的服务器本质上不安全。
答案3
你可以使用扩展 ACL只允许您的用户对目录有写权限(使用setfacl
)。这还有一个好处,就是便于将来的用户添加。
或者,您可以将目录设为由您的 UID 组拥有,然后使其可组写入,但我认为这不是像上面那样干净的解决方案,并且如果您的网站需要以(大概是)Apache 用户的身份写入任何内容,您可能会遇到问题。