1. ¡OFERTA! con cupón "DIRVPS": hosting por $0,01 y también VPS Linux y Windows por $0,01 el primer mes por Interserver ← publi
    Descartar aviso
Descartar aviso
Al usar este sitio web, aceptas que nosotros y nuestros socios podamos establecer cookies para fines tales como personalizar el contenido y la publicidad. Más información.

Script SH para Reiniciar Apache automaticamente cuando tengo Poca Memoria!

Tema en 'Servidores Dedicados' iniciado por Draving, 11 Ago 2009.

  1. Draving

    Draving Nuevo usuario

    Hola amigos

    Ando con un problema bastante grabe de DDOS, ya he hecho todo para frenarlo pero es inutil.........

    En fin necesito su ayuda para hacer andar un Script que lo que hace es Reiniciar Apache y mySQL cuando el servidor se empiesa a quedar sin memoria...

    El Script es el siguiente:

    CODE, HTML o PHP Insertado:
    #!/bin/bash
    
    threshold=90 #percent
    total=$(free | grep "Mem:" | awk '{print $2}')
    remaining=$(free | grep "Mem:" | awk '{print $4}')
    current=$(echo "scale=0;100-$remaining * 100 / $total" | bc -l)
    
    if [ $current -gt $threshold ]
    then
          /etc/init.d/httpd stop
          /etc/init.d/mysqld restart
          /etc/init.d/httpd start
    
          echo "Restarted apache and mysql on `date +'%Y-%m-%d %H:%M:%S'`. RAM utilization at ${current}%" \
          >> /var/log/apache_mysql_restarter.log
    fi
    
    
    CODE, HTML o PHP Insertado:
    Fuente del Script: krazyworks.com/restart-apache-mysql-when-low-on-memory
    He modificado los comandos por los de mi server como veran, pero no logro hacerlo andar, me da el siguiente error:

    CODE, HTML o PHP Insertado:
    : command not foundne 2:
    (standard_in) 1: illegal character: ^M
    (standard_in) 1: illegal character: ^M
    : command not foundne 7:
    memoria-baja.sh: line 17: syntax error: unexpected end of file
    
    Alguien puede ayudarme a hacerlo andar ? :stress:

    Tambien he encontrado este otro scrip que lo que hace es que cuando apache tenga mas de 200 procesos activo, lo mata y lo reinicia, pero no se como usarlo ni si funciona:

    CODE, HTML o PHP Insertado:
    if [ `ps-fu $ USERNAME | awk '/ processname / (x + +) END (print x)'`> 200] then echo "superado" # killall hacer y reiniciar fi
    
    Y este otro:

    CODE, HTML o PHP Insertado:
    [[$ (Ps ax | grep httpd | wc-l)-gt 200]] (& & kill -9 $ (ps ax | grep httpd | awk '(print $ 1;)'); apachectl start;)
    
    CODE, HTML o PHP Insertado:
    Fuente: unix.com/shell-programming-scripting/35927-need-help-shell-script-restart-apache-when-no-processes-keeps-growing.html?hl=es
    
    -----------------------

    Alguien puede ayudarme ? Mil gracias :stress:
     
  2.  
  3. KingJah

    KingJah Usuario activo

    mm pues asta segun se si el ataque ddos sigue y sigue aunque tu script reinicie el mysql cada hora se volvera a sobrecargar seria mejor que intentaras parar el ddos o decirle atu hosting que te ayude principalmente
     
  4. Draving

    Draving Nuevo usuario

    El ataque lo tengo controlado, pero por ahi se desborda por eso necesito ayuda para hacer andar este script :(

    Ademas la idea es ejecutarlo por minuto no por hora :)
     
  5. ideasmultiples

    ideasmultiples Usuario activo

    No puedes andar reseteando los servicios cada minuto, si tu servicio ahora es malo pasará a ser de horror.

    Estás seguro que es un ataque, no será que tienes problemas de configuración?

    Si estás en una taque de verdad resetear apche no te servirá de nada...

    :cool:
     
  6. Draving

    Draving Nuevo usuario

    Bua la proxima ves no digo que es un ataque asi me ayudan :mad:

    Mientras lo viva reiniciando a apache el server anda 10 Puntos...... El ataque lo tengo bajo control ya que el pendejo muy famoso por cierto las URLS que me ataca las bloqueo enseguida....

    Necesito Dormir............ No puedo estar Zoombie reiniciando apache todo el dia.......... Porfavor alguien puede ayudarme a andar el script..........

    Si es un ataque............ SYN DDOS, Pendejo 15 Años, Sin vida que solo quiere hacer daño.........

    Necesito su ayuda para andar el script, porfavor QUIERO DORMIR :stress:

    PD: No seria cada Minito, el script lo controlaria cada minuto y en caso de entrar en esa etapa se reiniciaria....... Entiendes ? Lo cual esa tapa en llegar tarda mas de 1 Hs...........
     
  7. Draving

    Draving Nuevo usuario

    Quiero hacer andar el Script :( Ya se que tengo un ataque tengo mas de 20.000 Conexiones activas....... Tengo Logs que lo confirman....... Se que tipo de ataque de DDOS es.......... Ya puse mod_security, ya puse mod_evasive, ya puse ddosdeflace ya puse APF ya puse reglas con IPTABLES incluso tb estoy pagando Firewall de 100 Mbmps para controlarlo y tambien ya puse el Cisco Guard.......... mmmmmmm Tb ya contrate un servidor nuevo en cuarentena Xeon Cuad Core 8 GB...........

    En fin nada lo para, no estoy por el ataque, necesito ese script, alguien por favor... POR FAVOR puede ayudarme con el script............. GRACIAS :(
     
    Última edición: 11 Ago 2009
  8. ideasmultiples

    ideasmultiples Usuario activo

    El módulo antidos de APF te puede ayudar ponlo en marcha
     
  9. mod_evasive debería servirle, ya que es más potente que dicho módulo. Otra cosa es que lo tenga bien configurado o no.

    *mod_evasive is an evasive maneuvers module for Apache to provide evasive action in the event of an HTTP DoS or DDoS attack or brute force attack. It is also designed to be a detection and network management tool, and can be easily configured to talk to ipchains, firewalls, routers, and etcetera. mod_evasive presently reports abuses via email and syslog facilities.

    Dejo esta otra página de interés: http://linuxgazette.net/126/cherian.html

    Saludos,
     
    Última edición por un moderador: 11 Ago 2009
  10. MaxKiller

    MaxKiller Usuario activo

    Desconozco en qué protocolos se desenvuelve específicamente el módulo de APF, pero mod_evasive lo hace solamente el HTTP, por lo que no podrá detener el ataque SYN hacia otros puertos.
     
  11. mod_evasive bloquea aquellas ip's que hacen petición de forma masiva en el servidor, con lo cual simplemente las bloquea y deja paso libre a las otras ip’s no atacantes. Digamos que solo lo frena pero no lo termina de parar.

    Saludos,
     
  12. MaxKiller

    MaxKiller Usuario activo

    Sí, pero lo hace solamente a nivel de Apache, es decir, HTTP. Si el ataque se realiza al servidor FTP, no hará nada el módulo por que se le escapa de sus manos.
     
  13. Oks perdonar, estoy viendo que APF Firewall tiene más opciones, no solo a nivel httpd como mod_evasive.

    Saludos,
     
  14. KingJah

    KingJah Usuario activo

    buenas pues me uno al tema ase como 5 dias instale CSF porque tambien un niño es el que me estubo molestando todo estos dias y el que hizo que me cambiaran de ip en dattalag pues ayer me canse y configue el CSF demasiado fuerte pero sirvio el ataco y aunque el servidor se resentia no pudo tirarlo (me quede sin ftp sin shh) pero lo mitigo el firewal asi que no te recomiendo que pongas el script porque eso seria casi aser mas carga al servidor reiniciando y encendiendo mejor date tiempo mitiga el ataque el CSF ya trae muy buenas configuraciones ANTI SYN

    PD: si la persona aqui presente quiere dormir y poner el script te recomiento que mejor no descansar ahorita y y no tener problemas peores despues
    saludos.
     
  15. ideasmultiples

    ideasmultiples Usuario activo

    El módulo de apf puede funcionar en cualquier protocolo, es efectivo porque bloquea directamente las IP atacantes.

    mod_evasive no sirve para casi nada....

    :cool:
     
  16. MaxKiller

    MaxKiller Usuario activo

    Gracias por la información Fernando. :aprueba:
     


Alojamiento web, Hosting Reseller, Servidores Dedicados - All in Hosting


    
    
    
    
Blog · Sitios amigos: GuiaHosting · Unidominios · Interalta ·