Como posso encontrar regras e configurações de firewall via linha de comando no Linux

Como posso encontrar regras e configurações de firewall via linha de comando no Linux

Estou escrevendo um script para encontrar todos os detalhes do firewall, informações de roteamento e redes importantes relacionadas via linha de comando. Posso buscar a configuração do firewall com iptables -nvL, mas não tenho certeza sobre o resto. Quais comandos devo usar para reunir todo o resto?

Responder1

Você pode obter o status da interface:

ifconfig

Ou melhor ainda, use o comando “ip”, ​​por exemplo:

ip addr

Para obter as informações da rota, use um destes:

route
route -n #no ptr resolving
ip route

Para regras de firewall, use:

iptables -L # you can add -n to prevent name resolving

Para IPv6 você pode adicionar "-6" aos comandos "ip":

ip -6 addr
ip -6 route
...

Você também pode verificar "ethtool" para obter o status do link e velocidade/duplex:

ethtool eth0 

Responder2

routel

Liste muitas informações, embora de uma forma não muito legível, mas é um despejo completo de todas as tabelas de roteamento do host e fornece informações suficientes para reconstituir a configuração IP no host. Esta informação não é completa o suficiente para reconstituir o roteamento de políticas. Se acontecer de você usar isso, você também precisará do ip rule. De qualquer forma, por exemplo, para IPv4 (mesmo que IPv6 também esteja listado):

# 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" 

Ao contrário ip routede 1999 route, o routel lista todas as tabelas de roteamento, enquanto o outro lista apenas a maintabela. Se alguém usar roteamento de política, você não terá pistas ao usar ip route, enquanto routel irá soletrar o nome das tabelas de roteamento.

Além disso, você pode querer descartar os botões sysctl, para saber se alguém ativou o encaminhamento, o proxy ARP ou alguma outra coisa interessante. Basta despejarsysctl -a

Se você quiser sinalizadores ou informações de interface mais completas, despeje também ip addr. Uma configuração realmente especial pode precisar de mais, como ip linkou ip tunnel.

Quanto à configuração do firewall, existe iptables-saveou iptables-save -cse você também quiser contadores. Isso listará todas as tabelas (e não apenas filtercomo iptables -L ou iptables -S). Você pode até usar iptables-restoreisso para obter a saída de iptables-save e restaurar sua configuração.

Responder3

O comando para imprimir regras de iptables existentes é assim:

tabelas de ip -L

Responder4

Você pode ver se há CSF Firewall instalado.

/etc/csf/csf.conf

informação relacionada