Forums:
Hola , cuando hago un scaneo con nmap a mi ip pública fija de mi router , me muestra el puerto 443 abierta también me dice que tengo proxy y todo eso , quisiera bloquearlo para que desde el exterior no aparesca esos datos , puse esta regla en mi iptables pero sigue apareciendo open.
iptables -A INPUT -i eth0 -m state --state NEW -p tcp --dport 1:443 -j DROP
Aqui el script
No lo he testeado, pero si tienes algún inconveniente me comunicas...
#!/bin/bash
#Variables, cuando el firewall y el proxy son el miso equipo
IPT=/sbin/iptables
LOCAL_NET=192.168.0.0/24
PROXY_PORT=3128
SSH_PORT=22
WAN_IF=eth0
LAN_IF=eth1
#bit de forwarding
echo 1 > /proc/sys/net/ipv4/ip_forward
#flush de reglas
$IPT -t filter -F
$IPT -t filter -X
$IPT -t nat -F
$IPT -t nat -X
$IPT -t mangle -F
$IPT -t mangle -X
#políticas por defecto
$IPT -P INPUT DROP
$IPT -P OUTPUT DROP
$IPT -P FORWARD DROP
# localhost
$IPT -A INPUT -i lo -j ACCEPT
$IPT -A OUTPUT -o lo -j ACCEPT
# Ahora hacemos enmascaramiento de la red local
$IPT -t nat -A POSTROUTING -s $LOCAL_NET -o $WAN_IF -j MASQUERADE
# aceptar paquetes related y established
$IPT -t filter -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
$IPT -t filter -A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
$IPT -t filter -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
# Servicios locales alcanzables por todas las interfaces
# ping
$IPT -t filter -A INPUT -p icmp -j ACCEPT
# SSH
$IPT -t filter -A INPUT -m state --state NEW -p tcp --dport $SSH_PORT -j ACCEPT
# Servicios locales alcanzables sólo por la red local
# Proxy
$IPT -t filter -A INPUT -i $LAN_IF -s $LOCAL_NET -p tcp --dport $PROXY_PORT -j ACCEPT
# Servicios alcanzables hacia otras redes desde el firewall
#http
$IPT -t filter -A OUTPUT -p tcp -m tcp --dport 80 -j ACCEPT
#https
$IPT -t filter -A OUTPUT -p tcp -m tcp --dport 443 -j ACCEPT
#$dns
$IPT -t filter -A OUTPUT -p tcp -m tcp --dport 53 -j ACCEPT
#ping
$IPT -t filter -A OUTPUT -p icmp -j ACCEPT
# Reglas para forward
# no se necesita la regla para el regreso, porque caen en related y established
$IPT -t filter -A FORWARD -i $LAN_IF -o $WAN_IF -s $LOCAL_NET -j ACCEPT
#Redireccionamos el port 80 to 3128
$IPT -t nat -A PREROUTING -i $LAN_IF -s $LOCAL_NET -p tcp --dport 80 -j REDIRECT --to-port $PROXY_PORT
#en caso de CentOS o RedHat.
/sbin/service iptables save
Con eso no se verá ningún otro puerto que no sea el SSH desde ningún lado, incluso lo puedes bloquear desde eth0, pero hay otras formas prácticas para asegurarlo.
Adicionalmente se pueden agregar otras marcas --state NEW, para asegurar mejor, existe también la posibilidad de bloquear paquetes inválidos con la marca -state INVALID.
------------
Cogito Ergo Sum
No me funciona , me sale el
No me funciona , me sale el Error Try 'iptables ' -h ' or 'iptables ' -- help ' for more information. Bad argument 'ACCEPT'
Es cierto.
Tenía un error en el nombre de la variable $LOCAL_NET en esta línea
$IPT -t filter -A FORWARD -i $LAN_IF -o $WAN_IF -s $LOCA_NET -j ACCEPT
debe quedar así:
$IPT -t filter -A FORWARD -i $LAN_IF -o $WAN_IF -s $LOCAL_NET -j ACCEPT
ya edité el script.
------------
Cogito Ergo Sum
Problemas con el script
no veo un solo contenido de
Tal parece que hay problemas
En la creación de los POSTS
Problemas con el script
Problemas con el script , script que posteo Monkito
No tengo acceso a internet en el servidor , tampoco en las estaciones.
Los DNS 200.48.225.130 , 200.48.225.146 funcionan perfectamente , como lo mencione no tengo acceso a internet , tengo proxy no transparente , lo que me muestra iptables.
[root@admin sysconfig]# iptables -nvL
Chain INPUT (policy DROP 21 packets, 15284 bytes)
pkts bytes target prot opt in out source destination
15 1125 ACCEPT all -- lo * 0.0.0.0/0 0.0.0.0/0
12 600 ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED
0 0 ACCEPT icmp -- * * 0.0.0.0/0 0.0.0.0/0
0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:22
7 438 ACCEPT tcp -- eth1 * 192.168.0.0/24 0.0.0.0/0 tcp dpt:3128
Chain FORWARD (policy DROP 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
0 0 ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED
0 0 ACCEPT all -- eth1 eth0 192.168.0.0/24 0.0.0.0/0
Chain OUTPUT (policy DROP 25 packets, 4818 bytes)
pkts bytes target prot opt in out source destination
15 1125 ACCEPT all -- * lo 0.0.0.0/0 0.0.0.0/0
8 416 ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED
0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:80
7 470 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:443
0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:53
0 0 ACCEPT icmp -- * * 0.0.0.0/0 0.0.0.0/0
Gracias
Si están correctamente
Si están correctamente especificadas eth0 y eth1 en el script ...??? es decir se corresponden a wan y lan como deberían ...???
bye
;)
si lo están , será que falta
si lo están , será que falta agregar algo su ayuda.
Páginas