martes, 10 de agosto de 2021

Tutorial de Iptables – Asegura tu VPS Ubuntu con un Firewall de Linux

 Está Escrito:

Dios es nuestro amparo y fortaleza, Nuestro pronto auxilio en las tribulaciones.(Salmos 46:1)

Tomado de: Hostinger

Iptables es el firewall de Linux que se utiliza para supervisar el tráfico entrante y saliente a un servidor y filtrarlo basado en reglas definidas por el usuario para evitar que cualquier persona acceda al sistema. Utilizando Iptables puede definir reglas que sólo permitirán tráfico selectivo en su servidor. En este tutorial de Iptables, aprenderás a proteger tu aplicación web mediante Iptables.

Nota: Para los usuarios de RHEL / CentOS hay un servicio denominado firewallD que ya está instalado en estos sistemas operativos. Si desea utilizar Iptables, pero primero debes desactivarlo.

¿Qué necesitas?

Antes de comenzar con el tutorial de Iptables, necesitará lo siguiente:

Si desesa obtener más información sobre los comandos SSH y SSH, sigue este tutorial.

Fundamentos de Iptables

Todos los datos se envían en forma de paquetes a través de Internet. El kernel de Linux proporciona una interfaz que filtra los paquetes de tráfico entrante y saliente usando tablas de filtros de paquetes. Iptables es una aplicación de línea de comandos y un firewall de Linux que puedes configurar, mantener e inspeccionar estas tablas. Puedes definirse varias tablas. Cada tabla puede contener múltiples cadenas. Una cadena no es más que un conjunto de reglas. Cada regla define qué hacer con el paquete si coincide con ese paquete. Cuando el paquete es emparejado, se le da un TARGET. Un objetivo puede ser otra cadena que coincida con o uno de los siguientes valores especiales:

  • ACCEPT: Significa que el paquete podrá pasar.
  • DROP: Significa que no se permitirá que el paquete pase.
  • RETURN: Significa omitir la cadena actual y volver a la siguiente regla de la cadena en la que fue llamado.

Para el alcance de este tutorial de iptables, vamos a trabajar con una de las tablas por defecto llamada filtro (filter). La tabla de filtros tiene tres cadenas (conjuntos de reglas).

  • INPUT – Esta cadena se utiliza para controlar los paquetes entrantes al servidor. Puede bloquear / permitir conexiones basadas en puerto, protocolo o dirección IP de origen.
  • FORWARD – Esta cadena se utiliza para filtrar los paquetes que entran al servidor pero que deben ser reenviados en otro lugar.
  • OUTPUT – Esta cadena se utiliza para filtrar los paquetes que salen del servidor

iptables

Paso 1 – Instalación de Iptables Firewall de Linux

1. Instalación de Iptables

Iptables viene preinstalado en casi todas las distribuciones de Linux. Pero si no lo tienes instalado en el sistema Ubuntu / Debian, usa:

sudo apt-get update
sudo apt-get install iptables

2. Comprobación del estado actual de los iptables

Con este comando, puede comprobar el estado de su configuración actual de Iptables. Aquí se utiliza la opción -L para listar todas las reglas y la opción -v es para una lista más tediosa. Tenga en cuenta que estas opciones distinguen entre mayúsculas y minúsculas.

	
sudo iptables -L -v

Ejemplo:

Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target     prot opt in     out     source             destination         
 
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target     prot opt in     out     source             destination         
 
Chain OUTPUT (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target     prot opt in     out     source             destination

Esta es la salida del comando anterior. Aquí, las tres cadenas se establecen en la política ACCEPT predeterminada. Actualmente no hay reglas para ninguna de las cadenas.

Para hacer más práctico este tutorial de Iptables, modificaremos la cadena INPUT para filtrar el tráfico entrante.

Paso 2 – Definición de reglas de cadena

Definir una regla significa añadirla a la lista (cadena). Aquí está el comando Iptables formateado con opciones regulares. No tenemos que especificar todos ellos.

sudo iptables -A  -i  -p  -s  --dport   -j

Aquí -A significa añadir. La cadena se refiere a la cadena en la que queremos añadir nuestras reglas. Interface es la interfaz de red en la que se desea filtrar el tráfico. Protocol se refiere al protocolo de la red de los paquetes que desea filtrar. También puede especificar el puerto, no el del puerto en el que desea filtrar el tráfico.

Para obtener información más detallada sobre el comando Iptables y sus opciones, puede consultar la página principal de Iptables.

1. Habilitar el tráfico en localhost

Queremos que todas las comunicaciones entre aplicaciones y bases de datos en el servidor continúen como de costumbre.

sudo iptables -A INPUT -i lo -j ACCEPT

Ejemplo:

Chain INPUT (policy ACCEPT 7 packets, 488 bytes)
pkts bytes target     prot opt in     out     source               destination         
0     0 ACCEPT     all  --  lo     any     anywhere             anywhere

-A se utiliza una opción para añadir la regla a la cadena INPUT, aceptar todas las conexiones en la interfaz lo. lo significa la interfaz de loopback. Se utiliza para todas las comunicaciones en el localhost, como las comunicaciones entre una base de datos y una aplicación web en la misma máquina.

2. Habilitación de conexiones en el puerto HTTP, SSH y SSL

Si queremos que nuestras conexiones regulares HTTP (puerto 80), https (puerto 443), ssh (puerto 22) continúen como de costumbre. Introduce los siguientes comandos para habilitarlos. En los comandos siguientes, hemos especificado el protocolo con la opción -p y el puerto correspondiente para cada protocolo con la opción -dport (puerto de destino).

sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT

Ahora se aceptarán todas las conexiones de protocolo TCP con puertos especificados.

3. Filtrado de paquetes basados en la fuente

Si desea aceptar o rechazar paquetes basados en la dirección IP de origen o en el intervalo de direcciones IP, puede especificarlo con la opción -s. Por ejemplo, para aceptar paquetes desde la dirección 192.168.1.3 –

sudo iptables -A INPUT -s 192.168.1.3 -j ACCEPT

Puede eliminar paquetes de una dirección IP con un comando similar con la opción DROP.

sudo iptables -A INPUT -s 192.168.1.3 -j DROP

Si desea eliminar paquetes de un rango de direcciones IP, debe utilizar el módulo Iprange con la opción -m y especificar el intervalo de direcciones IP con -src-range.

sudo iptables -A INPUT -m iprange --src-range 192.168.1.100-192.168.1.200 -j DROP

4. Eliminar el resto del tráfico

Nota: Es importante eliminar el resto del tráfico después de definir las reglas, ya que impide el acceso no autorizado a un servidor desde otros puertos abiertos.

sudo iptables -A INPUT -j DROP

Este comando descarta todo el tráfico entrante distinto de los puertos mencionados en los comandos anteriores. Puede comprobar su conjunto de reglas ahora con:

sudo iptables -L -v

5. Eliminación de reglas

Si desea eliminar todas las reglas y comenzar con una pizarra limpia, puede utilizar el comando flush.

	
sudo iptables -F

Este comando borra todas las reglas actuales. Si deseas eliminar una regla específica, puede hacerlo con la opción -D. En primer lugar, liste todas las reglas con números introduciendo el comando siguiente:

sudo iptables -L --line-numbers

A continuación, obtendrá una lista de reglas con números.

Chain INPUT (policy ACCEPT)
num  target     prot opt source               destination         
1    ACCEPT     all  --  192.168.0.4          anywhere            
2    ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:https
3    ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:http
4    ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:ssh

Para eliminar una regla, especifique el número en la lista y la cadena de la regla. En nuestro caso, la cadena INPUT y el número 3.

sudo iptables -D INPUT 3

Paso 3 – Cambios persistentes

Las reglas de Iptables que hemos creado se guardan en la memoria. Eso significa que tenemos que redefinirlos en el reinicio. Para que estos cambios sean persistentes después del reinicio, utilice el siguiente comando en los sistemas Ubuntu / Debian:

sudo /sbin/iptables-save

Este comando guarda las reglas actuales en el archivo de configuración del sistema que se utiliza para reconfigurar las tablas en el momento del reinicio. Debe ejecutar este comando cada vez que realice cambios en las reglas. Para desactivar este cortafuegos, simplemente limpie todas las reglas y haga que los cambios sean persistentes.

sudo iptables -F
sudo /sbin/iptables-save

Conclusión

En este tutorial de Iptables, hemos utilizado el firewall de Iptables Linux para permitir solamente tráfico en puertos específicos. También nos hemos asegurado de que nuestras reglas se guardarán después del reinicio. Este firewall de Linux eliminará los paquetes no deseados, pero hay una advertencia aquí que Iptables puede gobernar solo el tráfico de ipv4. Si tu casilla de servidor virtual VPS ha habilitado la red ipv6, debe establecer diferentes reglas para ese tráfico con ip6tables.

 Tomado de: Sololinux

Configuración básica de Iptables en Linux

Configuración básica de Iptables en Linux.

Este articulo donde realizamos una configuración básica de Iptables en Linux, tiene como propósito ser un paso previo a nuestro próximo tutorial, «Proteger un servidor de ataques DDoS con Iptables«.

Iptables es una aplicación que nos permite la administración de las tablas incluidas en el firewall del kernel Linux, implementando los módulos de Netfilter, reglas e indicaciones.

Aun que existen intentos de suplantar Iptables por otras aplicaciones, la verdad es que ninguna a llegado a cuajar definitivamente. Iptables sigue siendo la herramienta más usada y la preferida por los sysadmin, tal vez por su seguridad y robustez junto con su facilidad de uso.

Vamos al articulo (ejemplos de Iptables creados en un servidor CentOS 7 Minimal ya configurado y operativo).

Configuración básica de Iptables en Linux 1

 

Configurar Iptables en Linux

 

Comprobamos la versión de iptables que tenemos instalada.

iptables -V

ejemplo…
iptables -V
iptables v1.4.21

 

Vemos el estado de Iptables.

yum info iptables

ejemplo…
yum info iptables
Paquetes instalados
Nombre : iptables
Arquitectura : x86_64
Versión : 1.4.21
Lanzamiento : 24.el7
Tamaño : 1.5 M
Repositorio : installed
Desde el repositorio : base
Resumen : Tools for managing Linux kernel packet filtering capabilities
URL : http://www.netfilter.org/
Licencia : GPLv2
Descripción :The iptables utility controls the network packet filtering code in
: the Linux kernel. If you need to set up firewalls and/or IP
: masquerading, you should install this package.
Paquetes disponibles
Nombre : iptables
Arquitectura : i686
Versión : 1.4.21
Lanzamiento : 24.el7
Tamaño : 423 k
Repositorio : base/7/x86_64
Resumen : Tools for managing Linux kernel packet filtering capabilities
URL : http://www.netfilter.org/
Licencia : GPLv2
Descripción :The iptables utility controls the network packet filtering code in
: the Linux kernel. If you need to set up firewalls and/or IP
: masquerading, you should install this package.

Nota: Si tienes algún problema puedes instalar iptables con:
yum install iptables -y

Configuración básica de Iptables en Linux 2

 

La configuración por defecto de Iptables en CentOS no permite ni el acceso HTTP (puerto tcp 80), ni el HTTPS (puerto tcp 443) que son los que se usan por ejemplo en un servidor Apache.

Eliminar las reglas predefinidas de Iptables.

iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X

 

Establecemos nuevas reglas predeterminadas y agregamos el acceso al puerto 80 y 443.

iptables -P INPUT DROP
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT

iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -m state --state ESTABLISHED -j ACCEPT
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A INPUT -p icmp -j ACCEPT
iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 443 -j ACCEPT

 

Habilitamos el inicio de Iptables con el sistema, guardamos las reglas y reiniciamos.

chkconfig iptables on

service iptables save

service iptables restart

Nota: Puedes iniciar o detener iptables con:
# Iniciar
service iptables start
# Detener
service iptables stop

 

Como preámbulo al próximo articulo activaremos una protección contra ataques synflood.

Editaremos el archivo «/etc/sysctl.conf».

nano /etc/sysctl.conf

Copia y pega lo siguiente:
net.ipv4.tcp_syncookies = 1
net.ipv4.conf.all.rp_filter = 1
net.ipv4.conf.default.rp_filter = 1
net.ipv4.tcp_max_syn_backlog = 8192
net.ipv4.netfilter.ip_conntrack_max = 1048576

Guarda el archivo y cierra el editor.

De nuevo en la consola, ejecuta las siguientes reglas.

iptables -A PREROUTING -i eth0 -p tcp -m tcp --dport 80 --syn -m recent --set --name CHECK --rsource
iptables -A PREROUTING -i eth0 -p tcp -m tcp --dport 80 --syn -m recent --update --seconds 5

 

Recuerda visitar el siguiente articulo: «Proteger un servidor de ataques DDoS con Iptables«.



viernes, 6 de agosto de 2021

Cómo instalar Go (Golang) en Linux

 Está Escrito:

La suma de tu palabra es verdad, Y eterno es todo juicio de tu justicia. (Salmos 119:160)

Tomado de: comoinstalar

Go (también llamado golang) es un lenguaje de programación de código abierto desarrollado por un equipo (Robert Griesemer, Rob Pike y Ken Thompson) en Google y muchos colaboradores de la comunidad de código abierto.

Go es expresivo, simple, confiable, conciso, limpio y eficiente, lo que hace que los programadores escriban/desarrollen aplicaciones de manera fácil y más productiva, que en máquinas multicore y en red. El lenguaje Go fue diseñado para resolver críticas comunes de otros lenguajes, manteniendo sus características positivas.

Algunas aplicaciones notables de código abierto que utilizan Go.

  • Docker, un conjunto de herramientas para desplegar contenedores de Linux.
  • Snappy, un gestor de paquetes para Ubuntu.
  • Dropbox, migró algunos de sus componentes críticos de Python a Go
  • Google, para muchos proyectos, entre los que se incluye el servidor de descargas dl.google.com
  • MongoDB, herramientas para administrar instancias de MongoDB.
  • Netflix, para dos partes de su arquitectura de servidor.
  • SoundCloud, para “decenas” de sistemas
  • Uber, para el manejo de grandes volúmenes de consultas basadas en geofence.

INSTALAR GO EN LINUX A TRAVÉS DEL GESTOR DE PAQUETES

La mayor parte de la distribución de Linux incluía el lenguaje Go en el repositorio oficial, por lo que podemos instalarlo fácilmente pero obtendremos una versión más antigua. Si prefieres el último lanzamiento, intenta construirlo manualmente.

[Instalar go en Debian/Ubuntu/Mint]
$ sudo apt-get install golang
[Instalar go en RHEL/CentOS]
$ sudo yum install golang
[Instalar go en  Fedora]
$ sudo dnf install golang
[Instalar go en openSUSE]
$ sudo zypper install golang
[Instalar go en Mageia]
$ sudo urpmi golang
[nstalar go en Arch Linux]
$ sudo pacman -S golang


Instalar Go en Linux Ubuntu Debian

Para trabajar con el lenguaje Go, crea un directorio de área de trabajo en tu directorio home. Go mantendrá todos los archivos aquí.

mkdir ~/go_proyecto

Asegúrate de que tienes que configurar las variables de entorno relacionadas con Go para que funcione. Agrega una línea usr/local/go/bin a tu /etc/profile para una instalación de todo el sistema o agrega $HOME/.profile para la instalación específica del usuario.

  • Configurar las variables de entorno GOPATH y GOBIN:

GoPATH es espacio de trabajo del proyecto. Agrega las siguientes líneas al archivo $HOME/.profile.

export GOPATH=$HOME/go_proyecto
export GOBIN=$GOPATH/bin

MÉTODO MANUAL PARA INSTALAR GO EN LINUX

Si prefieres la última versión, visita el sitio web de golang y descarga el archivo de archivo más reciente y siga las instrucciones para instalarlo.

Descargar Go Programming Language


$ wget https://storage.googleapis.com/golang/go1.8.linux-amd64.tar.gz
$ sudo tar -xzf go1.8.linux-amd64.tar.gz -C /usr/local

Para trabajar con el lenguaje Go, crea un directorio de área de trabajo en tu directorio home. Go mantendrá todos los archivos aquí.

mkdir ~/go_proyecto

Asegúrate de que tienes que configurar las variables de entorno relacionadas con Go para que funcione. Agrega una línea usr/local/go/bin a tu /etc/profile para una instalación de todo el sistema o agrega $HOME/.profile para la instalación específica del usuario.

Cuando instala Go en una ubicación diferente en lugar de la predeterminada /usr/local/go, debes configurar la variable de entorno GOROOT para que apunte al directorio.

export PATH=$PATH:/usr/local/go/bin

Por ejemplo, si instalaste Go en tu directorio home, debes agregar comandos como los siguientes a $HOME/.profile

export GOROOT=$HOME/go
export PATH=$PATH:$GOROOT/bin
  • Configurar las variables de entorno GOPATH y GOBIN:

GoPATH es espacio de trabajo del proyecto. Agrega las siguientes líneas al archivo $HOME/.profile.

export GOPATH=$HOME/go_proyecto
export GOBIN=$GOPATH/bin

Ejecute el siguiente comando para que los cambios surtan efecto.

$ source ~/.profile
Instalación manual de Go en Linux

Instalación manual de Go en Linux

COMPROBAR LA INSTALACIÓN DE GOLANG

Ejecute el siguiente comando para ver la versión del lenguaje Go.

$ go version

Compruebe las variables de entorno de Go:

$ go env

PRUEBA TU INSTALACIÓN: ‘HOLA MUNDO’ CON GO

Compruebe que Go está instalado correctamente mediante la creación de un programa simple. Ya hemos creado el directorio de espacio de trabajo llamado go_proyecto.

  • A continuación, haga el directorio src/hellodentro de su espacio de trabajo.
$ mkdir -p ~/go_proyecto/src/HolaMundo
  • Crea un nombre de archivo hola.go y agrega el siguiente programa simple.
$ nano ~/go_proyecto/src/HolaMundo/hola.go
package main

import "fmt"

func main() {
fmt.Printf("Saludos desde ComoInstalar.info\n")
}
Hola Mundo con Go

Hola Mundo con Go

  • Compila el archivo fuente hola.go con el comando go install
go install $GOPATH/src/HolaMundo/hola.go
  • Ejecuta el programa y mira la salida.
$ $GOBIN/hello
Comprobar instalación de GoLang en Linux

Comprobar instalación de GoLang en Linux

¡Eso es todo! Cualquier duda déjala en los comentarios, y por favor, ¡Comparte este artículo en las redes sociales!


domingo, 1 de agosto de 2021

Historial de comandos en GNU Linux con history

Está Escrito:

Respondió Rut: No me ruegues que te deje, y me aparte de ti; porque a dondequiera que tú fueres, iré yo, y dondequiera que vivieres, viviré. Tu pueblo será mi pueblo, y tu Dios mi Dios. (Rut 1:16)

Lo admito, soy incapaz de recordar los pasos y los comandos que he utilizado para configurar o instalar un servicio al cabo de las semanas. Por suerte GNU Linux nos brinda una serie de herramientas con éste fin. Una de ellas es el comando history, que recoge todo lo escrito en la shell o línea de comandos a lo largo de un tiempo o número de entradas determinada.

Historial de comandos con history

La orden history nos muestra en pantalla, por defecto, el historial de comandos escritos en la terminal, guardados en el fichero .bash_history dentro de nuestra carpeta de usuario.

Si en la consola de mi equipo escribo:

1
history

Me mostrará lo siguiente:


Por orden de uso, vemos los comandos utilizados recientemente en el sistema operativo. Si listamos el fichero .bash_history con el comando cat, veremos idéntico resultado, ya que es en éste fichero donde se guarda dicho historial.

1
cat .bash_history

Y nos listará la información::



Aún así history, por defecto, tiene algunas limitaciones, a 500 o 1000 entradas por usuario, y otra problema es que si tenemos múltiples ventanas de consola abiertas sólo guardará información de la primera. Los parámetros del comando están ubicados en el fichero .bashrc, que se pueden modificar de manera fácil, veamos un ejemplo.

Los parámetros:

1
2
3

# for setting history length see HISTSIZE and HISTFILESIZE in bash(1) HISTSIZE=1000 HISTFILESIZE=2000

Indican el tamaño del historial y el máximo de ordenes que se almacenarán. Aquí podemos modificar los parámetros, sustituyendo ambas cantidades por la cifra ‘100000’, para que así siempre guarde todo el historial.

A continuación:

1
shopt -s histappend

De ésta manera se guardará el historial de todas nuestras terminales, es decir, se irán anexando en vez de sobrescribirse.

El comando también tiene una serie de parámetros adicionales:

  • history -n, muestra el número de líneas.
  • history -a, añade los comandos de la sesión actual al archivo de historial.
  • history -c, borra todo el historial.
  • history – d 500, borra el comando número quinientos del historial.

Otra manera de trabajar con el historial de comandos es la combinación de teclas CTRL+R, que nos permite buscar dentro del historial, buscando por palabra.

También podemos utilizar con el comando history algunos tips interesantes, que he descubierto en la web del amigo replicante:

  • Combinar con el comando tail, para por ejemplo descubrir los últimos comandos utilizados:  $history | tail -10, o bien los 10 primeros: $history | head -10
  • Si queremos que se ejecute justo el último de la lista escribimos: !!
  • O bien ejecutar un comando específico si sabemos su número en la lista: !74
  • Y de forma consecutiva: !54 & !74

Espero que el artículo os haya sido de utilidad, para mi lo ha sido sin duda, ya que es una información que viene bien siempre tener cerca.



sábado, 3 de julio de 2021

Linux: Instalar ifconfig

Está Escrito:

La justicia engrandece a la nación; Mas el pecado es afrenta de las naciones. (Proverbios 14:34)

Tomado de: Sysadmit

Linux: Instalar ifconfig

Las distribuciones de Linux modernas, no disponen del comando ifconfig para ver la configuración TCP/IP.

Al ejecutar ifconfig:

-bash: ipconfig: command not found

El comando ifconfig se encuentra dentro del paquete: net-tools.

En el año 2009, las grandes distribuciones decidieron no incluir el paquete net-tools, por tanto, no incluir ifconfig en las instalaciones por defecto.

Igualmente, es posible instalar ifconfig instalando el paquete net-tools.

Linux: Instalar ifconfig: Debian/Ubuntu:


sudo apt -y install net-tools

Linux: Instalar ifconfig: RedHat/CentOS:


yum install net-tools -y

Linux: Instalar ifconfig: Comando ip


El substituto a día de hoy del comando ifconfig es el comando ip.

El comando ip se encuentra dentro del paquete: iproute2

El paquete iproute2 incluye no solo las funcionalidades equivalentes a la herramienta ifconfig sino que también disponemos funciones equivalentes a los comandos route y arp.

El paquete iproute dos se encuentra en versiones de kernel superiores a la 2.2.

Si ejecutamos el comando ip sin parámetros, obtendremos la ayuda del comando.

El comando substitutivo a ifconfig sería: ip addr list

A continuación disponéis de un ejemplo de ejecución de: ifconfig y ip addr list

Linux: Instalar ifconfig

También el comando ip, dispone de muchas otras opciones.

Algunos ejemplos de uso del comando: ip

Bajar el interfaz de red: eth0 

ip link set eth1 down

Subir el interfaz de red: eth0 

ip link set eth1 up

Configurar la dirección IP en el interfaz: eth0

ip addr add 192.168.5.12/24 dev eth0

Para revisar las equivalencias del formato CIDR de la máscara, podéis consultar el siguiente enlace:

TCPIP: CIDR máscara IPv4 (SYSADMIT.com)

Eliminar la dirección IP en el interfaz: eth0

ip addr del 192.168.5.12/24 dev eth0

Cambiar MTU a 9000 del interfaz: eth0

ip link set mtu 9000 dev eth0

Ver tabla ARP del interfaz eth0

ip neighbor show dev eth0

Cambiar MAC del interfaz eth0

ip link set dev eth0 address AA:BB:CC:DD:EE:FF

Ver tabla de enrrutamiento

ip route show