viernes, 26 de febrero de 2016

Ncat: ¿Que es netcat?








Hoy y en adelante vamos a ver detenidamente que es y ejemplos sobre netcat. En las siguientes entradas veremos ejemplos prácticos en los que veremos y pondremos en práctica esta herramienta básica para cualquier IT.

Ncat tiene ya muchos años pero es una de las primeras herramientas que usé cuando me pidieron que iniciara un chat entre dos máquinas mediante un terminal y de las que sigo usando, Netcat nos permite abrir puertos sencillamente y asociar una shell a este. Después de esto nos permite jugar con esto de múltiples maneras transferencia de ficheros, chats, usarlo para que nos de la hora del mismo servidor, mensajes.

Antes de nada como siempre tendremos que leer algo de ncat en wikipedia por ejemplo:
Netcat es una herramienta de red que permite a través de intérprete de comandos y con una sintaxis sencilla abrir puertos TCP/UDP en un HOST (quedando netcat a la escucha), asociar una shell a un puerto en concreto (para conectarse por ejemplo a MS-DOS o al intérprete bash de Linux remotamente) y forzar conexiones UDP/TCP (útil por ejemplo para realizar rastreos de puertos o realizar transferencias de archivos bit a bit entre dos equipos). Fue originalmente desarrollada por Hobbit en 1996 y liberada bajo una licencia de software libre permisiva (no copyleft, similar a BSD, MIT) para UNIX. Posteriormente fue portada aWindows y Mac OS X entre otras plataformas. Existen muchos forks de esta herramienta que añaden características nuevas como GNU Netcat o Cryptcat.
Una vez tenemos una idea clara de lo que es netcat y que es lo que nos ofrece acabaremos mirando un pequeño vistazo como siempre al manual de netcat mediante "man netcat".





En siguientes entradas veremos más en profundidad casos prácticos en los que veremos lo que netcat nos ofrece y podemos hacer con él.

miércoles, 24 de febrero de 2016

Atop, monitorizando la carga en nuestro servidor Linux.






Hoy vamos a hablar de un monitor de sistema el cual nos es más que permitirá monitorizar el sistema, crear logs del mismo con reportes de actividad de los procesos de nuestro servidor Linux y el cual es básico para centralizar todos las cargas de trabajo de nuestro servidor.. 

Atop es un monitor interactivo que nos permite ver los usos de los recursos de todos los procesos, ver la utilización de los discos,adaptadores de red, cpu, memoria y un largo etcétera de posibilidades. Para instalarlo como nosotros hacemos uso de debian nos basta con "sudo aptitude atop" si tenemos otra distribución variaría. Una vez instalado lo iniciamos mediante "sudo atop".




Como vemos en la imagen se nos despliega la interfaz de terminal con todos los procesos y recursos monitorizados. Ahora vamos a dar un repaso los acrónimos que se nos muestran:

PRC: Este línea contiene el total de tiempo consumido de la CPU por el sistema (sys), el usuario (user), el total de los procesos presentes en este momento (proc), el total de número de entradas en ese momento(run), dormidos interrumpibles(tslpi), dormidos ininterrumpibles(tslpu), el número de procesos zombies(zombie), numero de llamadas clonadas del sistema(clones) y el numero de procesos finalizado durante el intervalo de resfresco (exit).

CPU: Esta línea contiene el porcentage de tiempo de CPU que usa en modo kernnel por todos los procesos (sys), en modo usuario (user) por todos los procesos activos (incluidos los procesos iniciados con un valor mas largo de cero), el manejo de las interrupciones(irq), también el porcentaje de tiempo de CPU no usada mientras no hay procesos esperando entrar o salir de disco(idle), tambien mientras un proceos espera a entrar o salir (wait), en casos de multiprocesador hay una línea adicional por cada uno de los procesador individuales.

CPL: Esta línea contiene la información sobre la carga de CPU, el numero de entradas que son permitidas para iniciarse en la CPU o también la espera de entrada/salida del disco, el número de cambios de contexto (csw), el número de servicios interrupidos(intr) y el numero de CPUs disponibles.

MEM: Esta línea contiene información relatada al consumo de memoria, como el total de la cantidad de la memoria física(tot), la cantidad de memoria libre(free), la cantidad de memoria uso cache(cache), la cantidad  memoria usada por el sistema de ficheros metadatos (buff) y la cantidad memoria usada por el kernel malloc's(slab).

SWP: Esta línea contiene la cantidad total de swap en el disco (tot), y la cantidad del espacio libre(feee), la convinación de la memoria virtual.

DSK: Esta línea contiene información sobre la utilización del disco, el porcentaje de tiempo que la unidad esta esperando respuesta (busy), el numero de solicitudes de lectura(read), el número de peticiones de lectura emitidas(write), el número de KiBytes por lectura(KiB/r), el número de KiBytes por escritura(KiB/w), el número de MiBytes por segundo de rendimiento por lecturas (MBr/s), el número de MiBytes por segundo de rendimiento por escritura(MBw/s), la media de espera (avq), la media de numero de milisegundos necesarios por una búsqueda(avio) por búsqueda, latencia y transferencia de datos.

NET: Esta es la información realatada a la utilización de red (TCP/IP), una de estas líneas muestra la actividad de la capa de transporte(TCP y UDP), una línea es la capa IP y una linea por cada interfaz activa.

Esta información del sistema está acompañada por la información del nivel de proceso, información que indica detalles relacionados con los procesos de utilización de los recursos que cambian durante el ultimo intervalo de tiempo( 10 segundos por defecto).

Un importante punto a mencionar son los colores usados por atop (rojo, cian y otros) para indicar el nivel critico del consumo de recursos, como ejemplo un uso excesivo o crítico se indicaría con color rojo.

En cuánto a los comandos interactivos, se puede controlar la salida de información desde el teclado. Por ejemplo, escribiendo m par amostrar la memoria usada, d para ver el uso de la memoria. n para ver la información relacionada al red, v para mostrar las características de los procesos, c la línea de comandos de los procesos, etc... En la siguiente imagen vemos un ejemplo de la opción v.




En definitiva Atop es una herramienta muy util que nos provee de un bucle de actualización de la información sobre la carga de trabajo de nuestro servidor y sus recursos. Como siempre podemos ver más exaustivamente los comandos de configuración en 'man atop'.

jueves, 11 de febrero de 2016

Explorando powershell: Comprobando conexión de red






En esta pequeña entrada sobre Powershell veremos como mostrar la información de diagnóstico de una conexión, en definitiva comprobaremos la conexión. Para ello haremos uso del comando "Test-NetConnection" con el cual haremos un test sobre nuestra conexión.

Para ello ejecutamos en nuestro terminal Powershell nuestro línea de comando "Test-NetConnection" y empezará el proceso que realiza un test contra la direccion "internetbeacon.msedge.net" como se muestra la imagen.





Una vez comprobado el resultado si es satisfactorio se nos muestra el resultado, mostrándonos los detalles del diagnóstico.





En caso contrario se nos mostrarían los errores comunes, en este caso no encuentra el host de destino por lo tanto la conexión esta funcionando.






En definitiva otro comando más que nos facilitará la tarea como IT.




miércoles, 3 de febrero de 2016

SCP: Copiando de manera segura.








Anteriormente en las entradas sobre ssh SCP  o secure copy no es mas que un medio para transferencia de ficheros entre host usando el protocolo SSH ( secure shell). Con ello podremos realizar nuestras copias de manera segura.

Ahora vamos a ver las diferentes maneras de usarlo:

· De local a remoto:

scp archivolocal usuario@ipdelservidor:/ruta/destino/del/archivodestino

· De remoto a local:

scp usuario@ipdelservidor:/ruta/archivoremoto /ruta/para/el/nuevo/archivo

· De remoto a remoto:

scp usuario@ipdelservidor1:/ruta/en/servidor1/archivo1usuario2@ipdelservidor2:/ruta/en/servidor2

· Para la copia recursiva de directorios usaremos -r como en los dos siguientes ejemplos:

scp -r archivolocal usuario@ipdelservidor:/ruta/destino/del/archivodestino

scp -r usuario@ipdelservidor:/ruta/archivoremoto /ruta/para/el/nuevo/archivo

Mediante scp podremos hacer copias seguras, compartir esos certificados de manera segura añadiendo la capa de seguridad que nos proporciona ssh.