Instalación y Configuracion del Servidor Caché desde cero

De Vitalinux
Revisión del 11:33 13 jun 2016 de Nacho (discusión | contribuciones)
(dif) ← Revisión anterior | Revisión actual (dif) | Revisión siguiente → (dif)
Saltar a: navegación, buscar

AVISO SOBRE ESTE MANUAL

La información que aparece en el siguiente manual es relativa a la instalación y configuración del servidor caché pero está obsoleta y no sería funcional con los servidores caché actuales. Para ver el manual de instalación del servidor caché actualizada con la última versión dirigirse al siguiente enlace.

Instalar gdebi

Página principal

Para la instalación de paquetes que se han descargado localmente, de tal forma que tenga en cuenta la instalación de las dependencias:

       # apt-get install gdebi

Configuración de las IPs

La interfaz eth0 tendrá un par de alias: “eth0:1” al cual le asociaremos una IP reconocible, independientemente de la intranet en la que nos encontremos, y “eth0:2” que tendrá una configuración para poder trabajar en el CAREI. Una vez montado un clon del Caché, será necesario editar el archivo para eliminar la eth0:2 y asignar la gw y dns-nameservers correspondientes en eth0:

       # nano /etc/network/interfaces
       auto eth0 
       iface eth0 inet static 
       address 172.30.1.249 
       netmask 255.255.255.0 
       network 172.30.1.0 
       broadcast 172.30.1.255
       auto eth0:1 
       iface eth0:1 inet static 
       address 192.168.60.254 
       netmask 255.255.255.0
       iface eth0:2 inet static 
       address 1.34.1.243 
       netmask 255.255.255.0 
       network 1.34.1.0 
       broadcast 1.34.1.255 
       gateway 1.34.1.251 
       dns-nameservers 127.0.0.1

Configuración como gateway

Para ello dos cosas, (1) permitir el reenvío de paquetes y (2) enmascarar los paquetes:

       # nano /etc/sysctl.conf
       net.ipv4.ip_forward=1
       # echo "iptables -t nat -A POSTROUTING -j MASQUERADE" >> /etc/init.d/rc.local

Configuración del apt-mirror

       # apt-get install apt-mirror
       # nano /etc/apt/mirror.list

       deb http://migasfree.educa.aragon.es/vx-edu/repos/ubuntu precise main restr icted universe multiverse 
       deb http://migasfree.educa.aragon.es/vx-edu/repos/ubuntu precise-security m ain restricted universe multiverse 
       deb http://migasfree.educa.aragon.es/vx-edu/repos/ubuntu precise-updates ma in restricted universe multiverse 
       deb http://migasfree.educa.aragon.es/vx-edu/repos/vitalinux BASE PKGS 
       deb http://migasfree.educa.aragon.es/vx-edu/repos/migasfree ubuntu-12.04 PK GS 
       deb http://migasfree.educa.aragon.es/vx-edu/repos/v-box precise contrib 
       deb http://migasfree.educa.aragon.es/vx-edu/repos/dropbox precise main
       deb-amd64 http://migasfree.educa.aragon.es/vx-edu/repos/ubuntu precise main restricted universe multiverse 
       deb-amd64 http://migasfree.educa.aragon.es/vx-edu/repos/ubuntu precise-secu rity main restricted universe multiverse 
       deb-amd64 http://migasfree.educa.aragon.es/vx-edu/repos/ubuntu precise-upda tes main restricted universe multiverse 
       deb-amd64 http://migasfree.educa.aragon.es/vx-edu/repos/vitalinux BASE PKGS 
       deb-amd64 http://migasfree.educa.aragon.es/vx-edu/repos/migasfree ubuntu-12 .04 PKGS 
       deb-amd64 http://migasfree.educa.aragon.es/vx-edu/repos/v-box precise contr ib 
       deb-amd64 http://migasfree.educa.aragon.es/vx-edu/repos/dropbox precise mai n
       clean http://migasfree.educa.aragon.es/vx-edu/repos

Para actualizar el apt-mirror manualmente:

       # apt-mirror

Tras configurar Apache adecuadamente para dar servicio a la paquetería (el caché tiene instalado un server de 32bits):

       # nano /etc/apt/sources.list
       deb http://127.0.0.1/vx-edu/repos/ubuntu precise main restricted universe m ultiverse 
       deb http://127.0.0.1/vx-edu/repos/ubuntu precise-security main restricted u niverse multiverse 
       deb http://127.0.0.1/vx-edu/repos/ubuntu precise-updates main restricted un iverse multiverse 
       deb http://127.0.0.1/vx-edu/repos/vitalinux BASE PKGS 
       deb http://127.0.0.1/vx-edu/repos/migasfree ubuntu-12.04 PKGS 
       deb http://127.0.0.1/vx-edu/repos/v-box precise contrib 
       deb http://127.0.0.1/vx-edu/repos/dropbox precise main

Antes de actualizar los repositorios:

       wget -qO - http://migasfree.vitalinux.org/get_key_repositories | apt-key add - || :
       gpg --keyserver subkeys.pgp.net/pgp.mit.edu --recv-keys 54422A4B98AB5139
       gpg --export --armor 54422A4B98AB5139 | sudo apt-key add - 
       gpg --keyserver pgp.mit.edu --recv-keys FC918B335044912E	 
       gpg --export --armor FC918B335044912E | sudo apt-key add -

Y finalmente actualizamos repositorios para poder instalar lo que necesitemos:

       # apt-get update

Instalación y configuración del cliente migasfree

       # gdebi migasfree-client_4.5-1_all.deb

Ahora configuramos el cliente:

       # nano /etc/migasfree.conf
       [client] 
       Server = migasfree.educa.aragon.es 
       Version = Ubuntu-12.04-cliente

Registramos el cliente migasfree en el servidor:

       # migasfree -u

Ahora deberíamos ir al servidor migasfree y asociarle la etiqueta de “ROL-CACHE”, para así asociarle los repositorios necesarios. Tras hacerlo, para la comprobación de la asignación:

       root@servidor-cache-1:~# migasfree-tags -g 
       "ROL-CACHE"

Instalación y configuración del servicio DHCP

       # apt-get install dhcp3-server
       # nano /etc/default/isc-dhcp-server
       INTERFACES="eth0"
       # nano /etc/dhcp/dhcpd.conf
       subnet 172.30.1.0 netmask 255.255.255.0 { 
       range 172.30.1.150 172.30.1.180; 
       option routers 172.30.1.251; 
       option domain-name-servers 172.30.1.249, 8.8.8.8, 195.55.130.247; 
       option subnet-mask 255.255.255.0; 
       option broadcast-address 172.30.1.255; 
       default-lease-time 600; 
       max-lease-time 7200; 
       #filename "/webserver/pxelinux.0"; 
       }
       # dhcpd -t
       # /etc/init.d/isc-dhcp-server restart

Instalación y configuración del servicio NFS

El servidor Caché se encarga de al menos compartir dos recursos vía NFS:

Las carpetas que compartirán profesor y alumnos. Los directorios HOME de los alumnos (perfiles móviles).

Para ello:

       # apt-get install nfs-server nfs-kernel-server rpcbind

Después creamos las carpetas a compartir (para el ejemplo puede que haya o no disco duro externo para el almacenamiento de los datos y perfiles), y las exportamos:

       # mount /dev/sdb1 /nfs
       # mkdir /nfs/alumnos /nfs/profesor /nfs/perfiles
       # nano /etc/exports
       /nfs/alumnos *(rw,sync,no_subtree_check,no_root_sq uash) 
       /nfs/profesor *(rw,sync,no_subtree_check,no_root_s quash) 
       /nfs/perfiles *(rw,sync,no_subtree_check,no_root_squash)

Por último, reiniciamos el servicio y comprobamos la correcta exportación:

       # /etc/init.d/nfs-kernel-server restart
       # showmount -e 
       Export list for servidor-cache-1: 
       /nfs/perfiles * 
       /nfs/alumnos  * 
       /nfs/profesor *

Damos permisos al usuario que iniciará sesión en el cliente (para el ejemplo aún no tenemos en cuenta que los usuarios serán usuarios del servicio LDAP):

       # setfacl -Rm u:usuario-cliente:rwx /home/arturo

Instalación y configuración del servicio LDAP (cliente y servidor)

Instalamos el software que ofrecerá el servicio LDAP:

       # apt-get install slapd ldap-utils

Para configurar el LDAP y los servicios a los que va a dar servicio LDAP:

      # apt-get install libnss-ldapd

Para reconfigurar los parametros de configuración:

      # dpkp-reconfigure sladp
      # dpkg-reconfigure libnss-ldapd
      # dpkg-reconfigure libpam-ldapd

Para hacer un volcado de toda la base de datos LDAP, y permitir su posterior restauración:

      # slapcat

Instalación y configuración del servicio DNS Caché

Para ello simplemente instalar el bind9:

      # apt-get install bind9

Instalación y configuración del servicio Proxy HTTP Caché

      # apt-get install squid3
      # nano /etc/squid3/squid.conf
      visible_hostname transproxy 
      http_port 3128 transparent 
      cache_dir ufs /var/spool/squid3 1000 16 256 
      cache_mem 32 MB 
      maximum_object_size_in_memory 128 MB 
      access_log /var/log/squid3/access.log 
      cache_log /var/log/squid3/cache.log 
      cache_store_log /var/log/squid3/store.log 
      acl cualquier-maquina src all 
      ## Definición de ACLs para filtrar URLs de determinados sitios Web: 
      acl websprohibidas1 dstdomain "/etc/squid3/websprohibidas1.dat" 
      acl websprohibidas2 url_regex "/etc/squid3/websprohibidas2.dat" 
      # Filtrado en base a las ACLs definidas anteriormente: 
      http_access allow cualquier-maquina !websprohibidas1 !websprohibidas2

Por último redireccionamos el tráfico HTTP hacia el puerto del Proxy 3128:

      # iptables -t nat -A PREROUTING -s 172.30.0.0/16 -p tcp --dport 80 \ 
      -j REDIRECT --to-port 3128 
      # iptables -t nat -A PREROUTING -s 172.30.0.0/16 -p udp --dport 80 \ 
      -j REDIRECT --to-port 3128 
      # squid3 -k check 
      # squid3 -k parse && /etc/init.d/squid3 restart 

Configuración de ACLs

Para ello simplemente instalar el bind9

Configuración de Cuotas (recursos compartidos y perfiles)

Para ello simplemente instalar el bind9