Iptables , Liberar portas smtp e pop [RESOLVIDO]
juniorcamargos
(usa Ubuntu)
Não consigo dar acesso as portas do outlook, windows mail com iptables (25,110).O iptables esta rodando blz e squid com autenticaçao tambem, as estaçoes entram na internet mas não mandam email. Segue meu script do iptables.......
---------------------------------------------------------------------------
#IpTables
IPT=/sbin/iptables
MP=/sbin/modprobe
#Interfaces
ETH_LO=lo
ETH_LAN=eth1
ETH_WAN=eth2
#IP's
IP_LO=127.0.0.1
IP_LAN=192.168.0.254
IP_WAN=
#Network's
LAN=192.168.0.0/24
WAN=0/0
#Portas
#FTP 20,21/TCP
#SMTP 25/TCP
#POP3 110/TCP
#HTTPS 443/TCP
#CONECTIVIDADE SOCIAL 2631/TCP,3456/TCP/UDP,8017/TCP
TCP_OPEN_PORTS=20,21,25,53,110,443,2631,3456,8000,8017
UDP_OPEN_PORTS=53,5456,3550,4550,5550,34,22
$MP ip_nat_ftp
$IPT -F
$IPT -t nat -F
$IPT -A INPUT -i $ETH_LO -j ACCEPT
$IPT -A INPUT -i tun+ -j ACCEPT
$IPT -A INPUT -i $ETH_LAN -s $LAN -j ACCEPT
$IPT -A INPUT -i $ETH_WAN -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPT -P INPUT DROP
$IPT -t nat -A POSTROUTING -o $ETH_WAN -s $LAN -p udp -m multiport --dport $UDP_OPEN_PORTS -j MASQUERADE
$IPT -t nat -A POSTROUTING -o $ETH_WAN -s $LAN -p tcp -m multiport --dport $TCP_OPEN_PORTS -j MASQUERADE
#$IPT -t nat -A POSTROUTING -o $ETH_WAN -s $LAN -j DROP
# Acesso total
#$IPT -t nat -I PREROUTING -s 192.168.0.128 -j ACCEPT
#$IPT -t nat -I POSTROUTING -s 192.168.0.128 -j MASQUERADE
-------------------------------------------------------------------------
Ja estou a dias quebrando a cabeça com esse script, se alguem puder me ajudar?? Obrigado .
juniorcamargos
(usa Ubuntu)
Não entendi vc quer q eu forward oq ??da pra ser mais claro ??
andre_ramos
(usa openSUSE)
Karo amigo, vc precisa de comunicar sua rede interna com o DNS do seu provedor através da porta 53
segue as regras
192.168.0.0/24 e sua rede interna ok
200.175.182,139 e 200.175.5.139 e o DNS fornecido pelo seu provedor
# Regras para liberar o outlook
$IPTABLES -A FORWARD -p udp -s 192.168.0.0/24 -d 200.175.182.139 --dport 53 -j ACCEPT
$IPTABLES -A FORWARD -p udp -s 200.175.182.139 --sport 53 -d 192.168.0.0/24 -j ACCEPT
$IPTABLES -A FORWARD -p udp -s 192.168.0.0/24 -d 200.175.5.139 --dport 53 -j ACCEPT
$IPTABLES -A FORWARD -p udp -s 200.175.5.139 --sport 53 -d 192.168.0.0/24 -j ACCEPT
$IPTABLES -A FORWARD -p tcp -s 192.168.0.0/24 --dport 25 -j ACCEPT # SMTP
$IPTABLES -A FORWARD -p tcp -s 192.168.0.0/24 --dport 110 -j ACCEPT # POP3
Espero ter ajudado.
volcom
(usa Debian)
Utilizo essas e funciona perfeitamente:
########## Permite a Rede Local acessar um servidor POP3 SMTP na Internet
iptables -A FORWARD -p tcp -s 192.168.1.0/24 -i eth1 --sport 1024: -d 0/0 -o eth0 --dport 110 -j ACCEPT
iptables -A FORWARD -p tcp -s 0/0 -i eth0 --sport 110 -d 192.168.1.0/24 -o eth1 --dport 1024: -j ACCEPT
iptables -A FORWARD -p tcp -s 192.168.1.0/24 -i eth1 --sport 1024: -d 0/0 -o eth0 --dport 25 -j ACCEPT
iptables -A FORWARD -p tcp -s 0/0 -i eth0 --sport 25 -d 192.168.1.0/24 -o eth1 --dport 1024: -j ACCEPT
Abraço
juniorcamargos
(usa Ubuntu)
Fiz oq vcs dois falaram, mas nada ainda, continuo sem conseguir enviar email..Voces acham q tem alguma coisa errado com esse script ? o squid autenticado q uso não tem nada ver com isso, não sei mais oq faço....
obs:Se compartilhar a internet com iptables tudo funciona normalmente,mais aí qualquer um pode desmarcar o uso do proxy no navegador e navegar sem restriçoes.Obrigado
andre_ramos
(usa openSUSE)
Usa este modelo de script para iptables, comigo funciona blz
#!/bin/bash
# Autor: Andre Chagas Ramos
# Data Criacao: 25/09/2009
# Data Modificacao: 30/11/2009
IPTABLES=/usr/sbin/iptables
NETWORK=eth1
WEB=eth0
iniciar () {
# Limpando as regras
$IPTABLES -F
$IPTABLES -Z
$IPTABLES -t nat -F
$IPTABLES -t mangle -F
# Compatilhamento da conexao
echo 1 > /proc/sys/net/ipv4/ip_forward
echo "Ativando compatilhamento!"
# Politicas de acesso geral
$IPTABLES -P INPUT DROP
$IPTABLES -P OUTPUT ACCEPT
$IPTABLES -P FORWARD DROP
# Manter conexoes ja estabelecidas para nao parar
$IPTABLES -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
$IPTABLES -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A INPUT -m state --state INVALID -j DROP
# Bloqueia pacotes intencionamente mal-formados
$IPTABLES -A INPUT -p tcp --tcp-flags ALL ALL -j DROP
$IPTABLES -A INPUT -p tcp --tcp-flags ALL NONE -j DROP
$IPTABLES -A INPUT -p tcp --tcp-flags SYN,RST SYN,RST -j DROP
$IPTABLES -A INPUT -p tcp --tcp-flags SYN,FIN SYN,FIN -j DROP
# Evitando SYN_Flood
echo 1 > /proc/sys/net/ipv4/tcp_syncookies
# Carregamento de Modulos
modprobe ip_nat_ftp
modprobe iptable_nat
modprobe ip_tables
modprobe ip_conntrack
modprobe ipt_MASQUERADE
modprobe ip_conntrack_ftp
# Aceita todo o trafego vindo do loopback e indo pro loopback
$IPTABLES -t filter -A INPUT -i lo -j ACCEPT
# Protecoes contra ataques #
$IPTABLES -A INPUT -m state --state INVALID -j DROP
$IPTABLES -A INPUT -i $NETWORK -s ! 192.168.0.0/24 -j DROP
# Redirecionando o trafego para a porta 3128
$IPTABLES -t nat -A PREROUTING -i $NETWORK -p tcp -d ! 200.201.174.207 --dport 80 -j REDIRECT --to-port 3128
$IPTABLES -A INPUT -i eth1 -j ACCEPT
# Bloquear o MSN
$IPTABLES -I FORWARD -s 192.168.1.0/24 -p tcp --dport 1863 -j REJECT
$IPTABLES -I FORWARD -s 192.168.1.0/24 -d loginnet.passport.com -j REJECT
# Liberar MSN para determinados IPS
#$IPTABLES -I FORWARD -s 192.168.1.0/24 -p tcp --dport 1863 -j ACCEPT #Andre
#$IPTABLES -I FORWARD -s 192.168.1.0/24 -d loginnet.passport.com -j ACCEPT #Andre
# Regras para liberar o outlook
$IPTABLES -A FORWARD -p udp -s 192.168.0.0/24 -d 200.175.182.139 --dport 53 -j ACCEPT
$IPTABLES -A FORWARD -p udp -s 200.175.182.139 --sport 53 -d 192.168.0.0/24 -j ACCEPT
$IPTABLES -A FORWARD -p udp -s 192.168.0.0/24 -d 200.175.5.139 --dport 53 -j ACCEPT
$IPTABLES -A FORWARD -p udp -s 200.175.5.139 --sport 53 -d 192.168.0.0/24 -j ACCEPT
$IPTABLES -A FORWARD -p tcp -s 192.168.0.0/24 --dport 25 -j ACCEPT # SMTP
$IPTABLES -A FORWARD -p tcp -s 192.168.0.0/24 --dport 587 -j ACCEPT # SMTP
$IPTABLES -A FORWARD -p tcp -s 192.168.0.0/24 --dport 110 -j ACCEPT # POP3
# Regras para liberar o FTP
$IPTABLES -A INPUT -i $NETWORK -p tcp -s 192.168.0.0/24 --dport 20 -j ACCEPT # FTP
$IPTABLES -A INPUT -i $NETWORK -p tcp -s 192.168.0.0/24 --dport 21 -j ACCEPT # FTP
# INPUT # Pacotes que entram na rede
$IPTABLES -A INPUT -i $NETWORK -p tcp --dport 22 -j ACCEPT # SSH
$IPTABLES -A INPUT -i $NETWORK -p tcp --dport 80 -j ACCEPT # HTTP
$IPTABLES -A INPUT -i $NETWORK -p tcp --dport 443 -j ACCEPT # HTTPS
# FORWARD # Pacotes que circulam na rede
$IPTABLES -A FORWARD -i $NETWORK -p tcp --dport 22 -j ACCEPT # SSH
$IPTABLES -A FORWARD -i $NETWORK -p tcp --dport 8333 -j ACCEPT # HTTP
$IPTABLES -A FORWARD -i $NETWORK -p tcp --dport 443 -j ACCEPT # HTTPS
$IPTABLES -A FORWARD -i $NETWORK -s 192.168.0.0/24 -j ACCEPT
# Mascaramento da rede para acesso externo
$IPTABLES -t nat -A POSTROUTING -o eth0 -j MASQUERADE
#--------------------------------------------------------------------------------------
echo "Firewall Ativado"
}
parar(){
echo "Regras de firewall e compartilhamento desativados"
iptables -F
iptables -t nat -F
iptables -t mangle -F
}
case "$1" in
"start") iniciar ;;
"stop") parar ;;
"restart") parar; iniciar;;
*)echo "Use os paramentros start ou stop"
esac
juniorcamargos
(usa Ubuntu)
Obrigado por estarem tentando me ajudar, mas nao consegui nada ainda. Coloquei seu script adaptando ele pra minha rede mesmo assim não funcionou.
Obs: Seu script é para squid transparente, aqui uso autenticado.
wred
(usa Outra)
Meu caro ja tentou essas 2 linhas liberando por IP
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 110 -j DNAT --to-dest 192.168.1.x
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 25 -j DNAT --to-dest 192.168.1.x
fdmartins
(usa Debian)
Firewall / APACHE (URGENTE)
Ola galera,,,,, tenho um grande problema aqui .... tenho um firewall dedicado ... e tmb um servidor apache... o DNS esta funcionando ... so que n acha o site... efetuei o teste do dns no site registro.br e esta dando a msg Autoridade sobre o domínio Versão: 2010032000 Tempo de resposta: 0.04 s, no firewall o RC.LOCAL esta com o seguinte scritp
Segue um pedaço do RC.LOCAL
##############################################################
modprobe iptable_nat
#echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE #Compartilhamento Ativado
#iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE #Compartilhamento Ativado
####################################################
#HTTP/HTTPS/DNS
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 443 -j ACCEPT
iptables -A INPUT -p tcp --dport 53 -j ACCEPT
iptables -A INPUT -p udp --dport 53 -j ACCEPT
#####################################################
#Liberando portas
echo 1 > /proc/sys/net/ipv4/ip_forward
# iptables -t nat -A PREROUTING -p tcp -i ppp0 -m multiport --dport 80,143,993,9876 -j DNAT --to-dest 192.168.2.6 ###SERVIDOR-APACHE
# iptables -t nat -A POSTROUTING -d 192.168.2.6 -j SNAT --to IP_EXTERNO
iptables -t nat -A PREROUTING -p tcp -i ppp0 --dport 53 -j DNAT --to 192.168.2.6 ###SERVIDOR-APACHE
iptables -t nat -A POSTROUTING -d 192.168.2.6 -j SNAT --to IP_EXTERNO
iptables -t nat -A PREROUTING -p udp -i ppp0 --dport 53 -j DNAT --to 192.168.2.6 ###SERVIDOR-APACHE
iptables -t nat -A POSTROUTING -d 192.168.2.6 -j SNAT --to IP_EXTERNO
OBS
0 - USO A DIST. DEBIAN
1 - PPPO estou usando o pppoeconf . SERVIDOR FIREWALL
2 - Quando coloco o IP do servidor externo funciona.
4 - Quando coloco o dominio do esta Dando erro
5 - Serviço de FTP esta ok
6 - PRECISO URGENTE DE AJUDA...