FW CTL ZDEBUG is a CLI
command that is for seeing dropped packets in real-time on the firewall. This can include packets that are dropped
from the Check Point application OR from the OS of the box. From the application, this could mean the
Rulebase, IPS, etc. From the OS, this
could mean dropped packets due to a full queue, etc. ZDEBUG is especially helpful in determining
the reason a packet is dropped. The
reality is that some packets that are dropped just do not show up in SmartView
Tracker.
Below is an example of some dropped packets and the reasons:
;[cpu_9];[fw4_6];fw_log_drop_ex: Packet proto=6
157.216.110.162:36299 -> 64.25.9.4:23 dropped by fw_handle_first_packet Reason: Rulebase drop - rule 10; <-- This was dropped because of the Check Point firewall
rulebase. Rule 10 was a rule that it
matched and dropped.
;[cpu_10];[fw4_5];fw_log_drop_ex: Packet proto=6
195.88.209.216:51921 -> 64.25.9.22:33909 dropped by fw_handle_first_packet
Reason: Geo Protection; <-- Simple enough.
This packet is from Russia, which is blocked on this firewall.
fw ctl zdebug drop is the CLI command. This captures all packets that are
dropped. You can use the grep option to
cut down on the amount of traffic you see and specifically search for traffic
you want to see.
fw ctl zdebug drop | grep 10.19.4.4 will search for any dropped packet with a
source or destination IP address of 10.19.4.4.
FW MONITOR is a CLI command
that is for packet capturing through the firewall in
real-time. This command does not
show dropped packets. fw monitor allows
you to capture packets at multiple capture positions within the FireWall-1
kernel module chain; both for inbound and outbound packets. This enables you to
trace a packet through the different functionalities of the firewall. The
primary mode of troubleshooting would be to use the something like the
following to see packets for source of 29.27.7.2 or destination of 29.27.7.2:
fw monitor -e "accept src=29.27.7.2 or dst=29.27.7.2;" This will show you the stages of the IP of
29.27.7.2 as a source or destination.
Most of the time, you want to see the packet go all the way
through the kernel. Your command might
look something like this:
fw monitor -e "accept host (29.27.7.2);" This will show you the 4
stages that this particular IP goes through, and is most likely what you will
use the most. You are basically looking
at this view of the packet traversal below.
This will help you determine if packets are coming through, and if
NAT’ing and routing is working.
You can also expand this view by using the –p
all option, as show below:
fw monitor –p all -e "accept host (29.27.7.2);"
You are basically looking at a multiple point view of the
packet traversal through the firewall:
TCPDump is a CLI command
that allows you to capture packets on the interface. You see packets, real-time, as they hit the
interface, but not through the
firewall. Only on the interface is where
you are capturing on. This is similar to
the way packet captures work on a Cisco ASA or what you would see in Wireshark. If you see a packet coming in an interface,
but not out an interface, you will probably need to run the fw
monitor command to find out where it is failing. If you suspect dropped packets, you can use
the zdebug command.
tcpdump -i eth1 host
172.24.8.200 <---- Tells to
monitor eth1 for this hosts.
NOTES***
'tcpdump -i' captures
traffic on specific interface.
'tcpdump -e' displays
Source and Destination MAC addresses.
CTRL+C stops
'tcpdump'.
By default, only the first 68 bytes
of every packet are captures, unless the capture size is increased with '-s'
flag. For users running without data encryption, passwords are also copied into
this file.
Thanks. A really useful post.
ReplyDeleteGreat write up Shane .....very informative.
ReplyDeleteGreat Effort… Please correct your figure 10: Fw monitor capture position Pre-inbound (o) it should be Pre-outbound (o).
ReplyDeletePacket is still coming inbound at that point. That's straight from the Check Point documentation.
DeleteThanks, Great document which help too much
ReplyDelete👍
DeleteHi Shane, Thanks for the info. Could you please explain about Checkpoint iIoO Inspection points and where Access Rule/NAT/Routing are applied at each stage.
ReplyDeleteGreat explanation, will save this document in my personal notes for sure.
ReplyDeleteVery good!
ReplyDeleteGreat explanation, Thanks
ReplyDelete