Está en la página 1de 28

Seguridad de la red Implementacin Del Plan De Seguridad De La Informacin Fase 3 Proxy HTTP Linux - Squid

GRUPO MiNdWiDe JUAN ALEJANDRO BEDOYA JOSE DE ARLEX DOMINGUEZ NEIFER ERNEY GIRALDO JHON FREDY HERRERA YOJAN LEANDRO USME

ADMINISTRACION DE REDES INFORMATICAS

Mauricio Ortiz

CENTRO DE SERVICIO Y GESTION EMPRESARIAL SENA (MEDELLIN) 2010

Mind Wide Open BLOG http://jfherrera.wordpress.com Seguridad de la red | Implementacin Del Plan De Seguridad De La Informacin GROUP | ???
INDICE Introduccin ......................................................................................................................... 3 Objetivo ............................................................................................................................... 4
Topologa ................................................................................................................................................... 5 Tabla de direccionamiento ........................................................................................................................ 5 Screenshot de las VM. ............................................................................................................................... 6 Servidor Proxy ....................................................................................................................................... 6 Cliente WEB ........................................................................................................................................... 6 Configuracin de R1 ................................................................................................................................... 7 Configuracin bsica ............................................................................................................................. 7 Configuracin de las interfaces ............................................................................................................. 8 Configuracin de enrutamiento ............................................................................................................ 8 Tabla de enrutamiento de R1 ................................................................................................................ 8 Proxy HTTP - Squid ................................................................................................................................... 10 Las directivas ....................................................................................................................................... 10 # NETWORK OPTIONS ..................................................................................................................... 10 # MEMORI CACHE OPTIONS ............................................................................................................ 10 # ACCESS CONTROL ......................................................................................................................... 11 # DISK CACHE OPTIONS ................................................................................................................... 16 # LOG FILE OPTIONS ........................................................................................................................ 17 # ADMINISTRATIVA PARAMETERS .................................................................................................. 17 # ERROR PAGE OPTIONS ................................................................................................................. 18 # MISCELLANEOUS .......................................................................................................................... 18 Aplicar algunas polticas ...................................................................................................................... 19 Queremos restringir cierto tipo de extensiones, y messenger ....................................................... 19 Prohibir el acceso a ciertos sitios. ................................................................................................... 25

Conclusiones....................................................................................................................... 27 Bibliografa ......................................................................................................................... 27

MiNdWiDe - Group

Mind Wide Open BLOG http://jfherrera.wordpress.com Seguridad de la red | Implementacin Del Plan De Seguridad De La Informacin GROUP | ???
Introduccin
Existen cientos de manuales y howtos de cmo montar un servidor Proxy en produccin para una empresa. En este manual se har nfasis sobre todo en la manera de filtrar el contenido Web a ciertas pginas, el filtrado de las descargas por Internet. Me imagino que muchos sabran que un Proxy es un software que realiza las peticiones a un servidor en nombre de un cliente. Aunque la configuracin bsica de un Proxy es la de cachear el contenido Web este concepto para m ya no tiene mucho sentido dado las velocidades que tenemos hoy en da para el acceso a Internet, fcilmente en un hogar podemos contar con velocidades de mnimo 2000 Kbps y sobre todo el aspecto cambiante que tienen las pginas Web. De qu sirve cachear una pgina Web si a los 5 minutos ya ha cambiado su aspecto.

MiNdWiDe - Group

Mind Wide Open BLOG http://jfherrera.wordpress.com Seguridad de la red | Implementacin Del Plan De Seguridad De La Informacin GROUP | ???
Objetivo
Implementar un servidor proxy HTTP y para lleva a cabo este proyecto nos apoyaremos en los aplicativos VMware Workstation, GNS3, la distribucin de Linux CentOS 5.5. Con el fin de tener una solucin la cual permita limitar a los usuarios de la LAN en la navegacin por internet.

MiNdWiDe - Group

Mind Wide Open BLOG http://jfherrera.wordpress.com Seguridad de la red | Implementacin Del Plan De Seguridad De La Informacin GROUP | ???
Topologa

Nuestra topologa consta de LAN_LOCAL en la cual se encuentran las estaciones de trabajo y nuestro servidor proxy. Tabla de direccionamiento

Dispositivo R1 SVR-PROXY-01 CLIENTE-WEB-01

Interfaz Fa0/0 Fa0/1 NIC NIC

Direccion IP 10.0.0.6 10.0.0.13 10.0.0.3 10.0.0.5

Mascara de subred 255.255.255.248 255.255.255.248 255.255.255.248 255.255.255.248

Gateway predeterminada NO APLICABLE NO APLICABLE 10.0.0.6 10.0.0.6

MiNdWiDe - Group

Mind Wide Open BLOG http://jfherrera.wordpress.com Seguridad de la red | Implementacin Del Plan De Seguridad De La Informacin GROUP | ???
Screenshot de las VM. Servidor Proxy

Cliente WEB

MiNdWiDe - Group

Mind Wide Open BLOG http://jfherrera.wordpress.com Seguridad de la red | Implementacin Del Plan De Seguridad De La Informacin GROUP | ???
Configuracin de R1 Configuracin bsica enable configure terminal hostname R0 line console 0 password cisco login exec-timeout 0 0 logging synchronous exit line vty 0 4 password cisco exec-timeout 3 0 logging synchronous login exit service password-encryption banner motd / !! SOLO PERSONAL AUTORIZADO !! / enable secret class clock timezone BOGOTA -5 END clock set 15:35:30 12 january 2010 cop r s

MiNdWiDe - Group

Mind Wide Open BLOG http://jfherrera.wordpress.com Seguridad de la red | Implementacin Del Plan De Seguridad De La Informacin GROUP | ???
Configuracin de las interfaces R1(config)#interface fa0/0 R1(config-if)#ip add R1(config-if)#ip address 10.0.0.6 255.255.255.248 R1(config-if)#description TO LAN_LOCAL R1(config-if)#no shutdown R1(config)#interface fa0/1 R1(config-if)#ip add R1(config-if)#ip address 10.0.0.13 255.255.255.248 R1(config-if)#description TO INTERNET R1(config-if)#no shutdown Configuracin de enrutamiento R1(config)#ip route 0.0.0.0 0.0.0.0 10.0.0.14 Tabla de enrutamiento de R1

MiNdWiDe - Group

Mind Wide Open BLOG http://jfherrera.wordpress.com Seguridad de la red | Implementacin Del Plan De Seguridad De La Informacin GROUP | ???
En la siguiente imagen observamos conectividad completa.

MiNdWiDe - Group

Mind Wide Open BLOG http://jfherrera.wordpress.com Seguridad de la red | Implementacin Del Plan De Seguridad De La Informacin GROUP | ???
Proxy HTTP - Squid

Para la instalacin de squid ejecutamos el comando yum install squid, el directorio principal de squid lo encontramos en /etc/squid/. Nos posicionamos sobre ese directorio y procedemos a realizar una copia del archivo de configuracin ppal el cual es squid.conf. cp squid.conf squid.conf.old Antes de que empecemos a configurar el servidor vamos a agregarlo al inicio, con el siguiente comando. chkconfig squid on Las directivas # NETWORK OPTIONS # TAG: http_port http_port: esta directiva permite configurar squid para que escuche por un puerto especfico adems tambin podemos especificar que escuche por una direccin ip determinada o cualquiera que tenga configurada el servidor donde se ejecuta squid. Esta directiva la configuraremos as: http_port 10.0.0.3:3128 http_port 10.0.0.3:8080 # MEMORI CACHE OPTIONS # TAG: cache_mem cache_mem: nos permite especificar la cantidad de memoria RAM que usara para almacenar los datos ms solicitados. MiNdWiDe - Group 10

Mind Wide Open BLOG http://jfherrera.wordpress.com Seguridad de la red | Implementacin Del Plan De Seguridad De La Informacin GROUP | ???
Esta directiva la configuraremos as: cache_mem 16 MB

# ACCESS CONTROL # TAG: acl Alc: nos permite crear listas de control de acceso para definir que se permite o no, como por ejemplo dominios permitidos de destino, ips, etc. Empezaremos a agregar las directivas acl desde acl CONNECT method CONNECT. En esta directiva definimos nuestra red local. acl LAN_LOCAL src 10.0.0.0/29 Con esta configuracin bsica ya podemos empezar a testear nuestro proxy, antes de configurar nuestro cliente debemos habilitar conexiones a el puerto 8080 en el firewall de CentOS. Reiniciamos el servicio service squid restart Y habilitamos el puerto en iptables.

MiNdWiDe - Group

11

Mind Wide Open BLOG http://jfherrera.wordpress.com Seguridad de la red | Implementacin Del Plan De Seguridad De La Informacin GROUP | ???

Configuramos nuestro cliente para que utilice el servidor proxy.

MiNdWiDe - Group

12

Mind Wide Open BLOG http://jfherrera.wordpress.com Seguridad de la red | Implementacin Del Plan De Seguridad De La Informacin GROUP | ???

Por lo pronto vemos que nos dejo conectarnos al servidor proxy pero no podemos visualizar ninguna pgina web, esto es porque debemos especificar si permitimos o denegamos la acl creada anteriormente en # ACCESS CONTROL > # TAG: acl. # TAG: http_access http_access: en esta directiva especificamos si se permiten o se deniegas las acl creadas anteriormente en la seccin # ACCESS CONTROL > # TAG: acl. Empezaremos a agregar directivas http_access posteriormente a la directiva http_access allow localhost. Agregaremos la siguiente directiva a esta seccin para que nos permita visualizar cualquier pgina a la LAN_LOCAL o sea a 10.0.0.0/29. http_access allow LAN_LOCAL Reiniciamos squid. service squid restart

MiNdWiDe - Group

13

Mind Wide Open BLOG http://jfherrera.wordpress.com Seguridad de la red | Implementacin Del Plan De Seguridad De La Informacin GROUP | ???

Y podemos observar que ya nos deja ver cualquier pgina web. En este apartado me imagino que se estarn haciendo la pregunta: Bueno teniendo en cuenta la tabla de direccionamiento presentada al inicio de este documento podemos observar que la Gateway para los clientes es 10.0.0.6, direccin ip de la Interface Fa0/0 de R1, que pasa si le quitamos al navegador web el proxy?. Si efectivamente dejara navegar tranquilamente a los clientes sin necesidad de pasar por el servidor proxy. Para resolver este problema realizaremos una ACL en R1, y es la siguiente: R1(config)#ip access-list extended ONLYPROXY R1(config-ext-nacl)#permit ip host 10.0.0.3 any log R1(config-ext-nacl)#permit icmp any any log R1(config-ext-nacl)#deny ip any any log R1(config-ext-nacl)#exit

MiNdWiDe - Group

14

Mind Wide Open BLOG http://jfherrera.wordpress.com Seguridad de la red | Implementacin Del Plan De Seguridad De La Informacin GROUP | ???
Aplicamos la ACL creada a la interface Fa0/0 con direccin de entrada. R1(config)#interface fa0/0 R1(config-if)#ip access-group ONLYPROXY in

En esta captura podemos observar la cantidad de coincidencia que se permiten y deniegan para la ACL creada con el nombre de ONLYPROXY. Igualmente los logs que nos enva a la consola.

MiNdWiDe - Group

15

Mind Wide Open BLOG http://jfherrera.wordpress.com Seguridad de la red | Implementacin Del Plan De Seguridad De La Informacin GROUP | ???
Jan 12 21:34:04.963: %SEC-6-IPACCESSLOGP: list ONLYPROXY permitted tcp 10.0.0.3(0) -> 96.31.90.61(0), 14 packets Jan 12 21:34:04.963: %SEC-6-IPACCESSLOGP: list ONLYPROXY permitted udp 10.0.0.3(0) -> 208.67.222.222(0), 1 packet R1# Jan 12 21:35:04.963: %SEC-6-IPACCESSLOGP: list ONLYPROXY denied udp 10.0.0.5(0)-> 10.0.0.7(0), 6 packets R1# Jan 12 21:35:40.571: %SEC-6-IPACCESSLOGP: list ONLYPROXY denied udp 10.0.0.5(0)-> 208.67.222.222(0), 1 packet

Resuelta la pregunta continuamos y agregaremos, modificaremos las siguientes directivas. # DISK CACHE OPTIONS # TAG: cache_dir cache_dir: Con esta directiva podemos especificar el tamao de almacenamiento en disco duro que utilizara squid para almacenar el cache, nmero de directorios y subdirectorios. Esta directiva la configuraremos as: cache_dir ufs /var/spool/squid 500 16 256 Es importante aclarar que cuando se toca el tamao del cache debemos parar el servicio y ejecutar el siguiente comando en la CLI del OS. squid -z # TAG: minimum_object_size minimum_object_size: Con esta directiva podemos especificar el tamao mnimo permitido que se almacenara en cache.

MiNdWiDe - Group

16

Mind Wide Open BLOG http://jfherrera.wordpress.com Seguridad de la red | Implementacin Del Plan De Seguridad De La Informacin GROUP | ???
minimum_object_size 0 KB # TAG: maximum_object_size maximum_object_size: Con esta directiva podemos especificar el tamao mximo permitido que se almacenara en cache. maximum_object_size 2048 KB # LOG FILE OPTIONS # TAG: access_log access_log: Esta directiva especifica el directorio donde se almacenara informacin referente al acceso de nuestro servidor proxy. access_log /var/log/squid/access.log squid # TAG: cache_log cache_log: Esta directiva nos permite definir la ubicacin del archivo en donde se almacenara datos del comportamiento de cache squid. cache_log /var/log/squid/cache.log # ADMINISTRATIVA PARAMETERS # TAG: cache_mgr cache_mgr: Esta directiva nos permite configurar una direccin de correo electrnico para en envo de eventos si ocurre algo relacionado con el cache. Esta directiva la configuraremos as: cache_mgr jfherrera49@misena.edu.co # TAG: visible_hostname visible_hostname: Con esta directiva especificamos el nombre del servidor. MiNdWiDe - Group 17

Mind Wide Open BLOG http://jfherrera.wordpress.com Seguridad de la red | Implementacin Del Plan De Seguridad De La Informacin GROUP | ???
Esta directiva la configuraremos as: visible_hostname localhost3 # ERROR PAGE OPTIONS # TAG: error_directory error_directory: Esta directiva permite cambiar el idioma para que aparezcan los mensajes de error a los clientes en el idioma deseado. Esta directiva la configuraremos as: error_directory /usr/share/squid/errors/Spanish # TAG: err_html_text err_html_text: Esta directiva nos permite agregar comentarios adicionales a los errors generados por squid hacia sus clientes, para que el valor asignado a esta directiva tenga efecto debemos agregar a el tipo de mensaje en el que queremos incluir este comentario la variable %L. err_html_text <p style=color: red;>NO SE PUEDE</p> # TAG: deny_info deny_info: Esta directiva nos permite asociar una pgina de error personalizada a una negacin establecida por http_access. Por el momento dejaremos esta directiva tal cual est en la configuracin por defecto. # MISCELLANEOUS # TAG: offline_mode offline_mode: Permite especificar que nuestro servidor proxy este en modo offline o sea que proporcionara informacin de cache que este en el servidor, pero si la informacin solicitada es nueva no actualizara el cache, igualmente nunca tratara de verificar si hay nueva informacin de sitos, para su actualizacin en cache.

MiNdWiDe - Group

18

Mind Wide Open BLOG http://jfherrera.wordpress.com Seguridad de la red | Implementacin Del Plan De Seguridad De La Informacin GROUP | ???
offline_mode off Muy bien con las directivas bsicas configuradas reiniciaremos el servidor. service squid restart Si por algn motivo no nos inicia squid podemos verificar que est ocurriendo con el siguiente comando: service squid reload

Podemos observar que nuestro mensaje se agrego a el tipo de mensaje de error ERR_ACCESS_DENIED. Aplicar algunas polticas Queremos restringir cierto tipo de extensiones, y messenger Crearemos un archivo en /etc/squid/ llamando deny_files.conf, y el cual contendr lo siguiente:

MiNdWiDe - Group

19

Mind Wide Open BLOG http://jfherrera.wordpress.com Seguridad de la red | Implementacin Del Plan De Seguridad De La Informacin GROUP | ???
\.[Mm][Pp]3$ \.[Aa][Vv][Ii]$ \.[Rr][Aa][Rr]$ \.[Ee][Xx][Ee]$ \.[Bb][Aa][Tt]$ \.[Cc][Oo][Mm]$ Con esto estaremos restringiendo mp3, avi, rar, exe, bat, com. Y finalmente agregamos las siguientes directivas a el archivo squid.conf. acl deny_files urlpath_regex "/etc/squid/deny_files.conf" acl messenger rep_mime_type -i ^application/x-msn-messenger$

http_access deny deny_files http_access deny messenger NOTA: El orden es importante para que la poltica se aplique correctamente las reglas deny las ingresamos antes de lo que se permite.

Reiniciamos el servicio.

MiNdWiDe - Group

20

Mind Wide Open BLOG http://jfherrera.wordpress.com Seguridad de la red | Implementacin Del Plan De Seguridad De La Informacin GROUP | ???
service squid reload

MiNdWiDe - Group

21

Mind Wide Open BLOG http://jfherrera.wordpress.com Seguridad de la red | Implementacin Del Plan De Seguridad De La Informacin GROUP | ???

MiNdWiDe - Group

22

Mind Wide Open BLOG http://jfherrera.wordpress.com Seguridad de la red | Implementacin Del Plan De Seguridad De La Informacin GROUP | ???

Como podemos observar no nos deja descargar archivos .exe, mp3.

Pero si que nos deja archivos .msi. MiNdWiDe - Group 23

Mind Wide Open BLOG http://jfherrera.wordpress.com Seguridad de la red | Implementacin Del Plan De Seguridad De La Informacin GROUP | ???

Y esta es una captura en una estacin de trabajo no esta dentro del dominio del servidor proxy.

MiNdWiDe - Group

24

Mind Wide Open BLOG http://jfherrera.wordpress.com Seguridad de la red | Implementacin Del Plan De Seguridad De La Informacin GROUP | ???
Prohibir el acceso a ciertos sitios. Crearemos un nuevo archivo en /etc/squid/ el cual se llamara deny_sites.conf y contendr lo siguiente: tube8.com megaupload.com rapidshare.com taringa.net Crearemos la acl nombrada como deny_sites alc deny_sites url_regex /etc/squid/deny_sites.conf Aplicamos la negacin a esta acl. http_access deny deny_sites Nuevamente el orden es importante y reiniciamos el servicio service squid reload

MiNdWiDe - Group

25

Mind Wide Open BLOG http://jfherrera.wordpress.com Seguridad de la red | Implementacin Del Plan De Seguridad De La Informacin GROUP | ???
Para finalizar vamos a personalizar un mensaje para la acl deny_files creada anteriormente. deny_info http://jfherrera.wordpress.com deny_files Con esto cuando intenten descargar un tipo de extensin lo que har es re direccionar a la url http://jfherrera.wordpress.com.

MiNdWiDe - Group

26

Mind Wide Open BLOG http://jfherrera.wordpress.com Seguridad de la red | Implementacin Del Plan De Seguridad De La Informacin GROUP | ???
Conclusiones
La implementacin de un servidor proxy puede ser muy til para la implementacin de polticas de una organizacin. Si queremos reservar el ancho de banda para otras tareas ms necesarias podemos apoyarnos en un servidor proxy con cache. La implementacin de Squid es fcil de realizar, adems en la web encontramos infinidad de informacin del mismo, lo mejor es que es la misma configuracin en cualquier distribucin de Linux.

Bibliografa
http://www.visolve.com http://www2.linuxparatodos.net/web/comunidad/base-de-conocimiento http://www.vlan7.org/

MiNdWiDe - Group

27

Mind Wide Open BLOG http://jfherrera.wordpress.com Seguridad de la red | Implementacin Del Plan De Seguridad De La Informacin GROUP | ???

Gracias
Juan Alejandro Bedoya Jose De Arlex Dominguez Neifer Erney Giraldo Jhon Fredy Herrera Yojan Leandro Usme

MiNdWiDe - Group

28

También podría gustarte