Permissões corretas VPS / var / www

1

Este é um repost de uma pergunta "fora do tópico" no stackoverflow.

Meu cenário é:

Eu criei um usuário e adicionei esse usuário a sudoers:

visudo
user ALL=(ALL) ALL

Então

sudo adduser user www-data

e

chown www-data:www-data -R /var/www

Um serviço reiniciou e tentou:

scp file user@ip:/var/www

Permissão negada

As permissões que eu tinha aplicado para as pastas e arquivos eram (não wp-config.php ou .htaccess ):

drwxr-xr-x
-rw-rw-r--

Eu tentei:

sudo chmod -R g+w /var/www
Então eu pude fazer upload de arquivos para /var/www , mas isso definiu as permissões para 775 , então eu corri:
find /var/www -type d -exec chmod 755 {} \;

Agora posso editar arquivos, mas não gravar na pasta por meio de SFTP ou SSHFS etc.

Minha pergunta agora é:

Como escrevo para / var / www sem comprometer a segurança?

    
por Brownrice 22.04.2014 / 10:46

1 resposta

0

A alteração sudo afeta apenas os comandos executados com o comando sudo . Portanto, não tem efeito neste caso.

Eu preferiria tornar user o proprietário de todos os arquivos em /var/www . Então, você pode chmod 777 todos os diretórios e chmod 666 todos os arquivos que o WP precisa gravar acesso. Com isso, se alguém explorar um problema de segurança no WP, ele não poderá sobrescrever arquivos WP facilmente.

Como alternativa, você pode alterar o proprietário para www-data para arquivos / diretórios que o WP precisa acessar para gravação. No entanto, desta forma user não pode gravar nesses arquivos / diretórios.

Se o seu sistema de arquivos do servidor suportar ACLs, você poderá adicionar uma ACL a /var/www , o que concede permissão de gravação para algum outro usuário que não o proprietário. Isso pode ser obtido com o comando setfacl .

    
por 23.04.2014 / 06:45