service (firewall)
service firewall start|restart|stop
Categoria: Segurança
Software: service
[ Hits: 10.833 ]
Por: Hugo Alvarez
Script para Fedora Core e Red Hat. Neste conf a intenção é somente criar um serviço de forma limpa ao invés de digitar /path/do/arquivo ou colocar suas configurações de firewall dentro do seu rc.local ou qualquer script que você queira criar com as opções start|stop|restart.
Você vai visualizar com facilidade o funcionamento e editar de acordo com sua preferência, a única instrução necessária para funcionamento é criar o diretório de funcionamento setado no script /var/firewall/last-state e um arquivo onde ficarão salvos os dados executando os comandos:
mkdir /var/firewall/last-state
touch /var/firewall/last-state/firewall
chmod -R 755 /var/firewall/last-state
chkconfig firewall
Pronto, agora é só digitar:
service firewall start
service firewall stop
service firewall restart
E ele executará qualquer comando que for colocado dentro dos parâmetros do script. O que eu criei foi um firewall simples onde eth1 é a rede local que aceita conexões ssh da internet na eth0 e proxy transparente com Squid.
#chkconfig: 30 10 06
#
#description: Carregar regras do Firewall
#
#processname: firewall
#pidfile: /var/run/firewall.pid
#config: /etc/rc.d/init.d/firewall
#probe:true
#
#-----------------------------------------------------------------------------#
case "$1" in
start)
echo -e "\nIniciando o FIREWALL...\n"
iptables -t nat -F
iptables -t mangle -F
iptables -t filter -F
iptables -X
iptables -Z
echo "--> Limpeza de regras pre-existentes                             [ OK ]"
#-----------------------------Definindo Policies------------------------------#
iptables -P INPUT DROP
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT
echo "--> Definicao das policies                                       [ OK ]"
#----------------------------Definindo roteamento-----------------------------#
echo "1" > /proc/sys/net/ipv4/ip_forward
echo "--> Definicao de roteamento entre redes                          [ OK ]"
#-------------------------Habilita Modulos do Kernel--------------------------#
modprobe iptable_nat
modprobe iptable_filter
modprobe ip_tables
modprobe ip_conntrack
modprobe ip_conntrack_ftp
modprobe ip_nat_ftp
modprobe ipt_MASQUERADE
modprobe ipt_LOG
echo "--> Carga dos modulos do Kernel                                  [ OK ]"
#----------------------------- Tabela FILTER ---------------------------------#
## CHAIN INPUT
#
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -i eth1 -s 192.168.0.0/24 -j ACCEPT
iptables -A INPUT -i eth1 -m state --state NEW -j ACCEPT
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -i eth0 -p tcp -m tcp --dport 22 -j ACCEPT
iptables -A INPUT -j REJECT
echo "--> Carga das regras da Tabela FILTER:INPUT                      [ OK ]"
#---------------------------------Tabela NAT----------------------------------#
# Bloqueia Acesso a sites proibidos que utilizam a porta 443
iptables -t nat -A PREROUTING -s 192.168.0.0/24 -d www.orkut.com -p tcp -m tcp --dport 443 -j DROP
# Proxy Transparente
iptables -t nat -A PREROUTING -s 192.168.0.0/24 -d 0/0 -p tcp --dport 80 -j REDIRECT --to-port 3128
# Nega tentativas de conexao na porta 80
iptables -t nat -A PREROUTING -s 192.168.0.0/24 -p tcp -m tcp --dport 80 -j DROP
# Ativa o mascaramento
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -d 0/0 -j MASQUERADE
echo "--> Carga das regras da Tabela NAT                               [ OK ]"
#-----------------------------Atualizando status------------------------------#
$IPTSAVE > /var/firewall/last-state/firewall
echo
#-----------------------------------------------------------------------------#
;;
stop)
  echo -e "\nDescarregando FIREWALL e configurando Chains para ACCEPT\n"
  echo "1" > /proc/sys/net/ipv4/ip_forward
#-----------------------------Limpando as Tabelas-----------------------------#
iptables -t mangle -F
iptables -t filter -F
iptables -X
iptables -Z
#-----------------------------Definindo Policies------------------------------#
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT
#-----------------------------Atualizando status------------------------------#
iptables-save > /var/firewall/last-state/firewall
;;
restart)
  $0 stop
  $0 start
;;
status)
#iptables -L |less
iptables-save > /var/firewall/last-state/firewall
cat /var/firewall/last-state/firewall |less
;;
*)
  echo "Sintaxe: firewall {start|stop|status}"
  exit 1
esac
exit 0
Nenhum comentário foi encontrado.
IA Turbina o Desktop Linux enquanto distros renovam forças
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Linux em 2025: Segurança prática para o usuário
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
IA chega ao desktop e impulsiona produtividade no mundo Linux
Atualizando o Fedora 42 para 43
Como saber se o seu e-mail já teve a senha vazada?
Como descobrir se a sua senha já foi vazada na internet?
Instalação dualboot Windows 11 e Debian 13 (0)
Programa fora de escala na tela do pc (33)
Eu queria adicionar a incon do wifi e deixa transparente no fluxbox no... (0)









