Salim Aouar's blog

Configuração Avançada de Servidor DHCP - Criando class para filtro de MAC Address

Utilize configurações avançadas no Servidor DHCP isc-dhcp-server com filtro de MAC Address e uso de classes

Servidor DHCP

Um Servidor DHCP desempenha funções essenciais dentro de um rede corporativa. Ele possibilita a distribuição de configurações de rede aos hosts.

Não vou entrar em detalhes conceituais, pois não é o objetivo, ok?! Caso queira aprofundar, leia um pouco mais aqui.

Vamos imaginar uma situação! Você gerencia uma rede que tem/terá um Servidor DHCP, e necessita realizar alguns filtros mais sofisticados. Por exemplo:

O Servidor DHCP pode ser configurado para te ajudar a melhorar esses aspectos. Veja bem o que escrevi… pode ajudar, e gostaria que entendesse que não é a única solução a ser adotada para obter mais segurança, ok?!

A Segurança envolve um conjunto de práticas, treinamentos, implantações, etc… Mas, esta dica vai ajudar muito. Vamos ao que interessa!!!

O isc-dhcp-server é um Servidor DHCP muito utilizado. É através dele que configurei estas regras, ok?!

Nele há um arquivo de configuração, o /etc/dhcp/dhcpd.conf, que vem com algumas linhas padrões (de configurações globais).

Vou incluir uma linha ao final dele, que adicionará meu novo arquivo de configuração (que criarei) às regras do Servidor DHCP.

###inclusão ao final
include "/etc/dhcp/minhaempresa.conf";

Agora, vou criar o arquivo /etc/dhcp/minhaempresa.conf para inserir as configurações da minha sub-rede (subnet). Vou exibir as partes do arquivo aqui para que possamos estudá-las separadamente:

###Definição da classe para filtrar MAC Address
class "rede_interna" {
  match if (substring(hardware, 1, 2) = 00:01) or
    (substring(hardware, 1, 2) = 00:02) or
    (substring(hardware, 1, 2) = 00:03) or
    (substring(hardware, 1, 2) = 00:04) or
    (substring(hardware, 1, 2) = 00:05);
}

Foi definida uma classe chamada rede_interna que faz uma verificação se o MAC Address inicia com as combinações 00:01 ou 00:02 ou … 00:05.

Perceba que definimos somente os 2 primeiros Bytes substring(hardware, 1, 2), mas poderíamos filtrar por 3 Bytes substring(hardware, 1, 3), ou até mais se quiséssemos. Você pode aplicar de acordo com sua necessidade, se o seu ambiente de hosts for padronizado!

Após a definição da classe rede_interna, vamos configurar (no mesmo arquivo) a nossa subnet. A Subrede será 192.168.1.0, a Máscara será 255.255.255.0 ou /24, o Gateway Padrão e DNS será o 192.168.1.254, e o Broadcast o último endereço da subrede. Veja o conteúdo:

subnet 192.168.1.0 netmask 255.255.255.0 {

  pool {
                                
    ###Autorização para membros da rede interna
    allow members of "rede_interna";

    ###Definição do Range, Gateway e DNS
    range 192.168.1.50 192.168.1.100;
    option routers 192.168.1.254;
    option domain-name-servers 192.168.1.254;
    option broadcast-address 192.168.1.255;

    ###Reservando IPs Fixos para Impressora e Servidor de Arquivos
    host impressora_A {
      hardware ethernet 00:03:11:11:11:11;
      fixed-address 192.168.1.10;
    }

    host servidor_arquivos {
      hardware ethernet 00:01:12:12:12:12;
      fixed-address 192.168.1.11;
    }

  }

}

Veja que com a linha allow members of "rede_interna";, fazemos a autorização somente para os hosts que possuem MAC Address que atendem à regra da Classe rede_interna. Ou seja, já estamos negando todas as exceções!

Repare que fiz 2 cadastros de hosts que necessitam de IPs Fixos, sendo uma Impressora e um Servidor de Arquivos. Bastou informar o Nome do host, MAC Address e IP Fixo.

Enfim… com este tipo de configuração, conseguimos ajudar a melhorar a Segurança e Organização, através da Filtragem por MAC Address (utilizando class) e Definição de IPs Fixos.

O arquivo minhaempresa.conf está disponível para download aqui, caso queira ter o conteúdo integral do mesmo.

Certamente este Post vai ajudar muitas pessoas, que estão passando por uma situação assim. Mesmo que não esteja passando por isso, você aumentou seu conhecimento e sabe que há esta opção, pois, um dia precisará!!!

No Curso GRATUITO de Servidor Linux tem um Módulo que trata de Servidor DHCP. Veja este Post sobre o Curso, inscreva-se e não perca tempo! Certamente você vai adquirir mais conhecimentos sobre a área ao fazer o curso!!!

Curso Gratuito de Servidor Linux

Compartilhe esse Post e o Blog para sua Rede Social, é muito importante para podermos atingir um maior número de pessoas interessadas! Curta a página no Facebook e fique por dentro de todas novidades do Blog, Cursos, Tutoriais e Dicas!!!

Espero ter contribuído para seus conhecimentos com essa dica! Continue me acompanhando, sempre teremos conteúdos com grande qualidade aqui no Blog e em meu Canal do Youtube. Qualquer dúvida, elogios ou críticas, deixe o comentário abaixo. Será um prazer te ajudar! Até mais!