sábado, 20 de diciembre de 2014

WIRESHARK

¿Qué es wireshark?




Wireshark (antes Ethereal es una herramienta multiplataforma utilizada para realizar análisis sobre paquetes de red y solucionar problemas en redes de comunicaciones. La utilización de esta herramienta puede parecer de gran complejidad en un principio, pero es de gran utilidad una vez conocida su interfaz y su forma de operar. Pertenece a lo que en el lenguaje IT se denominan analizadores de protocolos de red, analizadores de paquetes, packet sniffer o sniffer.

Wireshark se trata de un software gratuito disponible para varias plataformas (Unix, Windows y Mac OS).

Una de las ventajas que tiene Wireshark es que en un momento dado, podemos dejar capturando datos en una red el tiempo que queramos y, posteriormente almacenarlos, con el fin de poder realizar el análisis más adelante. Esto es algo totalmente necesario, porque son miles los paquetes que se capturan en una red y, si tratamos de hacer el análisis en el mismo instante, nos veríamos desbordados.

INSTALACIÓN DE WIRESHARK EN UBUNTU

La instalación de Wireshark es realmente sencillo, a continuación se indicará los pasos a seguir:
 1. En el terminal ingresamos el siguiente comando: sudo apt-get install wireshark
       que nos permitirá instalar wireshark de una manera sencilla.

   
 Para iniciarlo, lo haremos en modo administrador o superusuario, utilizando el comando sudo.


A continuación se desplegará la ventana inicial de wireshark.




¿Cómo elegir la interfaz a escuchar?

Para elegir la interfaz a escuchar, lo que se debe hacer es:


  • Clic en la opción Interface List

  • A continuación aparecerá una ventana con las interfaces existentes, activa la casilla de la interfaz que se desee escuchar.

  • Finalmente clic en la opción Start






¿Cómo realizar filtros?

Después de seleccionar una interfaz, una de las virtudes de Wireshark es el filtrado que podemos hacer de los datos capturados. Podemos filtrar protocolos, IP origen o destino, por un rango de direcciones IP, puertos o tráfico unicast, entre una larga lista de opciones. Podemos introducir nosotros manualmente los filtros en una casilla llamada filter.



A continuación pondré algunos ejemplos.
Para filtrar cada uno de ellos colocaré el nombre del protocolo en el filter, por ejemplo para http será de esta manera:




  • HTTP 

HTTP de HyperText Transfer Potocol (Protocolo de transferencia de hipertexto) es el método más común de intercambio de información en la world wide web, el método mediante el cual se transfieren las páginas web a un ordenador.



  • ICMP (filtro para mostrar sólo el protocolo ICMP)
Antes de empezar ha filtrar ICMP, lo primero que se debe hacer es conocer la dirección IP, para esto utilizaré el comando ifconfig, como se muestra en la gráfica siguiente:

Después de conocer nuestra dirección IP, ingresaremos el comando ping, el cual nos permitirá enviar paquetes a la dirección establecida, en este caso enviaré a mi misma dirección IP, como se muestra en la gráfica siguiente:


Para comenzar a filtrar ICMP, pondremos a escuchar todos las interfaces, para esto se debe ir a el icono Capture Options


Se desplegará una ventana en la cual se debe activar la casilla Capture on all interfaces, la cual permite escuchar todas la interfaces



Finalmente en la barra Filtrer se colocará el nombre del protocolo a filtrar ICMP y podremos observar los paquetes filtrados.





  • IP
IP es un protocolo no orientado a conexión usado por el origen y el destino para la comunicación de datos a través de una red de paquetes conmutados.
  •       IP ORIGEN

  •   IP DESTINO

  • TCP
TCP es uno de los principales protocolos de la capa de transporte del modelo TCP/IP. En el nivel de aplicación, posibilita la administración de datos que vienen o van al nivel inferior del modelo OSI (IP). 
Las principales características del protocolo TCP son las siguientes:
TCP permite colocar los datagramas nuevamente en orden cuando vienen del protocolo IP.
TCP permite que el monitoreo del flujo de los datos y así evita la saturación de la red.
TCP permite que los datos se formen en segmentos de longitud variada para "entregarlos" al protocolo IP.
TCP permite multiplexar los datos, es decir, que la información que viene de diferentes fuentes (por ejemplo, aplicaciones) en la misma línea pueda circular simultáneamente.




  • UDP
UDP son las siglas de Protocolo de Datagrama de Usuario (en inglés User Datagram Protocol) un protocolo sin conexión que, como TCP, funciona en redes IP.






Fuentes:



miércoles, 12 de noviembre de 2014

CREACIÓN DE UN RESPALDO DE LOS ARCHIVOS DE CONFIGURACIÓN DEL S.O

- Primero explicaré los comandos básicos que serán utilizados en la creación del respaldo de los archivos de configuración del S.O.
  • Comando: cd 
           Función: Permite cambiar de directorios
           Sintaxis: cd Nombre_del_Directorio
  • Comando: mkdir
           Función: Permite la creación de directorios
           Sintaxis: mkdir Nombre_del_Directorio
  • Comando: cp
           Función: Se utiliza para copiar ficheros
           Sintaxis: . cp [opciones] fichero_origen fichero_destino
                         cp -R.- copia directorios de forma recursiva
  • Comando: crontab
          Función: Permite programar tareas que se desean repetir de forma periódica
          Sintaxis: crontab <opciones>

El comando crontab nos permite programar tareas para realizarlas a ciertas horas, ciertos días de la semana, del mes, del año, etc. Todo ello siguiendo una sintaxis muy sencilla. Con este comando, cada usuario puede definir sus propias tareas programadas. Su sintaxis básica es la siguiente:
  • crontab -l Mostrar las tareas programadas por el usuario.
  • crontab -e Editar el fichero crontab. Con esto editaremos el fichero de configuración de crontab de cada usuario para poder modificar las tareas programadas.
  • crontab -r Eliminar el fichero crontab corriente.
  • crontab -u <usuario> Aplicar una de las opciones anteriores para un usuario determinado. Sólo root puede hacerlo.
CampoDescripción
MinutoControla el minuto de la hora en que el comando será ejecutado, este valor debe de estar entre 0 y 59.
HoraControla la hora en que el comando será ejecutado, se especifica en un formato de 24 horas, los valores deben estar entre 0 y 23, 0 es medianoche.
Día del MesDía del mes en que se quiere ejecutar el comando. Por ejemplo se indicaría 20, para ejecutar el comando el día 20 del mes.
MesMes en que el comando se ejecutará, puede ser indicado numéricamente (1-12), o por el nombre del mes en inglés, solo las tres primeras letras.
Día de la semanaDía en la semana en que se ejecutará el comando, puede ser numérico (0-7) o por el nombre del día en inglés, solo las tres primeras letras. (0 y 7 = domingo)
UsuarioUsuario que ejecuta el comando.
ComandoComando, script o programa que se desea ejecutar. Este campo puede contener múltiples palabras y espacios.


Ejemplo de aplicación:
Para la creación del script, el cual creará un respaldo de los archivos de configuración del S.O, el cual además será configurado para que se realice este todos los días lunes a a las 7:00.

1. - Para crear el script, utilizaré el comando vim y al script lo nombraré script2.sh .


2.- Para poder crear el respaldo de los archivos de configuración del SO, utilizaré los comandos            necesarios para el script2.sh, los cuales son el cd, mkdir y cp -R.


3.- Al finalizar el script2.sh lo guardaré presionando la tecla ESC y el comando :wq, a continuación lo ejecutaré, con el comando sudo para ejecutarlo como  super usuario, para comprobar su funcionamiento.



4.- Para observar que el directorio se ha creado correctamente, usaré el comando ls -l, el cual me permitirá ver toda la información del directorio (etc.backup).


5.- Para que nuestro directorio lo podamos observar desde el directorio home, ejecutaremos el comando cd .., para enlistar el contenido del directorio home usare el comando ls -l, así podré comprobara que etc.backup se encuentra en ese directorio.

  
6.- Ahora para poder enlistar los archivos contenidos en el directorio etc.backup, utilizamos el comando cd etc.backup, para enlistar su contenido usaré el comando ls y a continuación con el comando cd etc entraré a ese directorio.


7.- Ejecutando el comando ls -l, se observará los archivos contenidos en etc.backup con todo la            información.

  • Para que el script2.sh se ejecute todos los días lunes a las 7:00, llamaré al comando crontab, el cual permite programar tareas de forma periódica.

8.- Llamaré al comando crontab -e para programar  el día y hora para la ejecución del script.


9.- Como se explicó anteriormente, primero ingresaremos los minutos, hora, día del mes, mes, día        de la semana.


10.- Para guardar la configuración de crontab, se presiona CTR+X.


11.-Finalmente al ingresar ls, verificaré que el directorio se haya creado, y así el script2.sh se ha ejecutado éxitosamente y todos los días lunes a las 7:00 se ejecutará.


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



domingo, 2 de noviembre de 2014

VARIABLE DE ENTORNO PATH


¿Qué son las variables de entorno?

Las variables de entorno son unas variables que se definen dentro del contexto del intérprete de comandos o shell, y las leen y usan las aplicaciones de tu sistema (incluyendo entre esas aplicaciones al shell mismo). Una de las más utilizadas es la variable de entorno PATH.




¿Qué es el PATH?
PATH es la variable del sistema que utiliza el sistema operativo para buscar los ejecutables necesarios desde la línea de comandos o la ventana Terminal. Contiene una lista de directorios, separados por el símbolo dos puntos ":". Esa lista de directorios es la que el shell utiliza para buscar (en ese mismo orden) los comandos que debe ejecuta.




¿Cómo modificar la variable PATH?
Primero se recomienda observar los directorios contenidos en el PATH, para esto usaremos el comando echo:


                              echo $PATH


Como se menciono anteriormente cada directorio aparece separada por dos puntos (:). En caso de que desees agregar directorios a tu PATH puedes hacerlo de dos formas: La primera los hace válidos por el tiempo que dura tu sesión, la segunda los hace permanentes.

1. De forma temporal

  •    El comando ls muestra los archivos existentes en el directorio actual.



  • Ingresaré el comando pwd para ver el directorio actual.



  • A continuación agregaré un nuevo directorio al PATH, para que mi programa holamundo pueda ser ejecutado en cualquier directorio.

         Para esto, se debe ingresar lo siguiente:

PATH=$PATH:/home/marjury   
export PATH
echo $PATH

       Para ejecutar el programa solo se ingresará el nombre del mismo, como se muestra           en la siguiente gráfica.



  •  En la gráfica siguiente se puede observar la ejecución del programa holamundo en diferentes directorios.


Nuestro directorio /home/marjury se agregará a la variable PATH. Sin embargo, estos cambios no son permanentes y la próxima vez que el usuario acceda a su cuenta todas las modificaciones se habrán perdido.



2. De forma permanente

  • Si desea configurar PATH de forma permanente debe editar el archivo de configuración de su shell de conexión. 
  • Cuando un usuario se loguea en el sistema se ejecuta un archivo llamado .bashrc. Este es un archivo de sistema que se encuentra en la carpeta del usuario /home/usuario/.bashrc.
  • Este script es un buen lugar para añadir la variable de entorno. Aunque también existen otros sitios.

        Para esto utilizaremos los siguientes comandos:

export PATH=$PATH:/home/user >> /home/user/.bashrc
source /home/user/.bashrc
echo $PATH

         EL comando source lo utilizó para que los cambios surtan efecto.
         El comando echo como anteriormente mencione se utiliza para ver los directorios                 contenidos en el PATH.




Así a cada conexión su PATH contendrá su directorio /home/user
Para probar que se ha guardado correctamente podemos loguearnos nuevamente e ingresar el comando: 
                                                        echo $PATH.





jueves, 16 de octubre de 2014

ARQUITECTURA DE UN SISTEMA INFORMÁTICO: RASPBERRY PI

Primero les daré un breve concepto de sistema informático.

Hardware de un ordenador
Un sistema informático es un conjunto de partes que funcionan relacionándose entre sí con un objetivo preciso. Sus partes son: hardware, software y las personas que lo usan. Por ejemplo, una computadora, sus dispositivos periféricos y la persona que la maneja, pueden constituir un sistema informático.

Un sistema informático normal emplea un sistema que usa dispositivos que se usan para programar y almacenar programas y datos.



Sistema Informático

En el siguiente pdf podrán ver la arquitectura de un RASPBERRY PI



sábado, 4 de octubre de 2014

INTRODUCCION

Bienvenid@s a tod@s

Hola, mi nombre es Marjury, soy estudiante de la carrera Ingeniería Electrónica en Redes De Información de la Escuela Politécnica Nacional.
El propósito de este blog es compartirles los conocimientos adquiridos en la asignatura de Sistemas Operativos, para ello, subiré  entradas con información sobre dicha asignatura, en el transcurso de este tiempo.
Podrán dejar sus comentarios o sugerencias, estas serán bien recibidas para el mejoramiento de este blog.

Espero que les  guste mi blog y que  sea de gran ayuda en el futuro.

Gracias.

 

INSTALACION DE UBUNTU 14.04 EN VIRTUALBOX

Antes de la instalación quiero darles a conocer que es Ubuntu y VirtualBox.
  • Ubuntusistema operativo basado en Linux y que se distribuye como software libre, el cual incluye su propio entorno de escritorio denominado Unity. Esta orientado al usuario novel y promedio, con un fuerte enfoque en la facilidad de uso y en mejorar la experiencia de usuario. Está compuesto de múltiple software normalmente distribuido bajo una licencia libre o de código abierto.
Podrás descargar Ubuntu 14.04 desde www.ubuntu.com
  • VirtualBox: software de virtualización para arquitecturas x86/amd64, creado originalmente por la empresa alemana innotek GmbH. Actualmente es desarrollado por Oracle Corporation como parte de su familia de productos devirtualización. Por medio de esta aplicación es posible instalar sistemas operativos adicionales, conocidos como «sistemas invitados», dentro de otro sistema operativo «anfitrión», cada uno con su propio ambiente virtual.

Podrás descargar VirtualBox desde www.virtualbox.org

En el siguiente Pdf, podrán ver paso a paso la instalación de Ubuntu 14.04 en VirtualBox.
Ubuntu 14.04 en VirtualBox