Alto Rendimiento de Apache y prevencion de intrusos

Iniciado por Cronck, 26 Febrero 2014, 00:26 AM

0 Miembros y 1 Visitante están viendo este tema.

Cronck

Buenas tardes a todos.

Este Post es sumante de caracter de aprendizaje.

Tengo un servidor el cual tiene mucha actividad diariamente, y de igualmente tengo mucho intentos de acceso por ftp, ssh, y posxfix, esto me lo detecta el Fail2ban y me bannea las IP

Tambien tengo muchos escaneos diariamente, en busca de de información en mi sitio...buscando si tengo un CMS.

Creo que he aplicado muchas medidas y me han funcionado, pero aun no logro hacer que apache no se caiga...como en este ejemplo.

http://75.126.190.221/24feb2014exp.mp4

En el video muestro el alto volumen que tengo de trafico en mi sitio, pero lo interesante es en el minuto 4:38 del video, donde muestra que el apache ya esta funcionando mal y no contesta las peticiones que le estan haciendo.

Y al abrir el sitio marca error 502.

Y en los graficos de comportamiento de mi servicio apache, muestra el incremento de actividad, como lo muestra en esta imagen.


La primera pregunta es:

1.- Que método es el que usan para hacer un ataque como ese a mi sitio, el bloqueo del apache se da por el alto volumen de trafico.

2.- Como puedo modificar apache para prevenir estas caída, ya revise los post de como detener los DDoS, y he aplicado las medidas que indican, pero aun así sigo con problemas.

Como lo indique ya he estado investigando y he encontrado información muy valiosa, pero a su ves he encontrario que otros opinan lo contrario a esa medida.

Es por ello que abro este post, con la idea de entender el comportamiento de mi apache y como ir ajustando las tuercas para llegar a lo optimo.

Les agradeceria si con las ideas de los que gusten opinar al respecto, ir creando un documento informativo que les pueda servir a otros usuarios.

dantemc

Hola, ¿tienes el apache en la última versión?. Hay un script que causa mucho uso de CPU con pocas transacciones, puedes poner las peticiones que causan la denegación?
8-D

Cronck

Muchas gracias por el seguimiento:

Eso estaba mirando, que con muy pocos paquetes me tiran el apache.

esta es la version que tengo:

CitarInstalled Packages
Name        : httpd
Arch        : x86_64
Version     : 2.2.15
Release     : 29.el6.centos
Size        : 2.9 M
Repo        : installed
From repo   : base
Summary     : Apache HTTP Server
URL         : http://httpd.apache.org/
License     : ASL 2.0
Description : The Apache HTTP Server is a powerful, efficient, and extensible
            : web server.

y algunos de los paquetes que aparecen al momento de iniciar el fallo:

Citar69.171.237.15 - - [24/Feb/2014:16:32:12 -0600] "GET /error404/404XXXXES.jpg HTTP/1.1" 206 167000 "-" "facebookexternalhit/1.1 (+http://www.facebook.com/externalhit_uatext.php)"

Este se repite en varias ocasiones.

Y todos los demas paquetes son legitimos, de consultas que haciena al mismo server

dantemc

#3
pues mira que hay una vulnerabilidad para apache hasta el 2.17 creo, que usan el killapache, pero mirando la petición veo extraño eso del facebookhit:

https://www.wundercounter.com/counter/ip-tracker/144/

tal vez sea otro tipo de petición la que está causando la denegación,  porque eso del fb indica es que están ingresando desde FB.

O sea alguien comparte contenido de tu server.


de cualquier manera te recomiendo que actualices a la última versión estable.
8-D

Cronck

Gracias estoy revisando y en el repositorio del server es la ultima version estable que aparece
estoy notificando al proveedor de ese server para ver si pueden ellos ayudarme a actualizar a la ultima version.

Tengo mucha informacion, que indicativo puede traer ese ataque para buscar dentro del access_log que realmente se trata de este metodo? o puedo puedo asegurar que sea un killapache el ataque que me esta llegando?

La de actualizar la vesion de apache es una medida, que otra medida puedo a aplicar para detener este ataque?

Muchas gracias por tu apoyo, y creeme que esta informacion que me copartes me esta abriendo un nuevo panorama.

dantemc

Busca peticiones HEAD y que contengan "Range: bytes=", si no están entonces no es el ataque, intenta subir un log a algún sitio para mirarlo.
8-D

Cronck

Aqui puedes vel parte del log.

http://75.126.190.221/7-marz

Hoy nuevamente nos la aplicaron  :-(

El suceso lo capte como a las 13:40 del dia.

estuve buscando las lineas que me indicas y solo encontre estas:

Citar200.23.91.150 - - [07/Mar/2014:13:42:39 -0600] "HEAD /images/paquetes/beneficios/kidsprecio.svg HTTP/1.1" 200 327 "-" "contype"
200.23.91.150 - - [07/Mar/2014:13:42:39 -0600] "HEAD /images/paquetes/beneficios/meses.svg HTTP/1.1" 200 327 "-" "contype"
200.23.91.150 - - [07/Mar/2014:13:42:39 -0600] "HEAD /images/paquetes/beneficios/seguridad.svg HTTP/1.1" 200 327 "-" "contype"
200.23.91.150 - - [07/Mar/2014:13:42:39 -0600] "HEAD /images/paquetes/beneficios/kidsprecio.svg HTTP/1.1" 200 327 "-" "contype"
200.23.91.150 - - [07/Mar/2014:13:42:39 -0600] "HEAD /images/paquetes/beneficios/taquillavip.svg HTTP/1.1" 200 326 "-" "contype"
200.23.91.150 - - [07/Mar/2014:13:42:39 -0600] "HEAD /images/paquetes/beneficios/garantiaclima.svg HTTP/1.1" 200 327 "-" "contype"
200.23.91.150 - - [07/Mar/2014:13:42:39 -0600] "HEAD /images/paquetes/beneficios/preciosbajos.svg HTTP/1.1" 200 327 "-" "contype"
200.23.91.150 - - [07/Mar/2014:13:42:40 -0600] "HEAD /images/paquetes/beneficios/taquillavip.svg HTTP/1.1" 200 326 "-" "contype"
200.23.91.150 - - [07/Mar/2014:13:42:40 -0600] "HEAD /images/paquetes/beneficios/garantiaclima.svg HTTP/1.1" 200 327 "-" "contype"

Lo que detecte que todas esas HEAD vienen de la misma IP..
Pero ninguno dice Range: bytes

Cronck

Hola dantemc.

He detectado que apache por ratos pierde el buen funcionamiento.

Pero aun no he encontrado la raiz.

En busca de una mejor solucion para que mi servidor pueda operar con alto volumen de peticiones, me atrevo a consultar otros puntos con tigo.

Este servidor tiene instalado nginx, pero me daba mas lata, pues perdía muchos peticiones el servidor y me arrojaba error 503.

Tengo 2 dudas:

1.- Como puedo optimizar mi apache para esta función
2.- Como puedo configurar nginx para que opere con apache y tenga un mejor desempeño?

Te agradeceré si me puedes dar indicio de como hacerlo.. Realmente son muchas preguntas las que tengo en mente, pero creo que iniciare por esas 2

Saludos

dantemc

Hola mira, encontré esto por ahí:
http://www.profesionalhosting.com/soporte-en-linea/optimizacin-de-apache-preg67.html

Sin embargo te digo que no soy de saber mucho de configuraciones optimizadas de servidores, tal vez para eso sea mejor que intentes hablar con eljefe.
8-D

Cronck

Muchas gracias dantemc revisare la informacion y tambien tratare de platicarlo con elbrujo para que logro hacer

Enviado desde mi SGH-I337M mediante Tapatalk