Correcto propietario/grupo/permisos para archivos/carpetas de sitio Apache 2 en Mac OS X?
-
18-09-2019 - |
Pregunta
Es difícil encontrar respuestas específicas de Mac a esta pregunta en la web, por lo que espero que alguien pueda poner este para descansar por mí. Mis permisos están arruinados en mis sitios y no estoy seguro de cómo arreglarlos sin simplemente golpear un 777 recursivo en todo lo que obviamente es incorrecto.
¡Gracias!
Solución
Esta es la forma más restrictiva y segura que he encontrado, como se explica aquí para hipotética ~/my/web/root/
Directorio para su contenido web:
- Para cada directorio principal que conduce a su raíz web (por ejemplo,
~/my
,~/my/web
,~/my/web/root
):chmod go-rwx DIR
(Nadie más que el propietario puede acceder al contenido)chmod go+x DIR
(para permitir que "usuarios" incluyan _www "ingrese" el dir)
sudo chgrp -R _www ~/my/web/root
(Todo el contenido web ahora es grupo _www)chmod -R go-rwx ~/my/web/root
(Nadie más que el propietario puede acceder al contenido web)chmod -R g+rx ~/my/web/root
(Todo el contenido web ahora es legible/ejecutable/Interable por _WWW)
Todas las demás soluciones dejan archivos abiertos a otros usuarios locales (que forman parte del grupo de "personal" y obviamente están en el grupo "O"/Otros). Estos usuarios pueden navegar libremente y acceder a configuraciones de DB, código fuente u otros detalles confidenciales en sus archivos y scripts de configuración web si tales son parte de su contenido. Si esto no es un problema para usted, entonces, por supuesto, vaya con una de las soluciones más simples.
Otros consejos
Si realmente no te gusta el terminal, aquí está la forma de GUI de hacer dkamins es decirte:
1) Vaya a su directorio de inicio de usuario (ludo sería mío) y del Expediente Menú Elija Conseguir información CMDyo En el inspector:
2) por alt/opción haciendo clic en el [+] Firmar Agregar el _www agrupar y establecer su permiso para solo lectura :
- ¡Por lo tanto, considere (buena práctica) no almacenar información personal en la raíz de su carpeta de inicio de usuario (y disco duro)!
- Puede omitir este paso si el grupo ** Todos ** tiene ** solo solo lectura ** Permiso, pero desde AirDrop la carpeta **/public/Drop Box ** es mayormente inútil ...
3) Muestre el Conseguir información Inspector de su usuario Sitios carpeta y reproducir el paso 2 y luego desde el submenú de acción de engranaje elija Aplicar a los artículos adjuntos ... :
Voilà 3 pasos y la única forma de GUI ...
Sé que esta es una publicación antigua, pero para cualquiera que se actualice a Mountain Lion (10.8) y experimente problemas similares, agregando FollowSymLinks
a su archivo {nombre de usuario} .conf (in/etc/apache2/users/) hizo el truco para mí. Entonces el archivo se ve así:
<Directory "/Users/username/Sites/">
Options Indexes MultiViews FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
Hilo de 2 meses, ¡pero mejor tarde que nunca! El 10.6, tengo la carpeta de documentos de mi servidor web establecida en:
owner:root
group:_www
permission:755
_WWW es el usuario que ejecuta Apache en Mac OS X. Luego agregué un ACL para permitir permisos completos al grupo de administradores. De esa manera, aún puedo hacer cualquier cambio con mi usuario administrativo sin tener que autenticarse como root. Además, cuando quiero permitir que el servidor web escriba en una carpeta, simplemente puedo verse a 775, dejando a todos los que no sean root: _www con solo leer/ejecutar permisos (excluyendo cualquier ACL que haya aplicado)
En mi sistema 10.6:
vhosts folder:
owner:root
group:wheel
permissions:755
vhost.conf files:
owner:root
group:wheel
permissions:644
El propietario del usuario para mí es el usuario administrador y el grupo es _www y funciona con permisos establecidos en 775 para DIR y para archivos 664
Abra primero el terminal y luego vaya al Directorio de Web Server
cd /Library/WebServer/Documents
Y luego escriba esto y lo que hará es que dará read
y write
permiso
sudo chmod -R o+w /Library/WebServer/Documents
¡Esto seguramente funcionará!