Mandar notificaciones al escritorio Linux

on

Bien pero esto de que nos sirve?

Creo que al buscar este tutorial tendrán sus ideas, pero aquí aguas razones por las cuales es bueno aprender a usar notificaciones:

Esto mas que nada es para seguridad informática,ya que las notificaciones mas importantes las tiene definidas el mismo sistema,en la seguridad informática el tiempo de edición es critico,a que me refiero con el tiempo de edición?

A tocar los archivos,en Linux/Unix se le conoce como touch y hay un comando para ello,al tocar un archivo nos esta indicando que lo modificamos,editamos incluso borramos(si no esta),al hacer esto es probable que no se trate de nosotros mismos si no de un intruso,esto lo hace interesante a la hora de escalar privilegios,porque por ejemplo pueden acceder a nuestra cuenta normal pero si quieren acceder a root,deben modificar algún archivo(en un tipo de ataque) y si lo estamos monitoreando no habra problema y podremos detectar al intruso,no solo al ver los archivos modificados si no directamente ver los usuarios,con el comando (who por ejemplo),así que bueno vamos a ver como acceder a las notificaciones.


Tutorial

El comando es simple,solo hay que escribir en la terminal:


notify-send "Mensaje"
Tiene argumentos en la linea de ordenes,el que se me hace interesante es:


-i

Que es para icono:

Por ejemplo:


notify-send "Mensaje" -i firefox


Vamos a ver un ejemplo de ver las tty's conectadas al sistema,osea las interfaces que estemos usando:

Veamos que las interfaces que uso son tres dos shells y un tty en modo grafico:



Ahora me voy a conectar por ssh en local a mi mismo host:



Y las conexiones aumentan en dos(una shell mas y la ssh).

Ahora imaginemos que esa conexion no la efectuamos nosotros,vamos a usar el who para ver las interfaces(pero hay mas maneras):


 #!/bin/bash  
   
 num=`who | tee users.log | wc -l`  
   
 echo $num > num.log # Esto podria ser un base de datos,etc  
   
 while [ 1 ]; do  
   num=`cat num.log`  
   n=`who | wc -l`  
   who > u.log  
   usuario=`diff u.log users.log | sed -n -e 2p`  
   if [ $num -eq $n ] # igual: no pasa nada  
   then  
     continue  
   elif [ $num -gt $n ] # mayor: alguien se desconecto  
   then  
     echo $n > num.log  
     `who > u.log && who > users.log`  
     notify-send echo "Desconectado $usuario"  
   else # Menor: alguien se conecto  
     echo $n > num.log   
     # ^ En cualquier caso recargamos el log o no dejara de mostrar el mensaje   
     `who > u.log && who > users.log`  
     notify-send "Conectado $usuario"  
   fi  
   sleep 5; # tiempo de intervalos  
 done  
   
 #This library is free software; you can redistribute it and/or modify it under  
 #the terms of the GNU Library General Public License as published by the Free  
 #Software Foundation; either version 2.1 of the License, or (at your option) any  
 #later version.  




Eso es todo :D

Mas info:

notify-send --help

Bloggroll

Páginas vistas en total

Blog Archive