
명령줄을 통해 모든 방화벽 세부 정보, 라우팅 정보 및 관련된 중요한 네트워크를 찾는 스크립트를 작성 중입니다. 를 사용하여 방화벽 구성을 가져올 수 있지만 iptables -nvL
나머지는 잘 모르겠습니다. 다른 모든 것을 수집하려면 어떤 명령을 사용해야 합니까?
답변1
다음을 통해 인터페이스 상태를 확인할 수 있습니다.
ifconfig
또는 "ip" 명령을 사용하는 것이 더 좋습니다. 예:
ip addr
경로 정보를 얻으려면 다음 중 하나를 사용하십시오.
route
route -n #no ptr resolving
ip route
방화벽 규칙의 경우 다음을 사용합니다.
iptables -L # you can add -n to prevent name resolving
IPv6의 경우 "ip" 명령에 "-6"을 추가할 수 있습니다.
ip -6 addr
ip -6 route
...
"ethtool"을 확인하여 링크 상태 및 속도/이중 방식을 확인할 수도 있습니다.
ethtool eth0
답변2
routel
실제로 읽을 수는 없지만 많은 정보를 나열합니다. 그러나 이는 호스트의 모든 라우팅 테이블에 대한 전체 덤프이며 호스트의 IP 구성을 재구성하는 데 충분한 정보를 제공합니다. 이 정보는 정책 라우팅을 재구성할 만큼 완전하지 않습니다. 만약 당신이 그것을 사용한다면, 당신도 필요합니다 ip rule
. 어쨌든 IPv4의 예를 들면 다음과 같습니다(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"
ip route
1999년의 라우텔 과 달리 route
라우텔은 모든 라우팅 테이블을 나열하고 다른 하나는 main
테이블만 나열합니다. 누군가 정책 라우팅을 사용하는 경우 를 사용할 때 아무런 단서도 얻지 못하는 ip route
반면, router는 라우팅 테이블의 이름을 철자합니다.
또한 누군가가 전달, ARP 프록시 또는 기타 이상한 기능을 활성화했는지 확인하기 위해 sysctl 노브를 덤프할 수도 있습니다. 그냥 버리세요sysctl -a
더 완전한 플래그나 인터페이스 정보를 원한다면 dump ip addr
. 정말 특별한 구성에는 ip link
또는 같은 것이 더 필요할 수 있습니다 ip tunnel
.
방화벽 구성의 경우 카운터가 있거나 필요한 경우도 iptables-save
있습니다 . iptables-save -c
그러면 모든 테이블이 나열됩니다(iptables -L 또는 iptables -S뿐만 아니라 ) . iptables-save의 출력을 가져와 해당 구성을 복원하는 filter
것도 사용할 수 있습니다 .iptables-restore
답변3
기존 iptables 규칙을 인쇄하는 명령은 다음과 같습니다.
iptables -L
답변4
CSF 방화벽이 설치되어 있는지 확인할 수 있습니다.
/etc/csf/csf.conf