terça-feira, 27 de outubro de 2015

Firewall Shell Script


Firewall Shell Script (parte 1)


   Passo a passo, como desenvolver um Firewall personalizado, completo, portável para várias distros Linux.

   A forma mais fácil para começar a desenvolver um Firewall baseado no Iptables, em qualquer distro Linux, é começar a mexer com o arquivo dump do Iptables, com os seguintes comandos:

#iptables-save > Firewall

#iptables-restore < Firewall

   Mas o arquivo dump, salvo com o comando iptables-save, é um arquivo bastante analítico, ruim de ser editado e pouco portável.

   Por isso o ideal é desenvolver um Firewall em Shell Script. Primeiro temos que entender o que é um interpretador Shell. Num sistema operacional Linux, primeiramente temos o Hardware (dispositivos físicos), a camada que envolve o Hardware, é o Kernel, responsável pelo gerenciamento e controle do Hardware. O Kernel está envolto por programas ou comandos que realizam tarefas específicas, a quarta camada, responsável pela interação do usuário com o sistema operacional, é o Shell, que usaremos para desenvolver o script de Firewall Iptables Netfilter.

Versões do Shell

Bourne Shell – é o padrão do UNIX foi escrita por Stephen Bourne da Bell Labs. Este é o Shell mais utilizado no mundo UNIX, será utilizado em todos os scripts de Firewall Iptables que desenvolvo. Sua extensão é .sh

Bourne-Again Shell - É quase 100% compatível com o Bourne Shell, porém trazem contigo inúmeros comandos derivados do C Shell e implementações feitas para o Korn Shell. Sua extensão é .bash

Korn Shell – Foi desenvolvido por David Korn da Bell Labs da AT&T, é um desenvolvimento do Bourne Shell, sendo assim compatível com o .sh. Sua extensão é .ksh

C Shell – Foi desenvolvido por Bill Joy da Berkeley University, sua estrutura de linguagem é bastante parecida com a linguagem C. Sua extensão é .csh

   Entendendo o que é o Shell, vamos começar a desenvolver um script de Firewall Iptables.
Primeiro passo (como administrador):

#cd /root
#touch Firewall
#chmod +x Firewall
#nano Firewall

   Na primeira linha do Firewall, sempre colocaremos #. A tralha somente é inserida na primeira linha ou comentários sobre alguma coisa, dentro do script. Então a primeira linha do Firewall ou qualquer script, ficaria assim:

#!/bin/sh


  Essa primeira linha, indica o caminho do interpretador Shell, no caso será usado o Bourne Shell.







 
 

Nenhum comentário:

Postar um comentário