Linux slogan
Visite também: Segurança Linux · BR-Linux.org · Dicas-L · Doode · NoticiasLinux · SoftwareLivre.org · UnderLinux



» Screenshot
» Login
Login:
Senha:

Se você ainda não possui uma conta, clique aqui.

Esqueci minha senha


Dica

Servidor DHCP automático com limitação por MAC no Debian 2.6
Linux user
Publicado por Isomi Luiz da Silva em 01/06/2007

Login: clicsis, 101395 pontos | Blog: http://www.clicsis.co.cc
[ Hits: 9455 ]

Servidor DHCP automático com limitação por MAC no Debian 2.6

Devido a alguns problemas que encontrei ao tentar instalar o DHCP limitando todos os MAC liberado e contando com a edição de um único arquivo. Estou postando esse artigo para facilitar. Espero que tenham um bom proveita. Após concluir ficará muito fácil, pois bastará editar um único arquivo e pronto.

Valos lá: antes de tudo instale é claro o servidor DHCP:

# aptitude install dhcp3-server

Crie um arquivo chamado "MACList" na pasta /usr/local/sbin/MACList:

# touch /usr/local/sbin/MACList

Edite-o acrescentando a lista dos MAC e respectivos IP's a serem liberados automaticamente, seguindo o modelo abaixo:

a;00:00:00:00:00:00;10.0.0.?;usuario

Onde:
  • a: Ativo (Se b, Bloqueia);
  • 00:00:00:00:00:00 = MAC da placa;
  • 10.0.0.? = IP a ser usado pelo micro;
  • usuario = Nome do usuários para referência posterior.

Crie o script de configuração "wcdhcp.sh" na pasta /usr/local/sbin, com o seguinte conteúdo:

#############################################
#! /bin/bash
# Por Isomi Luiz da Silva - Última atualização 27.02.2007


ConfDHCP=/etc/dhcp3/dhcpd.conf
ConfDHCPTemp=/etc/dhcp3/dhcpd_t.conf
ListMACs=/usr/local/sbin/MACList
ServDHCP=10.0.0.1
ServIniRange=10.0.0.2
ServDHCPBroadcast=10.0.0.255
ServDNS=10.0.0.1,10.1.1.1
echo "[ok] Configurações padrões..."

if [ -e $ConfDHCPTemp ]; then
  chmod 777 $ConfDHCPTemp
  rm $ConfDHCPTemp
echo '[ok] Excluindo '$ConfDHCPTemp' arquivo de configuração'  
else
  touch -c $ConfDHCPTemp
  echo -ne ''>>$ConfDHCPTemp
  chmod 777 $ConfDHCPTemp
echo '[ok] Criando e atribuindo permissão 777 ao arquivo'
fi

ContIPFim=`awk 'END{print NR}' $ListMACs`
for ContIPFim in `cat $ListMACs`; do
IPFim=`echo $ContIPFim | cut -d ';' -f 3`
done
echo '[ok] Encontrando último IP'

echo -ne '#Arquivo de configuração DHCP
ddns-update-style none;
default-lease-time 600;
max-lease-time 7200;
authoritative;
INTERFACES=eth1;
subnet 10.0.0.0 netmask 255.0.0.0 {
range '$ServIniRange' '$IPFim';
option routers '$ServDHCP';
option domain-name-servers '$ServDNS';
option broadcast-address '$ServDHCPBroadcast';
'> $ConfDHCPTemp
echo '[ok] Definindo parâmetros padrões DHCP'

    for i in `cat $ListMACs`; do
      #Captura dados da lista de mac
      WC_STATUS=`echo $i | cut -d ';' -f 1`
      IPSOURCE=`echo $i | cut -d ';' -f 3`
      MACSOURCE=`echo $i | cut -d ';' -f 2`
      USUARIO=`echo $i | cut -d ';' -f 4`
    if [ $WC_STATUS = "a" ]; then
    echo -ne '
    host '$USUARIO '{
    hardware ethernet '$MACSOURCE';
    fixed-address '$IPSOURCE';
    }'>>$ConfDHCPTemp
    fi
    done
echo '[ok] Escrito HDCP por MAC'

echo -ne '
}'>>$ConfDHCPTemp
  chmod 777 $ConfDHCP  
  rm $ConfDHCP
  echo '[ok] Excluindo arquivo Conf HDCP original anterior'
  mv $ConfDHCPTemp $ConfDHCP
  chmod 644 $ConfDHCP
  echo '[ok] Renomeando criado para o Conf HDCP padrão'
/etc/init.d/dhcp3-server restart
echo '[ok] Iniciando serviço HDCP'

Altere no topo do arquivo "wcdhcp.sh" os parâmetros anteriores à identificação "Configurações padrões" de acordo com suas configurações de rede.

Para testar é só executrar:

# /usr/local/sbin/wcdhcp.sh

E verificar se o arquivo de configuração foi criado corretamente:

# nano /etc/dhcp3/dhcpd.conf

Para atualizar, basta que após acrescentar os dados MAC e IP no arquivo:

# nano /usr/local/sbin/MACList

Execute o script novamente:

# /usr/local/sbin/wcdhcp.sh

Pronto, estará funcionando perfeitamente o serviço DHCP com atribuição de MAC para cada um dos usuários liberados na lista, ou seja, aqueles que constam o "a" no início da linha.


Outras dicas deste autor

Leitura recomendada
   Dica Linux recomendada Instalar o Acrobat Reader no CentOS 5
   Dica Linux recomendada Configurando VLANs no GNU/Linux
   Dica Linux recomendada Cinco razões que fazem o Ubuntu 9.10 melhor que o Windows 7
   Dica Linux recomendada Wireless Atheros no OpenSuSE com Madwifi simplificado
   Dica Linux recomendada Ndiswrapper + rtl 8185

Comentários
Nenhum comentário foi encontrado.

Contribuir com comentário


  
Para executar esta ação você precisa estar logado no site, caso contrário, tudo o que for digitado será perdido.
Responsável pelo site: Fábio Berbert de Paula - Conteúdo distribuído sob licença GNU FDL
Site hospedado por:

Viva o Linux

A maior comunidade Linux da América Latina! Artigos, dicas, tutoriais, fórum, scripts e muito mais. Ideal para quem busca auto-ajuda em Linux.