Linux에서 명령줄을 통해 방화벽 규칙 및 설정을 어떻게 찾을 수 있습니까?

Linux에서 명령줄을 통해 방화벽 규칙 및 설정을 어떻게 찾을 수 있습니까?

명령줄을 통해 모든 방화벽 세부 정보, 라우팅 정보 및 관련된 중요한 네트워크를 찾는 스크립트를 작성 중입니다. 를 사용하여 방화벽 구성을 가져올 수 있지만 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 route1999년의 라우텔 과 달리 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

관련 정보