Joe Shen
Todos os sonhos, todos se tornarão realidade.
[Notas de estudo] Construção do ambiente de produção real (D) Servidor de resolução de nomes de domínio NS
Em primeiro lugar, vamos popularizar o servidor DNS e o servidor NS: o servidor DNS refere-se ao servidor de resolução de nomes de domínio, como o serviço público 8.8.8.8 do Google; e o servidor NS refere-se ao servidor de resolução autoritativo de um nome de domínio, que é um servidor de registro de resolução autoritativa que gerencia nomes de domínio.
Crie um servidor de resolução NS de nome de domínio no ambiente de produção real
Ambiente Tencent Cloud Linux CentOS 7
Dependências ou ferramentas que precisam ser instaladas com antecedência vim ll cat
Ordem yum -y install vim ll cat
Eu escolho o bind de código aberto como o software do servidor, primeiro uso o gerenciador de pacotes yum para instalar
Explique que o processo e o gerenciamento do sistema de bind são nomeados
Ordem yum -y install bind*
Complete! aparece para concluir a instalação
Entre no diretório do arquivo de configuração /etc do bind e verifique se o arquivo de configuração é criado normalmente
Ordem cd /etc/ && ll | grep named
É normal se o seguinte feedback aparecer
Em seguida, edite o arquivo de configuração principal
Ordem vim named.conf
Depois de entrar com sucesso no modo de visualização, pressione o teclado a para abrir o modo de edição
Como desejo usar o servidor de resolução de nomes de domínio NS no ambiente de produção real, precisamos permitir que todos os hosts iniciem solicitações de consulta ao servidor, portanto, altere os três lugares na figura abaixo para qualquer
Além disso, meu servidor é responsável apenas por meu próprio nome de domínio. Não há necessidade de outras pessoas consultarem outros nomes de domínio. Você pode desativar as solicitações de consulta recursivas. Caso contrário, outras pessoas podem consultar seu servidor em busca de nomes de domínio que seu servidor não é responsável por resolver. O servidor encaminhará automaticamente a solicitação para o servidor de nível mais alto (servidor raiz), resultando em um desperdício de largura de banda do servidor, portanto, altere isso para não
Pressione a tecla esc do teclado para sair do modo de edição, verifique o arquivo de configuração no modo de visualização, deve se parecer com a figura a seguir
Depois de confirmar que está correto, digite dois pontos no teclado inglês de meia largura e digite wq para salvar e sair do vim
Em seguida, edite o arquivo de configuração regional e adicione seu nome de domínio ao gerenciamento de resolução de ligação
Ordem vim named.rfc1912.zones
Mova o cursor de operação para a linha inferior e pressione o para iniciar uma nova linha e entrar no modo de edição ao mesmo tempo
O nome de domínio que quero resolver é o nome de domínio ceice.top que uso para testar e jogar
Digite o seguinte
Entre eles, digite master; significa que este servidor é o servidor de resolução principal deste nome de domínio e arquivo "ceice.top.zone"; significa que o nome do arquivo da zona de resolução é arquivo ceice.top.zone e allow-update { nenhum; }; significa que o arquivo de resolução do nome de domínio está proibido de ser atualizado (outros hosts não têm permissão para atualizar e é possível fazer login no servidor sozinho). Verifique o arquivo de configuração e, após confirmar que está correto, digite dois pontos no teclado inglês de meia largura e digite wq para salvar e sair do vim
Então é hora de criar o arquivo de zona de resolução para o nome de domínio. O arquivo de zona padrão de ligação que eu uso está localizado em /var/named
Digite este caminho e visualize os arquivos neste caminho
Ordem cd /var/named/ && ll
Por padrão, deve ficar assim
Copie o arquivo de configuração do modelo chamado.empty e nomeie-o como o arquivo da zona de análise ceice.top.zone que desejo usar. Após a cópia, verifique se existe esse arquivo e o conteúdo do arquivo.
Ordem cp named.empty ceice.top.zone && ll | grep ceice.top.zone && cat ceice.top.zone
Se estiver como mostra a figura abaixo, significa que não há problema
Edite o arquivo ceice.top.zone e escreva nossos dados de resolução de nome de domínio. Como é nosso próprio servidor, não precisamos atualizá-lo uma vez a cada dez minutos ou meia hora como o servidor público do registrador de nomes de domínio. Como é nosso próprio servidor, podemos configurá-lo para 1 segundo (cuidado! Se o seu nome de domínio tiver um grande número de visitas, configurá-lo para 1 segundo levará a uma carga extremamente alta de hardware e largura de banda do servidor)
Ordem vim ceice.top.zone
escreva assim
Todos os 1s significam que o período de sobrevivência é de 1 segundo, e ele só pode sobreviver por 1 segundo no servidor dns público, o que basicamente significa que você deve solicitar a resolução mais recente do seu servidor a cada momento, por isso você deve configurá-lo cuidadosamente para 1 segundo, porque se o seu nome de domínio tiver um grande número de visitas, defina-o para 1 segundo, e as atualizações malucas de tantos servidores dns públicos no mundo causarão uma carga extremamente alta de hardware e largura de banda do servidor
A segunda linha @ IN SOA ceice.top.stscutest.yeah.net. ( stscutest.yeah.net. nele indica o endereço de e-mail do administrador do nome de domínio, é recomendável ser consistente com o endereço de e-mail declarado pelo registrador de nomes de domínio
Desnecessário dizer que o seguinte é o registro de resolução do nome de domínio. Adicionar resolução no registrador de nomes de domínio é o mesmo que este
Pressione a tecla esc do teclado para sair do modo de edição, verifique o arquivo de configuração no modo de visualização e, após confirmar se está correto, digite dois pontos no teclado inglês de meia largura e digite wq para salvar e sair do vim
O nome do processo e do sistema de ligação é nomeado
E seu nome de gerenciamento de sistema é named.service
Vamos começar a vincular e tentar
Ordem systemctl start named.service
Se não houver feedback como mostra a figura abaixo, 80% deles indicam que foi bem-sucedido. Em seguida, verifique o status para ver se realmente foi bem-sucedido.
Ordem systemctl status named.service
Se houver feedback na figura abaixo, há um Active: active (em execução) verde e não há aviso ou erro vermelho, indicando que não há problema com o arquivo de configuração e o bind também está executando normalmente
Em seguida, o registrador de nome de domínio altera o servidor de resolução NS de todo o nome de domínio para seu próprio servidor (observação: primeiro você precisa resolver seu próprio servidor NS)
Como você pode ver, o servidor de resolução NS padrão é gratuito no Alibaba Cloud. Adicione seu próprio servidor de resolução NS. Adicione seu próprio servidor de resolução NS
no host DNS personalizado. Observe que deve haver mais ou igual a dois registros de resolução, porque nomes de domínio internacionais exigem pelo menos dois servidores de resolução NS para cada nome de domínio. Claro, você pode criar dois registros de resolução diferentes para seu próprio servidor de resolução NS e resolvê-los no mesmo servidor. Foi o que fiz, conforme mostrado na figura
Após a conclusão da adição, modifique oficialmente o servidor de resolução DNS do nome de domínio no local de modificação do DNS. Após a conclusão da modificação, o nome de domínio será oficialmente resolvido por seu próprio servidor de resolução NS.
Também pode ser visto na página de consulta de dados whois do nome de domínio, que foi resolvido por seu próprio servidor de resolução NS, conforme mostrado na figura
Agora mesmo adicionei os registros de análise como ftp e ShangHai ao arquivo da área de análise, agora vou tentar ver se pode ser analisado normalmente
Será descoberto que não pode ser analisado, como mostrado na figura
O motivo, depois de pesquisar por mais de meia hora, descobri que cometi um erro básico. Nosso sistema operacional comumente usado é o Windows e o servidor que uso é um sistema baseado em Linux. O gerenciamento de permissão de arquivos é completamente diferente entre os dois. É justamente por causa das permissões extremamente rígidas e gerenciamento de usuários do sistema Linux que a segurança é extremamente alta. Entre serviços corporativos e geeks, a taxa de uso do Linux é muito maior do que a do Windows, que tem baixa segurança e não é fácil de gerenciar rapidamente.
Vamos dar uma olhada nas permissões do arquivo de zona de análise que acabamos de escrever, conforme mostrado na figura
Isso mesmo, devido aos hábitos operacionais gerais ao usar o sistema Windows, as permissões não foram definidas corretamente ao analisar o arquivo de zona acabado. O grupo de usuários atual é root, o usuário é root e as permissões ainda são -rw-r—o que significa que todos os grupos de usuários e usuários não têm permissões, exceto o usuário e o grupo de usuários a que pertencem.
O Bind não tem permissão para ler este arquivo, portanto, naturalmente, não pode obter os dados de análise para serviços externos. Altere o proprietário do arquivo da área de análise para o usuário em execução nomeado nomeado que é criado automaticamente durante a instalação do bind.
Ordem chown -Rf root:named ceice.top.zone
O resultado da operação é mostrado na figura
Agora reinicie o seguinte bind para ver a situação
Ordem systemctl restart named.service
Vamos ver se podemos analisar
Resolução normal, até agora, seu próprio servidor de resolução NS está concluído
Então agora vamos tentar ver se o tempo de sobrevivência é realmente 1 segundo
Adicionar um teste a um registro
Sem deixar o bind reler o arquivo de configuração, não existe essa análise, conforme mostra a figura
Deixe o bind reler o arquivo de configuração
Ordem systemctl reload named.service
Entrou em vigor imediatamente, conforme mostrado na figura
Em seguida, excluímos essa análise e deixamos o bind reler o arquivo de configuração para ver se o tempo de sobrevivência é realmente de 1 segundo
sucesso!
Até agora, meu próprio servidor de resolução de nomes de domínio NS foi configurado e os registros de resolução são atualizados rapidamente em tempo real
Terminar!
Se você acha que este artigo está bem escrito ou o conteúdo é útil para você, clique aqui para pular ou clique no polegar abaixo para patrocinar este site! Obrigado ~ serviço de pagamento por www.alipay.com
link de referência
https://www.shentianshu.com/Services/Blog/info/1380.html
https://www.imooc.com/video/12646
https://www.bilibili.com/video/BV1GW411j7Ts?p=3&t=1051