09 Abr, 2009

Funciones peligrosas en PHP

Escrito por: leopoldomaestro En: php

system,passthru,exec,popen,proc_close,proc_get_status,proc_nice,
proc_open,proc_terminate,shell_exec,highlight_file,escapeshellcmd,
define_syslog_variables,posix_uname,posix_getpwuid,
apache_child_terminate,posix_kill,posix_mkfifo,
posix_setpgid,posix_setsid,posix_setuid,escapeshellarg,
posix_uname,ftp_exec,ftp_connect,ftp_login,ftp_get,
ftp_put,ftp_nb_fput,ftp_raw,ftp_rawlist,
ini_alter,ini_restore,inject_code,syslog,openlog,
define_syslog_variables,apache_setenv,mysql_pconnect,eval,
phpAds_XmlRpc,phpAds_remoteInfo,
phpAds_xmlrpcEncode,phpAds_xmlrpcDecode,
xmlrpc_entity_decode,fp,fput

Cuidado con algunas de ellas… Van a romper tu aplicación de un momento a otro si las deshabilitamos ;D

Aunque es relativamente sencillo saltarse esta protección, si queremos habilitar un tmpfs en /tmp sin posibilidad de setuid y ejecución en OpenVZ/Virtuozzo, podemos hacerlo de la siguiente manera:

mount -t tmpfs -o nodev,noexec,nosuid tmpfs /tmp/
echo none /tmp tmpfs nodev,nosuid,noexec 0 0 >> /etc/fstab

* Nota para los usuarios de Cpanel: /scripts/securetmp no va a funcionar, por lo que estais obligados a seguir estos pasos.

06 Abr, 2009

Activar display_errors por dominio en Cpanel

Escrito por: leopoldomaestro En: Cpanel

Cuando necesitemos activar el display_errors por dominio en Cpanel, tan solo tenemos que habilitarlo desde .htaccess (si no tenemos SuPHP).

Añadimos al .htaccess:

php_flag display_errors on

Netflow es un protocolo de red creado por Cisco Systems (propietario), usado para analisis y monitorización de redes. Aunque es propietario, es posible desplegarlo en plataformas tan dispares como  FreeBSD, OpenBSD, Juniper, Alcatel, Foundry etc.

Es muy util para revisar el uso de ancho de banda en determinadas interfaces, gráficas de uso por número de sistema autonomo, cuellos de botella, información por protocolo etc.

El protocolo Netflow envia paquetes UDP y SCTP con los registros Netflow a una aplicación (colector Netflow) especialmente diseñada para almacenar la información en una base de datos.

La última version del protocolo es la IPFIX, más conocida como v10, la cual es una versión 9 estandarizada por IETF, con mejoras orientadas al ambito empresarial, además de algunas aportaciones de la comunidad.

De momento, nos centraremos en la configuración del protocolo en uno de los extremos, en concreto un Cisco 7206 VXR con la tarjeta NPE-G2.

Configuración del router:

Entramos al enrutador y nos colocamos en el modo privilegiado:

enrutadordefrontera$ enable

Password:*****

Nos posicionamos en el modo de configuración:

enrutadordefrontera#configure terminal

Ahora entramos en el modo de interface:
enrutador(config)#interface GigabitEthernet 0/3

Habilitamos el flow

enrutadordefrontera(config-if)#ip route-cache flow
Volvemos al modo de configuración

enrutadordefrontera(config-if)#exit

Configuramos el lugar a donde van a ir los paquetes UDP/SCTP dirigidos (colector Netflow)
enrutadordefrontera(config)#ip flow-export destination 172.26.0.1 9996

Configuramos la interfaz desde donde enviar datos
enrutadordefrontera(config)#ip flow-export source GigabitEthernet 0/3

Elegimos la versión del protocolo
enrutadordefrontera(config)#ip flow-export version 9

NOTA: Si la 9 no funciona bien, hay que usar la version 5, que es la mas usada.

Configuramos los timeout

enrutadordefrontera(config)#ip flow-cache timeout active 1

enrutadordefrontera(config)#ip flow-cache timeout inactive 15

Salimos del modo de configuración
enrutadordefrontera(config)# ctrl + Z

Guardamos los cambios
enrutadordefrontera#write mem

Para el próximo post abordaremos la instalación de algunas aplicaciones colector donde podremos visualizar toda la información ofrecida por Netflow.

01 Abr, 2009

Ubuntu 8.10 Intrepid 64 Bits y el sonido en Firefox 3.0

Escrito por: leopoldomaestro En: Linux|ubuntu

Es probable que a algunos de vosotros no os funcione el sonido en Ubuntu 8.10 64 Bits, a pesar de realizar un monton de combinaciones con los paquetes o la instalación manual.

En mi caso, solo me funciono lo siguiente:

  1. Bajamos el fichero de libflashplayer de Macromedia: http://download.macromedia.com/pub/labs/flashplayer10/libflashplayer-10.0.d21.1.linux-x86_64.so.tar.gz
  2. Descomprimir_
    tar zxvf libflashplayer-10.0.d21.1.linux-x86_64.so.tar.gz
  3. Desinstalar el paquete antiguo:
    sudo apt-get remove flashplugin-nonfree
  4. Copiar a la carpeta de plugins de Firefox:
    sudo cp libflashplayer.so /usr/lib/mozilla/plugins

Con estos pasos, tan solo tendremos que reiniciar el Firefox y todo funcionando.

Gracias a LaConsola Blog

23 Mar, 2009

Jefferson y el Cristianismo

Escrito por: leopoldomaestro En: Citas

«He examinado todas las supersticiones conocidas del mundo, y no encuentro, en nuestra superstición particular del cristianismo, una característica redentora. Todas son similares, fundadas en fábulas y mitología. Millones de hombres inocentes, mujeres y niños, desde la introducción de la Cristiandad, han sido quemados, torturados, multados y encarcelados. ¿Cuál ha sido el efecto de esta coerción? Hacer me medio mundo unos tontos y de la otra mitad, hipócritas: para apoyar la picardía y el error por todas partes de la tierra.»

(Thomas Jefferson)

21 Mar, 2009

Arreglar problema comentarios en WordPress que desaparecen

Escrito por: leopoldomaestro En: MySQL|Wordpress

¿Han desaparecido los comentarios en tu blog WordPress? Si es asi, no rompas la pantalla aún, puede que haya una solución ;).

Cuando ocurre esto, es probable que la tabla de comentarios se haya corrompido. Hay que realizar por tanto un repair a la tabla.

A continuación detallo el proceso para reparar una tabla desde la linea de comandos, dejando de lado otros métodos tales como Phpmyadmin.

Entrando en materia:

1- Nos logueamos en nuestro MySQL con algún usuario con privilegios en la DB

$ mysql -u usuario -p -h

2- Usar la DB del WordPress

use dbquesea;

* Si no recordamos el nombre exacto, podemos usar show databases;

repair table

* Lo mismo aquí, un show tables; nos indicara el nombre de la tabla de comentarios

Nos tendría que lanzar un mensaje como el siguiente:

mysql> repair table nombredetabla;
+—————————–+——–+———-+——————————————————+
| Table | Op | Msg_type | Msg_text |
+—————————–+——–+———-+——————————————————+
| nombredb.nombretabla | repair | info | Found block that points outside data file at 1908556 |
| nombredb.nombretabla | repair | status | OK |
+—————————–+——–+———-+——————————————————+
2 rows in set (2.05 sec)

21 Mar, 2009

Expandir un RAID en Linux

Escrito por: leopoldomaestro En: Linux|RAID

Desde algunas versiones atras del Kernel 2.6.x (en concreto la 2.6.17) y MDADM 2.4.0, se añadio la posibilidad de expandir arrays RAID al añadir discos duros, ya que hasta ese instante, los discos se añadian como Spare (Reserva) al array. De hecho, esta caracteristica posibilita expandirlos tal como podría hacerlo una solución comercial (como NetApp, por ejemplo).

Consideraciones previas:

1- Haz backup de los datos más importantes antes de realizar este paso
2- Reemplaza /dev/md1 con el dispositivo de tu array creado
3- Este proceso va a redimensionar tu array, es decir, si tienes 3 discos duros y añades un 4, este no sera un disco de reserva/redundancia, si no que aumentaras el espacio disponible en el array.

mdadm –add /dev/md1 /dev/sdf1
mdadm –grow /dev/md1 –raid-devices=4

El primer comando añade el disco al array, y el segundo expande el array a 4 discos. *

* Remodelar el array puede tardar un periodo de tiempo considerable.

Comprobar y redimensionar el sistema de ficheros:

fsck.ext3 /dev/md1
resize2fs /dev/md1

Si todo ha ido bien, remontamos el punto de montaje y ya deberiamos disfrutar del nuevo tamaño ;).

Tags: , ,

10 Mar, 2009

Compilación de EXIF en DirectAdmin

Escrito por: leopoldomaestro En: Directadmin|Linux

Para añadir soporte de Exif en Directadmin, debes realizar los siguientes pasos:

Instalar los paquetes RPM de las librerias de extracción de información extra de imagenes

yum install libexif libexif-devel

* En x64 los paquetes son llamados: libexif.x86_64
** Todo esto esta basado en Centos 5 x64

Editamos el configure.php (puede ser php4 o php5, elige según la versión que uses) y añadimos una linea con lo siguiente:

–enable-exif \

* Ojo, si es la última linea, no lleva \

Limpiamos un poquito y compilamos PHP

/usr/local/directadmin/custombuild/build clean
/usr/local/directadmin/custombuild/build php n

Si todo ha salido bien, deberíamos tener soporte para Exif, lo comprobamos con:

php -r ‘phpinfo();’ |grep exif

Si tenemos una salida como esta:

EXIF Version => 1.4 $Id: exif.c,v 1.173.2.5.2.27 2008/12/31 11:17:37 sebastian Exp $

Es que todo ha ido bien.

Categorias

Publicidad

Sobre el blog

Blog personal de Leopoldo Maestro en el que se cubren noticias, curiosidades y experiencias relacionadas con la Administración de Sistemas, Networking, Negocios, Tecnología...

Publicidad