Está en la página 1de 4

Optimizar y hacer más seguro cpanel / WHM

en un servidor VPS
1 respuesta

Si tenemos la suerte de poder tener un servidor VPS con WHM (cpanel) donde
alojar nuestras webs, lo primero que tenemos que hacer es optimizar y hacer más
seguro nuestro cpanel / WHM (yo tengo la versión “WHM 11.32″ optimizada para
VPS “VPS Optimized 3″).

Antes de empezar a leer cuales son los pasos, tenéis que tener en cuenta que cada
uno tenemos nuestras necesidades a la hora de utilizar o no ciertos servicios del
servidor. Por ejemplo: Yo no uso las herramientas de correo ni de análisis de datos
que me proporciona el servidor, sino que prefiero usar Google mail y Google
Analytics… ¿Consecuencia? Desmarco todas esas opciones en mi panel de WHM
para ahorrar algo de memoria.

¿Que quiero decir? Pensad primero que es lo que necesitáis tener instalado en el
servidor y a continuación usad esta guía de optimización.

Ir a WHM >> Server Configuration >> Tweak


Settings
En la pestaña “Domains” hacemos click en:

Prevent users from parking/adding common internet domains

En la pestaña “Mail”:

1. Default catch-all/default address behavior for new accounts. “Fail” es la mejor


opción si estas recibiendo ataques vía email.
2. Discard FormMail-clone message with bcc. Lo ponemos en “on”
3. Maximum percentage of failed or deferred messages a domain may send per
hour. Lo ponemos en 300%
4. Enable BoxTrapper spam trap. Sino usamos el mail lo ponemos en off
5. Enable Horde Webmail. Sino usamos el mail lo ponemos en off
6. Enable Mailman mailing lists. Sino usamos el mail lo ponemos en off
7. Enable RoundCube webmail. Sino usamos el mail lo ponemos en off
8. Enable SpamAssassin spam filter. Sino usamos el mail lo ponemos en off
(consume muchos recursos)
9. Enable SquirrelMail webmail. Sino usamos el mail lo ponemos en off
10. Mailman: ponemos en off todo lo que tenga que ver con Mailman sino vamos a
usar listas de distribución

En la pestaña “System”:

 Default shell jailed. Lo ponemos en “on”. Las nuevas cuentas lo tendran


instalado por defecto
 Conserve memory. Lo ponemos en “on” para ahorrar en CPU.

En la pestaña “Stats Programs” lo ponemos todo en “off”, para eso tenemos instalado
Google Analytics en nuestras webs:

 Awstats reverse DNS resolution


 Enable Analog statsEnable Awstats stats
 Enable Logaholic stats
 Enable Webalizer stats

Ir a WHM >> Security Center


1. PHP open_basedir Tweak: Activamos “PHP’s open_basedir protection” que
previene que los usuario abran archivos fuera de su directorio con PHP.
2. Apache mod_userdir Tweak: Lo activamos para que prevenga que a un
usuario no se le cuente el ancho de banda usado al acceder a su cuenta
mediante http://test.cpanel.net/~fred/
3. Shell Fork Bomb Protection: Activamos Shell Fork Bomb Protection, que
previene que un usuario use todos los recursos del servidor a través de
ssh/telnet. Tiene una pega: Usa muchos recursos del sistema. Así que, a
vuestra elección.
4. Compiler Access: Desactivamos los compiladores. Con esto conseguimos
evitar que se usen C y C++ usuario sin privilegios (muchos exploits los usan)
5. Si vas a crear “reseller packages”, asegurate de que esten desactivadas las
siguientes opciones: Disallow creation of packages with shell access y Disallow
creation of packages with full root access.
6. cPHulk Brute Force Protection: Activalo. Impide los ataques por fuerza bruta en
tu cpanel
7. Host Access Control: Si trabajas desde una IP fija, utiliza este servicio para
poder hacer login solo desde ella.
8. Password Strength Configuration: Hay que ponerla mínimo en 50
9. Quick Security Scan: Recomendable usarlo de vez en cuando. Cuidado con los
falsos positivos.

Ir a WHM >> Service Configuration >> FTP Server


Configuration
1. Allow Anonymous Logins – Selecciona ‘NO’
2. Allow Anonymous Logins – Selecciona ‘NO’

Ir a Account functions >> Manage Shell Access


Desactiva el “shell access” para todos los usuarios (Si es imprescindible ponlo en
Jailed shell)

Ir a WHM >> SQL Services >> MySQL Root


Password
MySQL Root Password – Cambia el Root Password para MySQL

Probablemene (compruebalo accediendo mediante ssh a tu servidor), tu hosting, por


defecto ha puesto un password para root en mysql. no uses (*), (.), u otros caracteres
especiales. phpMyAdmin puede dejar de funcionar.

Ir a WHM >> System Health >> Background


Process Killer
BitchX
bnc
eggdrop
generic-sniffers
guardservices
ircd
psyBNC
ptlink
services

Haz click en todos y después pincha en Save.

Ir a Main >> Service Configuration >> Service


Manager
Aqui podemos desactivar los daemons del sistema (y activar los que queremos
monitorizar)
 Mailman: Si ya lo habéis desactivado en Tweak Settings, tambien lo tenéis que
hacer aquí.
 Spamd: SpamAssassin Server. Si ya lo habéis desactivado en Tweak Settings,
tambien lo tenéis que hacer aquí.

Ir a Main >> Backup >> Configure Backup


En esta sección activares los backups de toda nuestra cuenta.Pinchamos en “Enable”
y elegimos su periodicidad. Tened en cuenta que facilmente os puede llenar toda
vuestra cuota en el disco duro, por lo que recomiendo realizar el backup semanal.

Ir a Main >> Plugins


Comprueba que tienes instalado mod_security. Totalmente recomendable.

Ir a Main >> cPanel >> Manage Plugins


Esta es opcional ya que consume muchos recursos del servidor: Puedes instalar el
antivirus ClamAV como plugin. si tienes muchos usuarios en tu servidor, a lo mejor es
interesante tenerlo activo.

OJO! Podéis sentir la tentación de ir a Main >> Service Configuration >> Apache
Configuration y utilizar “Memory Usage Restrictions” que en teoria nos optimiza la
memoria utilizada por Apache basandose en el uso que le hemos dado en el pasado.
Para ello añade a httpd.conf la directiva “RLimitMEM”. Yo no lo recomiendo, y por lo
que he leido por ahí, nadie recomienda su uso en un VPS.