Hola Frederic,
Me faltó algo importantísimo: para tener idea del comportamiento de las
variables del servidor con carga, y poder definir los parámetros
descritos, hay que apoyarse en alguna herramienta de carga y estres.
Recomiendo jmeter http://jmeter.apache.org/
Atentamente,
Carlos Fajardo
On 10/01/2012 01:42 PM, Carlos Fajardo wrote:
Hola Frederic
Tema largo de tratar. Debes tomar en cuenta y equilibrar temas de
desempeño y temas de seguridad. Este es el resultado de mi experiencia
en ese campo, yo trataría:
1. Activar SELinux con los respectivos booleanos y tags sobre el
DocumentRoot
2. Configurar el firewall del S.O. con los puertos específicos que van
a dar servicio y/o Administración (solo desde las redes que amerite)
3. Instalar y configurar mod_security y mod_evassive en apache
4. Hay cierto tunning de kernel que depende de que este compilado con
ese soporte, en general:
Prevenir SYNFlood:
sysctl -w net.ipv4.tcp_max_syn_backlog=2048
sysctl -w net.ipv4.tcp_syncookies=1
sysctl -w tcp_synack_retries=2
Prevenir Spoofing:
sysctl -w net.ipv4.conf.all.rp_filter=1
sysctl -w net.ipv4.conf.default.rp_filter=1
sysctl -w net.ipv4.conf.eth0.rp_filter=1
sysctl -w net.ipv4.conf.lo.rp_filter=1
5. Instalar y configurar AWStats para tener estadísticas de trafico a
tu servicio web
6. Quitar los módulos de apache que no se requieran
7. Para el tema de desempeño, parámetros como MaxClients,
MinSpareServers, MaxSpareServers, StartServers, etc; también hay que
tomar en cuenta temas de permisos, mira
http://www.howtoforge.com/configuring_apache_for_maximum_performance y
http://www.devside.net/articles/apache-performance-tuning. Hay que
tomar en cuenta el tema de conexiones simultaneas y su relación con
consultas a la base de datos por temas de carga y concurrencia.
8. Hay unas directivas de apache que es mas que prudente ajustar tales
como: ServerSignature, ServerTokens, etc, hay información sobre eso
en: http://httpd.apache.org/docs/2.2/misc/security_tips.html ,
http://preguntaslinux.org/-howto-ebook-apache-seguro-en-20-tips-t-6473.html
, http://www.kyplex.com/docs/apache-security.html ,
9. Si es un sistema crítico evaluar seriamente la conveniencia de
contar con subscripción a RedHat o soporte con Cannonical si usas
Ubuntu Server.
10. En el S.O. hay que hacer una instalación mínima e instalar solo lo
necesario.
11. Hay herramientas a nivel de S.O. que pueden servir para encontrar
cuellos de botella: top, htop, systat, latencytop, nmon, iptraf,
12. Hay que asegurar la configuración de php, esta herramienta es muy
util y de paso dice que cambios hacer:
http://phpsec.org/projects/phpsecinfo/
13. Antes de empezar y al terminar ejecutar alguna herramienta de
detección de vulnerabilidades: nikto, OpenVAS, etc. El objetivo es que
pueder gestionar, controlar e inventariar las vulnerabilidades.
Atentamente,
Carlos Fajardo
On 10/01/2012 12:59 PM, frederic wrote:
Buenas tardes
Queria preguntar a la lista las mejores practicas para configuracion
de un servidor.
Es para una aplicacion web en php que ha de servir aprox 200 usuarios
simultaneos.
Va a ser implementado con una instancia cloud de 2x2.5 ghz , 8GB Ram,
300GB Hdd.
La pregunta especificamente es sobre tunning de SO y MySQL
El SO por estabilidad y eleccion de gerencia es RedHat/Centos 6
Enviado desde Samsung Mobile
--
Al escribir recuerde observar la etiqueta (normas) de esta lista:
http://goo.gl/Pu0ke
Para cambiar su inscripción, vaya a "Cambio de opciones" en http://goo.gl/Nevnx