[MASOCH-L] Algoritimo para validar MAC
"Edison (Júnior)"
edison at coslinux.com.br
Mon May 23 21:46:59 -03 2005
Olha só:
[root at cosnet root]# iptables -A MACLIST -s 192.168.0.1 -m mac
--mac-source 00:00:00:00:00:00 -i eth1 -o eth0 -j ACCEPT
[root at cosnet root]#
[root at cosnet root]# iptables -L MACLIST -n
Chain MACLIST (1 references)
target prot opt source destination
ACCEPT all -- 192.168.0.1 0.0.0.0/0 MAC
00:00:00:00:00:00
[root at cosnet root]#
o iptables não gerou erro algum. Veja o outro exemplo:
[root at cosnet root]# iptables -A MACLIST -s 192.168.0.1 -m mac
--mac-source 00:00:00:XX:00:00 -i eth1 -o eth0 -j ACCEPT
iptables v1.2.9: Bad mac address `00:00:00:XX:00:00'
Try `iptables -h' or 'iptables --help' for more information.
Agora ele gerou erro. Porém não incluiu a regra. Ou seja, se o MAC for
inválido, o iptables não aceita a regra. Isso significa que se alguém
digitar um MAC errado e se o seu controle de acesso for baseado em MAC,
um host deixará de ter acesso.
Acredito que o que você não quer é justamente esperar alguém reclamar
que não tem acesso devido a um erro de digitação. Nesse caso uma solução
simples seria, em bash mesmo:
if ( iptables -A MACLIST -s 192.168.0.1 -m mac --mac-source
00:00:00:XX:00:00 -i eth1 -o eth0 -j ACCEPT ) ; then
echo "regra incluída"
else
echo "Erro ao incluir Regra"
... sua rotina de tratamento de erro
fi
Concluindo: O próprio iptables valida o MAC.
[ ] 's
Edison Bortolin
scsantos at unigranrio com br escreveu:
> Vamos lá Lao,
>
> se vc digitar uma regra de iptables com o ip 192.168.0.1 e o MAC
> 00:00:00:00 o iptables irá gerar um erro e criará a regra somente com
> o IP ignorando o MAC.
>
> Gostaria que antes de gerar a regra verificar (com uma aplicação) se a
> sintaxe do MAC está correta.
>
> Foi agora?
>
> Tem como fazer isso com perl como disse um colaborador da lista, eu só
> quero entender o algoritimo.
>
> Usando perl:
> ifconfig | grep "eth0" | awk '{print $5}' | perl -ne
> '(/([0-9a-f]{1,2}:){5}[0-9a-f]{1,2}/i && print "OK\n") || print "ERRO\n"'
>
> Um fraterno abraço !!!
>
> Silvio Cesar L. dos Santos
> Divisão de Tecnologia da Informação
> Universidade do Grande Rio - UNIGRANRIO
> -----------------------------------------
> (o_
> //\ - Software Livre -
> V_/_ conhecimento ao alcance de todos
>
>
> Lao DanTong escreveu:
>
>> On Mon, 23 May 2005, scsantos at unigranrio com br wrote:
>>
>>> Dado um MAC 00:00:00:00:00 validar ele via aplicação no sentido de
>>> não ser efetuada a tentativa de gerar uma regra de iptables para ip
>>> + mac em questão, pois o iptables irá gerar somente a regra por ip
>>> quebrando o esquema ip e mac.
>>
>>
>>
>> continuo sem entender. validar alguma coisa x consiste em calcular
>> uma função f(x,p) que se igual a zero implica em x válido. p são
>> parâmetros externos. um exemplo é uma autenticação por desafio
>> resposta pode ser f(x,p)=md5(concatenação(x,p)) sendo p o desafio.
>>
>> então, continua minha pergunta, o que devemos entender por "validar o
>> MAC"? poderia ser verificar se ele está associado a determinado
>> endereço IP (nesse caso uma consulta ao arp resolve) ou se ele
>> pertence a um conjunto de MACs autorizados (perigoso, MACs não são
>> fixos!)?
>> __
>> masoch-l list
>> https://eng.registro.br/mailman/listinfo/masoch-l
>>
> __
> masoch-l list
> https://eng.registro.br/mailman/listinfo/masoch-l
>
More information about the masoch-l
mailing list