Boa tarde amigos.
Estou enfrentando um problema, por falta de conhecimentos Básicos e gostaria de ajuda.
Tenho um Servidor Ubuntu aqui, que nele está PROXY / FIREWALL / VPN. (tudo na mesma maquina)
ip da rede interna: 192.168.0.x/24
ip da rede externa: 10.3.100.x/24
Gostaria de montar um Script do iptables, que funciona-se da seguinte maneira:
Tudo fechado e bloqueado, pra todo mundo.
Liberar todas as portas e todas as conexões apenas para os ips (Internet Livre mas quero que passe pelo proxy, por causa do cache), ips que estivessem em uma Lista.
SCRIPT DO IPTABLES.
Código :#------------------------------- # iptables -F iptables -t nat -F iptables -t mangle -F modprobe iptable_nat #------------------------------------------------- # || INICIALIZANDO COMPARTILHAMENTO DE INTERNET || #------------------------------------------------- iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE echo 1 > /proc/sys/net/ipv4/ip_forward # #-------------------------------------------- # || INICIANDO ROTEAMENTO PARA PROXY SQUID || #-------------------------------------------- #------ port 80 iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j REDIRECT --to-port 3128 #------ port 443 #iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 443 -j REDIRECT --to-port 3128 #-------------------------------------- # || BLOQUEIO DE PINGS E IP SPOOFING || #-------------------------------------- # iptables -A INPUT -p icmp --icmp-type echo-request -j DROP echo 1 > /proc/sys/net/ipv4/conf/default/rp_filter iptables -A INPUT -m state --state INVALID -j DROP # #---------------------------------- # || ABRIR A INTERFACE LOOPBACK || #---------------------------------- iptables -A INPUT -i lo -j ACCEPT iptables -A INPUT -i eth1 -j ACCEPT # #------------------------------------ # || ABRIR PARA PORTAS ESPECIFICAS || #------------------------------------ iptables -A INPUT -p tcp --dport 22 -j ACCEPT # #------------------------------ # || BLOQUEIA TODAS CONEXÕES || #------------------------------ iptables -A INPUT -p tcp --syn -j DROP
SCRIPT DO SQUID
Código :http_port 3128 transparent visible_hostname Pagoto cache_mem 128 MB maximum_object_size_in_memory 128 KB maximum_object_size 512 MB cache_dir ufs /var/spool/squid 10240 16 256 cache_access_log /var/log/squid/access.log acl all src 0.0.0.0/0.0.0.0 acl manager proto cache_object acl localhost src 127.0.0.1/255.255.255.255 acl SSL_ports port 443 563 acl Safe_ports port 53 80 21 280 443 488 563 591 777 1025-65535 acl purge method PURGE acl CONNECT method CONNECT http_access allow manager localhost http_access deny manager http_access allow purge localhost http_access deny purge http_access deny !Safe_ports http_access deny CONNECT !SSL_ports acl redelocal src 10.3.167.0/24 http_access allow localhost http_access allow redelocal