domingo, junho 08, 2008

Segurança em Sistemas de Arquivos - 3

Utilização de Quotas

Ainda a questão de aplicarmos segurança a partir do sistema de arquivos, podemos utilizar o recurso de quota, pois é por meio dele que iremos controlar a utilização dos sistemas de arquivos entre todos os usuários. Assim, impediremos que um único usuário com poder de escrita em seu diretório pessoal exceda os limites físicos de espaço em um sistema de arquivos e comprometa a sua utilização pelos outros usuários. Além disso, tal procedimento ajudará bastante ter um backup de tamanho controlado.
Em sistemas Debian, devemos instalar os utilitários de administração de quotas:

# apt-get install quota quotatool

Devemos checar como está montado o ponto de montagem /home.

#mount

As quotas devem ser especificadas para partições e não para diretórios. Para isso devemos editar o arquivo /etc/fstab.

Adicionaremos na linha referente ao ponto de montagem /home as opções usrquota,grpquota

/dev/hda2 /home ext3 defaults,usrquota,grpquota 0 2

usrquota - para configurar quotas para usuários
grpquota – para configurar quotas para grupos de usuários

Em seguida devemos entrar no ponto de montagem da partição especificada, no nosso caso /home e criar 2 arquivos.

aquota.user – gerencia quotas para os usuários
aquota.group – gerencia quotas para os grupos

# cd /home
# touch aquota.user aquota.group

Devemos alterar as permissões desses arquivos de maneira que só o root tenha permissão de leitura e gravação.

# chmod 600 aquota.user
# chmod 600 aquota.group

Agora devemos remontar o sistema de arquivos para que as configurações de quota para a partição entrem em vigor. Como na maioria das vezes o sistema de arquivos estará ocupado, recomendo que salve as aplicações e reinicie o sistema.

# reboot

Quando o sistema inicializar, vamos consultar o status de quota para aquela partição.

# repquota –v –a

Vamos definir uma quota por tamanho utilizado para um usuário. Adicionaremos um usuário para testes.

# adduser teste

Agora iremos definir o quanto do sistema de arquivos cada usuário poderá utilizar. O comando para configurar quotas é o edquota.

# edquota -u teste

Definiremos uma quota para o usuário colocando um limite de 30 MB de espaço em disco e um limite máximo de 40 MB.

A quota do usuário será de 30 MB, mas ele terá um bônus de 10 MB por um determinado tempo ( chamado de Grace period ), totalizando 40 MB.

Devemos alterar a coluna soft ( limite que o usuário poderá utilizar, o limite máximo é definido na coluna hard ) inserir 30000
Na coluna hard colocamos 40000 que é o máximo.

Para consultar o status

# repquota –v –a

Consultar a quota por usuário

# quota –u teste

Para realizarmos um teste, vamos logar com o usuário teste criado e executar:

# echo teste > a ; while true ; do cat a >> b ; cat b >> a ; done

Nunca, mas nunca execute o procedimento acima como usuário root ou quando não tiver o suporte a quota ativo. O que ocorrerá é seu sistema de arquivos vai lotar, pois estamos criando 2 arquivos que ficam dando cat do seu conteudo e jogando a saida para dentro do outro arquivo, até dar erro de escrita no sistema de arquivos. Quando um sistema de arquivos lota, pode ocorrer parada de serviços de um servidor, o syslog fica doido, não sabe que faz sem ter espaço em disco.

Alguns comandos para administração das quotas:

Detalhes avançados sobre o uso das quotas nas partições:

# quotastats

Desativa a quota da partição:

# quotaoff –v /home

Ativa a quota da partição novamente:

# quotaon –v /home

A implementação de quota em um sistema de arquivos é de grande necessidade, pois você vai ficar tranquilo quanto a espaço utilizado por seus usuário dentro do servidor.

até o próximo post.

Nenhum comentário: