Script PHP/MySQL - Controle de Máquinas via MAC Address no IPtables

Nesse meu primeiro artigo, vou mostrar como criar um script funcional em PHP que possibilita a inserção de regras iptables para controle do acesso à Internet das máquinas pelo MAC address.

[ Hits: 24.948 ]

Por: Carlos Cesar Augusto Rosa em 06/11/2012 | Blog: https://www.youtube.com/carlosbrasilsp


Montando o script PHP com as regras



Trabalho com administração de redes e verifiquei a necessidade de automatizar o processo de bloqueio das máquinas dos laboratórios da mesma. Pois ficar tirando o cabo do switch não é uma opção muito boa, já que o desgaste da porta é grande e, cedo ou tarde, teremos problemas.

Pensei em várias alternativas, como SNMP e scripts que rodem do servidor (eu utilizo o Debian). Verificando os comandos disponíveis no PHP, achei um tal de system();

A partir daí, foi só deixar a imaginação correr. ;)

Primeiramente, criaremos o arquivo "index.php":

<?php
echo '<h4>';
$data = system('date');
echo '</h4>';
?>

<html>
<body>
<table Border=1>
<tr>
<td>
<form action="systemmac.php" method="post">
<h2>Entre com o endereco IP:</h2>
<h2><input type="text" name="var9" value=""/></h2><br>
<input type="submit" value="Enviar IP"/>
</form>
</td>

<td>
<form action="systemmac.php" method="post">
<h2>Ativar o laboratorio03!</h2>
<input name="var9" type="hidden" value="1">
<input type="image" src="img.png" name="var9" value="1"/>
</form>
</td>
</tr>

<tr>
<td>
<form action="systemmac.php" method="post">
<h2>Desativar o laboratorio03!</h2>
<input name="var9" type="hidden" value="2">
<input type="image" src="imgdes.png" name="var9" value="2"/>
</form>
</td>

<td>
<form action="systemmac.php" method="post">
<h2>Verificar conexoes ativas!</h2>
<input name="var9" type="hidden" value="3">
<input type="image" src="img.png" name="var9" value="3"/>
</form>
</td>
</tr>

<tr>
<td>
<form action="systemmac.php" method="post">
<h2>Restaurar o Firewall!</h2>
<input name="var9" type="hidden" value="5">
<input type="image" src="rest.png" name="var9" value="5"/>
</form>
</td>

<td>
<form action="systemmac.php" method="post">
<h2>Verificar o status do Firewall!</h2>
<input name="var9" type="hidden" value="6">
<input type="image" src="rest.png" name="var9" value="6"/>
</form>
</td>
</tr>

<tr>
<td>
<form action="insmac.php" method="post">
<h2>Configurar o sistema!</h2>
<input name="var9" type="hidden" value="">
<input type="image" src="rest.png" name="var9" value=""/>
</form>
</td>

<td>
<form action="systemmac.php" method="post">
<h2>Ativar Laboratorio04!</h2>
<input name="var9" type="hidden" value="7">
<input type="image" src="rest.png" name="var9" value="7"/>
</form>
</td>
</tr>

<tr>
<td>
<form action="systemmac.php" method="post">
<h2>Desativar Laboratorio04!</h2>
<input name="var9" type="hidden" value="8">
<input type="image" src="rest.png" name="var9" value="8"/>
</form>
</td>

<td>
</td>
</tr>

</table>
</body>
</html>

A partir desta página, chamaremos os arquivos PHP necessários.

    Próxima página

Páginas do artigo
   1. Montando o script PHP com as regras
   2. O script PHP de comandos no servidor Debian
   3. Integração com o BD MySQL para cadastro dos MACs address
Outros artigos deste autor
Nenhum artigo encontrado.
Leitura recomendada

Verificando integridade de servidores POP com PHP/sockets

Montando um velocímetro de internet com PHP e GD

Alterando quotas via PHP (navegador)

Asterisk - Monitorando ligações gravadas através de página em PHP

Vulpes - Gerenciamento de acesso para gateways / proxies no Linux

  
Comentários
[1] Comentário enviado por adri3d em 06/11/2012 - 13:37h

solução bem interessante essa

uma sugestão é hospedar esse código no http://github.com (que é gratuito para projetos open source),
porque que fica bem fácil de compartilhar esse código,
e ir atualizando com o tempo,
e receber ajuda de terceiros

eu mesmo me ofereço a ajudar


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts