我正在远程操作我的家庭服务器,想对我的 .htaccess 进行一些更改。我无法使用我的 FTP(filezilla)看到此文件,并且认为那里没有文件。我决定将我电脑中的一个文件上传到 public_html 中的服务器并对其进行编辑。虽然根据 FZ 上传成功,但即使我实际访问服务器,此文件也没有列在任何地方。
它看起来被隐藏了。主要问题是,在此之后,我现在收到以下错误消息并且无法访问我的测试站点:
You don't have permission to access / on this server.
如果我访问我的服务器并禁用 SELINUX 或将其设置为允许,我的页面将开始正常工作。如果我将其设置为强制执行,我的网页将不可用,并且我会看到上面列出的错误。
问题:
- 首先,如何使这个 .htaccess 在 CentOS 5.6 系统中可见?
- 如果我将服务器设置保留为“PERMISSIVE”,是否会遇到安全风险?
谢谢你们,
答案1
以 开头的文件名.
默认为隐藏。以 开头的文件名显示目录中的所有文件ls -a
。
禁用 SELinux 本身并不一定有风险,但它会禁用系统的安全层之一 - 如果可能,请找到并修复根本原因,而不是快速修复。文件中有什么内容.htaccess
,Apache 错误日志中是否有相关错误?
答案2
如果我将服务器设置保留为“PERMISSIVE”,是否会遇到安全风险?
当然。我的意思是,这就是 SELinux 存在的原因——当应用程序受到攻击时,它可以减轻系统的安全风险。例如,在您当前的情况下,如果有人能够攻击 Apache 进程并以 apache 用户身份获取您系统的 shell,他们仍然无法访问用户数据,即使这些数据是公开可读的。
尽管禁用 SELinux 通常会让生活变得更轻松,但保持其开启并正确配置系统可以大大提高安全级别。