Category Archives: Linux

Usando “include” dentro de /etc/aliases

Ocurre que hay ocasiones en que un usuario me pide “Yo quiero tener un alias en sendmail que contenga a todos los usuarios de mi sistema, de forma tal que cuando escriba a [email protected], el mail llegue a toditos los usuarios de mi sistema”

Partamos de un hecho: Hasta CentOS-6, los usuarios del sistema son los que tienen un uid mayor o igual a 500.

¿Cómo puedo obtener una lista de ellos?

fácil:

cat /etc/passwd|awk -F: ‘$3 >= 500 { print $1; }’

En efecto, con esto obtenemos todos los usuarios con uid => 500.

El problema es que en el archvo /etc/aliases tu piensas que tienes que ponerle en este formato:

todos: usuario1, usuario2, usuario3, usuario4, usuario5

Te imaginas si fueran 300 usuarios? o más? Cómo hacer para mantener actualizada esta lista? Ok, con el primer comando de este post puedes obtener una lista, pero y cómo le insertas la coma? Y si luego un usuario desaparece cómo le eliminas de /etc/aliases? O si se pone uno nuevo o si se cambia?

Bueno, tranquilo, hay una forma, mira, yo en /etc/aliases pondré esto:

todos:         :include:/etc/aliases.todos

include, lo que hace es agregar los usuarios (uno por línea) que estén en el archivo que he definido (/etc/aliases.todos).

fíjate que hay varios signos de :, hay 3 signos de :, uno después de la primera palabra, otro separado por uno o varios TABS e inmediatamente delante de include y otro al final de include e inmediatamente antes de /etc/aliases.todos.

Dentro de /etc/aliases.todos qué hago? Pues simplemente le viertes la salida del primer comando de este post:

cat /etc/passwd|awk -F: ‘$3 >= 500 { print $1; }’ > /etc/aliases.todos

sendmail -bi

y ya, en efecto con esto habremos logrado tener una lista de todos los usuarios.

Y si agrego, modifico, elimino usuarios? Pues vuelves a ejecutar estos dos últimos comandos.. si quieres le pones en un cron cada cierto tiempo, varias horas y ya.

Los dos primeros videos del curso virtual de IPv6

fíjate, estos son sólo los dos primeros de toda la serie, lógicamente son introductorios, los temas se van volviendo más y más interesantes pero no hay uno sólo que sea aburrido!

Como te comenté, tenemos disponible un curso virtual de implementación de IPv6  en servidores CentOS Linux, es totalmente remoto, es decir, puedes estudiarlo via web a la hora que te parezca más conveniente sin tener que acudir a un aula a determinadas horas en determinados días.

Este curso virtual lo hablamos aquí hace unos días y se me había olvidado publicar el par de videos iniciales de él:

El primero es una introducción simplificadísima a IPv6:

http://youtu.be/0aDuJ6Bg2L0

el segundo es el cómo instalar un fácil sistema de tunel que te permita conectarte por IPv6 desde tu máquina para que así vayas viendo cómo se siente tener IPv6:

http://youtu.be/mhsE-B7ay5E

Lógicamente lo ideal es que el proveedor de internet te brinde ya IPv6 nativamente, pero mientras no lo hagan, puedes usar este sistema de tunel para ir avanzando en el conocimiento.

Los otros módulos, ahi te pido que leas la primera URL que te dí con info sobre el curso.

Curso virtual de IPv6 en 12 simples videos

Bueno por fin le acabé, es un simple pero instructivo curso de implementación de IPv6 en servidores Linux con CentOS.

Digo simple porque como muchos de ustedes conocen no me gustan las cosas complejas: yo creo que para que implementemos algo, las cosas deben realizarse de forma muy simple, sino, no vale. Y así es como siempre enseño a utilizar Linux, de forma simple, sencilla y fácil de entender.. y es así que he formado muchos usuarios para ser buenos administradores de Linux.

Este curso va más allá, sí, es que lo preparamos en forma de videos, 12 videos que explican cada uno 12 diversos temas de implementación de IPv6 en nuestros CentOS Linux. De forma tal que no tienes que leer largos documentos, ni tampoco sentarte en el aula por interminables horas. Lo puedes cursar desde tu casa o trabajo.

Además, para hacer la cosa más fácil: El curso lo dictamos desde servidores que les ponemos a su disposición en nuestra red. De forma tal que no tendrás justificaciones sobre si puedes o no instalar linux para el curso.. nada de eso! El Linux ya está instalado en nuestros servidores, lo que te falta es entrar al server que te asignamos y configurar poco a poco los contenidos que te vamos dictando. Así de simple.

Del curso, sus objetivos, inscripción al curso, precios y demás dudas, puedes verle en esta URL:

http://www.ecualinux.com/cursos/para-administradores/curso-ipv6

Instalando PacketTracer 5.3.3 en Fedora-17

Hola
aquí les describo como instalar PacketTracer versión 5.3.3 para los que deseen usarle en Linux Fedora.

  1. Buscar el paquete PacketTracer533_i386_installer-rpm.bin en google y bajarlo a tu usuario
  2. Darle derechos de ejecución:
    • chmod +x PacketTracer533_i386_installer-rpm.bin
  3. Ejecutar el binario:
    • sudo ./PacketTracer533_i386_installer-rpm.bin
  4. Aceptar la licencia y el programa se instalará.
  5. Si el instalador falla indicando que le faltan otros requerimientos hacer lo siguiente:
    • Volver a ejecutar: sudo ./PacketTracer533_i386_installer-rpm.bin
    • Llegar solamente hasta la parte que te pide aceptar la licencia.
    • ejecutar en otro terminal el siguiente comando:
      • yum install /tmp/selfextract*/PacketTracer-5.3_3-u.i386.rpm
    • Esto lo que hará será resolver todos los requerimientos que tenga el programa PacketTracer-5.3.3 e instalar.

 

Imágenes de ayer, nuevamente defacement y ataques a sitios del gobierno, estado y personas públicas de Ecuador.

 

Ayer dediqué una parte de la mañana (y de la tarde) a monitorear en unas pocas redes sociales (twitter, facebook), y con la ayuda de buscadores los sitios del gobierno de Ecuador que iban cayendo presas de sus, muchas veces simples o triviales, fallas de seguridad.

El motivo de este ataque, esta vez, fue una protesta de parte de personas que se denominan Anonymous contra un reglamento de telecomunicaciones que contiene muchos elementos que deberían mejorarse enormemente.

A propósito de este ataque: el año pasado cercano a esta fecha del 10 de Agosto igualmente ocurrió una protesta en la cual se atacaron por diversos métodos sitios del gobierno y estado Ecuatoriano. Cuando ocurre aquel ataque medité (wow, qué palabras más… bueno)… y escribí aproximadamente por estas fechas aquí.

“Guerra avisada no mata soldado” dice una vieja frase. Este tema ya había ocurrido el año pasado y pumpum, coge de nuevo, exactamente un año después, vuelven los ataques. Y no digamos un año después, estos ataques han venido ocurriendo con relativa frecuencia durante el año anterior y los años anteriores.

Recuerdo que el año pasado se anunció que se estaba trabajando con un grupo de expertos coreanos en seguridad, creo recordar lo dijo alguien del ramo, quizá de algún ministerio y se generaron varios comentarios en los medios noticiosos.

Y sin embargo, volvimos a recaer, a pasar por exactamente lo mismo. Y sobre las medidas tomadas por motivo de lo ocurrido el año pasado (no medidas coercitivas sino medidas de protección y aseguramiento)…. nadie ha sabido, quizá se olvidó, pasó al olvido como muchos temas van pasando al olvido a medida que el tiempo pasa.

En un artículo aparte hablaré más del tema, en este me referiré solamente a mostrar las páginas que logré capturar defaceadas (algunas incluso hoy 11 de Agosto las capturé, es decir: los responsables al parecer ni se han enterado de que les han cambiado su página o andan ocupado en temas más trascendentes que no les alcanza la oportunidad para todavía quitar el defaceo).

Vamos, que yo estaba con la idea de ayer dedicar parte de la mañana a preparar una simple antena para hacer algunos experimentos cuando tuve la idea de entrar a facebook, donde encontré a algunos amigos mencionando sobre sitios del gobierno. Recuerdo que lo primero que les comenté a ellos fue:

“pero cuál es la idea? porque sitios .ec hackean todos los días http://www.zone-h.org/ o es que hay un rally o algo así hoy? o es por el día 10 de agosto?”

Si te fijas a medida que voy escribiendo me voy dando cuenta que tiene relación con la fecha… porque en realidad yo consideraba esto de ataques en fechas patrias (10 de Agosto) algo del pasado, algo resuelto porque sucedió ya el año pasado! Y ya se habló y se dijo mucho sobre eso, y ya habían expertos apoyando en esto no? Sí o no?!!!!!

Es que me ofende mucho que se vuelva a caer en temas que con un poco de razonamiento no puedan se solucionados. Y si no conocen, por qué no buscan una verdadera asesoría? no hay que llegar a presentar un proyecto en el senescyt para lograr cierta seguridad en las redes.

Bueno, veamos el primero que veo reportado:

Continue reading Imágenes de ayer, nuevamente defacement y ataques a sitios del gobierno, estado y personas públicas de Ecuador.

Ya implementamos IPv6 en los dns de nuestrodns.com

Bueno, me faltaba este detalle, pero por fin hoy me decidí ya atacarlo y por fin ya tenemos IPv6 en los servidores de nuestrodns.com

así que ya tengo dominado la implementación de ipv6 en los servicios más necesarios para Linux.

Ya comenzó a llegar SPAM a través de IPv6

Bueno, en realidad hace varios días lo noté, es poco, pero ya comienza a molestar… y los sistemas de listas negras como spamcop por ejemplo no están preparados para analizar o incorporar tus reportes cuando viene de una IPv6.

Hace un rato me acaba de llegar este, qué joda eh? El spam no para caramba

Return-Path: <[email protected]>
Received: from oproxy1-pub.bluehost.com (oproxy1.bluehost.com [IPv6:2605:dc00:100:2::a1])
	by www.ecualinux.com (8.14.4/8.14.4) with SMTP id q5TNlBwQ031944
	for <x>; Fri, 29 Jun 2012 18:47:17 -0500


Disminuyendo el tiempo que toma comprimir un archivo en Linux

Bueno, seguramente todos los que andamos en el mundo de Linux conocemos bien al comando gzip.
Este comando hace algo muy importante y simple: comprime la información contenida en un archivo.
Realmente las tasas de compresión de gzip son buenas, tan buenas que es el compresor al momento por excelencia en nuestro mundo de Linux. Casi todas las aplicaciones se comprimen por gzip, por más que hayan programas que compriman más en términos de tamaño o que compriman más rápido.

Hablando de rapidez, descubrí un día que el comando gzip usa solamente un procesador, lanza un sólo hilo para realizar la compresión, a pesar de que tu equipo tenga 2, 4, 8, 16 procesadores, o lo que sea, gzip hace uso de uno sólo.

Esto no es eficiente, si tengo un equipo con 4 procesadores por ejemplo, mejor fuera que se lanzaran 4 hilos de este programa y que el proceso de compresión fuera más rápido ya que normalmente es demorado por su necesidad de encontrar cadenas similares para comprimir.

Para esto, existe una alternativa 100% compatible con gzip, se llama “pigz”, es un paquete que puedes instalar con yum install pigz

Luego de instalado, simplemente en vez de utilizar gzip para comprimir, uso pigz, es un drop in, es decir, puedo simplemente sustituir “gzip” por “pigz” y lograr la compresión.

Por ejemplo si quiero hacer un tar podría usar:
tar cf – /etc | gzip -c -> etc.tar.gz

Esto comprimirá como siempre se ha hecho, con gzip. Con un sólo hilo, y por tanto como siempre le hemos visto de rápido o lento.

Ahora, lo mismo lo quiero hacer con pigz? así:
tar cf – /etc | pigz -c -> etc.tar.gz

y ya… pigz determinará cuántos procesadores tienes y lanzará tantos hilos de pigz como procesadores tengas, y el proceso será mucho más rápido, te lo prometo.

Aquí un ejemplo, esto es hecho en mi laptop que tiene 2 procesadores:

eperez@eperez ~$ ls -lh t
-rw-rw-r–. 1 eperez eperez 17M Jun 10 20:52 t

Como puedes ver el archivo t tiene 17M de tamaño, vamos a comprimirlo con gzip y medir cuánto demoró.
eperez@eperez ~$ time gzip -c t > t.gzip

real 0m9.533s
user 0m9.339s
sys 0m0.060s

Ahora vamos a hacer lo mismo con pigz:
eperez@eperez ~$ time pigz -c t > t.pigz

real 0m5.064s
user 0m9.416s
sys 0m0.119s

te fijas, tomó 9.5 segundos comprimir los 17MB usando el gzip y tomó 5segundos comprimir los 17MB usando pigz (sin embargo el tiempo de usuario fue muy similar).

pigz hizo uso de los dos procesadores, el tiempo se dividió entre ambos.. y gzip sólo usó uno…

Lógico, si tienes más procesadores puedes notar que los tiempos bajan bastante..

suerte y dale uso!

Google acaba de activar ipv6 para su record www

Bueno, ya son las 720PM del 5 de Junio del 2012, pero en tiempo universal coordinado (UTC) son las 00:20 horas del 6 de Junio, y hace unos 5 minutos acabo de verificar el record www de google y ya responde a IPv6, en la tarde también monitoreé a facebook y ya tenían ipv6 para www.facebook.com

Aquí el record tal y como le veo resolviendo a google:

eperez@eperez ~$ host www.google.com
www.google.com is an alias for www.l.google.com.
www.l.google.com has address 74.125.137.105
www.l.google.com has address 74.125.137.106
www.l.google.com has address 74.125.137.147
www.l.google.com has address 74.125.137.103
www.l.google.com has address 74.125.137.104
www.l.google.com has address 74.125.137.99
www.l.google.com has IPv6 address 2607:f8b0:4002:801::1011

No se están manejando con aliases, posiblemente no estén haciendo geolocalización para ipv6.
Aquí vemos un ping a su record www.google.com con ipv6:

eperez@eperez ~$ ping6 www.google.com
PING www.google.com(atl14s07-in-x13.1e100.net) 56 data bytes
64 bytes from atl14s07-in-x13.1e100.net: icmp_seq=1 ttl=56 time=126 ms
64 bytes from atl14s07-in-x13.1e100.net: icmp_seq=2 ttl=56 time=150 ms
64 bytes from atl14s07-in-x13.1e100.net: icmp_seq=3 ttl=56 time=129 ms
^C
— www.google.com ping statistics —
3 packets transmitted, 3 received, 0% packet loss, time 2003ms
rtt min/avg/max/mdev = 126.351/135.574/150.511/10.662 ms

resize2fs en vivo

No lo había probado antes, pero hoy requería de extender el LV de la partición raíz de un server virtual, pues como ya saben ando en el tema de IPv6 y este server de pruebas que tenía se le agotó el espacio para realizar mis experimentos con DNS. Es un server CentOS-6 con lvm, no sé si funcione para CentOS-5

Así que caramba, busqué y me dí cuenta que no tienes que tener desmontada la partición / para extenderla.. simplemente le extendí el LV y luego le hice un :
resize2fs /dev/dsk/root

y me redimensionó perfectamente la raíz. Bueno, por seguridad lo hice en modo 1, pero habría que probar si en otro modo igual funciona.