martes, 15 de mayo de 2012

para realizar pruebas el programa sugerido es apache jmeter solo configurar las variables de entorno (
export JMETER_HOME=/home/jvasquezgiraldo/apache-jmeter-2.6/
export JAVA_HOME=/usr/java/jre1.7.0_03/
), pero aca dejo un par de urls que tienen mas opciones:
http://www.webresourcesdepot.com/15-free-functionality-and-load-testing-tools-for-web-applications/

http://sentidoweb.com/2006/10/20/lista-de-herramientas-para-testeo-de-aplicaciones-web.php

espero que les sirva


Firewall linux centos y RHEL

bueno, otra de mis aventuras en el trabajo ... jejejeje, crear reglas en el firewall, entonces para esto es importante tener el firewall abajo y probar que se tenga acceso a lo que se necesita primero, luego si se desea entonces pues primero que todo agregar el puerto 22 si la conexion se está haciendo remotamente por que es el puerto de ssh (ya me pasó que no lo agregué a las reglas del firewall y entonces me desconectó despues de reiniciar el firewall, jejejeje) y despues si agregar las otras reglas necesarias, aca les dejo una muestra de reglas creadas:

/sbin/iptables -A FORWARD -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT

  /sbin/iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT

   /sbin/iptables -A OUTPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT

  /sbin/service iptables status

   /sbin/service iptables save

   /sbin/service iptables restart


recomiendo especial cuidado con las palabras FORWARD, OUPUT e INPUT.




algo importante o configuraciones un poco mas detalladas las especifico a continuación (las lineas de # son comentarios):

*filter
#:INPUT ACCEPT [2:80]
#:FORWARD ACCEPT [0:0]
#:OUTPUT ACCEPT [13:876]

#acepta todas las reglas de entrada por la interfaz de loopback (127.0.0.1)
-A INPUT -i lo -j ACCEPT

#acepta todas las reglas de salida por la interfaz de loopback (127.0.0.1)
-A OUTPUT -o lo -j ACCEPT
#acepta todas las solicitudes de PING tanto entrada como salida, es util para el monitoreo y fragmentacion de paquetes
-A INPUT -p icmp --icmp-type echo-request -j ACCEPT
-A OUTPUT -p icmp --icmp-type echo-reply -j ACCEPT
-A OUTPUT -p icmp --icmp-type echo-request -j ACCEPT
-A INPUT -p icmp --icmp-type echo-reply -j ACCEPT

#acepta la conexion por el puerto 22 ssh para poder conectarse remotamente
-A INPUT -p tcp -m tcp --dport 22 -m state --state NEW -j ACCEPT
#-A INPUT -p tcp -m tcp --dport 14243 -m state --state NEW -j ACCEPT
#-A INPUT -p tcp -m tcp --dport 14244 -m state --state NEW -j ACCEPT
#-A INPUT -p tcp -m tcp --dport 14245 -m state --state NEW -j ACCEPT
#-A INPUT -p tcp -m tcp --dport 42424 -m state --state NEW -j ACCEPT
#-A INPUT -p tcp -m tcp --dport 42425 -m state --state NEW -j ACCEPT
#-A INPUT -p tcp -m tcp --dport 42426 -m state --state NEW -j ACCEPT
#-A INPUT -p tcp -m tcp --dport 42427 -m state --state NEW -j ACCEPT

#acepta conexion por el puerto 3306 usado por mysql
-A INPUT -p tcp -m tcp --dport 3306 -m state --state NEW -j ACCEPT
# se pueden colocar rangos de puertos como en este caso, tiene un rango de puertos abiertos para entrada
-A INPUT -p tcp -m tcp --dport 14243:14499 -m state --state NEW -j ACCEPT
-A INPUT -p tcp -m tcp --dport 42424:42699 -m state --state NEW -j ACCEPT

#dice que las conexiones que han sido establecidas con OUT se aceptan como seguras
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT

#se abre un puerto especifico diferencia sport (source port) dport (destination port)
-A OUTPUT -p tcp -m tcp --dport 12586 -m state --state NEW -j ACCEPT
-A OUTPUT -p tcp -m tcp --sport 12586 -m state --state NEW -j ACCEPT

(permite aceptar las conexiones que han salido)
-A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
#elimina todas las conexiones de entrada o solicitudes de puertos que no han sido abiertos
-A INPUT -j DROP

COMMIT
# Completed on Thu Jul  5 16:00:14 2012
 

Crontab en RHEL 5 o CENTOS

bueno, en mi trabajo diario me encontré con que voy a programar unas tareas en un servidor linux, y que mejor que un crontab para eso "gracias al ingeniero Amezquita que me dejó la espinita en pregrado", bueno al menos sabia algo del tema, entonces pues... me puse manos a la obra y tengo que poner a correr el siguiente script:

#!/bin/bash
# First check if there is already a restart running
#LOCKFILE=/home/celu/run/restart_new.lock;
#if [ -f $LOCKFILE ]; then
#    echo "A restart is already running, or there is a stale lock file";
#    exit 1;
#fi

     #**************************************************************
     # use:
     #**************************************************************
           
     if [ "$2" = "KILLING" ]; then
       /usr/bin/killall -q -r _57_Movistar.php
     fi
 
 #       /usr/bin/touch $LOCKFILE;
        HOUR=$(date +"%-H");
        MINS=$(date +"%-M");

        # Demons Control Process (over the date next)
        NUMDAEMONS=1;
        COUNTER=0;
        while [  $COUNTER -lt $NUMDAEMONS ]; do
        PROCESO=$(ps x |grep "/home/jvasquezgiraldo/Framework/daemons/Users/UsersCommunities57Movistar.php $NUMDAEMONS $COUNTER" |grep -vw 'grep');
                if [ ! "$PROCESO" ]; then
                   /usr/bin/php /home/jvasquezgiraldo/Framework/daemons/Users/UsersCommunities57Movistar.php $NUMDAEMONS $COUNTER &
                  sleep 1;
                fi
        COUNTER=$((COUNTER+1))
        done

        # Movistar Colombia billing
        NUMDAEMONS=7;
        COUNTER=0;
        while [  $COUNTER -lt $NUMDAEMONS ]; do
        PROCESO=$(ps x |grep "/home/jvasquezgiraldo/Framework/daemons/Billing/BillingCommunities57Movistar.php $NUMDAEMONS $COUNTER" |grep -vw 'grep');
                if [ ! "$PROCESO" ]; then
                  /usr/bin/php /home/jvasquezgiraldo/Framework/daemons/Billing/BillingCommunities57Movistar.php $NUMDAEMONS $COUNTER &
                  sleep 1;
                fi
        COUNTER=$((COUNTER+1))
        done

        # Comcel Colombia Rebilling
        NUMDAEMONS=12;
        COUNTER=0;
        while [  $COUNTER -lt $NUMDAEMONS ]; do
        PROCESO=$(ps x |grep "/home/jvasquezgiraldo/Framework/daemons/Billing/RebillingCommunities57Movistar.php $NUMDAEMONS $COUNTER" |grep -vw 'grep');
                if [ ! "$PROCESO" ]; then
                  /usr/bin/php /home/jvasquezgiraldo/Framework/daemons/Billing/RebillingCommunities57Movistar.php $NUMDAEMONS $COUNTER &
                  sleep 1;
                fi
        COUNTER=$((COUNTER+1))
        done
####### DELIVERY PROCCESS
        #Control Moderation
        NUMDAEMONS=1;
        COUNTER=0;
  while [  $COUNTER -lt $NUMDAEMONS ]; do
        PROCESO=$(ps x |grep "/home/jvasquezgiraldo/Framework/daemons/Delivery/ControlModeration57Movistar.php $NUMDAEMONS $COUNTER" |grep -vw 'grep');
                if [ ! "$PROCESO" ]; then
                  /usr/bin/php /home/jvasquezgiraldo/Framework/daemons/Delivery/ControlModeration57Movistar.php $NUMDAEMONS $COUNTER &
                  sleep 1;
                fi
        COUNTER=$((COUNTER+1))
        done
        #Look for Message in queu
        NUMDAEMONS=1;
        COUNTER=0;
        while [  $COUNTER -lt $NUMDAEMONS ]; do
        PROCESO=$(ps x |grep "/home/jvasquezgiraldo/Framework/daemons/Delivery/LookForAlreadyModerates57Movistar.php $NUMDAEMONS $COUNTER" |grep -vw 'grep');
                if [ ! "$PROCESO" ]; then
                  /usr/bin/php /home/jvasquezgiraldo/Framework/daemons/Delivery/LookForAlreadyModerates57Movistar.php $NUMDAEMONS $COUNTER &
                  sleep 1;
                fi
        COUNTER=$((COUNTER+1))
        done
        #Execute the active moderations
        NUMDAEMONS=2;
        COUNTER=0;
        while [  $COUNTER -lt $NUMDAEMONS ]; do
        PROCESO=$(ps x |grep "/home/jvasquezgiraldo/Framework/daemons/Delivery/SendModeration57Movistar.php $NUMDAEMONS $COUNTER" |grep -vw 'grep');
                if [ ! "$PROCESO" ]; then
                  /usr/bin/php /home/jvasquezgiraldo/Framework/daemons/Delivery/SendModeration57Movistar.php $NUMDAEMONS $COUNTER &
                  sleep 1;
                fi
        COUNTER=$((COUNTER+1))
        done
      
####### FREE CONTENT PROCCESS
        #FREE CONTENT
        NUMDAEMONS=1;
        COUNTER=0;
  while [  $COUNTER -lt $NUMDAEMONS ]; do
        PROCESO=$(ps x |grep "/home/jvasquezgiraldo/Framework/daemons/Delivery/ControlFreeContent57Movistar.php $NUMDAEMONS $COUNTER" |grep -vw 'grep');
                if [ ! "$PROCESO" ]; then
                  /usr/bin/php /home/jvasquezgiraldo/Framework/daemons/Delivery/ControlFreeContent57Movistar.php $NUMDAEMONS $COUNTER &
                  sleep 1;
                fi
        COUNTER=$((COUNTER+1))
        done

#####CREDITS

        NUMDAEMONS=1;
        COUNTER=0;
                while [  $COUNTER -lt $NUMDAEMONS ]; do
        PROCESO=$(ps x |grep "/home/jvasquezgiraldo/Framework/daemons/Users/UsersCreditsCommunities57Movistar.php $NUMDAEMONS $COUNTER" |grep -vw 'grep');
                if [ ! "$PROCESO" ]; then
                  /usr/bin/php /home/jvasquezgiraldo/Framework/daemons/Users/UsersCreditsCommunities57Movistar.php $NUMDAEMONS $COUNTER &
                sleep 1;
               fi        
 COUNTER=$((COUNTER+1))
 done

       NUMDAEMONS=1;
       COUNTER=0;
       while [  $COUNTER -lt $NUMDAEMONS ]; do
        PROCESO=$(ps x |grep "/home/jvasquezgiraldo/Framework/daemons/Users/UsersPostpaidCommunities57Movistar.php $NUMDAEMONS $COUNTER" |grep -vw 'grep');
        if [ ! "$PROCESO" ]; then
#                /usr/bin/php /home/jvasquezgiraldo/Framework/daemons/Users/UsersPostpaidCommunities57Movistar.php $NUMDAEMONS $COUNTER &
 sleep 1;
 fi
 COUNTER=$((COUNTER+1))
 done


#tesp daemons Negative Credits

 NUMDAEMONS=1;
        COUNTER=0;
                while [  $COUNTER -lt $NUMDAEMONS ]; do
        PROCESO=$(ps x |grep "/home/jvasquezgiraldo/Framework/daemons/Users/UsersCreditsCommunities57MovistarNegative.php $NUMDAEMONS $COUNTER" |grep -vw 'grep');
                if [ ! "$PROCESO" ]; then
                  /usr/bin/php /home/jvasquezgiraldo/Framework/daemons/Users/UsersCreditsCommunities57MovistarNegative.php $NUMDAEMONS $COUNTER &
                sleep 1;
               fi        
 COUNTER=$((COUNTER+1))
 done




llamado communities57Movistar.sh el cual he renombrado a communities57Movistar sin el punto por que he leido que a veces suele poner problemas por el uso de puntos o simbolos en el nombre del archivo.

Las lineas siguientes se deben agregar en el crontab del usuario, eso es lo muy facil, se digita:
crontab -e
y en el editor se pega lo siguiente:

*/15 * * * *  sh /home/celu/bin/communities/communities57Movistar
2 1,18 * * * /usr/bin/php /home/celu/Framework/daemons/Users/UpdateSigned57Movistar.php
42 2 * * * /usr/bin/php /home/celu/Framework/daemons/Reports/Reports57Movistar.php


en las lineas anteriores se evidencia que se va a ejecutar una tarea cada 15 minutos "ejecucion del archivo communities57Movistar" el / es para indicar que va a realizarce repetidamente.

Un enlace muy bueno y documentación al respecto se puede encontrar en:

http://www.telefonica.net/web2/dinsalpa/crontab/crontab.htm

o en

http://www.linuxtotal.com.mx/index.php?cont=info_admon_006

espero le sirva a alguien... jejeje, me despido..