Permissões corretas para dados da WWW

3

Eu continuo voltando para as permissões perfeitas baseadas na web, eu fiz isso de algumas maneiras. Este post não é tão complexo como é um pouco longo, eu queria fornecer algumas amostras.

Eu pesquisei longe, mas estou me perguntando se existe um padrão de fato. Obrigado pelo seu tempo.

P: Alguém pode me aconselhar sobre a melhor abordagem de acordo com as metas básicas de permissão abaixo?

  • Meta de permissão:
    • Impedir o modo 0777
    • O grupo padrão www-data é fixo
    • Usuário padrão como myself é stick (se possível, não acho que exista um padrão em setfacl)
  • Cliff Notes
    • Usando: Ubuntu 16.04 e 16.10 (versões do desktop no momento)

$ chmod g + rws

Eu defini isso antes, mas me pergunto por que isso destaca meu arquivo em uma cor laranja, isso me preocupa . O objetivo era manter arquivos atuais e novos como www-data .

sudo chgrp -R www-data /var/www
sudo chmod -R g+rws /var/www  # <-- s or S?

O acima funciona na maior parte mas eu li que é ruim usar , por quê? Então eu tentei setfacl .

$ setfacl

Aqui eu setfacl , o problema é que ele vai fazer todos os arquivos atuais +x para o usuário, eu não quero isso.

# For Current Files | User/Group
sudo setfacl -Rm u:myself:rwx /var/www
sudo setfacl -Rm g:ww-data:rwx /var/www

# For Future Files | User/Group
sudo setfacl -Rmd u:myself:rwx /var/www
sudo setfacl -Rm g:www-data:rwx /var/www

.bashrc setfacl files / dirs separadamente

Então, uma ideia maluca que tive foi fazer uma função .bashrc . Ainda não está totalmente correto, mas você entendeu.

function facl_file() {
    echo "(+) Set ACL for $USER:www-data rw [Files Only, Persist]"

    # Files cannot have defaults -d permissions
    while IFS= read -r -d $'
sudo chgrp -R www-data /var/www
sudo chmod -R g+rws /var/www  # <-- s or S?
' file; do echo " Setting $file" # Default Mode: RW mode="rw" # If Executable, Add RWX if [[ -x "$file" ]]; then mode="rwx" fi sudo setfacl -m u:$USER:$mode $file sudo setfacl -m g:www-data:$mode $file done < <(find $CREATE -type f -print0) echo "(+) Done with Files" } function facl_dir() { echo "(+) Set ACL for $USER:www-data rwx [Directories Only, Persist]" while IFS= read -r -d $'
# For Current Files | User/Group
sudo setfacl -Rm u:myself:rwx /var/www
sudo setfacl -Rm g:ww-data:rwx /var/www

# For Future Files | User/Group
sudo setfacl -Rmd u:myself:rwx /var/www
sudo setfacl -Rm g:www-data:rwx /var/www
' dir; do echo " Setting $dir" sudo setfacl -m u:$USER:rwx $dir sudo setfacl -dm u:$USER:rwx $dir sudo setfacl -m g:www-data:rwx $dir sudo setfacl -dm g:www-data:rwx $dir done < <(find $CREATE -type d -print0) echo "(+) Done with Directories" }

O objetivo do acima foi impedir que Directories perdesse o +x e impedisse que os arquivos que não eram +x se tornassem.

Qualquer conselho seria apreciado se eu estivesse indo na direção errada sobre isso. Não consigo encontrar um bom "Sticky Standard" que pareça certo.

    
por JREAM 02.05.2017 / 17:01

0 respostas