工作上的新事物,狭小空间以及安全性物品刚落在我的桌子上。我被聘为前端开发人员。很高兴学习新事物,但之前从未做过sysadmin的工作。
我开始进行挖掘,看来apache,网站和所有内容都在root上运行。没有其他群组或用户。ACK!
我应该采取什么步骤来改变这种状况?我知道这是一个很大的禁忌...
奖励积分,如果有人可以请给我指向关于apache / php安全性的一个很好的基础101教程。
工作上的新事物,狭小空间以及安全性物品刚落在我的桌子上。我被聘为前端开发人员。很高兴学习新事物,但之前从未做过sysadmin的工作。
我开始进行挖掘,看来apache,网站和所有内容都在root上运行。没有其他群组或用户。ACK!
我应该采取什么步骤来改变这种状况?我知道这是一个很大的禁忌...
奖励积分,如果有人可以请给我指向关于apache / php安全性的一个很好的基础101教程。
Answers:
root
在任何常规配置中都能正常运行Apache是不寻常的。您如何确定Apache以root身份运行?请注意,Apache必须以root用户身份启动才能绑定到特权端口,但是通常稍后会放弃其特权。
您可以在Apache配置(通常在/etc/httpd
或中/etc/apache2
,具体取决于您的分布)中查找User
and Group
指令(在此处记录)。这两个指令控制Apache运行的用户ID。
找到“没有其他组或用户”的系统也是很不寻常的。什么getent passwd
和getent group
表现?有没有真的没有其他用户或组比其他root
?大多数发行版附带一个apache
或www-data
用户或someso以及匹配的配置,该配置将以该用户身份运行Apache。
有许多关于Apache配置和安全性的入门指南。一个简单的Google搜索会产生许多看起来可能的结果。《 RedHat / CentOS 部署指南》是一个不错的起点(如果您使用的是RedHat / CentOS系统)。