
Estoy escribiendo un script para encontrar todos los detalles del firewall, información de enrutamiento y redes importantes relacionadas a través de la línea de comando. Puedo recuperar la configuración del firewall iptables -nvL
, pero no estoy seguro del resto. ¿Qué comandos debo usar para reunir todo lo demás?
Respuesta1
Puede obtener el estado de la interfaz mediante:
ifconfig
O mejor aún, use el comando "ip", por ejemplo:
ip addr
Para obtener la información de la ruta, utilice uno de estos:
route
route -n #no ptr resolving
ip route
Para reglas de firewall, use:
iptables -L # you can add -n to prevent name resolving
Para IPv6 puede agregar "-6" a los comandos "ip":
ip -6 addr
ip -6 route
...
También puede consultar "ethtool" para obtener el estado del enlace y la velocidad/dúplex:
ethtool eth0
Respuesta2
routel
Enumere mucha información, aunque en una forma que no sea realmente legible, pero es un volcado completo de todas las tablas de enrutamiento del host y brinda suficiente información para reconstituir la configuración de IP en el host. Esta información no es lo suficientemente completa como para reconstituir el enrutamiento de políticas. Si usas eso, también necesitarás ip rule
. De todos modos, como ejemplo, para IPv4 (incluso si también aparece IPv6):
# list all interfaces addresses (unicast/broadcast/anycast)
routel | grep "local"
# list all (except ipv6 link-local) addresses of interfaces
routel | grep "local" | grep "host"
# list all broadcast addresses of interfaces
routel | grep "local" | grep "link"
# list all routing entries
routel | grep -v "local" | grep -v "unspec"
# list all on-link routing entries
routel | grep -v "local" | grep -v "unspec" | grep "link"
# list all on-link routing entries that are added by the kernel,
# (which also matches the netmask of the IP addresses).
routel | grep -v "local" | grep -v "unspec" | grep "link" | grep "kernel"
# list non-on-link routes (aka gatewayed or routed)
routel | grep -v "local" | grep -v "unspec" | grep -v "link"
A diferencia de ip route
la década de 1999 route
, route enumera todas las tablas de enrutamiento, mientras que el otro solo enumera la main
tabla. Si alguien usa enrutamiento de políticas, no obtendrá pistas al usar ip route
, mientras que routel le deletreará el nombre de las tablas de enrutamiento.
Además, es posible que desees desechar los controles sysctl para saber si alguien habilitó el reenvío, el proxy ARP o alguna otra cosa rara. solo tirasysctl -a
Si desea indicadores o información de interfaz más completa, descargue también el archivo ip addr
. Es posible que una configuración realmente especial necesite más, como ip link
o ip tunnel
.
En cuanto a la configuración del firewall, existe iptables-save
o iptables-save -c
si quieres también contadores. Esto enumerará todas las tablas (y no solo filter
como iptables -L o iptables -S). Incluso puede usar iptables-restore
la salida de iptables-save y restaurar su configuración.
Respuesta3
El comando para imprimir reglas de iptables existentes es así:
iptables-L
Respuesta4
Puede ver si hay CSF Firewall instalado.
/etc/csf/csf.conf