Arma tu propio firewall en Linux

Hola, primer aporte que hago en esta parte de la comunidad.

Vengo hacer una especie de mini tutorial para iptables, el programa con el cual, podrás armar un buen firewall para tu sistema sin mucho papeleos. Iptables, es un programa que se encarga de manejar paquetes de red en tu sistema a traves del kernel y tomar decisiones basadas en las que le establezcas.


Iniciamos...

Empezamos por hacer una limpieza de las posibles reglas que existan en el sistema y estableciendo las políticas a DROP por defecto. Así, como usuario con privilegios o root, tipiar en la consola los siguientes comandos:

Reiniciamos iptables con esto:
iptables -X // borra las tablas existentes
iptables -Z // reinicia el contador de bytes
iptables -F // termina de limpiar las reglas, parecida a la primera opcion.

Establecemos la políticas por defecto con esto:
iptables -P INPUT DROP // se establece la politica en negacion para la entrada
iptables -P OUTPUT DROP // se establece la politica en negacion para la salida
iptables -P FORWARD DROP // se establece la politica en negacion para el reenvio, si tu equipo va funcionar como router


Con esos comandos, hemos reiniciado iptables con todo en cero y sin reglas y con las siguientes reglas, se establecieron las políticas a negación o DROP por defecto. Ahora mismo, el equipo no tiene salida al internet, así como tampoco permite que nada salga. Lo pueden comprobar si quieren.

Esto será lo que vamos a trabajar con las distintas reglas, permitir que dejamos pasar en la entrada entrada y salida en nuestro sistema.

Con estos comandos siguiente habilitamos el acceso total al sistema, a nivel local:

iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -i lo -j ACCEPT


Si tienen a conky instalado, se darán cuenta, del cambio con la anterior regla.

Para ganar acceso al internet, haremos lo siguiente:

iptables -A INPUT -p tcp -m tcp --sport http -m conntrack --ctstate ESTABLISHED -j ACCEPT
iptables -A OUTPUT -p tcp -m tcp --dport http -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT


Que ha pasado ahí arriba??

Estamos permitiendo el acceso al internet a través del protocolo tcp haciendo uso del modulo conntrack para manejar el encaminamiento de los paquetes. Esto ofrece mas control a la hora de permitir que hacer y no hacer en nuestro sistema. Aparte que es mas nuevo y moderno que el viejo modulo state.


En la primera regla, dice ESTABLISHED y en la segunda dice NEW,ESTABLISHED. Esto para entenderlo bien hay que mirar el siguiente diagrama:

Cliente                     Servidor


SYN      ---> 
                   <---     SYN+ACK 
ACK      ---> 
                   <---         ACK 
ACK      ---> 
           ......... 


Que pasa aquí? Pues, como nuestro equipo, quiere salir al internet y tener acceso a la información, lo primero que hace es enviar un paquete SYN, como una petición al servidor que vendría siendo el NEW en la regla OUTPUT con su puerto de destino http=80, el puerto estándar de la navegación web.

Entonces, el servidor responde la petición con un SYN+ACK, que es como quien dice, ok viejo, no hay problema. Ha establecido la conexión, por eso en la regla OUTPUT tiene un ESTABLISHED.

Es entonces, cuando el cliente, o sea tu equipo en este caso, responde con un ACK y el servidor por igual con ACK. Es aquí cuando la regla INPUT entra en acción con un estado en su regla como ESTABLISHED, porque la conexión ya fue establecida previamente, cuando nuestro sistema envió una petición en la regla OUTPUT y que el servidor respondió como buen socio, no hay problema amigo.

Para navegar las paginas seguras o https, simplemente copien las dos reglas de mas arriba, y cambien el http por https.

Para agregar acceso de entrada y salida al servicio de ssh, es casi el mismo el mismo concepto de arriba, solo cambian algunas cosas de posiciones. O sea, solo con mirar el diagrama de arriba, entenderán mejor.

Así, para conectarnos a un equipo remoto que tiene algún servicio de ssh corriendo, simplemente hacemos esto:

nota: fíjense como inicio las reglas aquí, así como también el estado de la conexión.

iptables -A OUTPUT -p tcp --dport ssh -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
iptables -A INPUT -p tcp --sport ssh -m conntrack --ctstate ESTABLISHED -j ACCEPT


Inicio con el OUTPUT, porque el sistema va salir hacia afuera a preguntar al servidor si es posible establecer al conexión, es entonces que el servidor, responderá que si, no hay problemas y nos enviara el visto bueno. Entonces, al entrar esa nueva conexión a nuestro sistema, lo dejamos pasar con la regla de INPUT como conexión establecida ESTABLISHED.

Donde aparece ssh, como puerto de destino y fuente, pueden cambiarlo por el numero del puerto que tengan configurado, simplemente lo dejo así, porque también funciona de esa manera, aunque estará haciendo uso del puerto estándar, que es el 22.

Si es tu equipo, el que esta corriendo un servidor de ssh, pues simplemente, inviertes las reglas de arriba y listo. También, cambiar ssh, por el puerto que tengas configurado en tu sistema.

Recomiendo que pongan variables a su firewall, para que sea mucho mas fácil trabajarlo.

Aquí dejo un ejemplo del firewall que estoy usando actualmente.

http://pasteall.org/82787/bash

pd: se me olvido mencionar, el siguiente script, funciona mejor en Archlinux, es la distro que uso y es donde he creado el script. Por si en otra distro como Ubuntu, encuentran que algo no funcione, esas primeras variables, simplemente, pongan los datos estaticos, como nombre de al interfaz, la ip por ejemplo.

#!/bin/env bash
# -- UTF 8 --
# This script works better on Archlinux. It was made on Archlinux, so if you found something stranger, you've been warned

# Some common variables
# Where are these programs??
iptables="$(which iptables)"
modprobe="$(which modprobe)"
awk="$(which awk)"
cut="$(which cut)"
ip="$(which ip)"

# Other variables
input="$iptables -A INPUT"
output="$iptables -A OUTPUT"
forward="$iptables -A FORWARD"
funfact="$input"
ok="-j ACCEPT"
drop="-j DROP"
log="-j LOG --log-prefix"
asculta_radio_port="9744"
red_net="$($ip route | $awk '/dev.*proto/{print $NE; exit}' | $cut -d ' ' -f1)"
active_face="$($ip addr show | $awk '/inet.*brd/{print $NF; exit}')"
internal_ip="$($ip addr show $active_face | grep "inet\b" | $awk '{print $2}' | $cut -d/ -f1)"
N3ds_client="192.168.10.42/24"
N3ds_port="5000"
spoof_ips="0.0.0.0/8 127.0.0.0/8 10.0.0.0/8 172.16.0.0/12 192.168.0.0/16 224.0.0.0/3"

# Load these modules to allow better analyze and LOG

$modprobe nf_conntrack
$modprobe nf_conntrack_ftp
$modprobe xt_conntrack
$modprobe xt_LOG
$modprobe xt_state

# Clear the tables or existent rules on 'em
$iptables -X
$iptables -Z
$iptables -t nat -F

# Other rules that needs to be flushed
$iptables -F
$iptables -t nat -X
$iptables -t raw -F
$iptables -t raw -X
$iptables -t security -F
$iptables -t security -X
$iptables -t mangle -F
$iptables -t mangle -X

# By default the politicy'll be DROP
# FILTER
$iptables -P INPUT DROP
$iptables -P FORWARD DROP
$iptables -P OUTPUT DROP

# Allow everythings on localhost
$input -i lo $ok -m comment --comment "Local HOST"
$output -o lo $ok -m comment --comment "Local HOST"
#$forward ! -i $inside_net -m conntrack --ctstate NEW $ok

# Allow pdnsd works

$input -p udp -m udp --sport domain -m conntrack --ctstate ESTABLISHED,RELATED $ok -m comment --comment "dns port (53)"
$output -p udp -m udp --dport domain -m conntrack --ctstate NEW,ESTABLISHED $ok -m comment --comment "dns port (53)"

# Allow access from all subnet
$input -p tcp -s $red_net $ok -m comment --comment="subnet access"
$output -p tcp -s $red_net $ok -m comment --comment="subnet_access"


# Theses rules allow to go to the Internet
$input -p tcp -m tcp --sport http -m conntrack --ctstate ESTABLISHED $ok -m comment --comment "http insecure (80) port"
$output -p tcp -m tcp --dport http -m conntrack --ctstate NEW,ESTABLISHED $ok -m comment --comment "http insecure (80) port"

$input -p tcp -m tcp --sport https -m conntrack --ctstate ESTABLISHED $ok -m comment --comment "https secure (443) port"
$output -p tcp -m tcp --dport https -m conntrack --ctstate NEW,ESTABLISHED $ok -m comment --comment "https secure (443) port"

# Allow to upload CIA's to 3DS system
$output -p tcp -m tcp --dport $N3ds_port -s $N3ds_client -m conntrack --ctstate ESTABLISHED $log "N3DS is Working now-OUT: " --log-level 7
$output -p tcp -m tcp --dport $N3ds_port -s $N3ds_client -m conntrack --ctstate ESTABLISHED $ok -m comment --comment "3DS FBI port"
$input -p tcp -m tcp --sport $N3ds_port -s $N3ds_client -m conntrack --ctstate NEW,ESTABLISHED $log "N3DS is Working now-IN: " --log-level 7
$input -p tcp -m tcp --sport $N3ds_port -s $N3ds_client -m conntrack --ctstate NEW,ESTABLISHED $ok -m comment --comment "3DS FBI port"


# Allow streaming from internet
# Asculta RadioLive.ro
$input -p tcp -m tcp --sport $asculta_radio_port -m conntrack --ctstate ESTABLISHED $ok -m comment --comment "Asculta Radio Live"
$output -p tcp -m tcp --dport $asculta_radio_port -m conntrack --ctstate NEW,ESTABLISHED $ok -m comment --comment "Asculta Radio Live"

# Allow outgoing connections ssh standard port
$output -p tcp --dport ssh -m conntrack --ctstate NEW,ESTABLISHED $ok -m comment --comment "ssh standard (22) port"
$input -p tcp --sport ssh -m conntrack --ctstate ESTABLISHED $ok -m comment --comment "ssh standard (22) port"

# To enable, uncomment it
#Allow incoming connections ssh standard port
#$input -p tcp --sport ssh -m conntrack --ctstate NEW,ESTABLISHED $ok
#$output -p tcp --dport ssh -m conntrack --ctstate ESTABLISHED $ok

# Allow to incoming connections through git standar port
$input -p tcp --sport git -m conntrack --ctstate ESTABLISHED $ok -m comment --comment "git standard (9418) port"
$output -p tcp --dport git -m conntrack --ctstate NEW,ESTABLISHED $ok -m comment --comment "git standard (9418) port"

# Allow ping from out and inside of computer
$output -p icmp -m conntrack  --ctstate NEW,ESTABLISHED,RELATED $ok
$input -p icmp -m conntrack --ctstate ESTABLISHED,RELATED $ok

#Other harderning
# Force SYN packets check
#$input -p tcp ! --syn -m conntrack --ctstate NEW $drop
$input -p tcp -m conntrack --ctstate NEW ! --syn $log "state test" -m comment --comment "state test"
$input -p tcp -m conntrack --ctstate NEW ! --syn $drop -m comment --comment "Force SYN packets check"


#Force Fragments packets check
$input -f $drop

#Anti-MiM
# Linux Iptables Avoid IP Spoofing And Bad Addresses Attacks
#From WAN
$input -i $active_face -s $internal_ip $drop
$output -o $active_face -s $internal_ip $drop

#From LAN
$input -i $active_face -s $red_net $drop
$output -o $active_face -s $red_net $drop

# Drop all spoofed_ips
for ip in $spoof_ips
do
   $input -i $active_face -s $ip $drop -m comment --comment "getout spoof_ips"
   $output -o $active_face -s $ip $drop -m comment --comment "getout spoof_ips"
done

# Anti-flooding o inundación de tramas SYN-FLOOD.
$iptables -N syn-flood
$iptables -A syn-flood -m limit --limit 10/second --limit-burst 50 -j RETURN
$iptables -A syn-flood $log "SYN flood: "
$iptables -A syn-flood $drop

# FunFACTs!! excuse me Sheldon
$funfact -p TCP -m conntrack --ctstate RELATED,ESTABLISHED $ok
$funfact -p UDP -m conntrack --ctstate RELATED,ESTABLISHED $ok
$funfact -p ICMP -m conntrack --ctstate RELATED,ESTABLISHED $ok
$funfact -m conntrack --ctstate INVALID -j REJECT
$funfact -p tcp --tcp-flags ACK,FIN FIN $log "FIN: "
$funfact -p tcp --tcp-flags ACK,FIN FIN -j REJECT
$funfact -p tcp --tcp-flags ACK,PSH PSH $log "PSH: "
$funfact -p tcp --tcp-flags ACK,PSH PSH -j REJECT
$funfact -p tcp --tcp-flags ACK,URG URG $log "URG: "
$funfact -p tcp --tcp-flags ACK,URG URG -j REJECT
$funfact -p tcp --tcp-flags ALL ALL $log "XMAS scan: "
$funfact -p tcp --tcp-flags ALL ALL -j REJECT
$funfact -p tcp --tcp-flags ALL NONE $log "NULL scan: "
$funfact -p tcp --tcp-flags ALL NONE -j REJECT
$funfact -p tcp --tcp-flags ALL SYN,RST,ACK,FIN,URG $log "pscan: "
$funfact -p tcp --tcp-flags ALL SYN,RST,ACK,FIN,URG -j REJECT
$funfact -p tcp --tcp-flags SYN,FIN SYN,FIN $log "pscan 2: "
$funfact -p tcp --tcp-flags SYN,FIN SYN,FIN -j REJECT
$funfact -p tcp --tcp-flags FIN,RST FIN,RST $log "pscan 2: "
$funfact -p tcp --tcp-flags FIN,RST FIN,RST -j REJECT
$funfact -p tcp --tcp-flags ALL SYN,FIN $log "SYNFIN-SCAN: "
$funfact -p tcp --tcp-flags ALL SYN,FIN -j REJECT
$funfact -p tcp --tcp-flags ALL URG,PSH,FIN $log "NMAP-XMAS-SCAN: "
$funfact -p tcp --tcp-flags ALL URG,PSH,FIN -j REJECT
$funfact -p tcp --tcp-flags ALL FIN $log "FIN-SCAN: "
$funfact -p tcp --tcp-flags ALL FIN -j REJECT
$funfact -p tcp --tcp-flags ALL URG,PSH,SYN,FIN $log "NMAP-ID: "
$funfact -p tcp --tcp-flags ALL URG,PSH,SYN,FIN -j REJECT
$funfact -p tcp --tcp-flags SYN,RST SYN,RST $log "SYN-RST: "

# For debugging, use e.g.:
# * tcpdump, to see the packets - run tcpdump on the PCs involved.
# * iptables rate-limited logging, to gain insight into how the iptables rules are working. E.g.:

$input -m limit --limit 10/min --limit-burst 10 $log "rate-limited attempt: " --log-level warning

##prevent UDP flooding general
$iptables -N udp-flood
$iptables -A OUTPUT -p udp -j udp-flood
$iptables -A udp-flood -p udp -m limit --limit 50/s --limit-burst 4 -j RETURN
$iptables -A udp-flood $log 'UDP-flood attempt: ' --log-level 4
$iptables -A udp-flood $drop

# Blocking DNS Amplification attacks
# Use the string module of iptables to block all packets that contain isc.org and ripe.
$input -p udp -m string --hex-string "|03697363036f726700|" --algo bm --to 65535 $drop
$input -p udp -m udp --dport 53 -m limit --limit 5/sec $log "fw-dns " --log-level 7

##prevent amplification attack
$iptables -N DNSAMPLY
$iptables -A DNSAMPLY -p udp -m state --state NEW -m udp --dport 53 $ok
$iptables -A DNSAMPLY -p udp -m hashlimit --hashlimit-srcmask 24 --hashlimit-mode srcip --hashlimit-upto 30/m --hashlimit-burst 10 --hashlimit-name DNSTHROTTLE --dport 53 $ok
$iptables -A DNSAMPLY -p udp -m udp --dport 53 $drop

# log before DROP
$input $log "IP: INPUT drop: "  -m limit --limit 12/min --log-level 4
$output  $drop
$input $log "IP: OUTPUT drop: "  -m limit --limit 12/min --log-level 4
$output $drop
$input $log "IP: FORWARD drop: " -m limit --limit 12/min --log-level 4
$output $drop

# log after DROP
$input $log "FIREWALL:INPUT "
$output $log "FIREWALL: OUTPUT "
$forward $log "FIREWALL: FORWARD "

# Close all foreing people
$input -s 0/0 -d 0/0 -p udp $drop
$input -s 0/0 -d 0/0 -p tcp --syn $drop

# Seeya!
Dejo mi aporte por si os sirve, en algún momento cuando usé iptables, ahora prefiero firewalld menos complicaciones. Supuestamente en un futuro iptables desaparecerá.

Imagen

#!/usr/bin/env bash

#limpiar reglas
iptables -F
iptables -X
iptables -Z
iptables -t nat -F
iptables -t nat -X

#Establecer drop para todas las cadenas, para una mayor seguridad
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT DROP

#sobre versiones 1.4.x iptables no permite usar la tabla nat para filtrado
#iptables -t nat -P PREROUTING DROP
#iptables -t nat -P POSTROUTING DROP

#Permitir toda la entrada y salida de paquetes a traves de la interfaz lo
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -j ACCEPT

#Permitir una conexion remota (ssh) a traves del cliente 192.168.1.10
iptables -A INPUT -i eth1 -s 192.168.1.0/24 -d 192.168.1.1 -p tcp --dport 2222 -j ACCEPT
iptables -A OUTPUT -o eth1 -d 192.168.1.0/24 -s 192.168.1.1 -p tcp --sport 2222 -j ACCEPT


#Reglas de nat para lan y dmz
iptables -t nat -A POSTROUTING -o eth0 -s 192.168.10.0/24 -j SNAT --to 10.0.2.15
iptables -t nat -A POSTROUTING -o eth0 -s 192.168.1.0/24 -j SNAT --to 10.0.2.15


#Dnat para los servicios de la DMZ
iptables -t nat -A PREROUTING -i eth0 -p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.10.10:80
iptables -t nat -A PREROUTING -i eth0 -p tcp -m tcp --dport 443 -j DNAT --to-destination 192.168.10.10:443

#Acceder a los servicios dmz desde la lan, mediante el reenvio de conexiones.
iptables -A FORWARD -i eth1 -s 192.168.1.0/24 -o eth2 -d 192.168.10.10 -p tcp --dport 80 -j ACCEPT

iptables -A FORWARD -o eth1 -d 192.168.1.0/24 -i eth2 -s 192.168.10.10 -p tcp --sport 80 -j ACCEPT

iptables -A FORWARD -i eth1 -s 192.168.1.0/24 -o eth2 -d 192.168.10.10 -p tcp --dport 443 -j ACCEPT

iptables -A FORWARD -o eth1 -d 192.168.1.0/24 -i eth2 -s 192.168.10.10 -p tcp --sport 443 -j ACCEPT



#Permitir el tráfico desde internet tanto para Lan como para la DMZ
iptables -A FORWARD -i eth1 -s 192.168.1.0/24 -o eth0 -d 0.0.0.0/0 -p tcp --dport 80 -j ACCEPT
iptables -A FORWARD -o eth1 -d 192.168.1.0/24 -i eth0 -s 0.0.0.0/0 -p tcp --sport 80 -j ACCEPT
iptables -A FORWARD -i eth1 -s 192.168.1.0/24 -o eth0 -d 0.0.0.0/0 -p tcp --dport 443 -j ACCEPT
iptables -A FORWARD -o eth1 -d 192.168.1.0/24 -i eth0 -s 0.0.0.0/0 -p tcp --sport 443 -j ACCEPT
iptables -A FORWARD -i eth1 -s 192.168.1.0/24 -o eth0 -d 0.0.0.0/0 -p tcp --dport 53 -j ACCEPT
iptables -A FORWARD -o eth1 -d 192.168.1.0/24 -i eth0 -s 0.0.0.0/0 -p tcp --sport 53 -j ACCEPT
iptables -A FORWARD -i eth1 -s 192.168.1.0/24 -o eth0 -d 0.0.0.0/0 -p udp --dport 53 -j ACCEPT
iptables -A FORWARD -o eth1 -d 192.168.1.0/24 -i eth0 -s 0.0.0.0/0 -p udp --sport 53 -j ACCEPT

#Dmz
iptables -A FORWARD -i eth2 -s 192.168.10.0/24 -o eth0 -d 0.0.0.0/0 -p tcp --dport 80 -j ACCEPT
iptables -A FORWARD -o eth2 -d 192.168.10.0/24 -i eth0 -s 0.0.0.0/0 -p tcp --sport 80 -j ACCEPT
iptables -A FORWARD -i eth2 -s 192.168.10.0/24 -o eth0 -d 0.0.0.0/0 -p tcp --dport 443 -j ACCEPT
iptables -A FORWARD -o eth2 -d 192.168.10.0/24 -i eth0 -s 0.0.0.0/0 -p tcp --sport 443 -j ACCEPT
iptables -A FORWARD -i eth2 -s 192.168.10.0/24 -o eth0 -d 0.0.0.0/0 -p tcp --dport 53 -j ACCEPT
iptables -A FORWARD -o eth2 -d 192.168.10.0/24 -i eth0 -s 0.0.0.0/0 -p tcp --sport 53 -j ACCEPT
iptables -A FORWARD -i eth2 -s 192.168.10.0/24 -o eth0 -d 0.0.0.0/0 -p udp --dport 53 -j ACCEPT
iptables -A FORWARD -o eth2 -d 192.168.10.0/24 -i eth0 -s 0.0.0.0/0 -p udp --sport 53 -j ACCEPT

@kyo2009

Tendre que hechar un ojo tranquilamente a ese frontend que haz puesto y mirar que puedo aprender de el. Pero es esencial, desde mi punto de vista, saber como trabaja el core por debajo iptables, para entonces a traves de un frontend contruir reglas como si fuera cantando una cancion.

Ahora mismo, iptables aun le queda mucha vida en el entorno familiar, pero estoy mirando tambien ipset, que es su reemplazo a futuro.

Por ahora, estoy usandolo en conjunto con iptables, para bloquear ciertas ip malignas que hay por la red.
1985a escribió:@kyo2009

Tendre que hechar un ojo tranquilamente a ese frontend que haz puesto y mirar que puedo aprender de el. Pero es esencial, desde mi punto de vista, saber como trabaja el core por debajo iptables, para entonces a traves de un frontend contruir reglas como si fuera cantando una cancion.

Ahora mismo, iptables aun le queda mucha vida en el entorno familiar, pero estoy mirando tambien ipset, que es su reemplazo a futuro.

Por ahora, estoy usandolo en conjunto con iptables, para bloquear ciertas ip malignas que hay por la red.

Otro buen complemento es Fail2Ban.
Newton escribió:Otro buen complemento es Fail2Ban.


Asi es, ese aun no lo he tocado, puesto que no me he visto en la necesidad. Aun asi, tengo que hechar un ojo a ese programa tambien. :)
Para la red de casa, prefiero montar un Zentyal en un pc viejo y a tirar...Aunque bueno, aquí estáis hablando más para el personal directamente, no?
Asi es.
Aunque en mi caso, fue mas la motivacion de aprender el como funcionan algunas cosas en Linux.
Estoy pensando en comprarme algunas raperipi para tenerlas como firewall+router+dnscache+webcache.

Todos esos servicios, solo para experimentar un poco :cool:
Como experimento didáctico trabajar con tu firewall así es muy constructivo, a la par que latoso.

Yo para mi red doméstica tengo un Ipfire virtualizado con separación de interfaces (roja para Internet, verde para Intranet y naranja para DMZ) y por ahora estoy cubierto, además de que se me hace más práctico el día a día.
hoheiky escribió:Como experimento didáctico trabajar con tu firewall así es muy constructivo, a la par que latoso.

Yo para mi red doméstica tengo un Ipfire virtualizado con separación de interfaces (roja para Internet, verde para Intranet y naranja para DMZ) y por ahora estoy cubierto, además de que se me hace más práctico el día a día.



Si pero hay casos, donde ipfire no llega, como una rasperipi. Es por esa mi intencion de hacer este minituto.

Pero me falta mirar esa minidistro, para aprender un poco la separacion de interfaces, para ver como lo hace exactamente y el manejo de las quotas de internet :)

Pero ante todo, este tutorial, fue hecho como material didactico de aprendisaje y posiblemente, como alguna referencia futura para alguien que lo necesite. [oki]
1985a escribió:
hoheiky escribió:Como experimento didáctico trabajar con tu firewall así es muy constructivo, a la par que latoso.

Yo para mi red doméstica tengo un Ipfire virtualizado con separación de interfaces (roja para Internet, verde para Intranet y naranja para DMZ) y por ahora estoy cubierto, además de que se me hace más práctico el día a día.



Si pero hay casos, donde ipfire no llega, como una rasperipi. Es por esa mi intencion de hacer este minituto.

Pero me falta mirar esa minidistro, para aprender un poco la separacion de interfaces, para ver como lo hace exactamente y el manejo de las quotas de internet :)

Pero ante todo, este tutorial, fue hecho como material didactico de aprendisaje y posiblemente, como alguna referencia futura para alguien que lo necesite. [oki]


Pues después de pfsense, de lo mejor que he probado, te la recomiendo.

Por otra parte, enhorabuena por el trabajo y el hilo, seguro que a muchos nos servirá de referencia rápida.
hoheiky escribió:
1985a escribió:
hoheiky escribió:Como experimento didáctico trabajar con tu firewall así es muy constructivo, a la par que latoso.

Yo para mi red doméstica tengo un Ipfire virtualizado con separación de interfaces (roja para Internet, verde para Intranet y naranja para DMZ) y por ahora estoy cubierto, además de que se me hace más práctico el día a día.



Si pero hay casos, donde ipfire no llega, como una rasperipi. Es por esa mi intencion de hacer este minituto.

Pero me falta mirar esa minidistro, para aprender un poco la separacion de interfaces, para ver como lo hace exactamente y el manejo de las quotas de internet :)

Pero ante todo, este tutorial, fue hecho como material didactico de aprendisaje y posiblemente, como alguna referencia futura para alguien que lo necesite. [oki]


Pues después de pfsense, de lo mejor que he probado, te la recomiendo.

Por otra parte, enhorabuena por el trabajo y el hilo, seguro que a muchos nos servirá de referencia rápida.

Yo barajaba la misma opcion que @1985a la raspberry y meterle ipfire para enlazar con la oficina con vpn pero al hacerme con ella y trastear un poco simplemente con apt update & apt upgrade me di cuenta que se quedaba corta en velocidad de acceso al disco o sd y que el ethernet son 100mb y por 10 euros mas que lo que cuesta la raspberry con los accesorios indispensable para funcionar me hice con un wintel cx-w8 (suele venir con windows 10 y android) borre todo lo que traia le meti el pfsense y enlace con la oficina tan contento es una maravilla por 65 euros que me salio
popen123456 escribió:
hoheiky escribió:
1985a escribió:Si pero hay casos, donde ipfire no llega, como una rasperipi. Es por esa mi intencion de hacer este minituto.

Pero me falta mirar esa minidistro, para aprender un poco la separacion de interfaces, para ver como lo hace exactamente y el manejo de las quotas de internet :)

Pero ante todo, este tutorial, fue hecho como material didactico de aprendisaje y posiblemente, como alguna referencia futura para alguien que lo necesite. [oki]


Pues después de pfsense, de lo mejor que he probado, te la recomiendo.

Por otra parte, enhorabuena por el trabajo y el hilo, seguro que a muchos nos servirá de referencia rápida.

Yo barajaba la misma opcion que @1985a la raspberry y meterle ipfire para enlazar con la oficina con vpn pero al hacerme con ella y trastear un poco simplemente con apt update & apt upgrade me di cuenta que se quedaba corta en velocidad de acceso al disco o sd y que el ethernet son 100mb y por 10 euros mas que lo que cuesta la raspberry con los accesorios indispensable para funcionar me hice con un wintel cx-w8 (suele venir con windows 10 y android) borre todo lo que traia le meti el pfsense y enlace con la oficina tan contento es una maravilla por 65 euros que me salio


Hola @popen123456

Me interesa mucho esto útlimo que has dicho, he estado mirado el wintel cx-w8 y por lo que he visto sólo tiene una tarjeta de Fast Ethernet, en mi caso me interesaría que fuese a Gigabit, ¿cómo lo hiciste? Supongo que montarías una tarjeta USB-Gigabit, ¿o montaste 2?. ¿Qué tal funciona como Firewall y Servidor de VPN al mismo tiempo, se atasca mucho?

Muchas gracias por cualquier aportación.

Un saludo.
zuscu escribió:
Hola @popen123456

Me interesa mucho esto útlimo que has dicho, he estado mirado el wintel cx-w8 y por lo que he visto sólo tiene una tarjeta de Fast Ethernet, en mi caso me interesaría que fuese a Gigabit, ¿cómo lo hiciste? Supongo que montarías una tarjeta USB-Gigabit, ¿o montaste 2?. ¿Qué tal funciona como Firewall y Servidor de VPN al mismo tiempo, se atasca mucho?

Muchas gracias por cualquier aportación.

Un saludo.

ostras pues llevas razón y lo compre creyendo que era 1g y no, son 100 mb.
No me di cuenta supongo pues en mi casa la conexion son 30 megas

Pero eso si me va de fabula no esque le de la misma caña que al de la oficina pero con los 3 o 4 equipos que conecto desde casa a la oficina nunca me dio problema

lo mas dificil fue meterle un firmware a la bios para poder instalar sistemas de 64 bits pues no se por que razon venia bloqueado a windows 10 32 bits
12 respuestas