Diferencia entre revisiones de «Flisol/2010/Mirror»

De CaFeLUG
Saltar a: navegación, buscar
m
m
 
(No se muestran 17 ediciones intermedias del mismo usuario)
Línea 1: Línea 1:
 
[[Imagen:Red_flisol_2010.png|thumb|300px|Esquema de red en Flisol 2010]]
 
[[Imagen:Red_flisol_2010.png|thumb|300px|Esquema de red en Flisol 2010]]
  
Esta documento tiene como fin poner en "bits" todo lo referente al funcionamiento de la red y servidor durante Flisol 2010, ademas de servir como revisión para futuros eventos y en otras partes del mundo que deseen aprovecharlo. A grandes rasgos el esquema de red a utilizar es el que se visualiza en el gŕafico de la derecha, 1 servidor '''HAL-8999''' (un release mas y seria 9000 = malo) con 2 interfaces de red como mínimo, eth0 hacia una roseta ethernet que cumple la función de WAN (provista por UTN), 1 interfaz hacia la LAN (eth1) con una configuración típica para compartir internet + proxy transparente.
+
Esta documento tiene como fin poner en "bits" todo lo referente al funcionamiento de la red y servidor durante Flisol 2010, ademas de servir como revisión para futuros eventos y en otras partes del mundo que deseen aprovecharlo. A grandes rasgos el esquema de red a utilizar es el que se visualiza en el gŕafico de la derecha, 1 servidor modelo '''HAL-9001''' (bug "Darth Vader" de personalidad arreglado y sin nave espacial para no correr riesgos) con 2 interfaces de red como mínimo, eth0 hacia una roseta ethernet que cumple la función de WAN (provista por UTN), 1 interfaz hacia la LAN (eth1) con una configuración típica para compartir internet + proxy transparente.
  
Software a utilizar:
+
= Software a utilizar =
<ul>
 
    <li>Debian Lenny GNU/Linux</li>
 
    <li>Squid Proxy (2.7.STABLE)</li>
 
    <li>Dnsmasq (2.45-1+lenny1)</li>
 
    <li>Firehol (iptables)</li>
 
    <li>Nginx (http server)</li>
 
</ul>
 
Utilizar Debian u otra distribución da lo mismo, es en la que me siento más cómodo.<br />
 
Squid cumplirá la función de proxy transparente con algunas mínimas modificiones para cachear el 100% de los paquetes (*.deb, *.rpm, *.tgz) que se bajen desde internet en vez de servirse localmente.<br />
 
[http://www.ejemplo.com Dnsmasq] hará de dhcp server & dns server, en ediciones anteriores he utilizado dhcp3-server + bind9, en vista de la complejidad me he decantado por dnsmas que integra en sí mismo ambas funcionalidades, con la ventaja de simplificar enormemente la configuración de la red.<br />
 
[http://firehol.sourceforge.net/ Firehol]
 
  
= Configuración del Mirror =
+
* Debian Lenny GNU/Linux
 +
* Dnsmasq (2.45-1+lenny1)
 +
* Squid Proxy (2.7.STABLE)
 +
* Firehol (iptables)
 +
* Nginx (http server)
  
= Dnsmasq como servidor dhcp =
+
    En este ejemplo utilizo Debian por una cuestión de preferencia, pero es posible aplicarlo a cualquier otra distribución.
 +
 
 +
[http://www.ejemplo.com Dnsmasq] DHCP & DNS server, en ediciones anteriores he utilizado dhcp3-server + bind9, en vista de la complejidad me he decantado por dnsmasq que integra en sí mismo ambas funcionalidades, con la ventaja de simplificar enormemente la configuración de la red.<br />
 +
[http://www.squid-cache.org/ Squid] Proxy transparente con algunas mínimas modificiones para cachear el 100% de los paquetes (*.deb, *.rpm, *.tgz) que se bajen desde internet en vez de servirse localmente.<br />
 +
[http://firehol.sourceforge.net/ Firehol] Es el wrapper que utilizo para crear las reglas de iptables, otra solución similar es [http://www.shorewall.net/ shorewall], Firehol es más simple.<br />
 +
[http://wiki.nginx.org/ Nginx] webserver sirviendo los virtualhosts de Ubuntu y Debian, se puede utilizar Apache por supuesto pero Nginx es de mi predilección.
 +
 
 +
= Instalación =
 +
<code>
 +
[dave@hal] ~]$ su -<br />
 +
[root@hal] ~]# aptitude install squid dnsmasq firehol less telnet dnsutils whois rsync iptraf iperf iftop sarg mrtg ntop -y
 +
</code>
 +
= /etc/network/interfaces =
 +
Teniendo en cuenta que eth0 será nuestra conexión Wan y eth1 nuestra Lan:
 +
<code>
 +
[dave@hal] ~]# cat /etc/network/interfaces
 +
# This file describes the network interfaces available on your system
 +
# and how to activate them. For more information, see interfaces(5).
 +
 +
# The loopback network interface
 +
auto lo
 +
iface lo inet loopback
 +
 +
# The primary network interface
 +
allow-hotplug eth0
 +
iface eth0 inet dhcp
 +
 +
allow-hotplug eth1
 +
iface eth1 inet static
 +
        address 172.16.1.1
 +
        netmask 255.255.255.0
 +
        network 172.16.1.0
 +
        broadcast 172.16.1.255
 +
</code>
 +
 
 +
= Dnsmasq =
 +
Dnsmasq es un dns cache y dhcp server liviano y simple de configurar, esta diseñado para proveer servicio dns y opcionalmente DHCP a redes pequeñas. Puede servir nombres de equipos locales que no esten registrados en un dns server real.<br />
 +
Todo eso y un listado un poco mas extenso hacen de dnsmasq una mas que excelente opción para utilizarlo en nuestras redes.
 +
 
 +
La configuración exacta que necesitamos es la siguiente:
 +
<code>
 +
[root@hal] ~]# grep -E -v '^(#|  #|##|$)' /etc/dnsmasq.conf
 +
domain-needed
 +
bogus-priv
 +
filterwin2k
 +
resolv-file=
 +
server=/localnet/172.16.1.1
 +
interface=eth1
 +
except-interface=eth0
 +
listen-address=127.0.0.1
 +
expand-hosts
 +
domain=caba.flisol.info
 +
dhcp-range=172.16.1.10,172.16.1.199,255.255.255.0,4h
 +
dhcp-option=option:router,172.16.1.1
 +
 
 +
log-queries
 +
</code>
 +
Es de destacar que el archivo /etc/resolv.conf
 +
 
 +
 
  
 
= Dnsmasq como servidor dns =
 
= Dnsmasq como servidor dns =
 +
--[[Usuario:Mstaaravin|&lt;Mstaaravin /&gt;]] 12:11 23 abr 2010 (ART)

Revisión actual del 13:16 23 abr 2010

Esquema de red en Flisol 2010

Esta documento tiene como fin poner en "bits" todo lo referente al funcionamiento de la red y servidor durante Flisol 2010, ademas de servir como revisión para futuros eventos y en otras partes del mundo que deseen aprovecharlo. A grandes rasgos el esquema de red a utilizar es el que se visualiza en el gŕafico de la derecha, 1 servidor modelo HAL-9001 (bug "Darth Vader" de personalidad arreglado y sin nave espacial para no correr riesgos) con 2 interfaces de red como mínimo, eth0 hacia una roseta ethernet que cumple la función de WAN (provista por UTN), 1 interfaz hacia la LAN (eth1) con una configuración típica para compartir internet + proxy transparente.

Software a utilizar

  • Debian Lenny GNU/Linux
  • Dnsmasq (2.45-1+lenny1)
  • Squid Proxy (2.7.STABLE)
  • Firehol (iptables)
  • Nginx (http server)
   En este ejemplo utilizo Debian por una cuestión de preferencia, pero es posible aplicarlo a cualquier otra distribución.

Dnsmasq DHCP & DNS server, en ediciones anteriores he utilizado dhcp3-server + bind9, en vista de la complejidad me he decantado por dnsmasq que integra en sí mismo ambas funcionalidades, con la ventaja de simplificar enormemente la configuración de la red.
Squid Proxy transparente con algunas mínimas modificiones para cachear el 100% de los paquetes (*.deb, *.rpm, *.tgz) que se bajen desde internet en vez de servirse localmente.
Firehol Es el wrapper que utilizo para crear las reglas de iptables, otra solución similar es shorewall, Firehol es más simple.
Nginx webserver sirviendo los virtualhosts de Ubuntu y Debian, se puede utilizar Apache por supuesto pero Nginx es de mi predilección.

Instalación

[dave@hal] ~]$ su -
[root@hal] ~]# aptitude install squid dnsmasq firehol less telnet dnsutils whois rsync iptraf iperf iftop sarg mrtg ntop -y

/etc/network/interfaces

Teniendo en cuenta que eth0 será nuestra conexión Wan y eth1 nuestra Lan:

[dave@hal] ~]# cat /etc/network/interfaces
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
allow-hotplug eth0
iface eth0 inet dhcp

allow-hotplug eth1
iface eth1 inet static
       address 172.16.1.1
       netmask 255.255.255.0
       network 172.16.1.0
       broadcast 172.16.1.255

Dnsmasq

Dnsmasq es un dns cache y dhcp server liviano y simple de configurar, esta diseñado para proveer servicio dns y opcionalmente DHCP a redes pequeñas. Puede servir nombres de equipos locales que no esten registrados en un dns server real.
Todo eso y un listado un poco mas extenso hacen de dnsmasq una mas que excelente opción para utilizarlo en nuestras redes.

La configuración exacta que necesitamos es la siguiente:

[root@hal] ~]# grep -E -v '^(#|  #|##|$)' /etc/dnsmasq.conf 
domain-needed
bogus-priv
filterwin2k
resolv-file=
server=/localnet/172.16.1.1
interface=eth1
except-interface=eth0
listen-address=127.0.0.1
expand-hosts
domain=caba.flisol.info
dhcp-range=172.16.1.10,172.16.1.199,255.255.255.0,4h
dhcp-option=option:router,172.16.1.1
  
log-queries

Es de destacar que el archivo /etc/resolv.conf


Dnsmasq como servidor dns

--<Mstaaravin /> 12:11 23 abr 2010 (ART)