leia apenas symlink ou algo semelhante? [duplicado]

4

Eu criei um NAT para uso doméstico (Ubuntu + Samba + Greyhole + Apache + MySQL + outro material relacionado ao servidor web). 90% dos arquivos que guardo são imagens que eu realmente não quero perder (é por isso que a Greyhole). Como galeria de imagens está ficando cada vez maior eu tive uma idéia para criar galeria de imagens da web onde eu poderia classificar imagens através de tags que permitiriam pesquisa mais tarde etc. Criando galeria não é realmente um problema como eu sou bastante acessível com php / mysql / css / js.

Meu problema é segurança e compartilhamento de arquivos no nível do sistema e acessibilidade.

O diretório do aplicativo Web (galeria) é: var/www/html com o proprietário www-data: www-data.

e as fotos estão em /LandingZone/images (bem, links simbólicos para as imagens estão lá, já que as próprias imagens são copiadas e movidas pelo greyhole).

/LandingZone/images de propriedade é: myusername1: greyhole (greyhole sendo group onde há: myusername1 e myusername2 usuários, pois ambos precisam ter acesso aos compartilhamentos de leitura / gravação).

Agora, o que eu preciso fazer é de alguma forma permitir acesso somente leitura para /LandingZone/images para o usuário www-data sem colocar imagens em risco e eu não sei a permissão de grupos / usuários do Linux tão boa quanto gostaria sinta-se confortável e teste sozinho.

O próprio servidor da Web é acessível através da Internet, pois configurei o dyndns como serviço, por isso não gostaria de colocar o usuário www-data no grupo greyhole e permitir que o invasor excluísse todas as imagens ou algo parecido.

Existe uma maneira de criar links simbólicos para a pasta e dar ao usuário www poder para ler arquivos a partir dele?

Consegui que esse compartilhamento fosse "curtido" de /var/www/html/gallery/images usando:

$ mount --bind /LandingZone/images /var/www/html/gallery/images
$ mount -o remount,ro /var/www/html/gallery/images

mas o meu servidor web não tem acesso a esses arquivos por causa da propriedade (eu acho).

Agora, como faço para lidar com isso? Posso simplesmente colocar o usuário www-data no grupo greyhole para que o servidor web tenha acesso aos arquivos e ainda esteja seguro de que, por exemplo, o invasor que assume o controle do software da galeria não será capaz de excluir imagens? Ou eu deveria fazer isso de alguma outra forma, nem mesmo usando o mount?

Estou aberto a sugestões.

    
por Ljudotina 22.09.2014 / 23:57

1 resposta

-1

O melhor tipo de segurança do arquivo da web é lido a partir do banco de dados, se possível, importe para um banco de dados como mysql ou postgresql e, quando solicitado pelo usuário, você busca do banco de dados.

Você tem dois tipos de arquivos de imagem:

  • arquivos são visualizados como parte de seu html ### you have to save as file no db
  • arquivos estão sendo criados como parte de seu conteúdo ### you have to save-restore into/from db
por 23.09.2014 / 01:36