São configurações no kernel que alteram o comportamento do sistema. São cinco: -1, 0, 1, 2 e 3. O nível default do sistema pós-instalação é <-1> e caso o nível de execução seja baixo o usuário root poderá alterar as marcações e remover os arquivos ou alterar seu conteúdo.
O nível de segurança pode ser habilitado no arquivo
rc.conf do /etc, inserindo a linha
kern_securelevel_enable="YES", desta forma podemos ajustar o nível de segurança através da linha kern_securelevel=X dentro do rc.conf no /etc.
Uma vez alterado o nível de execução, o sistema só aceitará alteração em tempo de execução caso o nível seja superior e não inferior, o que aumenta mais ainda o grau crítico da segurança.
Bom, temos aí um ótimo nível de segurança a partir dos arquivos mais importantes, cabe ao administrador reconhecer os arquivos do seu servidor. Todavia, caso o rc.conf citado acima não possua sua devida marcação nada impede que, em uma possível invasão no sistema, o kernel_securelevel seja alterado. Portanto:
# chflags schange /etc/rc.conf
# chflags schange /etc/sysctl.conf
Desta forma a única possibilidade para acessar em modo single-user a qual não habilita o securitylevel é estando em frente a máquina. Portanto:
Mantenha: console modo "insecure" no arquivo /etc/ttys.
# If console is marked "insecure", then init will ask for the root password
console none unknown off insecure
Agora, ao acessar via single-user mode, será solicitado a senha do usuário root. Entretanto devemos ter cuidado, pois caso a senha do usuário root seja perdida, a única possibilidade de alterar as marcações ou a senha será montando o disco como slave em outro sistema. E pode ainda ser impedida, mesmo que montado por outro sistema. Mas deixa para lá, é estressar demais...
É claro que ao ajustar as marcações nos arquivos o administrador estará aumentando a dificuldade para administrar seu servidor, mas isso se torna necessário. Aumentar o securitylevel para 3 poderá tornar muito trabalhoso a tarefa de administração do servidor. Administradores mais experientes sugerem securelevel=2 e atribuir as políticas de marcação nos arquivos. Caso contrário, terá que reiniciar o sistema para alterar uma simples regra de firewall.
Bibliografia
- FreeBSD General comands manual - chflags(1);
- TRACANELLI, Patrick. Programa FreeBSD S.S.A. Belo Horizontei-MG: FreeBSD Brasil,2009;
- MICHAEL, Lucas.Dominando BSD : O guia definitivo para FreeBSD. Rio de Janeiro-RJ: Editora moderna Ltda,2003.