O servidor linux seguro por permissões dir

1

Estou usando o php no servidor Linux / Apache. Eu tenho três tipos de diretórios como como

|_ Writeale Directory
|_ PHP Files 
|_ Image Files

Diretório gravável seria usado apenas pelo PHP para escrever alguns txt, imagens ... Arquivos PHP extraídos pelo servidor e retornam códigos HTML Diretórios de arquivos de imagem contém apenas imagens como jpeg gif swf ....

Quais as permisões necessárias para cada diretório? Qual é a permissão padrão para o diretório (criado por FTP ou PHP)? O valor padrão do meu servidor é 755. É seguro?

Tem permissões para qualquer efeito no desempenho do servidor?

    
por Huseyin 28.11.2011 / 11:54

3 respostas

1

Uma visão geral muito geral:

    Os diretórios
  • em que os usuários (ou seja, PHP) podem gravar dados devem estar fora da raiz do seu documento httpd.
  • diretórios que armazenam o conteúdo do apache devem requerer acesso de leitura mundial, e não muito mais, ou seja, 0755 é mais do que suficiente.
    Diretórios requerem acesso ao eXecute; arquivos não devem ter permissões de execução.
    Não, nem arquivos PHP.
  • As permissões padrão são determinadas pelo conjunto de umask para o usuário que o apache executa como.
  • arquivos enviados devem ser examinados e verificados antes de serem disponibilizados para download.

Dependendo do país em que você está, você pode ser responsabilizado se permitir que as pessoas enviem e distribuam vírus para download.

    
por 28.11.2011 / 14:54
1

Não é possível projetar um modelo de segurança sem saber quais objetos devem ter acesso controlado e quais usuários precisam de qual acesso. Mas você não mencionou como (e mais importante por quem) os arquivos são implantados / atualizados. Nem você deu qualquer indicação de que a propriedade dos arquivos / diretórios é - na ausência deste '0755' é totalmente sem sentido.

Implicitamente, todos os arquivos devem ser legíveis pelo servidor web uid se o PHP estiver sendo executado como o servidor web uid. Mas existem outras maneiras de controlar a interação entre scripts PHP e arquivos (suPHP, safe_mode).

Which permisions needed for each directory?

Os certos - não é possível ser mais específico.

What is default permission for directory (created by FTP or PHP)?

Depende de como você configurou o PHP, o FTP, o sistema operacional e o sistema de controle de permissões.

My server Default value is 755. Is it secure?

Provavelmente não. Permitir arquivos executáveis na raiz do documento é perigoso. Então, está permitindo o acesso direto aos arquivos enviados pelo usuário.

    
por 28.11.2011 / 14:03
0

Primeiro, as permissões afetam o desempenho. Para ser mais preciso, as permissões são verificadas todas as vezes, o que elas podem ser definidas, sem limitações de desempenho. Você deve colocar as permissões mais restritivas que puder por motivos de segurança. Se o seu servidor da Web acessar seus arquivos com sua conta, altere seu acesso dir para 700. Se o acesso do servidor da web aos seus arquivos com um usuário de dados da www, você pode alterar o grupo ou o outro para acessar. Você não nos dá as informações, mas o servidor web precisa escrever nesses diretórios? Ou apenas lendo?

As permissões padrão são definidas pelo parâmetro umask no seu shell, no seu servidor FTP ou no seu PHP.

    
por 28.11.2011 / 12:16