Servidor · 3 min read · Nov 18, 2025

El Servidor Perfecto - CentOS 5.6 x86_64 [ISPConfig 2] - Página 4

8 Cuota

(Si has elegido un esquema de particionamiento diferente al mío, debes ajustar este capítulo para que la cuota se aplique a las particiones donde la necesites.)

Para instalar cuota, ejecutamos este comando:

yum install quota

Edita /etc/fstab y agrega,usrquota,grpquota a la partición / ( /dev/VolGroup00/LogVol00):

vi /etc/fstab

| /dev/VolGroup00/LogVol00 / ext3 defaults,usrquota,grpquota 1 1 LABEL=/boot /boot ext3 defaults 1 2 tmpfs /dev/shm tmpfs defaults 0 0 devpts /dev/pts devpts gid=5,mode=620 0 0 sysfs /sys sysfs defaults 0 0 proc /proc proc defaults 0 0 /dev/VolGroup00/LogVol01 swap swap defaults 0 0 |

Luego ejecuta

touch /aquota.user /aquota.group
chmod 600 /aquota.*
mount -o remount /
quotacheck -avugm
quotaon -avug

a fin de habilitar la cuota.

9 Instalar un Servidor DNS Chrooted (BIND9)

Para instalar un BIND9 chrooted, hacemos esto:

yum install bind-chroot

Luego hacemos esto:

chmod 755 /var/named/
chmod 775 /var/named/chroot/
chmod 775 /var/named/chroot/var/
chmod 775 /var/named/chroot/var/named/
chmod 775 /var/named/chroot/var/run/
chmod 777 /var/named/chroot/var/run/named/
cd /var/named/chroot/var/named/
ln -s ../../ chroot
cp /usr/share/doc/bind-9.3.6/sample/var/named/named.local /var/named/chroot/var/named/named.local
cp /usr/share/doc/bind-9.3.6/sample/var/named/named.root /var/named/chroot/var/named/named.root
touch /var/named/chroot/etc/named.conf
chkconfig –levels 235 named on
/etc/init.d/named start

BIND se ejecutará en una cárcel chroot bajo /var/named/chroot/var/named/. Usaré ISPConfig para configurar BIND (zonas, etc.).

10 MySQL (5.0)

Para instalar MySQL, hacemos esto:

yum install mysql mysql-devel mysql-server

Luego creamos los enlaces de inicio del sistema para MySQL (para que MySQL se inicie automáticamente cada vez que se inicie el sistema) y comenzamos el servidor MySQL:

chkconfig –levels 235 mysqld on
/etc/init.d/mysqld start

Ahora verifica que la red esté habilitada. Ejecuta

netstat -tap | grep mysql

Debería mostrar una línea como esta:

[root@server1 ~]# netstat -tap | grep mysql
tcp 0 0 :mysql :* LISTEN 3486/mysqld
[root@server1 ~]#

Si no lo hace, edita /etc/my.cnf y comenta la opción skip-networking:

vi /etc/my.cnf

| [...] #skip-networking [...] |

y reinicia tu servidor MySQL:

/etc/init.d/mysqld restart 

Establece contraseñas para la cuenta root de MySQL:

mysql_secure_installation

[root@server1 ~]# mysql_secure_installation

NOTA: EJECUTAR TODAS LAS PARTES DE ESTE SCRIPT SE RECOMIENDA PARA TODOS LOS SERVIDORES MySQL EN USO EN PRODUCCIÓN! POR FAVOR LEE CUIDADOSAMENTE CADA PASO!

Para iniciar sesión en MySQL y asegurarla, necesitaremos la contraseña actual para el usuario root. Si acabas de instalar MySQL, y no has establecido la contraseña de root aún, la contraseña estará en blanco, así que solo debes presionar enter aquí.

Ingresa la contraseña actual para root (presiona enter si no hay):
OK, se utilizó la contraseña correctamente, continuando…

Establecer la contraseña de root asegura que nadie pueda iniciar sesión en el usuario root de MySQL sin la autorización adecuada.

¿Establecer contraseña de root? [Y/n] <– ENTER
Nueva contraseña: <– tucontraseñadeMySQLroot
Reingresa nueva contraseña: <– tucontraseñadeMySQLroot
¡Contraseña actualizada con éxito!
Recargando tablas de privilegios..
… ¡Éxito!

Por defecto, una instalación de MySQL tiene un usuario anónimo, permitiendo que cualquiera inicie sesión en MySQL sin tener que tener una cuenta de usuario creada para ellos. Esto está destinado solo para pruebas, y para hacer que la instalación sea un poco más fluida. Debes eliminarlos antes de pasar a un entorno de producción.

¿Eliminar usuarios anónimos? [Y/n] <– ENTER
… ¡Éxito!

Normalmente, solo se debería permitir que root se conecte desde ‘localhost’. Esto asegura que alguien no pueda adivinar la contraseña de root desde la red.

¿Deshabilitar el inicio de sesión remoto de root? [Y/n] <– ENTER
… ¡Éxito!

Por defecto, MySQL viene con una base de datos llamada ‘test’ a la que cualquiera puede acceder. Esto también está destinado solo para pruebas, y debe ser eliminado antes de pasar a un entorno de producción.

¿Eliminar la base de datos de prueba y el acceso a ella? [Y/n] <– ENTER

  • Eliminando base de datos de prueba…
    … ¡Éxito!
  • Eliminando privilegios sobre la base de datos de prueba…
    … ¡Éxito!

Recargar las tablas de privilegios asegurará que todos los cambios realizados hasta ahora surtan efecto de inmediato.

¿Recargar tablas de privilegios ahora? [Y/n] <– ENTER
… ¡Éxito!

Limpiando…

¡Todo listo! Si has completado todos los pasos anteriores, tu instalación de MySQL debería estar ahora segura.

¡Gracias por usar MySQL!

[root@server1 ~]#

Share: X/Twitter LinkedIn

Recibe nuevas publicaciones en tu bandeja de entrada.

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