Cuando hoy en día el tráfico y las velocidades de Internet ocasionales se miden en adolescentes de Giga en un abrir y cerrar de ojos, incluso para los clientes de Internet normales, ¿cuál es el propósito de configurar una caché de repositorio local en las LAN?
Configurar repositorios locales en Ubuntu
Una de las razones es reducir el ancho de banda de Internet y la alta velocidad al extraer paquetes de la caché local. Pero, también, otra razón importante debería ser la privacidad. Imaginemos que los clientes de su organización tienen acceso restringido a Internet, pero sus equipos Linux necesitan actualizaciones periódicas del sistema sobre software y seguridad o simplemente necesitan nuevos paquetes de software. Para ir más allá, un servidor que se ejecuta en una red privada, contiene y sirve información confidencial secreta solo para un segmento de red restringido, y nunca debe estar expuesto a la Internet pública.
Estas son solo algunas de las razones por las que debe crear un espejo de repositorio local en su LAN, delegar un servidor perimetral para este trabajo y configurar clientes internos para extraer software de su espejo de caché.
Ubuntu proporciona el paquete apt-mirror para sincronizar el caché local con los repositorios oficiales de Ubuntu, un espejo que se puede configurar a través de un servidor HTTP o FTP para compartir sus paquetes de software con los clientes del sistema local.
Para un caché espejo completo, su servidor necesita al menos 120 G de espacio libre reservado para repositorios locales.
Requisitos
- Mínimo 120G de espacio libre
- Servidor Proftpd instalado y configurado en modo anónimo.
Paso 1: configurar el servidor
1. Lo primero que puede hacer es identificar los espejos de Ubuntu más cercanos y rápidos cerca de su ubicación visitando la página de Ubuntu Archive Mirror y seleccione su país .
Espejo de archivo de Ubuntu
Si su país proporciona más espejos, debe identificar la dirección del espejo y realizar algunas pruebas en función de los resultados de ping o traceroute .
Seleccione la ubicación del espejo
2. El siguiente paso es instalar el software necesario para configurar el repositorio espejo local. Instale los paquetes apt-mirror y proftpd y configure proftpd como un demonio del sistema independiente.
$ sudo apt-get install apt-mirror proftpd-basic
Instale la
configuración de apt-mirror Proftpd ProFTPD
3. Ahora es el momento de configurar el servidor apt-mirror . Abra y edite el archivo /etc/apt/mirror.list agregando sus ubicaciones más cercanas ( Paso 1 ), opcional, si los espejos predeterminados son lo suficientemente rápidos o no tiene prisa, y elija la ruta del sistema donde se deben descargar los paquetes. Por defecto, apt-mirror usa / var / spool / apt-mirror location para la caché local, pero en este tutorial usaremos cambiar la ruta del sistema y establecer la directiva <b>base_path</b> en / opt / apt-mirror location.
$ sudo nano /etc/apt/mirror.list
Configure el servidor apt-mirror.
También puede descomentar o agregar otra lista de fuentes antes de la directiva de limpieza, incluidas las fuentes de <b>Debian</b> , según las versiones de Ubuntu que usen sus clientes. Puede agregar fuentes de 12.04 , si lo desea, pero tenga en cuenta que agregar más fuentes requiere más espacio libre.
Para obtener listas de fuentes de Debian , visite la Wiki de Debian o el Generador de listas de <a href=”http://debgen.simplylinux.ch/” rel=”noopener” target=”_blank”>fuentes de Debian</a> .
4. Todo lo que necesita hacer ahora es crear un directorio de ruta y ejecutar el comando apt-mirror para sincronizar los repositorios oficiales de Ubuntu con nuestro espejo local.
$ sudo mkdir -p /opt/apt-mirror $ sudo apt-mirror
Crear rutas de apt-mirror
Como puede ver, apt-mirror procede con la indexación y descarga de archivos que presentan el número total de paquetes descargados y su tamaño. Como podemos imaginar, 110-120 GB es lo suficientemente grande como para tardar un tiempo en descargarse.
Puede ejecutar el comando ls para ver el contenido del directorio.
Verificar rutas de apt-mirror
Una vez que se complete la descarga inicial, las descargas futuras serán pequeñas.
5. Mientras apt-mirror descarga paquetes, puede configurar su servidor Proftpd . Lo primero que debe hacer es crear un archivo de configuración anónimo para proftpd ejecutando el siguiente comando.
$ sudo nano /etc/proftpd/conf.d/anonymous.conf
Luego agregue el siguiente contenido al archivo anonymous.conf y reinicie el servicio proftd.
<Anonymous ftp> User ftp Group nogroup UserAlias anonymous ftp RequireValidShell off # MaxClients 10 <Directory *> <Limit WRITE> DenyAll </Limit> </Directory> </Anonymous>
Configurar ProFTPD
6. El siguiente paso es vincular la ruta apt-mirror a la ruta proftpd ejecutando un montaje de vinculación emitiendo el comando.
$ sudo mount --bind /opt/apt-mirror/mirror/archive.ubuntu.com/ /srv/ftp/
Monte apt-mirror en ProFTP Path
Para verificarlo, ejecute el comando mount sin parámetro u opción.
$ mount
Verificar rutas
7. El último paso es asegurarse de que el servidor Proftpd se inicie automáticamente después de reiniciar el sistema y que el directorio de caché espejo también se <b>monte</b> automáticamente en la ruta del servidor ftp. Para habilitar proftpd automáticamente, ejecute el siguiente comando.
$ sudo update-rc.d proftpd enable
Para montar automáticamente la caché apt-mirror en proftpd, abra y edite el archivo /etc/rc.local .
$ sudo nano /etc/rc.local
Agregue la siguiente línea antes de la directiva exit 0 . También use un retraso de 5 segundos antes de intentar montar.
sleep 5 sudo mount --bind /opt/apt-mirror/mirror/archive.ubuntu.com/ /srv/ftp/
Espejos aptos para montaje automático
Si extrae paquetes de los repositorios de Debian, ejecute los siguientes comandos y asegúrese de que la configuración adecuada para el archivo rc.local anterior esté habilitada.
$ sudo mkdir /srv/ftp/debian $ sudo mount --bind /opt/apt-mirror/mirror/ftp.us.debian.org/debian/ /srv/ftp/debian/
Configuración del repositorio de Debian
8. Para una sincronización apt-mirror diaria, también puede crear un trabajo de programación del sistema para que se ejecute a las 2 AM todos los días. Ejecute el comando crontab, seleccione su editor preferido y luego agregue la siguiente sintaxis de línea.
$ sudo crontab –e
Sincronización diaria de apt-mirror
En la última línea agregue la siguiente línea.
0 2 * * * /usr/bin/apt-mirror >> /opt/apt-mirror/mirror/archive.ubuntu.com/ubuntu/apt-mirror.log
Agregar entrada cron para sincronización
Ahora, todos los días a las 2 a.m., el caché del repositorio de su sistema se sincronizará con los espejos oficiales de Ubuntu y creará un archivo de registro.
Paso 2: configurar clientes
9. Para configurar los clientes Ubuntu locales , edite /etc/apt/source.list en las computadoras cliente para que apunte a la dirección IP o al nombre de host del servidor apt-mirror reemplace el protocolo http por ftp y luego actualice el sistema.
deb ftp://192.168.1.13/ubuntu trusty universe deb ftp://192.168.1.13/ubuntu trusty main restricted deb ftp://192.168.1.13/ubuntu trusty-updates main restricted ## Ad so on….
Configurar clientes
10. Para ver los repositorios, puede abrir un navegador y apuntar a la dirección IP de su servidor del nombre de dominio mediante el protocolo FTP.
Ver repositorios locales
El mismo sistema se aplica también a los clientes y servidores de Debian , los únicos cambios necesarios son el espejo de Debian y la lista de fuentes .
Además, si instala un sistema Ubuntu o Debian nuevo , proporcione su espejo local manualmente con el protocolo ftp cuando el instalador le pregunte qué repositorio usar.
Lo mejor de tener sus propios repositorios espejo locales es que siempre está actualizado y sus clientes locales no tienen que conectarse a Internet para instalar actualizaciones o software.
Debian , Ubuntu