Вы находитесь на странице: 1из 14

GUIA ROUTER CENTOS - DHCP, PROXY CACHE

Ok, como lo prometido es deuda, aunque tarde, les traigo este mini-manualcillo de mi humilde autoria, para que usen sus mquinas viejas como routers, usando Fedora 12, 13, 14 15 (no he probado en versiones anteriores, pero debiera funcionar), o Centos 4x 5x (no he probado aun con Centos 6, aunque ya tengo una mquina virtual corrindolo). Por qu CENTOS y no UBUNTU o DEBIAN? Lamentablemente, al pasar los aos, la identidad de Debian (no me maten por favor) se ha ido perdiendo y transformando. Hoy, deban es una distro que tiene un nombre y que ha aportado MUCHO MAS que cualquier otra, pero que ha pasado a ser un desarrollo constante, inmaduro e inestable. Los paquetes ms estables, estn AEJOS con ganas, y los paquetes ms nuevos, son bombas FOLK. Ubuntu en cambio, es bsicamente ms de lo mismo, con algunas mejoras notables para los usuarios nuevos, y mejoras serias en la GUI, pero nuevamente, no es lo que buscamos. Fedora, siendo una distro MUY innovadora, y que siempre est marcando tendencias, sigue siendo mucho ms estable que Ubuntu, posiblemente porque su idea original es ser el ambiente de prueba de las versiones de escritorio de RedHat, y por tanto es posible usarla en modo texto con tan buenos resultados como otras distros. Centos, es una distro que de innovador no tiene NADA. Esto es lgico y obvio, ya que uno no busca innovacin en las GUI de los servidores, o que tenga las ltimas chupas del mate en aplicaciones. Uno busca que lo que tiene funcione slido como roca, y nunca ms vuelva a fallar. Por lo mismo, es mi primera opcin cuando de servidores se trata. Por otro lado, sus genes redhatcisticos, dan seguridad y confianza, adems de tener un soporte y documentacin masivos en la red, lo que permite siempre poder salir del problema, sea porque encontraste un artculo que mencionaba esa falla, o porque alguien certificado redhat te ayudo. En este caso, la idea es que usen un router de verdad, basado en arquitectura x86 con Linux, y no los de juguete que uno compra en las tiendas, donde muchos servicios estn capados, incluso usando firmwares de terceros como el dd-wrt (que tambin es Linux), y vean como un servidor chiquito hace maravillas en las redes de hogar. Considerando que una maquina vieja y usada normalmente est acumulando polvo por ah, o se puede adquirir por menos de US $70 con mejores prestaciones de las que pongo ac, no es del todo descabellado implementarlas en vez de los routers de casa. Los servicios que adems pueden implementar, no se limitan a los 3 servicios que les voy a dejar ac ( ROUTER, Servidor de DHCP,

Servidor PROXY TRANSPARENTE, Servidor de DNS y DNS-CACHE de doble vista), sino que es posible usar hasta el infinito y ms all solo depende de su paciencia y expertice. Dentro de la receta, pedimos como mnimo un computador viejito con:

P3 500 o superior 512Mb de RAM (podra ser menos, pero no funciona con Fedora 12 o superior, ni Centos 5x o superior) Dos tarjetas de red, dos viejas de 10Mbps mnimo (10/100 ideal) Un disco duro de 8Gb mnimo (voy a hacer el server con un disco de 20Gb, ustedes usen el que tengan) Lector de dvd ideal (aunque lector de CD tambin sirve)

Mi advertencia para los que tienen ms de un tarro botado, es que usen el ms chico, y eviten los P4. Esto es porque un PIII de 800 con 512Mb es suficiente para administrar una red de ms de 400 usuarios sin despeinarse, consumiendo menos de la mitad de lo que un P4 consumira. Eliminando el mito, los Duron, Athlon XP y Atlhon MP, as como los semproms, son mquinas muy eficientes energticamente, y que dan grandes y agradables sorpresas en Linux, aunque los puristas siempre prefieren Intel. No me puede importar menos ni el monitor, ni la tarjeta de video, ni nada ms. La idea es que luego de dejarlo funcionando, dejen servidor en una posicin donde nadie lo toque, siempre encendido, e idealmente sin mouse, teclado, ni monitor. De hecho, para los MASHOS TARTAROS, les recomiendo que instalemos SIN GUI, aunque algunas personas siempre quieren tener un escritorio al que allegarse. Mi recomendacin, es que si van a hacer una instalacin con GUI, tengan en cuenta que es mejor dejar el equipo siempre en runlevel 3, no solo para ahorrarse los megamuchos megabytes de RAM que se consumen, sino que para evitar que manos inescrupulosas crean que pueden ser administradores de servidores. Si por alguna razn, no son los mashos bakunos que dicen ser, e instalan GUI de todas formas, les menciono que todas las configuraciones que haremos, sern en base a texto, lo que no favorece el uso de la GUI, aunque a los que estn acostumbrados, puede que les acomode tener diferentes ventanas de terminal abiertas, o usando otro editor de texto diferente a VI/VIM (mis elecciones) como puede ser gedit. CUIDADO CON EL SERVICIO NETWORKMANAGER. Es un servicio que corre en GUI, pero que evita que el servicio de red sea manejado por consola. Deshabilitenlo. Adems, la mayor parte de las otras interacciones que haremos, sern luego que el equipo funcione, siempre usando ssh, asi es que no tiene mucho sentido.

Manos a la Obra: Paso 1.- Descarguen el primer CD de Centos 5x (la ltima versin antes de salir Centos 6 fue la Centos 5.6, y es de hecho la que recomiendo). Pueden usar si tienen a mano como mencione anteriormente Fedora en las versiones 12 hasta la 14 (no prob con versiones anteriores), y Centos 4 a la ltima de la 5. SIEMPRE EN 32bits. Para los que vienen del mundo de Windows y creen de guata al cielo que los 64bits son la solucin a la hambruna, la estupidez y la pobreza, les comento que NO. Un Kernel PAE puede administrar 64Gb de ram, lo que hace innecesario usar Kernels de 64 bits en Linux a menos que sea un servidor tamao MAMUT. NO USEN CENTOS 6 PORQUE HAY DETALLES DIFERENTES dentro de las configuraciones de DHCP, y posiblemente se mareen para qu hacerlo difcil, si fcil tambin resulta? Paso 2.- Quemen el CD o el DVD de Centos 5x en el medio que corresponda. Paso 3.- Inicien la instalacin Aunque no quiero hacer un tratado de la instalacin, y no capture imgenes de pantalla, tengo que explayarme porque necesitamos modificar algunas cosillas solamente dentro de las cuales est la tabla de particiones (haremos un diseo personalizado), y las cosas que instalaremos. Cuando inicien la instalacin, elijan la instalacin en modo grfico. S que suena un poco contradictorio, pero la modificacin de la tabla de particiones es un PARTO de PRIMERISA en modo texto, y no veo porque hacerlos sufrir gratis. Cuando les ofrezca instalar el idioma, por defecto viene en Ingles, pero si quieres espaol, pinchen la seleccin de ingls, y escriban SPA, y tendrn la opcin de Espaol (spanish), pinchen luego en siguiente, para seleccionar ahora el idioma del teclado. Por defecto viene con la configuracin de espaol-espaa. En mi caso tengo un teclado latinoamericano, as es que pongo lat y aparecer la opcin de teclado latino americano. Ahora lo truculento . . . cuando les d opcin de hacer un diseo predeterminado la respuesta es NO!!! . . . especialmente a los amigos newbies y Ubunteros, la respuesta es NO. Elijan CREAR DISEO PERSONALIZADO. El porqu de esto, varias explicaciones, y cada una muchas ramificaciones, pero lo que es importante que entiendan es que: 1. Al crear un diseo personalizado, distribuyo a voluntad el disco, y limito la posibilidad de vulnerabilidades de softwares.

2. Evito que programas tomen ms espacio de disco del que yo quiero asignar o es sano asignar. Por ejemplo, hasta hace poco tiempo, Squid tena justamente un bug aleatorio, que lo haca tomar ms espacio de disco del que se configuraba, pudiendo tomar incluso el 100% del espacio libre de la particin en que se instal. Con o sin BUG, no dejamos que eso pase. 3. Puedo enjaular los requerimientos de usuarios (por ejemplo, con los DNS) 4. Puedo dejar espacio SIN ASIGNAR para aumentar las particiones que as lo requieran, y no necesariamente asignado ni a la raz, ni al home, ni a nada no es una mquina de uso personal, es un servidor, y de buenas prcticas siempre es dejar espacio para crecer.

Desde que apareci el MARAVILLOSO LVM, se acab el problema de espacio, siempre y cuando, tengamos la buena costumbre de definir un VOLUMEN FISICO LVM, y las particiones correspondientes dentro. Ok entonces ya que estamos ok con el diseo personalizado, lo primero es crear una nueva particin con punto de montaje /boot con sistema de archivos EXT3 y tamao fijo de al menos 200Mb (fedora 14 y 15 soportan EXT4, lo que lo hace recomendable, solo por velocidad). Luego, todo el espacio que queda disponible, lo agregamos como LVM. Acurdense que el disco que estoy usando es de 20Gb. Discos duros: Dispositivo Punto de Montaje TIPO Formato Tamao (MB) /dev/sda /dev/sda1 /boot Ext3 Si 250 /dev/sda2 Sistema LVM PV Si 20222 Ahora en el espacio LVM, ponemos las particiones necesarias para que nuestro servidor funcione. Como les mencione, el disco que usare tiene 20Gb, pero me va a sobrar espacio (como les mencione, por buenas practicas). La tabla de particiones LVM, la llam SISTEMA, y tiene que quedar entonces ms menos as: Grupo de volmenes LVM Dispositivo Punto de Montaje TIPO Formato Tamao (MB) Swap Swap Si 1024 Temp /tmp Ext3 Si 1024 Raz / Ext3 Si 5120 Home /home Ext3 Si 2048 Var /var Ext3 Si 2048 Usr /usr Ext3 Si 2048 Squid /var/spool/squid Ext3 Si 5120 Para los que hacen las matemticas SI, deje ms menos 1Gb no asignado. De esa manera puedo aumentar sin necesidad de disminuir nada alguna particin que requiera. Si pongo otro disco duro, simplemente lo transformo en volumen LVM, y

aumento el espacio al nuevo disco, sin necesidad de hacer RAID. Les mencione que desde que apareci el LVM, fue amor a primera vista??? El gestor de arranque por defecto, es el amado GRUB, que se instale en /dev/sda/ tal cual como viene. Ahora tiene que dar la opcin de configurar nuestros adaptadores de red. Nuestro adaptador eth0 debe quedar con dhcp e ipv6 desactivado (no se necesita), mientras que el eth1 tiene que quedar configurado con la direccin ip que queremos que tenga nuestra red, para ejemplos prcticos, la fijare como 192.168.10.1, con mascara de subred 255.255.255.0 (clase C), tambin ipv6 desactivado. Preocpense que ambos adaptadores suban al encender la mquina. Terminado eso, fijen su zona horaria correspondiente, mi caso, mi Chile querido. (America/Santiago). Ahora les pedir una contrasea de administrador. Les pido que sean sobrios y sensatos 1234 NO ES UNA CONTRASEA, y contrasea TAMPOCO es una contrasea. Usen una contrasea que tenga al menos una mayscula, minsculas, nmeros y algn carcter especial. NO LA PIERDAN. Si quieren evaluar su contrasea... Ahora, hacemos la magia. Por defecto en centos se instala el escritorio y algunas cosillas ms. Como buenos mashos TARTATOS VIKINGOS, vamos a personalizar la instalacin y sacar TODO, salvo el GUI para los no tan mashos. Pinchen Personalizar ahora. En Entornos grficos SAQUEN TODO, salvos los no mashitos que quieren gnome. KDE es un pelito pesado, y es mejor evitarlo. En Aplicaciones:

Auditoria y Publicacin desmrquela completo Editores, marquen las dos opciones de VIM-enhanced. Nada ms. Emacs, desmarquen todo Grficos, desmarquen todo Ingeniera y cientfico, desmarquen todo Internet basada en texto, para MASHOS, djenlo Internet grfica, para los que van a instalar GUI, SOLO dejen Firefox Juegos y entretenimiento, desmarquen todo (es un servidor) Oficina y productividad, desmarquen todo (es un servidor) Sonido y video, desmarquen todo

En desarrollo, DESMARQUEN TODO En Servidores, DESMARQUEN TODO (sip, desmarquen todo) En Sistema Base, SI NO SON LOS MASHITOS QUE CREO desmarquen por favor el network manager, o tomara control de los adaptadores de red, adems

desmarquen el anacron (hace lo mismo que Cron), los servicios aspell, el bluetzutils, cpuspeed, dmraud, finger, fistboot, ftp, yum-updatestd. El resto, no lo toquen. Si tienen una conexin por modem ADSL, tienen que preocuparse que el soporte de red mediante discado este marcado, El resto, djenlo tal como viene, con java desmarcado, herramientas de sistema desmarcada, herramientas de administracin desmarcado, distribucin de empresas desmarcado. En la seccin Virtualizacion, desmarquen todo En agrupamiento de clustering desmarquen todo En almacenamiento del clustering, desmarquen todo En idiomas, desmarquen todos, menos el idioma que van a usar. Cuando presionen siguiente, una pantalla avisara que luego del prximo siguiente, la instalacin propiamente tal iniciara. Al finalizar la instalacin, les va a pedir que reinicien la maquina (no se acostumbren, no es Windows). El reinicio es suave y rpido, si desmarcaron todo lo que les ped, he hicieron bien las particiones, solo queda poco trabajo antes de comenzar a hacer lo mnimo que se necesita para poder tener un servidor funcional. Para los mashos tartaros que entran solo a consolaso limpio (felicitaciones por ustedes rudos mashos que no le temen a la consola), tendrn un pelito ms de trabajo, pero muchas recompensas. Al resto, si no deshabilitaron correctamente el servicio firstboot, les va a aparecer una serie de consultas, como la configuracin del cortafuegos (firewall), que debe permitir de forma segura SOLO SSH, y la configuracin de SELINUX debe quedar en disabled o deshabilitado. Para los mashos tartaros, que entraron a consola, lo primero deshabilitamos SELINUX, que aun cuando puede ser de gran ayuda para manejar la seguridad de nuestro equipo en red, en verdad es un cacho de configurar correctamente, y no vale la pena para este tipo de mquina. Esto lo hacemos usando nuestro editor de textos favorito de todos los tiempos VIM # vim /etc/selinux/config Donde dice: SELINUX=enforcing Debe quedar: SELINUX=disabled Guardamos la configuracin del fichero (comando :wq! ) Para hacer que los cambios surtan efecto usamos: # setenforce 0 Si vemos cuanta ram esta ocupando nuestro sistema, lo mas probable es que sea menos de 20 MB. Eso lo podemos hacer usando el comando free # free -m

Para los mashos tartaros bien, para los otros que usan gnome, es probable que estn usando desde 80 Mb hasta 125Mb si hicieron lo que les ped. Nada grave, pero recuerden que una mquina que tiene 512Mb de ram, no es una mquina que pueda perder recursos en tonteras. Ahora, antes de seguir, para los mashos tartaros, y para los otros, deben instalar los repos de DAG. Los que tengan maquinas conectadas por mdems ADSL, primero deben configurar sus conexiones adsl. En Linux esto es una tarea MUY DIFICIL desde una consola, ponen el siguiente comando # adsl-setup Y responden todas las preguntas (a prueba de diputados) que aparecern. Nada absurdo por lo dems. La nica pregunta que puede incomodar a los caballeros, y seoritas, es el tipo de firewall, pero la mejor opcin para una maquina que funciona como router, es dejarlo como MASQUERADE. Por defecto, les recomiendo a los que tienen cablemodems y a los que tienen adsl, que conecten su conexin a internet a la eth0 (solo por motivos de orden), y ya tenemos internet en nuestro servidor, lo que no significa nada aun. En una consola (para los no tan mashos), y en el tty para los mashos, usamos el siguiente comando: [QUOTE]# su Contrasea: x x x x x x x x x (su contrasea de ROOT) Cdigo:
# rpm -Uhv http://apt.sw.be/redhat/el5/en/i386/rpmforge/RPMS/rpmforge-release-0.3.61.el5.rf.i386.rpm

Eso instala el repo para Centos 5x de DAG repo, que a mi juicio es el mejor repo no oficial para Centos. Ahora, como buen servidor, necesitamos que corra SOLO lo que vamos a usar, y no cualquier cosa. Para eso, primero pedimos un listado de todos los servicios que se ejecutan por runlevel: # chkconfig --list Les va a aparecer un listado NO despreciable de servicios que se ejecutan, de los que tienen que estar siempre off: # chkconfig sendmail off # chkconfig netfs off # chkconfig ip6tables off Y como somos educados, le vamos a poner nombre a la maquina: # vim /etc/sysconfig/network HOSTNAME=proxy.by-hal Ahora, revisamos que los adaptadores de red esten correctamente configurados, partiendo obviamente por eth0, y luego eth1 # vim /etc/sysconfig/network-scripts/ifcfg-eth0

# Interface hacia Inet DEVICE=eth0 BOOTPROTO=dhcp USERCTRL=yes HWADDR=00:11:22:33:44:55 # Ojo, no modifiquen SU mac, este es un ejemplo ONBOOT=yes # vim /etc/sysconfig/network-scripts/ifcfg-eth1 # Interface hacia la red local DEVICE=eth1 BOOTPROTO=static IPADDR=192.168.10.1 NETMASK=255.255.255.0 USERCTRL=no HWADDR=aa:bb:cc:dd:ee:ff # Ojo, no modifiquen SU mac, este es un ejemplo ONBOOT=yes En algunas versiones de fedora, cuando se instala de manera mnima, no activa por defecto los adaptadores de red, as es que para asegurarnos que siempre levanten los adaptadores de red, usamos: # chkconfig network on Para que el router se active, debemos activar el bit-forwarding lo que se hace dentro de la siguiente configuracin. # vim /etc/sysctl.conf # Controls IP packet forwarding net.ipv4.ip_forward = 1 para que el cambio sea inmediato, (les dije que no es Windows, y no se reinicia casi casi casi nunca) # sysctl -p Ahora, para poder tener todo listo para usar antes de empezar a instalar las aplicaciones que necesitamos, preparamos las reglas de los iptables. # iptables -F # iptables -t nat -F # iptables -P INPUT ACCEPT # iptables -P OUTPUT ACCEPT # iptables -P FORWARD ACCEPT Como los IPTABLES ahora quedaron limpiecitos, tenemos que enmascarar nuestra red. # iptables t nat -A POSTROUTING -s 192.168.10.0/24 -j MASQUERADE Para guardar los cambios de forma permanente, usamos: # service iptables save Y para asegurarnos que los iptables arranquen: # chkconfig iptables on Hasta vamos ok, pero para que un router sea un router, no solo debe dar internet, sino que adems debe dar algunos servicios bsicos como DHCP, asi es que

instalemos el servicio. Como super usuario, (root), hacemos la instalacin. # su contrasea: # yum install -y dhcp Para configurar nuestro servidor de DHCP, lo ms fcil es copiar el archivo de ejemplo que est en la mquina. # cp /usr/share/doc/dhcp-3.0.5/dhcpd.conf.sample /etc/dhcpd.conf cp: sobreescribir <</etc/dhcpd.conf>>? (s/n) S Lo ms fcil es simplemente dejar todo en DHCP, pero a veces (como siempre), uno quiere que las mquinas de uno tengan una IP fija, as es que, les propongo el siguiente cuadro de configuracin: # vim /etc/dhcpd.conf ddns-update-style interim; ignore client-updates; subnet 192.168.10.0 netmask 255.255.255.0 { # --- default gateway option routers 192.168.10.1; option subnet-mask 255.255.255.0; option nis-domain "haltech.cl"; option domain-name "haltech.cl"; option domain-name-servers 192.168.10.1; option time-offset -18000; # Eastern Standard Time # option ntp-servers 192.168.10.1; # option netbios-name-servers 192.168.10.1; # --- Selects point-to-point node (default is hybrid). Don't change this unless # -- you understand Netbios very well # option netbios-node-type 2; range dynamic-bootp 192.168.10.30 192.168.10.254; default-lease-time 7200; max-lease-time 43200; # ESTO ES SI QUEREMOS QUE LAS IPs ESTN FIJAS. CAMBIEN EL NOMBRE DEL HOST y LA MAC DEL ADAPTADOR host hal { hal-laptop-eth; hardware ethernet hh:hh:hh:hh:hh:hh; fixed-address 192.168.10.9; }

host halwf { hal-laptop-wifi; hardware ethernet 00:00:00:00:00:00; fixed-address 192.168.10.10; } Despus de eso, debemos definir cuales son las interfaces a las que les pasaremos DHCP, por lo que modificamos el archivo: # vim /etc/sysconfig/dhcpd # comand line option here DHCPDARGS=eth1 Si tienen ms de una interfaz, como por ejemplo puede ser una tarjeta de red inalambrica, para poder dar Wifi, la incluimos ah mismo, y quedara ms menos as. DHCPDARGS=eth1 wlan0 Si hicieron todo ok, entonces podemos poner en marcha el servicio # service dhcpd restart Y como sabemos todos (creo), el que diga que sube correctamente, no significa que todo este correctamente configurado, asi es que cachureamos en el archivo de bitcoras. # tail -100 /var/log/messages Si todo esta ok, entonces queremos que el servicio suba automticamente cada vez que reiniciamos la mquina, lo que se logra usando el famoso: # chkconfig dhcpd on Y tenemos ahora un router, que adems da DHCP. VAMOS BIEN! Ahora, para que la navegacin sea expedita, es absurdo depender de los DNS del ISP, que normalmente son PEORES que MALOS as es que levantamos nuestro propio servidor de DNS de doble vista. Instalamos BIND # yum -y install bind bind-utils bind-chroot caching-nameserver Una vez instalado, tenemos que configurar nuestro servidor, para eso: # cd /var/named/chroot/etc/ # cp -a named.caching-nameserver.conf named.conf # cp -a named.rfc1912.zones named.rfc1912.int.zones # cp -a named.rfc1912.zones named.rfc1912.ext.zones # cd /etc/ # ll named* Borramos todos los enlaces simbolicos, para poder crear los nuevos # rm named*

(le decimos que si a todo) Y ahora creamos los enlaces simblicos que corresponden # ln -s /var/named/chroot//etc/named.conf named.conf # ln -s /var/named/chroot//etc/named.rfc1912.int.zones named.rfc1912.int.zones # ln -s /var/named/chroot//etc/named.rfc1912.ext.zones named.rfc1912.ext.zones Ahora la parte entretenida, modificamos named.conf para que funcione nuestro servidor de DNS. # vim /etc/named.conf Debiera quedar mas menos asi: // // named.caching-nameserver.conf // // Provided by Red Hat caching-nameserver package to configure the // ISC BIND named(8) DNS server as a caching only nameserver // (as a localhost DNS resolver only). // // See /usr/share/doc/bind*/sample/ for example named configuration files. // // DO NOT EDIT THIS FILE - use system-config-bind or an editor // to create named.conf - edits to this file will be lost on // caching-nameserver package upgrade. // options { listen-on port 53 { 127.0.0.1; 192.168.10.1;}; listen-on-v6 port 53 { ::1; }; directory "/var/named"; dump-file "/var/named/data/cache_dump.db"; statistics-file "/var/named/data/named_stats.txt"; memstatistics-file "/var/named/data/named_mem_stats.txt"; // Those options should be used carefully because they disable port // randomization query-source port 53; forwarders {8.8.8.8; 8.8.4.4; 208.67.222.222; 208.67.220.220; }; // query-source-v6 port 53; // query-source port 53; // query-source-v6 port 53; allow-query { localhost; any; }; allow-query-cache { localhost; localnets; }; }; logging {

channel default_debug { file "data/named.run"; severity dynamic; }; }; view interno { match-clients { localhost; 192.168.10.0/24;}; match-destinations { localhost; }; recursion yes; include "/etc/named.rfc1912.int.zones"; }; view externo { match-clients { any; }; match-destinations { localhost; }; recursion no; include "/etc/named.rfc1912.ext.zones"; }; Si se fijan, cuando se pregunta recursion" en la vista interna, le decimos que si, pero en la vista externa, SIEMPRE decimos que no. Esto es base para evitar DNS poisoning, y por tanto mantener cierta seguridad de nuestro servidor. A veces, es polite cambiar adems los permisos a la carpeta donde funcionan los DNS # chmod 770 /var/named/ Y hechamos a andar nuestro servicio de DNS # service named restart Y como siempre, revisamos la colita de mensajes para ver que todo este ok, aunque nuestro servidor levante de manera correcta. # tail -100 /var/log/messages Si todo esta ok, definimos que el servicio levante siempre que la maquina se enciende # chkconfig named on FINALMENTE . . . dejamos la guinda de la torta para el final. Un router de juguete me da internet, y la mayor parte maneja DHCP incluso fijando las IPs, pero dependemos de un servicio de enmascaramiento de DNS y DNS Forwarding para poder tener un servicio medianamente decente. Pero no tienen servidor de DNS ni DNS cache como nuestro servidor. Esto mejora increblemente los tiempos de respuesta de cada requerimiento a las diferentes direcciones de Internet que queramos ver. Pero lo que hace la diferencia cuando tenemos ms de una persona navegando en nuestra red, es la existencia de un proxy. Esto hace que se almacene en el cache del mismo servidor, toda pgina y elementos que pertenecen a una pgina, quedando guardados en dos niveles. Por un lado, cuando los elementos son pequeos, quedan en la memoria RAM del servidor, y cuando son ms grandes,

pasan al disco duro. Si hacen memoria, asigne 5Gb al cache del Squid, que quedo ubicado en /var/spool/squid. En mi humilde experiencia, un cache de 5Gb es MUCHO para una casa de 5 a 6 personas, pero cuando el espacio de disco no es una limitacin, el cache NO DEBE exceder los 20Gb (16 Gb se ha visto como el ideal), a menos que el disco sea MUCHO ms rpido de lo que uno compra normalmente. Ahora, instalar squid, es fcil, configurarlo, es un poco aspero para ser sincero. Para facilitar la configuracin, les voy a dar las lneas minimas para no sufrir ni padecer en el intento. # yum install -y squid # vim /etc/squid/squid.conf Para poder hacer esto en fcil, pongamos nmeros en las lneas y asi solo modificaremos algunas de ellas. El comando en vi/vim para ver la numeracin de las lneas es :set nu" - Las lneas pueden variar un par de nmeros, pero dan una buena referencia de donde esta cada cosa 632 # acl TURED src 192.168.10.0/24 633 # http_access allow TURED 921 # http_port 192.168.10.1:3128 transparent Squid entonces escucha todo lo que pase en la red mencionada, en el Puerto 3128 y de forma transparente. la navegacin no es por el puerto 80? :s 1579 # cache_mem 384 MB (SIN GUI recomiendo) 1579 # cache_mem 320 MB (CON GUI recomiendo) aqui menciono que es la cantidad de memoria RAM asignada a cache de navegacin. La recomendacin cuando la maquina solo corre como router, es hasta el 90% de la ram. Personalmente, creo que esto es correcto SOLO si se usa runlevel 3, sino, debe sumarse el costo del GUI (unos 120Mb) a los servicios y el poner el hasta el 90% del remanente. 1588 # maximum_object_size_in_memory 160 KB Tamao maximo de un objeto cargado en la RAM 1786 # cache_dir ufs /var/spool/squid 5120 16 256 En mi humilde experiencia, el cache que ha dado mejor resultado es el UFS, por lo que recomiendo dejarlo tal cual. Ahora el primero nmero 5120, es el espacio asignado en disco al cache de Squid, el segundo son los niveles de directorios que se crearan, y el tercero los subniveles. NO LOS MODIFIQUEN, solo modifiquen el espacio en disco que quieran asignar. 1811 # minimum_object_size 140 KB 1825 # maximum_object_size 30720 KB este es el valor MAXIMO de un objeto que ser almacenado en disco. En este caso, lo fije como 30Mb, lo que es ms que suficiente para el 90% de los usuarios. Las salvedades comienzan a aparecer cuando los usuarios quieren que squid

almacene las actualizaciones de Windows por ejemplo, hecho que PUEDE hacer, pero no con la configuracin que estoy entregando (necesitamos modificar algunos ACLs). Eso debiera ser todo, aunque a veces, Squid pide que se defina un visible_hostname. Ahora, para los PAVIS que no pillaron mi comentario arriba de "el puerto 80 y no el 3128, es el puerto de navegacion", les comento que para que squid funcione, debemos redirigir el trafico del puerto 80 al puerto 3120, y eso lo hacemos con IPTABLES... queridas y odiadas. iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j REDIRECT --to-port 3128 SINO USAN ESTE IPTABLES, tendran un router funcionando, con todos los servicios arriba, pero NO TENDRN PROXY, aunque este corra y las bitcoras digan que esta todo OK. ESTE PASO ES CLAVE y NO DEBEN OLVIDARLO!!! Disfruten... # AGREGUE en la pagina 2 como configurar Vlans y como optimizar Squid para Windows UPDATE... as es que no se lo pierdan y PONGAN FEEDBACK... que esto tomo MUCHISISISISISIMO tiempo y dedicacin. Si encuentran errores, o tienen preguntas, avsenme para poder optimizar todo.

Вам также может понравиться