Post on 23-Jan-2016
transcript
11
Firewalls – Proxys - Firewalls – Proxys - AntiSpamAntiSpam
Filtro de informaciónFiltro de información
José Juan Cerpa OrtegaJosé Juan Cerpa Ortega
22
FirewallsFirewalls
Dispositivo hardware o softwareDispositivo hardware o software Filtra tráfico TCP/UDP/IP/ICMP…Filtra tráfico TCP/UDP/IP/ICMP… Protege una red de otra expuestaProtege una red de otra expuesta Inútil si el sistema donde se instala es Inútil si el sistema donde se instala es
vulnerablevulnerable Necesario desactivar servicios Necesario desactivar servicios
innecesariosinnecesarios Se suele ubicar en el nivel más exteriorSe suele ubicar en el nivel más exterior
33
FirewallsFirewalls
Los Firewalls NO proporcionan Los Firewalls NO proporcionan seguridad absoluta. Son un mecanismo seguridad absoluta. Son un mecanismo más, y deben combinarse con otras más, y deben combinarse con otras medias de seguridad, tanto en redes medias de seguridad, tanto en redes como en sistemas operativos, para como en sistemas operativos, para hacer el sistema lo más seguro posible.hacer el sistema lo más seguro posible.
La única seguridad absoluta es aislar la La única seguridad absoluta es aislar la máquina.máquina.
44
FirewallsFirewalls
Un firewall no detecta…Un firewall no detecta… Ataques internosAtaques internos Formas de ataques desconocidasFormas de ataques desconocidas VirusVirus
Los firewalls se construyen a partir de…Los firewalls se construyen a partir de… Filtros : bloquear selectivamente los Filtros : bloquear selectivamente los
paquetespaquetes Nodos bastion : Ordenadores altamente Nodos bastion : Ordenadores altamente
seguros expuestos directamente a internet.seguros expuestos directamente a internet.
55
FirewallsFirewalls
¿Cómo crear una política de seguridad?¿Cómo crear una política de seguridad? Describa para que es el servicioDescriba para que es el servicio Describa el grupo de personas a las que va Describa el grupo de personas a las que va
dirigido el serviciodirigido el servicio Describa a que servicio necesita acceder cada Describa a que servicio necesita acceder cada
grupogrupo Describa para cada grupo de servicio como se Describa para cada grupo de servicio como se
puede mantener seguro el serviciopuede mantener seguro el servicio Redacte un informe en el que se considere Redacte un informe en el que se considere
violación cualquier otro tipo de accesoviolación cualquier otro tipo de acceso
66
FirewallsFirewalls Política por defecto ACEPTARPolítica por defecto ACEPTAR Todo lo que venga de la red local al firewall Todo lo que venga de la red local al firewall
ACEPTARACEPTAR Todo lo que venga al puerto TCP 80 ACEPTARTodo lo que venga al puerto TCP 80 ACEPTAR Todo lo que venga al puerto TCP 25 ACEPTARTodo lo que venga al puerto TCP 25 ACEPTAR Todo lo que venga al puerto TCP 110 ACEPTARTodo lo que venga al puerto TCP 110 ACEPTAR Todo lo que venga al puerto UDP 53 ACEPTARTodo lo que venga al puerto UDP 53 ACEPTAR Todo lo que venga de la red local al exterior Todo lo que venga de la red local al exterior
ENMASCARARENMASCARAR Todo lo que venga del puerto TCP 1 al 1024 Todo lo que venga del puerto TCP 1 al 1024
DENEGARDENEGAR Todo lo que venga del puerto UDP 1 al 1024 Todo lo que venga del puerto UDP 1 al 1024
DENEGARDENEGAR
77
FirewallsFirewalls
Hay 2 formas de implementar un Hay 2 formas de implementar un firewallfirewall Aceptar todo por defecto. Fácil de Aceptar todo por defecto. Fácil de
implementar pero “peligrosa”.implementar pero “peligrosa”. Denegar todo por defecto. El firewall es un Denegar todo por defecto. El firewall es un
muro aunque más difícil de configurar.muro aunque más difícil de configurar. IMPORTANTE : El orden en que se IMPORTANTE : El orden en que se
introducen las reglas es fundamental ya introducen las reglas es fundamental ya que las reglas se chequean por orden.que las reglas se chequean por orden.
88
FirewallsFirewalls
Ipchains e Iptables son los firewalls Ipchains e Iptables son los firewalls implementados en los núcleos de los implementados en los núcleos de los sistemas Linux.sistemas Linux.
Ipchains está en desuso y la que se Ipchains está en desuso y la que se implementa en versiones desde la 2.4 como implementa en versiones desde la 2.4 como un servicio es iptables.un servicio es iptables.
Ejecutando iptables en la linea de comandos Ejecutando iptables en la linea de comandos introducimos reglas que indicarán acciones a introducimos reglas que indicarán acciones a tomar ante recepción de paquetestomar ante recepción de paquetes
99
FirewallsFirewalls
Tres tipos de reglas:Tres tipos de reglas: Filtrado : INPUT, OUTPUT, FORWARDFiltrado : INPUT, OUTPUT, FORWARD Redirección : PREROUTING, POSTROUTINGRedirección : PREROUTING, POSTROUTING Modificación de paquetes : MANGLEModificación de paquetes : MANGLE
Opciones para las reglasOpciones para las reglas -A -A añadir una regla añadir una regla - I - I inserta en una posición determinada inserta en una posición determinada -R -R reemplazar en una posición determinada reemplazar en una posición determinada -D -D eliminar una regla determinada eliminar una regla determinada
AccionesAcciones Reject Reject Aceptar Aceptar Drop Drop Denegar Denegar
1010
FirewallsFirewalls
Filtrado de paquetesFiltrado de paquetes Nº reglaNº regla DirecciónDirección Tipo : TCP/UDP…Tipo : TCP/UDP… IP Fuente IP Fuente Puerto FuentePuerto Fuente IP DestinoIP Destino Puerto DestinoPuerto Destino AcciónAcción
1111
FirewallsFirewalls
Netstat –an : Ver los servicios activos Netstat –an : Ver los servicios activos en el sistema para empezar a en el sistema para empezar a planificar el firewall. También se planificar el firewall. También se puede usar nmap.puede usar nmap.
Iptables –L –n : verificar las reglas Iptables –L –n : verificar las reglas aplicadas.aplicadas.
IPtraf : programa práctico para IPtraf : programa práctico para chequear el firewall mostrando el chequear el firewall mostrando el tráfico que atraviesa la máquina.tráfico que atraviesa la máquina.
1212
FirewallsFirewalls
1313
FirewallsFirewalls #!/bin/sh#!/bin/sh #Flush de reglas#Flush de reglas iptables –Fiptables –F iptables –t nat –Fiptables –t nat –F
#politica por defecto#politica por defecto iptables –P INPUT ACCEPTiptables –P INPUT ACCEPT iptables –P OUTPUT ACCEPTiptables –P OUTPUT ACCEPT iptables –P FORWARD ACCEPTiptables –P FORWARD ACCEPT iptables –t nat –P PREROUTING ACCEPTiptables –t nat –P PREROUTING ACCEPT iptables –t nat –P POSTROUTING ACCEPTiptables –t nat –P POSTROUTING ACCEPT
1414
FirewallsFirewalls #Redirigir a una ip por ejemplo para usar radmin#Redirigir a una ip por ejemplo para usar radmin iptables –t nat –A PREROUTING –s 1.2.3.4 –i eth0 –p iptables –t nat –A PREROUTING –s 1.2.3.4 –i eth0 –p
tcp –dport 4899 –j DNAT –to 192.168.0.5:4899tcp –dport 4899 –j DNAT –to 192.168.0.5:4899 #El localhost lo dejamos como esta#El localhost lo dejamos como esta /Sbin/iptables –A INPUT –i –lo –j ACCEPT/Sbin/iptables –A INPUT –i –lo –j ACCEPT #A nuestra ip le permitimos todo eth0 va al router #A nuestra ip le permitimos todo eth0 va al router
y eth1 a la LANy eth1 a la LAN iptables –A INPUT –s 192.168.0.0/24 –i eth1 –j iptables –A INPUT –s 192.168.0.0/24 –i eth1 –j
ACCEPTACCEPT #Filtrar el acceso a la red con FORWARD#Filtrar el acceso a la red con FORWARD #Aceptamos accesos a la web#Aceptamos accesos a la web iptables –A FORWARD –s 192.168.0.0/24 –i eth1 –p iptables –A FORWARD –s 192.168.0.0/24 –i eth1 –p
tcp –dport 80 –j ACCEPTtcp –dport 80 –j ACCEPT iptables –A FORWARD –s 192.168.0.0/24 –i eth1 –p iptables –A FORWARD –s 192.168.0.0/24 –i eth1 –p
tcp –dport 443 –j ACCEPTtcp –dport 443 –j ACCEPT
1515
FirewallsFirewalls
#Abrir el Puerto SMPT y POP3#Abrir el Puerto SMPT y POP3 iptables –A INPUT –s 0.0.0.0/0 –p tcp –dport 25 –j ACCEPTiptables –A INPUT –s 0.0.0.0/0 –p tcp –dport 25 –j ACCEPT iptables –A INPUT –s 0.0.0.0/0 –p tcp –dport 110 –j ACCEPTiptables –A INPUT –s 0.0.0.0/0 –p tcp –dport 110 –j ACCEPT #Permitimos red privada virtual#Permitimos red privada virtual iptables –A INPUT –s 1.2.3.4 –p tcp –dport 1723 –j ACCEPTiptables –A INPUT –s 1.2.3.4 –p tcp –dport 1723 –j ACCEPT #Aceptar consultas al DNS#Aceptar consultas al DNS iptables –A FORWARD –s 192.168.0.0/24 –i eth1 –p tcp –iptables –A FORWARD –s 192.168.0.0/24 –i eth1 –p tcp –
dport 53 –j ACCEPTdport 53 –j ACCEPT iptables –A FORWARD –s 192.168.0.0/24 –i eth1 –p udp –iptables –A FORWARD –s 192.168.0.0/24 –i eth1 –p udp –
dport 53 –j ACCEPTdport 53 –j ACCEPT #Se deniega el resto#Se deniega el resto iptables –A FORWARD –s 192.168.0.0/24 –i eth1 –j DROPiptables –A FORWARD –s 192.168.0.0/24 –i eth1 –j DROP
1616
FirewallsFirewalls #Enmascarar y activar bit forwarding#Enmascarar y activar bit forwarding iptables –t nat –A POSTROUTING –s 192.168.0.0/24 –o iptables –t nat –A POSTROUTING –s 192.168.0.0/24 –o
eth0 –j MASQUERADEeth0 –j MASQUERADE echo 1 > /proc/sys/net/ipv4/ip_forwardecho 1 > /proc/sys/net/ipv4/ip_forward #El resto se cierra rango bien conocidos 0.0.0.0 significa #El resto se cierra rango bien conocidos 0.0.0.0 significa
cualquier redcualquier red iptables –A INPUT –s 0.0.0.0/0 –p tcp –dport 1:1024 –j iptables –A INPUT –s 0.0.0.0/0 –p tcp –dport 1:1024 –j
DROPDROP iptables –A INPUT –s 0.0.0.0/0 –p udp –dport 1:1024 –j iptables –A INPUT –s 0.0.0.0/0 –p udp –dport 1:1024 –j
DROPDROP #cerrar el Puerto de gestion webmin#cerrar el Puerto de gestion webmin iptables –A INPUT –s 0.0.0.0/0 -p tcp –dport 10000 –j iptables –A INPUT –s 0.0.0.0/0 -p tcp –dport 10000 –j
DROPDROP # Cerrar la red virtual# Cerrar la red virtual iptables –A INPUT –s 0.0.0.0/0 –i eth0 –p tcp –dport 1723 iptables –A INPUT –s 0.0.0.0/0 –i eth0 –p tcp –dport 1723
–j DROP–j DROP
1717
ProxysProxys
Actúa en nombre de los clientesActúa en nombre de los clientes Caché para optimizar el ancho de bandaCaché para optimizar el ancho de banda Controla el tráfico hacia el exteriorControla el tráfico hacia el exterior Permite registrar todo lo que hagan los Permite registrar todo lo que hagan los
usuariosusuarios El más usado es el proxy http.El más usado es el proxy http. SQUID es el paquete usado como proxy SQUID es el paquete usado como proxy
en sistemas Linux.en sistemas Linux.
1818
ProxysProxys
Configuración BásicaConfiguración Básica Fichero /etc/squid/squid.confFichero /etc/squid/squid.conf http_port ip:puerto : Dirección y puerto http_port ip:puerto : Dirección y puerto
por el que escuchará el proxy.por el que escuchará el proxy. Cache_dir : tamaño de la caché.Cache_dir : tamaño de la caché. Reference_age : tiempo que se Reference_age : tiempo que se
mantendrán en caché los objetos mantendrán en caché los objetos almacenados. (1 mes lo más razonable).almacenados. (1 mes lo más razonable).
1919
ProxysProxys
Listas de control de accesoListas de control de acceso acl nombre src componentes. Ej.acl nombre src componentes. Ej. Acl mired src 192.168.0.0/24Acl mired src 192.168.0.0/24
Reglas de control de accesoReglas de control de acceso http_access allow/deny nombre_listahttp_access allow/deny nombre_lista http_access allow miredhttp_access allow mired
2020
AntiSpamAntiSpam
Filtrado de cabeceras:Filtrado de cabeceras: Colocar en un fichero ej. Check_cabecerasColocar en un fichero ej. Check_cabeceras
/^Subject: Re: Your password!//^Subject: Re: Your password!/ Header_checks = Header_checks =
regexp:/ruta/check_cabecerasregexp:/ruta/check_cabeceras Filtrado de contenido:Filtrado de contenido:
Colocar en un ficheroColocar en un fichero/Accept credit cards/ REJECTS/Accept credit cards/ REJECTS
/Nude Celebrities/ REJECTS/Nude Celebrities/ REJECTS Body_checks = regexp:/ruta/check_bodyBody_checks = regexp:/ruta/check_body
2121
AntiSpamAntiSpam
Amavisd-new : (A mail virus scanner). Amavisd-new : (A mail virus scanner). Postfix entrega el correo a amavisd por Postfix entrega el correo a amavisd por un puerto para chequearlo y este lo un puerto para chequearlo y este lo devuelve a postfix por otro puerto. devuelve a postfix por otro puerto. Preparado para actuar con Preparado para actuar con spamassassin.spamassassin.
El fichero de configuración es el El fichero de configuración es el /etc/amavisd/amavisd.conf y apenas es /etc/amavisd/amavisd.conf y apenas es necesario modificarlo.necesario modificarlo.
2222
AntiSpamAntiSpam
Spamassassin : aplicación que puntúa a Spamassassin : aplicación que puntúa a los correos.los correos.
Si superan una serie de pruebas se le Si superan una serie de pruebas se le añade puntosañade puntos
Si supera un umbral de puntos se le Si supera un umbral de puntos se le considerará Spam.considerará Spam.
Incluye filtros bayesianos para aprender Incluye filtros bayesianos para aprender de los correos recibidos. (falsos/positivos y de los correos recibidos. (falsos/positivos y viceversa)viceversa)
Puede ser preconfigurado con Puede ser preconfigurado con /etc/mail/spammassassin/local.cf/etc/mail/spammassassin/local.cf
2323
AntiSpamAntiSpam /etc/postfix/master.cf/etc/postfix/master.cf smtp-amavissmtp-amavis amavis-smtpamavis-smtp unixunix -- -- yy -- 22
smtpsmtp -o smtp_data_done_timeout=1200s-o smtp_data_done_timeout=1200s -o smtp_never_send_ehlo=yes-o smtp_never_send_ehlo=yes -o disable_dns_lookups=yes-o disable_dns_lookups=yes localhost:localhost:1002510025 inetinet nn -- yy -- --
smtpdsmtpd -o content_filter=-o content_filter= -o local_recipient_maps=-o local_recipient_maps= -o smtpd_helo_restrictions=-o smtpd_helo_restrictions= -o smtpd_client_restrictions=-o smtpd_client_restrictions= -o smtpd_sender_restrictions=-o smtpd_sender_restrictions= -o smtpd_recipient_restrictions=permit_mynetworks,reject-o smtpd_recipient_restrictions=permit_mynetworks,reject -o mynetworks=-o mynetworks=127.0.0.1/24127.0.0.1/24 -o strict_rfc821_envelopes=yes-o strict_rfc821_envelopes=yes
2424
AntiSpamAntiSpam
/etc/postfix/main.cf/etc/postfix/main.cf content_filter = content_filter = smtp-amavis:(127.0.0.1):10024smtp-amavis:(127.0.0.1):10024 smtpd_recipient_restrictions =smtpd_recipient_restrictions = reject_non_fqdn_sender,reject_non_fqdn_sender, reject_non_fqdn_recipient,reject_non_fqdn_recipient, reject_unknown_sender_domain,reject_unknown_sender_domain, reject_unauth_pipelingreject_unauth_pipeling check_client_access hash:/etc/postfix/mynetworks, check_client_access hash:/etc/postfix/mynetworks, permit_mynetworks,permit_mynetworks, reject_unauth_destinationreject_unauth_destination
2525
AntiSpamAntiSpam
Para que amavisd-new haga uso de Para que amavisd-new haga uso de spamassassin debemos cerciorarnos spamassassin debemos cerciorarnos de que no existe esta línea en el de que no existe esta línea en el fichero de configuración de amavisd-fichero de configuración de amavisd-newnew @bypass_spam_checks_acl = qw( . ); )@bypass_spam_checks_acl = qw( . ); )
2626
AntiSpamAntiSpam
$daemon_user =’amavis’;$daemon_user =’amavis’; $daemon_group=’amavis’;$daemon_group=’amavis’; $mydomain = ‘pepe-informatica.com’;$mydomain = ‘pepe-informatica.com’; $forward_method= ‘smtp:127.0.0.1:10025’$forward_method= ‘smtp:127.0.0.1:10025’ $notify_method = $forward_method;$notify_method = $forward_method; $final_spam_destiny = D_PASS;$final_spam_destiny = D_PASS; $sa_tag_level_deflt = 4.0;$sa_tag_level_deflt = 4.0; $sa_Tag2_level_deflt = 5.0;$sa_Tag2_level_deflt = 5.0; $sa_kill_level_deflt = $sa_tag2_level_deftl;$sa_kill_level_deflt = $sa_tag2_level_deftl; [‘clam antivirus-clamd’,[‘clam antivirus-clamd’, \&ask_daemon, [“CONTSCAN {}\n, \&ask_daemon, [“CONTSCAN {}\n,
‘/var/run/clamav/clamd.ctl’],‘/var/run/clamav/clamd.ctl’], qr/\bOK$/, qr/\bFOUND$/,qr/\bOK$/, qr/\bFOUND$/, qr/^.*?: (?!Infected Archive)(.*) FOUND$/ ],qr/^.*?: (?!Infected Archive)(.*) FOUND$/ ],