precisa configurar o log de consulta do servidor BIND com versões

1

Eu tenho tentado fazer com que o log de consultas do servidor BIND funcione, criando três versões, no máximo, 100MB cada. O sistema é o SUSE SLES 11. Eu encontrei numerosos artigos sobre artigos na web, mas nenhum deles fez nada além de quebrar o servidor DNS. A máquina é um guest virtualbox para que eu possa continuar voltando para um instantâneo não modificado de um servidor BIND que não faz nenhum log de consulta.

Se eu adicionar manualmente as instruções de log ao named.conf, o named não será mais carregado. mensagens mostra "isc_stdio_open 'tudo o que eu disse que ele' falhou: arquivo não encontrado." chown named.named logfile não ajuda ou altera o comportamento de qualquer forma. Faça qualquer coisa com o arquivo de perfil apparmor diretamente, incluindo salvá-lo sem alterá-lo e o apparmor nunca mais carregará esse perfil. Vai dizer que já existe um perfil.

Restaurar instantâneo - > agora de volta para não ter feito alterações

use as ferramentas GUI para configurar o log para o servidor dns. named não irá iniciar bc ainda não tem direitos ou não pode encontrar o arquivo de log. chown named.named logfile não ajuda. use as ferramentas GUI para configurar o apparmor. Isso, pelo menos, não mata o perfil apparmor, mas não ajuda a situação de qualquer forma, independentemente.

Eu tentei isso em 2 VM / s diferentes, ambos SLES 11, ambos são apenas básicos, têm todas as instalações padrão e ainda não estão em produção.

Eu tentei várias combinações diferentes de usar as ferramentas de gui e modificar manualmente os arquivos de configuração. Eu tentei locais diferentes para o arquivo de log, como / var / log / querylog, / var / log / querylogs / querylog, / root / queries. Eu tentei usar o touch para criar o arquivo de log e, em seguida, colocá-lo no named.named. Eu tentei usar o gui para criar os arquivos / diretórios e, em seguida, definir permissões.

Alguém sabe como obter logs de consulta DNS, em uma rotação de 3 arquivos em um servidor SLES 11 BIND funcionando? Não parece que deve estar em qualquer lugar perto de muito trabalho.

editar

atualmente, a seção de criação de log do named.conf se parece com:

logging { channel log_file { file "/var/log/query_log.log" versions 3 size 100M; } ; catagory default { log_file; }; };

o que é relatado em / var / log / messages é:

the working directory is not writable.
isc_stdio_open '/var/log/named/query_log.log' failed: file not found > configuring logging: file not found exiting (due to fatal error)

, então parece que há algum tipo de problema de permissão. Eu criei esse diretório e coloquei um arquivo em branco nele chamado query_log.log. Eu fiz o nome do proprietário e concedeu a todos ler, escrever e executar em / var / log / named e deu a todos que leram write em /var/log/named/query_log.log

ls -l de / var / log / named

-rwxrwxrwx l named named 0 Apr 26 08:43 query_log.log

ls - de / var / log

//various files and directories
drwxr-xr-x 2 named named 4093 Apr 26 09:26 named

editar 2

para iniciar o servidor de bind eu uso rcnamed start Se eu remover a seção de registro para que eu possa ser nomeado iniciado, executando ps aux | grep named mostra que / usr / sbin / named está sendo executado como o usuário nomeado.

Obrigado pela sua ajuda até agora. O que tenho que fazer para que isso funcione?

    
por GC78 25.04.2013 / 19:22

1 resposta

1

Does anyone know how to get DNS Query logs, in a rotation of 3 files on a SLES 11 BIND server working? It doesn't seem like it should be anywhere near this much of a hassle.

Não deve ser um incômodo - a sintaxe é direta e bem exercida (milhares e milhares de administradores de nomes de usuários a usam.) É teoricamente possível, mas muito improvável que você tenha encontrado um novo bug nela. Vamos ver as causas mais prováveis.

Nunca é demais verificar sua sintaxe primeiro. Como explicado no Manual de Referência do Administrador do BIND (também conhecido como "ARM", uma cópia do ARM apropriada à sua versão do BIND está incluída na sua fonte BIND ou pode ser encontrada na web do ISC site) 6.2.10, você deve primeiro definir um canal, por exemplo:

channel example_query_channel { 
   file "bind_query.log" versions 3 size 20m; 
   print-time yes;
   print-category yes;
};

direcione a categoria que você está interessado em registrar (ou seja, "consultas") para esse canal:

category queries {
   example_query_channel; 
};

Você pode usar o utilitário named-checkconf que vem com o BIND para verificar a sintaxe do seu arquivo de configuração em busca de erros antes de tentar reiniciar o BIND com ele.

Se isso não funcionar para você, você tem um problema de permissão de sistema de arquivos de algum tipo e não um problema BIND especificamente; O BIND está sendo impedido de alguma forma de gravar no arquivo que você especificou em seu diretório apropriado. Talvez você esteja descartando privilégios para ser executado como um usuário não-root e esse usuário não tenha -x perms para percorrer todos os diretórios no caminho da raiz do sistema de arquivos até o diretório em que você está escrevendo, ou talvez você não tenha - w perms para gravar arquivos nesse diretório. Ou possivelmente você tem outra camada de segurança (você menciona o AppArmor) que está complicando ainda mais as coisas.

    
por 26.04.2013 / 05:43