viernes, 15 de febrero de 2019

Como saber la Mac de un equipo consultando la IP

A varias personas les puede surgir la duda de como saber la mac de un equipo consultando la IP del mismo,desde otra estación de trabajo, con los siguientes comando lo puedes lograr.

Primero hacemos ping a la ip que del host que vamos a consultar

#ping 128.10.10.51

Una vez que se genera el ping se cancela y se procede a realizar el siguiente comando, para que muestre la mac del equipo

#arp -a


Error de Ruby current directory: /var/lib/gems/2.3.0/gems/

RubyGems que es un gestor de paquetes para el lenguaje de programación Ruby.

RubyGems proporciona un formato estándar y autocontenido (llamado gem) para poder distribuir programas o bibliotecas en Ruby, una herramienta destinada a gestionar la instalación de éstos, y un servidor para su distribución.

Al momento de instalar paquetes de ruby y utilizar rubygems pueden surgir errores como el siguiente:

Error
ERROR: Failed to build gem native extension.
current directory: /var/lib/gems/2.3.0/gems/nio4r-1.2.1/ext/nio4r 

    current directory: /var/lib/gems/2.3.0/gems/nokogiri-1.10.1/ext/nokogiri
/usr/bin/ruby2.3 -r ./siteconf20190215-12565-goelrr.rb extconf.rb
mkmf.rb can't find header files for ruby at /usr/lib/ruby/include/ruby.h

Para solventar el error que se muestra anteriormente se deben instalar los siguientes paquetes

Solución
aptitude install ruby-dev zlib1g-dev liblzma-dev 

jueves, 14 de febrero de 2019

Captura el tráfico de la red con Darkstat


Darkstat es una herramienta para Linux, usualmente viene incluida en la una gran cantidad de repositorios oficiales. 

Para iniciar debemos instalar en nuestra distribución Debian. Para ello, abrimos un terminal y tecleam

#aptitude install darkstat


Cómo configurar Darkstat

Para configurar Darkstat se debe editar el archivo de configuración de que se encuentra en la ruta “/etc/darkstat/init.cfg”.

Nota: Antes de poder ejecutar la herramienta debemos cambiar unos valores en este archivo, por lo que desde el mismo terminal volvemos a colocar lo siguiente:

Respaldo del original
cp /etc/darkstat/init.cfg /etc/darkstat/init.cfg-original

a continuacion modificamos:
nano /etc/darkstat/init.cfg

Una vez que entramos al archivo de configuración observamos lo siguiente:



Aquí debemos configurar los siguientes parámetros

Cambiamos de No a Yes
START_DARKSTAT=yes

Si estamos analizando la interfaz Lan colocamos -i eth0 en el caso que estemos utilizando la interfaz Wan utilizamos -i wan0
INTERFACE="-i eth0"

El puerto por default que trae es 666 se lo cambiaremos a 8081 o el de su preferencia
PORT="-p 8081"

Aqui colocamos la ip del equipo local que tenemos 
BINDIP="-b 128.10.10.180"

En este espacio colocamos el Gateway y la mascara de red.
(Pertenece a un Rango Privado o Reservado )
LOCAL="-l 128.10.10.1/255.255.255.0"

Por ultimo descomentamos DNS
DNS="--no-dns"

Debería quedar como lo muestra la siguiente imagen


Una vez configurado guardamos y nos dirigimos al navegador donde de forma gráfica observaremos el trafico de red de nuestro equipo y de las ip de la red.

martes, 12 de febrero de 2019

Como montar unidad externas (USB) en Linux

Primero debemos saber como esta identificado nuestro dispositivo usb en nuestro equipo.
Usualmente el dispositivo se muestra en /dev/sdb* en los casos mas comunes se muestra en /dev/sdb1

Pasos para identifica el dispositivo como sdb en la consola:

ls -l /dev/sd*

o

ls /dev/sdb*

Saldrá algo como esto:

/dev/sdb /dev/sdb1

Antes de continuar es bueno informar que para montar se debe usar mount y para desmontar umount.

Creamos primero una carpeta para montar el contenido de la memoria USB.

#mkdir /mnt/usb

Para saber que formato tiene el dispositivo de almacenamiento colocamos el siguiente comando

#fdisk -l

Montamos el dispositivo

Una vez que ya sabemos el formato en que esta nuestro dispositivo tenemos varias opciones depende el formato. 

En caso de montar un dispositivo con el sistema de archivos de memoria USB FAT es el siguiente comando

#mount -t vfat /dev/sdb1 /media/usb

  • Detallando el comando anterior tenemos mount el cual indica montar. 
  • El parámetro -t vfat esta indicando el sistema de archivos a montar es del tipo FAT
  • La ruta /dev/sdb1 es la partición de nuestra memoria USB.
  • La ruta /media/usb es el directorio en que se montará el contenido de la partición /dev/sdb1 de nuestra memoria USB.

En el caso que mi memoria USB estuviera formateada en NTFS el comando para montar la memoria USB seria el siguiente comando

mount -t ntfs-3g /dev/sdb1 /media/usb

  • La palabra mount indica montar. 
  • El parámetro -t ntfs-3g especificamos que el sistema de archivos a montar es del tipo NTFS
  • La ruta /dev/sdb1 es la partición de nuestra memoria USB y /media/usb es el directorio en que se montará el contenido de la partición /dev/sdb1 de nuestra memoria USB.

La manera mas comun de hacerlo es la siguiente

#mount /dev/sdb1 /mnt/usb

Para verificar que el dispositivo se la partición colocamos los siguientes comando

Accedemos al carpeta:

cd /mnt/usb/

Listar su contenido
ls

Para desmontar el dispositivo colocamos el siguiente comando

#umount /dev/sdb

jueves, 7 de febrero de 2019

Tutorial de tcpdump análisis de paquetes de red en Linux

Tcpdump es una herramienta de línea de comandos utilizada en sistemas operativos Linux que permite capturar, mediante la biblioteca libpcap, el tráfico de una red LAN, WAN, etc. 


Primero iniciamos con la instalación de tcpdum

#apt install tcpdump


Una vez instalado tenemos la opción de diferente comando depende las necesidades del momento.

-Comando para ver que interfaces de red tenemos instaladas
#tcpdump -D



-El comando tcpdump con el parámetro mas sencillo
#tcpdum -A

-Iniciamos con la captura de paquetes en la interfaz wlan0 la red inalambrica
#tcpdump -nS -i wlan0

-Comenzar a utilizar tcpdum en modalidad verbose para todas las interfaces de red
#tcpdump -v -i any

-Permite evitar que tcpdump ubique los nombre de dominio de las IP que son capturadas
#tcpdump -n -v

-Comando para hacer capturas por protocolo
#tcpdump -i eth0 udp
#tcpdump -i eth0 tcp
#tcpdump -i eth0 icmp

-Comando para hacer capturas del protocolo por un puerto especifico
Ejemplo del tráfico WEB por el puerto UDP 80:
#tcpdump -i eth0 tcp port 80

Ejemplo del tráfico DNS por el puerto UDP 53:

#tcpdump -i eth0 udp port 53

-Comando para ver paquetes de un host especifico
#tcpdump host 192.168.1.50 -v

-Comando para ver paquetes de un host y puerto especifico
#tcpdump host 192.168.1.50 and port 80 -v

-Host o IP de origen/destino
#tcpdum -i interfaz protocolo puerto condicion src ip

Especificamos todavía más, capturamos el tráfico TCP por el puerto 80, pero sólo visualizamos el tráfico originado desde la IP 192.168.1.50. Para ello usamos el parámetro “src“. 

Como estamos utilizando más de un parámetro, debemos comenzar a añadir condicionales (and|or)

El siguiente ejemplo captura el tráfico que cumple las dos condiciones, puerto TCP 80 y origen IP 192.168.1.50:
#tcpdump -i eth0 tcp port 80 and src 192.168.1.50

Al igual que existe IP/host de origen, existe de destino, el parámetro es “dst“. 

En este ejemplo utilizamos el condicional “or” en lugar de “and”, de modo que para que se capture tráfico, o viene por el puerto 80 TCP o tiene destino la IP 192.168.1.50 (sea cual sea el puerto y protocolo):
#tcpdump -i eth0 tcp port 80 and dst 192.168.1.50

-Comando para filtrar los paquetes con origen 192.168.1.50 que lleven destino al puerto 80
#tcpdump src host 192.168.1.50 and dst port 80 -v

-Comando que permite capturar todo el tráfico excepto ciertas condiciones
Además de los condicionales “and|or” que comentaba antes, también podemos utilizar “not” para descartar cierto tráfico

Por ejemplo, vamos a capturar todo el tráfico a excepción del tráfico por protocolo ICMP:
#tcpdump -i eth0 not icmp

También podemos usar varias condiciones. Por ejemplo, capturar todo el tráfico a excepción del ICMP y el TCP:
#tcpdump -i eth0 not icmp and not tcp

-Comando para capturar numero de paquetes específicos con destino a un puerto en especifico
#tcpdum -i cant de paquete dst puerto


Aquí el ejemplo
tcpdump -c 3 dst port 80

lunes, 28 de enero de 2019

Actualizar de Debian 8 a Debian 9

Primero se procede a la actualización completa de Debian 8 “Jessie”
Antes de iniciar con la actualización, se debe actualizar completamente nuestro sistema Debian 8 “Jessie” actual mediante los siguientes pasos:
# apt-get update
# apt-get upgrade
# apt-get dist-upgrade

NOTA: Cuidado a la hora de actualizar ciertos paquetes que ya vienen pre-configurados en la imagen de Debian 8, ya que si se borra la configuración luego es posible que algunas configuraciones fallen. Por ejemplo, si hay alguna actualización de cloud-init os pedirá si queréis sustituir la configuración que ya hay creada. Si le dais que si, borraréis la configuración que hemos creado nosotros y es posible que tengáis problemas a la hora de redimensionar recursos.

Si todo transcurre sin problemas, realizamos una verificación de la base de datos para paquetes parcialmente instalados, que faltan y obsoletos:

# dpkg -C

Si no se reportan errores, entonces comprobamos los paquetes que están retenidos:

# apt-mark showhold

Los paquetes en espera (in hold) no se actualizarán, lo que puede causar incoherencias después de la actualización de Stretch. Antes de pasar a la siguiente parte, se recomienda corregir todos los problemas producidos por los dos comandos anteriores.

Actualizar repositorios a Debian 9 “Stretch”
Ahora que tenemos un sistema actual completamente actualizado, es hora de volver a sincronizar los repositorios con nuevas fuentes de Debian 9 “Stretch”. Esto se hace editando el archivo /etc/apt/sources.list para incluir el repositorio de paquetes de Debian 9. Primero, haga una copia de seguridad de la /etc/apt/sources.list actual:

# cp /etc/apt/sources.list /etc/apt/sources.list_backup

Para ello tenemos que cambiar “jessie” por “stretch” del fichero /etc/apt/sources.list, para ello usaremos el comando sed:

# sed -i 's/jessie/stretch/g' /etc/apt/sources.list

Una vez lo hemos cambiado, actualizamos los repositiorios:

# apt-get pdate

Actualización de Debian 8 a Debian 9
Antes de actualizar, podemos mirar que paquetes tienen disponible alguna actualización con el siguiente comando:

# apt-get upgrade

# apt-get dist-upgrade

Durante la actualización habrá ficheros de configuración que actualizar, para que haya problemas con nuestra plataforma, nosotros recomendamos guardar los ficheros y no sustituir nuevas configuraciones.

Reiniciamos el servidor:

# reboot

Y una vez inicie podremos comprobar que tenemos Debian 9 “Stretch” instalado correctamente:

# cat /etc/os-release
PRETTY_NAME="Debian GNU/Linux 9 (Stretch)"
NAME="Debian GNU/Linux"
VERSION_ID="9"
VERSION="9 (Stretch)"
ID=debian
HOME_URL="http://www.debian.org/"
SUPPORT_URL="http://www.debian.org/support"
BUG_REPORT_URL="https://bugs.debian.org/"

jueves, 29 de noviembre de 2018

Instalar navegador Tor en Debian

Primero abrimos un terminal y entramos como usuario root luego procedemos a colocar los repositorios del navegador Tor .

Agregamos al archivo /etc/apt/sources.list los repositorios oficiales.
nano /etc/apt/sources.list 

añadimos:
deb https://deb.torproject.org/torproject.org stretch main
deb-src https://deb.torproject.org/torproject.org stretch main

una vez colocado los repositorios procedemos guardar ctrl+o y ctrl+x para salir 

Ahora procedemos a instalar la clave gpg
gpg --keyserver keys.gnupg.net --recv A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89
gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-key add -

por ultimo actualizamos los paquetes del sistema
sudo ​apt update

y una vez actualizado procedemos a la instalación del navegador tor
sudo apt install tor deb.torproject.org-keyring

Una vez instalado el navegador Tor, procedemos a la configuración, donde podemos elegir desde que pais queremos navegar.



Para esto se debe editar el archivo Tor, que se encuentra en la ruta: /etc/tor/torrc se debe agregar al final lo siguiente:

StrictNodes 1
ExitNodes {ES}

Con esto lo que hace es forzar el navegador a recibir una IP del pais de nuestra elección.
Puede ser (EC) Ecuador, (IT) Italia, (AR) Argentina, (VE) Venezuela. Para comprobar entramos a http://www.ip-adress.com/ y comprobamos que este funcionando bien.

Con esto podemos decir que culminamos la instalación, podemos realizar la ejecución colocando tor-browser.