Usuário do CentOS7 não herdando permissões de grupo

0

Estou acompanhando o tutorial no link (juntamente com todos os tutoriais prereq) para configurar o wordpress no meu novo servidor CentOS7. Tudo está funcionando bem até este ponto

sudo chown -R apache:apache /var/www/html/*

Eu entendo que o comando acima atribui a propriedade ao usuário e ao grupo do apache. Normalmente, porém, conecto-me através do putty e do Filezilla usando minha própria conta myuser e gostaria de habilitar permissões para essa conta.

Portanto, além do comando acima, também adicionei myuser ao grupo apache , efetuei logout e login novamente, mas ainda recebo mensagens de erro de permissão negada quando tento executar operações CRUD no pasta html. No entanto, se eu elevar os comandos com sudo , eles funcionam, então estou um pouco confuso sobre como permitir que a conta myuser execute operações de arquivo. Alguma idéia?

    
por fortuneRice 21.06.2016 / 18:29

1 resposta

2

Você desejará verificar os dois contextos de propriedade, permissões e selinux

Propriedade - Parece que você está certo. Proprietário: O grupo no CentOS7 deve ser apache: apache. Para seu usuário você terá que adicionar o apache como um grupo suplementar. Você pode verificar isso com id myuser , se o apache não aparecer na lista de grupos, então execute usermod -a -G apache myuser .

Permissões - Eles estão listados como rwxrwxrwx. o conjunto intermediário de rwx é a parte importante, pois controla o acesso via grupo (assim é o que importa para o myuser). Você provavelmente só precisará de permissões de leitura / gravação, portanto, um chmod -R 664 directoryname provavelmente seria suficiente (leitura / gravação para usuário e grupo do apache, somente leitura para todos os outros). Você pode verificar as permissões com ls -l .

Nota: WordPress geralmente contém um arquivo '.htaccess' oculto, você precisará aplicar manualmente o chmod a ele, e qualquer outro arquivo oculto, como chmod / chown recursivo irá ignorá-los.

Contextos SELinux - Estes você pode verificar com ls -Z . Para desativar a imposição do SELinux, você pode executar setenforce 0 - Isso é bom para depurar se o SELinux é o culpado ou não, no entanto, você deve ativá-lo novamente quando testar usando setenforce 1 . Se o SELinux é o problema, provavelmente o que você precisa fazer é mudar o contexto dos arquivos com algo como chcon -R -t httpd_sys_rw_content_t directoryname

Nota: Um chcon recursivo também irá ignorar arquivos ocultos (qualquer arquivo que comece com um '.')

Side-Note: Se você estiver usando links simbólicos, certifique-se de que tanto o diretório vinculado quanto o próprio link simbólico em si tenham as propriedades / permissões apropriadas. Para segmentar um link simbólico com chmod / chown, use o sinal -h e, se estiver segmentando um diretório, certifique-se de que a barra não esteja presente (por exemplo, /var/www/html/linked_dir e não /var/www/html/linked_dir/ - tenha cuidado se usar tabulação-conclusão como ele adicionará automaticamente a barra final)

    
por 21.06.2016 / 20:16