Servidor Perfecto · 4 min read · Feb 06, 2026

El Servidor Perfecto - Gentoo 2007.0 - Página 4

7 Instalar algún software

Opcionalmente, podemos instalar un par de cosas para hacer nuestro tiempo en la línea de comandos más cómodo. No hace ninguna diferencia funcional real en la “configuración perfecta”. Instala vim de esta manera incluso si lo has instalado en el sistema chroot anteriormente, ya que esto lo instalará correctamente.

emerge --ask --verbose gentoolkit vim

Ahora puedes cambiar el editor predeterminado, si no quieres que sea nano.

vi /etc/rc.conf

Cambia la propiedad EDITOR a tu valor deseado. Esto tendrá efecto desde la próxima vez que inicies sesión, o puedes simplemente escribir ahora,

source /etc/rc.conf

Ya tenemos la mayoría de los archivos de desarrollo que necesitamos, y cualquier otro que necesitemos se traerá a medida que instalemos su software principal. Como esto es Gentoo, no hay una división comúnmente vista en otras distribuciones entre un paquete y la versión package-dev.

emerge --ask --verbose expect fetchmail ncftp netkit-telnetd unzip zip

8 Crear un usuario administrador

Aunque no es estrictamente necesario para hacer que el sistema funcione, esto estandarizará las cosas con la configuración perfecta para otras distribuciones. Crearemos un usuario llamado administrador y permitiremos que ese usuario use sudo.

groupadd -g 1000 administrator   
useradd --create-home --gid administrator --groups wheel --shell /bin/bash administrator   
passwd administrator

Ingresa la contraseña, luego instala sudo.

emerge --ask --verbose sudo

Configura sudo para que cualquiera en wheel pueda usarlo.

visudo

Descomenta esta línea:

# %wheel        ALL=(ALL)       ALL

Debería verse así,

[...]  
# Descomentar para permitir que las personas en el grupo wheel ejecuten todos los comandos  
%wheel        ALL=(ALL)       ALL  
[...]  

Guarda y sal.

Luego, si lo deseas, puedes eliminar la contraseña de root:

passwd --delete root

9 Cuota

9.1 Configuración del núcleo

Necesitamos soporte de cuota en el núcleo, y la versión 2 del formato de archivo de cuota.

El núcleo estándar de Gentoo no tiene soporte de cuota. Si has seguido este HowTo para hacer la instalación base, ya lo habrás configurado y puedes saltar a la siguiente sección. De lo contrario, necesitas hacerlo ahora. Estas instrucciones son para los usuarios de genkernel. El resto de ustedes probablemente ya sabe qué hacer.

genkernel --no-clean --no-mrproper --menuconfig all

Ve a Sistemas de Archivos, selecciona Soporte de Cuota y selecciona, para ser construido en el núcleo, no como un módulo, Soporte de formato de cuota v2.

menuconfig habilitar cuota 1

menuconfig habilitar cuota 2

Sal hasta que estés fuera, guardando la configuración de tu núcleo, luego la construcción se reanuda.

Reinicia.

9.2 Configuración del espacio de usuario

emerge --ask --verbose quota

Edita /etc/conf.d/quota y agrega m a QUOTACHECK_OPTS. El mío se ve así:

# /etc/conf.d/quota: archivo de configuración para /etc/init.d/quota
# Nota: si tu consola está conectada a un terminal serial,
# probablemente quieras eliminar el '-v' de las variables OPTS a continuación.

# ¿Ejecutar quotacheck ?
RUN_QUOTACHECK="yes"

# Opciones para quotacheck
QUOTACHECK_OPTS="-avugm"

# Opciones para quotaon
QUOTAON_OPTS="-avug"

# Opciones para quotaoff
QUOTAOFF_OPTS="-avug"

Edita /etc/fstab. El mío se ve así (agregué,usrquota,grpquota a la partición con el punto de montaje /):

# /etc/fstab: información estática del sistema de archivos.
#
# noatime desactiva atimes para aumentar el rendimiento (atimes normalmente no son
# necesarios; notail aumenta el rendimiento de ReiserFS (a expensas de la eficiencia
# de almacenamiento). Es seguro eliminar las opciones noatime si lo deseas y
# cambiar entre notail / tail libremente.
#
# El sistema de archivos raíz debe tener un número de pase de 0 o 1.
# Todos los demás sistemas de archivos deben tener un número de pase de 0 o mayor que 1.
#
# Consulta la página del manual fstab(5) para más información.
#
#                                           
# NOTA: Si tu partición BOOT es ReiserFS, agrega la opción notail a opts.
/dev/hda1               /boot           ext2            noauto,noatime  1 2
/dev/hda3               /               ext3            noatime,usrquota,grpquota               0 1
/dev/hda2               none            swap            sw              0 0
/dev/cdrom              /mnt/cdrom      audo            noauto,ro       0 0
#/dev/fd0               /mnt/floppy     auto            noauto          0 0
# glibc 2.2 y superior espera que tmpfs esté montado en /dev/shm para
# memoria compartida POSIX (shm_open, shm_unlink).
# (tmpfs es un ramdisk dinámicamente expandible/reducible, y usará
# casi ninguna memoria si no está poblado con archivos)
shm                     /dev/shm        tmpfs           nodev,nosuid,noexec    0 0

Inicia el sistema de cuotas.

mount -o remount /   
/etc/init.d/quota start   
rc-update add quota boot

10 Servidor DNS

Ejecuta,

echo "net-dns/bind resolvconf" >> /etc/portage/package.use   
emerge --ask --verbose bind

Por razones de seguridad, queremos ejecutar BIND en chroot, así que tenemos que hacer los siguientes pasos.

emerge --config bind   
echo alias rndc='rndc -k /chroot/dns/etc/bind/rndc.key' >> ~/.bash_profile   
source ~/.bash_profile   
rm --recursive --force /etc/bind   
ln --symbolic /chroot/dns/etc/bind /etc/bind

No hay necesidad de configurar el demonio de registro para incluir los registros de BIND; ya está configurado para nosotros.

Así que lo iniciamos.

/etc/init.d/named start   
rc-update add named default

11 MySQL

Las banderas USE predeterminadas de Gentoo harán que MySQL se instale con el conjunto de caracteres UTF-8 seleccionado como predeterminado para todo. Si vas a instalar ISPConfig, necesitas ingresar la siguiente línea o la interfaz web de ISPConfig no funcionará:

echo "dev-db/mysql latin1" >> /etc/portage/package.use

Las bases de datos individuales aún pueden usar otras codificaciones, como UTF-8.

Ejecuta,

emerge --ask --verbose mysql

Eso tomará un tiempo; luego, cuando eso termine,

emerge --config dev-db/mysql

mysql --config 1

Ingresa la contraseña de root que deseas establecer para la base de datos y deja que termine.

mysql --config 2

Si deseas que MySQL escuche en todas las interfaces, no solo en localhost, edita /etc/mysql/my.cnf y comenta la línea bind-address = 127.0.0.1:

Inicia MySQL

/etc/init.d/mysql start   
rc-update add mysql default
Share: X/Twitter LinkedIn

Recibe nuevas publicaciones en tu bandeja de entrada.

No spam. Cancela la suscripción en cualquier momento.