Optimizar y hacer más seguro cpanel / WHM en un servidor VPS

Actualizada:

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.

Panel de WHM - cpanel para VPS

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.

Finalmente, os recomiendo la lectura de este articulo de cpanel: Configuraciones de seguridad recomendadas


Descubre más desde algoentremanos.com

Suscríbete y recibe las últimas entradas en tu correo electrónico.

Foto del autor

Ivan Benito

Apasionado de la lectura y los viajes, experto en tecnología e informática y fan de la privacidad online. Desde el año 2007 me he dedicado al SEO, a escribir y a crear páginas web con WordPress sobre todo tipo de temáticas. Si tienes alguna duda y necesitas ayuda... ¡Pregúntame!

Si tienes preguntas, quieres que hagamos una review de una app, programa o producto, simplemente mándanos un e-mail mediante nuestro formulario de contacto. Te contestaremos en el menor tiempo posible. ¡Muchas gracias y salU2! Algoentremanos realiza reviews de manera profesional y en muchas ocasiones recibimos compensación de las compañías cuyos productos revisamos. Probamos cada producto a fondo y otorgamos altas calificaciones solo a los mejores. La propiedad de Algoentremanos.com es independiente y las opiniones expresadas aquí son solo nuestras. Algunos enlaces del artículo son afiliados: pueden generar un beneficio a algoentremanos.com. Saber más.

1 comentario en «Optimizar y hacer más seguro cpanel / WHM en un servidor VPS»

  1. Saludos y gracias por la información, intenté setear «Maximum percentage of failed or deferred messages a domain may send per hour» a 300% como indica pero me arroja que no es válido, sabrás porque?

    Responder

Deja un comentario

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.