Sie sind auf Seite 1von 3

Grupo de Estudos em Tecnologia de Redes e Processamento Paralelo

Atividades iptables e apache


1. Apache
Instalar e configurar o servidor apache para abrir as pastas dos usurios.
2. Iptables
Analisar e executar o script abaixo
##### Definio de
# Tabela filter
iptables -t filter
iptables -t filter
iptables -t filter
# Tabela nat
iptables -t nat -P
iptables -t nat -P
iptables -t nat -P
# Tabela mangle
iptables -t mangle
iptables -t mangle

Policiamento #####
-P INPUT DROP
-P OUTPUT ACCEPT
-P FORWARD DROP
PREROUTING ACCEPT
OUTPUT ACCEPT
POSTROUTING DROP
-P PREROUTING ACCEPT
-P OUTPUT ACCEPT

##### Ativamos o redirecionamento de pacotes (requerido para NAT) #####


echo "1" >/proc/sys/net/ipv4/ip_forward
###############################################################
#
Tabela filter
#
###############################################################
##### Chain INPUT #####
# Criamos um chain que ser usado para tratar o trfego vindo da Internet
iptables -N INTERNET
# Aceita todo o trfego vindo do loopback e indo pro loopback
iptables -A INPUT -i lo -j ACCEPT
# Todo trfego vindo da rede interna tambm aceito
iptables -A INPUT -s 192.168.1.0/24 -i eth0 -j ACCEPT
# Conexes vindas da interface eth1 so tratadas pelo chain INTERNET
iptables -A INPUT -i eth1 -j INTERNET
# Qualquer outra conexo desconhecida imediatamente registrada e derrubada
iptables -A INPUT -j LOG --log-prefix "FIREWALL: INPUT "
iptables -A INPUT -j DROP
##### Chain FORWARD ####
# Permite redirecionamento de conexes entre as interfaces locais
# especificadas abaixo. Qualquer trfego vindo/indo para outras
# interfaces ser bloqueado neste passo
iptables -A FORWARD -d 192.168.1.0/24 -i eth1 -o eth0 -j ACCEPT
iptables -A FORWARD -s 192.168.1.0/24 -i eth0 -o eth1 -j ACCEPT
iptables -A FORWARD -j LOG --log-prefix "FIREWALL: FORWARD "
iptables -A FORWARD -j DROP
##### Chain INTERNET ####
# Aceitamos todas as mensagens icmp vindas de eth1 com certa limitao
# O trfego de pacotes icmp que superar este limite ser bloqueado
# pela regra "...! ESTABLISHED,RELATED -j DROP" no final do
# chain INTERNET

iptables -A INTERNET -p icmp -m limit --limit 2/s -j ACCEPT


# Primeiro aceitamos o trfego vindo da Internet para o servio www (porta 80)
iptables -A INTERNET -p tcp --dport 80 -j ACCEPT
# A tentativa de acesso externo a estes servios sero registrados no syslog
# do sistema e sero bloqueados pela ltima regra abaixo.
iptables -A INTERNET -p tcp --dport 21 -j LOG --log-prefix "FIREWALL: ftp "
iptables -A INTERNET -p tcp --dport 25 -j LOG --log-prefix "FIREWALL: smtp "
iptables -A INTERNET -p udp --dport 53 -j LOG --log-prefix "FIREWALL: dns "
iptables -A INTERNET -p tcp --dport 110 -j LOG --log-prefix "FIREWALL: pop3 "
iptables -A INTERNET -p tcp --dport 113 -j LOG --log-prefix "FIREWALL: identd "
iptables -A INTERNET -p udp --dport 111 -j LOG --log-prefix "FIREWALL: rpc"
iptables -A INTERNET -p tcp --dport 111 -j LOG --log-prefix "FIREWALL: rpc"
iptables -A INTERNET -p tcp --dport 137:139 -j LOG --log-prefix "FIREWALL:samba"
iptables -A INTERNET -p udp --dport 137:139 -j LOG --log-prefix "FIREWALL:samba"
# Bloqueia qualquer tentativa de nova conexo de fora para esta mquina
iptables -A INTERNET -m state --state ! ESTABLISHED,RELATED -j LOG --log-prefix
"FIREWALL: internet-in "
iptables -A INTERNET -m state --state ! ESTABLISHED,RELATED -j DROP
# Qualquer outro tipo de trfego aceito
iptables -A INTERNET -j ACCEPT
#######################################################
#
Tabela nat
#
#######################################################
##### Chain POSTROUTING #####
# Permite qualquer conexo vinda com destino a lo e rede local para eth0
iptables -t nat -A POSTROUTING -o lo -j ACCEPT
iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o eth0 -j ACCEPT
# No queremos que usurios tenham acesso direto a www e smtp da rede externa.
# Tambm registramos as tentativas para monitorarmos qual mquina est tentando
# conectar-se diretamente.
iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o eth1 -p tcp --dport 80 -j
LOG --log-prefix "FIREWALL: SNAT-www "
iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o eth1 -p tcp --dport 25 -j
LOG --log-prefix "FIREWALL: SNAT-smtp "
iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o eth1 -p tcp --dport 25 -j
DROP
iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o eth1 -p tcp --dport 80 -j
DROP
# feito masquerading dos outros servios da rede interna indo para a interface
# eth1
iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o eth1 -j MASQUERADE
# Qualquer outra origem de trfego desconhecida indo para eth0 (conexes vindas
# de eth1) so bloqueadas aqui
iptables -t nat -A POSTROUTING -o eth0 -d 192.168.1.0/24 -j LOG --log-prefix
"FIREWALL: SNAT unknown"
iptables -t nat -A POSTROUTING -o eth0 -d 192.168.1.0/24 -j DROP
# Registra e bloqueia qualquer outro tipo de trfego desconhecido
iptables -t nat -A POSTROUTING -j LOG --log-prefix "FIREWALL: SNAT "
iptables -t nat -A POSTROUTING -j DROP
###############################################
#
Tabela mangle
#
###############################################
##### Chain OUTPUT #####

# Define mnimo de espera para os servios ftp, telnet, irc e DNS, isto
# dar uma melhor sensao de conexo em tempo real e diminuir o tempo
# de espera para conexes que requerem resoluo de nomes.
iptables -t mangle -A OUTPUT -o eth1 -p tcp --dport 21 -j TOS --set-tos 0x10
iptables -t mangle -A OUTPUT -o eth1 -p tcp --dport 23 -j TOS --set-tos 0x10
iptables -t mangle -A OUTPUT -o eth1 -p tcp --dport 6665:6668 -j TOS --set-tos
0x10
iptables -t mangle -A OUTPUT -o eth1 -p udp --dport 53 -j TOS --set-tos 0x10

Das könnte Ihnen auch gefallen