Download - Servidor Debian Router Proxy Firewall DHCP

Transcript
Page 1: Servidor Debian Router Proxy Firewall DHCP

   

Servidor Debian Router FW

Objetivos:Administrar las conexiones de 2 redes lan,

una de alumnos y otra de profesores.Ambas redes deben acceder a internet y respetar ciertas politicas de seguridad.

Page 2: Servidor Debian Router Proxy Firewall DHCP

   

Desde Cero● Nuestro servidor puede ser una Pentiun I

con 128 de ram y 3 placas de red. Para por ejemplo un Máximo de 10 PC.

● En nuestro caso usamos virtualbox para crear el escenario y mostrar la practica.

● Servidor = Debian● PC Alumno = Windows Xp● PC Profesor = Windows 2000

Page 3: Servidor Debian Router Proxy Firewall DHCP

   

Primeros pasos

● Instalamos Debian estable, solo el sistema base, nada extra.

● Instalamos algunas herramientas que nos pueden ser de utilidad, ud. instalen sus preferidas.#apt­get install mc nmap htop iftop ssh

Page 4: Servidor Debian Router Proxy Firewall DHCP

   

Configurando las placas de red

● Ahora debemos configurar las 3 placas de red. Para ello editaremos el archivo interfaces

#mcedit /etc/network/interfaces

Page 5: Servidor Debian Router Proxy Firewall DHCP

   

# The loopback network interface auto loiface lo inet loopback

# The primary network interface# la placa ETH0 la dejo en automaticoallow­hotplug eth0iface eth0 inet dhcp

#Configuro la placa de red profesoresauto eth1iface eth1 inet static    address 10.10.10.1    netmask 255.255.255.0    broadcast 10.10.10.255    network 10.10.10.0#configuro la placa de red alumnos y wifiauto eth2iface eth2 inet static    address 10.10.20.1    netmask 255.255.255.0    broadcast 10.10.20.255    network 10.10.20.0

Page 6: Servidor Debian Router Proxy Firewall DHCP

   

Interfaces – comentarios

# The loopback network interface auto loiface lo inet loopback­­­ Es la configuracion que viene de fabrica de la interfaz virtual especial, de loopback, para hacer pruebas de conexión con nosotros mismos.

# The primary network interface# la placa ETH0 la dejo en automaticoallow­hotplug eth0iface eth0 inet dhcp­­­ Esta es la configuracion adecuada para que esta placa de red se auto configure, osea deberia estar conectada al modem/router de nuestro ISP (arnet, fibertel, cablexpress, etc.)

Page 7: Servidor Debian Router Proxy Firewall DHCP

   

Interfaces - comentarios#Configuro la placa de red profesoresauto eth1 ­­­ Placa de red de profesoresiface eth1 inet static    Address 10.10.10.1 ­­­ Indica la ip de la placa    Netmask 255.255.255.0 ­­­ Indica la mascara de red    Broadcast 10.10.10.255 ­­­ Indica el broadcast    Network 10.10.10.0 ­­­ Indica el inicio de la red#configuro la placa de red alumnos y wifiauto eth2iface eth2 inet static    address 10.10.20.1    netmask 255.255.255.0    broadcast 10.10.20.255    Network 10.10.20.0­­­ Idem al segmento de red de profesores­­­ Para mas detalles leer# man interfaces

Page 8: Servidor Debian Router Proxy Firewall DHCP

   

DHCP - Instalación

● Ahora instalamos y configuramos el servidor de DHCP para que las computadoras de profesores y alumnos se configuren automáticamente al conectarse a nuestras redes.

#apt-get install dhcp3-server

Page 9: Servidor Debian Router Proxy Firewall DHCP

   

DHCP - Configuración

# A slightly different configuration for an internal subnet.

# dhcp para red de alumnos

subnet 10.10.10.0 netmask 255.255.255.0 { range 10.10.10.101 10.10.10.199; option domain-name-servers 170.210.200.3; option domain-name "alumnos.mired.lan"; option routers 10.10.10.1; option broadcast-address 10.10.10.255; default-lease-time 600; max-lease-time 7200;}

# mcedit /etc/dhcp/dhcpd.conf

Editamos el archivo de configuración

Editamos las siguientes lineas quedando así, luego repetimos lo mismo para la red de alumnos.

Page 10: Servidor Debian Router Proxy Firewall DHCP

   

DHCP - Explicaciónsubnet 10.10.10.0 netmask 255.255.255.0 {--- define la subred, igual que en interfaces range 10.10.10.101 10.10.10.199;--- define el rango de nros ipes que entregará option domain-name-servers 170.210.200.3;--- define el DNS que utilizará nuestra red option domain-name "alumnos.mired.lan";--– define el nomre del dominio para nuestra red option routers 10.10.10.1;--- Indica el gw o puerta de enlace para nuestra red option broadcast-address 10.10.10.255;--- Indica la direccion de broadcast default-lease-time 600; max-lease-time 7200;}--- Son parametros que indican el tiempo por el cual se entregaUna direccion IP

Page 11: Servidor Debian Router Proxy Firewall DHCP

   

DHCP – ultimo pasoConfiguramos DEFAULTS para que todo funcione desde el arranque del sistema, para ello editamos el siguientearchivo /etc/default/isc­dhcp­server, que debe quedar así

# On what interfaces should the DHCP server (dhcpd) #       Separate multiple interfaces with spaces, INTERFACES="eth1 eth2"

Aqui solo se señalan las interfaces en donde el servidorDebe trabajar.

Ahora podemos re iniciar el servidor para comprobar queTodo funciona. Para ello tambien prendemos una pc deAlumnos y otra de profesores y deberian auto configurarce.

Page 12: Servidor Debian Router Proxy Firewall DHCP

   

Probando el DHCP en alumnos

Page 13: Servidor Debian Router Proxy Firewall DHCP

   

Probando el DHCP en profesores

Page 14: Servidor Debian Router Proxy Firewall DHCP

   

Siguiente paso compartir internet

Para compartir internet vamos a instalar SHOREWALL que es una interfaz de scripts queNos permitira administrar de una forma ordenada, el firewall de nuestro servidor. 

# apt­get install shorewall                         

#cp ­r /usr/share/doc/shorewall/examples/three­interface/* /etc/shorewall/

Despues de la instalacion, vamos a copiar los archivos de configuracion de ejemplo que vienenCon shorewall.

Page 15: Servidor Debian Router Proxy Firewall DHCP

   

Configurando ShorewallActivamos el forward de paquetes, esto es muy importante si pretendemos compartir internet.Para ello editamos el archivo /etc/shorewall/shorewall.confY editamos la siguiente linea dejando asi:

IP_FORWARDING=Yes

Luego editamos el archivo /etc/shorewall/interfaces y lo dejamos asi. De esta formaAsociamos las zonas del firewall a las placas de red correspondientes

#ZONE INTERFACE BROADCAST OPTIONSnet eth0 detect tcpflags,dhcp,nosmurfs,routefilter,logmartiansalu eth1 detect tcpflags,nosmurfs,routefilter,logmartiansdoc eth2 detect tcpflags,nosmurfs,routefilter,logmartians

Notar que net= internet, alu = red alumnos y doc=red docentes

Page 16: Servidor Debian Router Proxy Firewall DHCP

   

Configurando Shorewall

Ahora editamos el archivo /etc/shorewall/zones para definir las zonas con las que trabaja elFirewall, y deberia quedar asi

##########################ZONE   TYPE    OPTIONS  #                            fw      firewallnet     ipv4alu     ipv4doc     ipv4

Page 17: Servidor Debian Router Proxy Firewall DHCP

   

Configurando ShorewallAhora editamos el archivo /etc/shorewall/policy para definir las politicas con las que trabajaráEl firewall

###########################################################################SOURCE         DEST            POLICY          LOG LEVEL       LIMIT:BURST

#aceptaqmos las conexiones desde las redes locales al internetalu             net             ACCEPTdoc             net             ACCEPT#negamos la comunicacion desde alumnos hacia docentesalu             doc             DROP#aceptamos la comunicación desde los docentes a los alumnosdoc             alu             ACCEPT#aceptamos las conexiones desde las redes al FW o GW en este casoalu             $FW             ACCEPTdoc             $FW             ACCEPT#negamos cualquier conexion desde la inetnet             all             DROP            info

# THE FOLLOWING POLICY MUST BE LASTall             all             REJECT          info

Page 18: Servidor Debian Router Proxy Firewall DHCP

   

Configurando ShorewallAhora editamos el archivo /etc/shorewall/rules para definir las reglas del firewall, que tambienSe soncideran como las excepciones a las políticas que se definieron ateriormente

# Accept DNS connections from the firewall to the InternetDNS(ACCEPT) alu $FWDNS(ACCEPT) doc $FWDNS(ACCEPT) $FW net# Accept SSH connections from the local network to the firewall and DMZSSH(ACCEPT) net $FWSSH(ACCEPT)  doc     $FWSSH(ACCEPT)  doc aluSSH(DROP) alu docSSH(DROP) alu $FW# Reglas para bloquear el ping entre las zonas.Ping(ACCEPT) net     $FWPing(ACCEPT) doc $FWPing(DROP) alu docPing(DROP) alu $FWPing(ACCEPT) doc alu#reglas para servicios, como dns, dhcp, http, https, squid , ssh, ftpACCEPT doc $FW tcp 21,22,53,80,443,3128,8080ACCEPT alu $FW tcp 21,22,53,80,443,3128,8080ACCEPT $FW net tcp 21,22,53,80,444,3128,8080

Page 19: Servidor Debian Router Proxy Firewall DHCP

   

Configurando ShorewallPor ultimo pero no menos importante, es activar en en mascaramiento de direcciones, paraCompartir internet. Para ello modificamos el archivo /etc/shorewall/masq

############################################################################INTERFACE SOURCE ADDRESS PROTO PORT(S) IPSEC MARKeth0 10.10.10.0/24eth0 10.10.20.0/24

Reiniciamos todo el equipo, aun que no hace falta realmente, es solocon el fin de comprobar que al iniciar el servidor, ya queda todofuncionando.

Caso contrario solo reiniciamos los servicios necesarios

∙ shorewall restart

Ahora SI los alumnos y docentes deben tener internet.

Page 20: Servidor Debian Router Proxy Firewall DHCP

   

SQUID – Proxy cacheAhora, como todo funciona, vamos a instalar un proxy cache transparentePara aprobechar mejor el ancho de banda disponible.Para ello instalamos squid

#apt­get install squid

Configuramos Squid, editando las siguientes lineas del archivo/etc/squid/squid.conf

# Squid normally listens to port 3128http_port 3128 transparent

# should be allowedacl redalu src 10.10.10.0/24    # RFC1918 possible internal networkacl reddoc src 10.10.20.0/24    # RFC1918 possible internal network

# from where browsing should be allowedhttp_access allow localhosthttp_access allow redaluhttp_access allow reddoc

Por ultimo nos queda nodificar el firewall para que envie las peticionesDel puerto 80 de las redes al 3128 que es donde escucha SQUID

Page 21: Servidor Debian Router Proxy Firewall DHCP

   

SQUID – Proxy cacheEL ultimo paso para que squid quede funcionando de forma transparenteAl usuario, es hacer una redireccion.Para eso editamos el archivo rules de shorewall, agregando estas lineasAl inicio de todas las reglas

#redireccion para squid

REDIRECT        alu             3128            tcp wwwREDIRECT        doc             3128            tcp www

Para terminar reiniciamos shorewall y squid. Y todo funciona

#shorewall restart

#/etc/init.d/squid restart

Listo todo deberia funcionar OK

Page 22: Servidor Debian Router Proxy Firewall DHCP

   

Bloqueando páginas con SQUIDPodemos llegar a bloquear paginas web con squid, para ello hace faltaCrear un archivo con las palabras prohibidas o sitios prohividos.Y SQUID se encarga de bloquear esas paginasEl archivo puede llamarce sitionegados y debe estar en /etc/squid

El contenido del archivo puede ser el siguiente

#sitios bloqueadoswww.facebook.cowWww.ventasdedrogascom.ar

Para terminar en el squid.conf, agregamos las siguientes lineas

Acl urlnegadas url_regex ­i “/etc/squid/sitionegados”

http_access allow redalu !sitionegados

De esta forma reiniciamos squid y ya no se prodrá entrar a losSitios que se encuentran en el archivo

Saludos a todos y felices fiestas

Page 23: Servidor Debian Router Proxy Firewall DHCP

   

Bloqueando páginas con SQUIDEL ultimo paso para que squid quede funcionando de forma transparenteAl usuario, es hacer una redireccion.Para eso editamos el archivo rules de shorewall, agregando estas lineasAl inicio de todas las reglas

#redireccion para squid

REDIRECT        alu             3128            tcp wwwREDIRECT        doc             3128            tcp www

Reiniciamos shorewall y squid, para que nuestras redestenga