Servidor · 3 min read · Nov 04, 2025

El Servidor Perfecto - Ubuntu Maverick Meerkat (Ubuntu 10.10) [ISPConfig 2] - Página 4

11 Instalar Algunos Paquetes

Ahora instalamos algunos paquetes que se necesitan más adelante. Ejecuta

aptitude install binutils cpp fetchmail flex gcc libarchive-zip-perl libc6-dev libcompress-zlib-perl libdb4.6-dev libpcre3 libpopt-dev lynx m4 make ncftp nmap openssl perl perl-modules unzip zip zlib1g-dev autoconf automake1.9 libtool bison autotools-dev g++ build-essential

(¡Este comando debe ir en una línea!)

12 Cuota Registrada

(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 necesitas.)

Para instalar la cuota, ejecuta

aptitude install quota

Edita /etc/fstab. El mío se ve así (agregué, usrjquota=quota.user, grpjquota=quota.group, jqfmt=vfsv0 a la partición con el punto de montaje /):

vi /etc/fstab

| # /etc/fstab: información estática del sistema de archivos. # # Usa 'blkid -o value -s UUID' para imprimir el identificador único universal # para un dispositivo; esto puede ser usado con UUID= como una forma más robusta de nombrar # dispositivos que funciona incluso si se agregan y eliminan discos. Ver fstab(5). # # proc /proc proc nodev,noexec,nosuid 0 0 /dev/mapper/server1-root / ext4 errors=remount-ro,usrjquota=quota.user,grpjquota=quota.group,jqfmt=vfsv0 0 1 # /boot estaba en /dev/sda1 durante la instalación UUID=a8f37dcf-5836-485c-a451-3ae2f0f47720 /boot ext2 defaults 0 2 /dev/mapper/server1-swap_1 none swap sw 0 0 /dev/fd0 /media/floppy0 auto rw,user,noauto,exec,utf8 0 0 |

Para habilitar la cuota, ejecuta estos comandos:

mount -o remount /

quotacheck -avugm
quotaon -avug

13 Servidor DNS

Ejecuta

aptitude install bind9

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

/etc/init.d/bind9 stop

Edita el archivo /etc/default/bind9 para que el demonio se ejecute como el usuario no privilegiado bind, chrooted a /var/lib/named. Modifica la línea: OPTIONS=”-u bind” para que lea OPTIONS=”-u bind -t /var/lib/named”:

vi /etc/default/bind9

| # ¿Ejecutar resolvconf? RESOLVCONF=yes # opciones de inicio para el servidor OPTIONS="-u bind -t /var/lib/named" |

Crea los directorios necesarios bajo /var/lib:

mkdir -p /var/lib/named/etc
mkdir /var/lib/named/dev
mkdir -p /var/lib/named/var/cache/bind
mkdir -p /var/lib/named/var/run/bind/run

Luego mueve el directorio de configuración de /etc a /var/lib/named/etc:

mv /etc/bind /var/lib/named/etc

Crea un enlace simbólico al nuevo directorio de configuración desde la antigua ubicación (para evitar problemas cuando bind se actualice en el futuro):

ln -s /var/lib/named/etc/bind /etc/bind

Crea dispositivos nulos y aleatorios, y corrige los permisos de los directorios: mknod /var/lib/named/dev/null c 1 3
mknod /var/lib/named/dev/random c 1 8
chmod 666 /var/lib/named/dev/null /var/lib/named/dev/random
chown -R bind:bind /var/lib/named/var/*
chown -R bind:bind /var/lib/named/etc/bind

Necesitamos crear el archivo /etc/rsyslog.d/bind-chroot.conf…

vi /etc/rsyslog.d/bind-chroot.conf

… y agregar la siguiente línea para que aún podamos recibir mensajes importantes registrados en los registros del sistema:

| $AddUnixListenSocket /var/lib/named/dev/log |

Reinicia el demonio de registro:

/etc/init.d/rsyslog restart

Inicia BIND y verifica /var/log/syslog en busca de errores:

/etc/init.d/bind9 start

14 MySQL

Para instalar MySQL, ejecutamos

aptitude install mysql-server mysql-client libmysqlclient16-dev

Se te pedirá que proporciones una contraseña para el usuario root de MySQL - esta contraseña es válida para el usuario root@localhost así como para [email protected], por lo que no tenemos que especificar una contraseña de root de MySQL manualmente más tarde:

Nueva contraseña para el usuario “root” de MySQL: <– tucontraseñademysqlroot
Repite la contraseña para el usuario “root” de MySQL: <– tucontraseñademysqlroot

Queremos que MySQL escuche en todas las interfaces, no solo en localhost, por lo tanto editamos /etc/mysql/my.cnf y comentamos la línea bind-address = 127.0.0.1:

vi /etc/mysql/my.cnf

| [...] # # En lugar de skip-networking, el valor predeterminado ahora es escuchar solo en # localhost, lo cual es más compatible y no es menos seguro. #bind-address = 127.0.0.1 [...] |

Luego reiniciamos MySQL:

/etc/init.d/mysql restart

Ahora verifica que la red esté habilitada. Ejecuta

netstat -tap | grep mysql

La salida debería verse así:

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

Share: X/Twitter LinkedIn

Recibe nuevas publicaciones en tu bandeja de entrada.

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