Thanks to visit codestin.com
Credit goes to www.scribd.com

0% found this document useful (0 votes)
433 views79 pages

Check Point Troubleshooting Guide

fw monitor provides troubleshooting information by capturing packets at different points within the Check Point kernel module chain. It shows packet flow through the gateway and can be used with filters and options to troubleshoot specific issues. Common expressions include filtering by source/destination IP, port, or protocol. The output can be analyzed to check for translations, dropped packets, and proper policy flow. fw monitor is useful on SmartCenter and Edge devices to debug communication and policy issues.

Uploaded by

setomx
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
433 views79 pages

Check Point Troubleshooting Guide

fw monitor provides troubleshooting information by capturing packets at different points within the Check Point kernel module chain. It shows packet flow through the gateway and can be used with filters and options to troubleshoot specific issues. Common expressions include filtering by source/destination IP, port, or protocol. The output can be analyzed to check for translations, dropped packets, and proper policy flow. fw monitor is useful on SmartCenter and Edge devices to debug communication and policy issues.

Uploaded by

setomx
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 79

Check Point Troubleshooting Oops! Its not working!

Introduction
Troubleshooting is more or less the same since years The great How to use fw monitor document is from 2003 still valid! Some minor changes to buffer size, command line options New kernel modules introduced with R70 and R71, but no information officially available

We have to stick with the old stuff

How to approach troubleshooting


Collect information
What is the problem? What are the symptoms? Can the problem be replicated? Random occurence? Anything changed in the setup? User-related or machine-related? List systems that are part of the conversation

How to approach troubleshooting


Bug or configuration problem?
Common configuration problems:
Firewall rule prevents traffic SmartDefense / IPS blade prevents traffic Antispoofing misconfigured routing wrong encryption domain wrong username / password

How to approach troubleshooting


Any reference for problem or error message?
official documentation SecureKnowledge CPUG forum Check Point forum Google

fw ctl zdebug drop


Replicate the problem and have a look at the gateway:

fw ctl zdebug drop


lists all dropped packets in realtime gives an explanation why the packet is dropped
fw_log_drop: Packet proto=6 81.63.88.122:2720 -> 212.1.52.64:445 dropped by fw_handle_first_packet Reason: Rulebase drop rule 12;

Why is it called zdebug? Developed by Tamir Zegman.

Firewall status
Current connections?

fw tab t connections s
[Expert@firewallr70]# fw tab -t connections -s HOST NAME ID #VALS #PEAK #SLINKS localhost connections 8158 1 1 1

fw ctl pstat | grep Connections


[Expert@firewallr70]# fw ctl pstat | grep Connections Concurrent Connections: 0% (1 out of 24900) - below low watermark

ClusterXL
Status information fw hastat
HOST NUMBER localhost 2 HIGH AVAILABILITY STATE stand-by MACHINE STATUS OK

cphaprob state
Cluster Mode: Number 1 2 (local) New High Availability (Primary Up) Assigned Load 100% 0% State Active Standby

Unique Address 192.168.55.202 192.168.55.201

ClusterXL
Displays ClusterXL Devices
cphaprob ia list

Displays physical and cluster interfaces


cphaprob a if

Statistics of ClusterXL sync


fw ctl pstat cphaprob syncstat

Reset statistics of ClusterXL sync


cphaprob reset syncstat

Licenses
Limited number of hosts? fw lichosts Count of used hosts fw lichosts | wc l SecureClient licenses used dtps lic

Licenses
Show license

cplic print
Compare to SmartUpdate / SmartView Monitor output Especially UTM products sometimes tend to mess up with licenses which can cause Antivirus, Antispam or URL filtering to stop working You need to keep contracts updated! Use evaluation licenses for testing!

Content scanning
Verify update process of Antivirus or URL filtering using avsu_client command avsu_client app URL Filtering fetch_remote fi for fetching the index file (signatures up-to-date?) avsu_client app URL Filtering fetch_remote fe <[email protected]> <password> for fetching entitlement / signatures

fw monitor
What is it?
fw monitor command triggers a Check Point kernel module that is used to capture packets.

What makes it different?


Packet capture at multiple positions within the kernel module chain, both for inbound and outbound packets. It doesnt work on Layer-2, so no MAC addresses are shown in the output. fw monitor is available on all platforms.

fw monitor
What makes it different?
filters packets using INSPECT code sees packets with the eyes of the gateway Shows flow of packets through the gateway No Layer-2 information in capture files

fw monitor
App. TCP IP post-inbound (I) VM pre-inbound (i) NIC NIC VM post-outbound (O) Routing App. TCP IP pre-outbound (o)

fw monitor
[Expert@fw1]# fw monitor -e "accept (src=212.1.52.68 or dst=212.1.52.68);" monitor: getting filter (from command line) monitor: compiling monitorfilter: Compiled OK. monitor: loading monitor: monitoring (control-C to stop) eth3.7:i[52]: 212.1.56.233 -> 212.1.52.68 (TCP) len=52 id=18406 TCP: 56661 -> 22 .S.... seq=b2f3509d ack=00000000 eth3.7:I[52]: 212.1.56.233 -> 212.1.52.68 (TCP) len=52 id=18406 TCP: 56661 -> 22 .S.... seq=b2f3509d ack=00000000 eth0:o[52]: 212.1.56.233 -> 212.1.52.68 (TCP) len=52 id=18406 TCP: 56661 -> 22 .S.... seq=b2f3509d ack=00000000 eth0:O[52]: 212.1.56.233 -> 212.1.52.68 (TCP) len=52 id=18406 TCP: 56661 -> 22 .S.... seq=b2f3509d ack=00000000 eth0:i[52]: 212.1.52.68 -> 212.1.56.233 (TCP) len=52 id=0 TCP: 22 -> 56661 .S..A. seq=68a919c9 ack=b2f3509e eth0:I[52]: 212.1.52.68 -> 212.1.56.233 (TCP) len=52 id=0 TCP: 22 -> 56661 .S..A. seq=68a919c9 ack=b2f3509e eth3.7:o[52]: 212.1.52.68 -> 212.1.56.233 (TCP) len=52 id=0 TCP: 22 -> 56661 .S..A. seq=68a919c9 ack=b2f3509e eth3.7:O[52]: 212.1.52.68 -> 212.1.56.233 (TCP) len=52 id=0 TCP: 22 -> 56661 .S..A. seq=68a919c9 ack=b2f3509e

fw monitor
eth3.7:O[52]: 212.1.52.68 -> 212.1.56.233 (TCP) len=52 id=0 TCP: 22 -> 56661 .S..A. seq=68a919c9 ack=b2f3509e

fw monitor
fw monitor options overview
-u | s -i -d | D -e <expr> -f <file> -l <len> -m <mask> -x -o <file> -p|x| <pos> -p all -ci <count> -co <count> Shows UUID or SUUID for every packet write data to STDOUT debug / more debug output filter for expression (CLI mode) read filter expression from file limit length of captured packet which positions should be shown print raw packet data write packet into file insert fw monitor at specific chain position insert fwmonitor between all kernel modules stop capture after count incoming packets stop capture after count outgoing packets

fw monitor

fw monitor
Capture only ICMP packets

fw monitor -e "accept [9:1]=1;

fw monitor
Capture only packets from a special host

fw monitor -e "accept [12,b]=192.168.1.1;

fw monitor
Filtering will be easier for you if you use macros. Macros for fw monitor are defined in $FWDIR/lib/fwmonitor.def which references $FWDIR/lib/tcpip.def, where the actual expression is located. Example: filter for source IP
fwmonitor.def macro tcpip.def macro expression = = = src ip_src [12,b]

fw monitor
Use macros together with operators to add complexity: accept (src=x.x.x.x

or

dst=x.x.x.x)

accept ((src=x.x.x.x, dst=y.y.y.y) (src=y.y.y.y, dst=x.x.x.x));

or

accept

not

(sport=22

or

dport=22);

accept sport=21

and not

(src=x.x.x.x);

fw monitor
Use fw monitor to see if packets are translated
fw monitor -e accept (src=212.1.56.151 or dst=212.1.56.151);
eth0:i[48]: eth0:I[48]: eth1:o[48]: eth1:O[48]: 212.1.56.151 212.1.56.151 212.1.56.151 212.1.56.151 -> -> -> -> 195.244.116.166 195.244.116.166 195.244.116.166 195.244.116.166 (TCP) (TCP) (TCP) (TCP) len=48 len=48 len=48 len=48 id=27053 id=27053 id=27053 id=27053

fw monitor -e accept (src=212.1.56.151 or dst=212.1.56.151);


eth0:i[48]: eth0:I[48]: eth1:o[48]: eth1:O[48]: 212.1.56.151 212.1.56.151 212.1.56.151 212.1.56.151 -> -> -> -> 195.244.116.166 (TCP) len=48 id=31171 192.168.199.2 (TCP) len=48 id=31171 192.168.199.2 (TCP) len=48 id=31171 192.168.199.2 (TCP) len=48 id=31171

fw monitor
Common expressions for fw monitor
fw monitor e accept (src=x.x.x.x or dst=x.x.x.x); fw monitor m iO e accept host(x.x.x.x); fw monitor e accept ((src=x.x.x.x, dst=y.y.y.y) or (src=y.y.y.y, dst=x.x.x.x)); fw monitor e accept (ip_p=x);

Combine with o <file> for output into a file.

Inspect Code Generator: http://decock.org/ginspect/

fw monitor
Read complex expressions from a filter file: fw monitor f <filename> If you use macros in a filter file, make sure to include the appropriate definition file. #include fwmonitor.def accept ((sport=22 or dport=22) and not (host(x.x.x.x));

fw monitor
Use for better analysis of capture files.

Preferences Protocols Ethernet Check box Attempt to interpret as Firewall-1 monitor file Preferences Protocols FW-1 Activate UUID, chain position, summary in protocol tree Add column fw1 chain of format FW-1 monitor if/direction Add coloring rules
preIn postIn preOut postOut Filter Filter Filter Filter String String String String fw1.direction fw1.direction fw1.direction fw1.direction == == == == i I o O

fw monitor
On UTM-1 Edge Setup Tools Packet Sniffer

two modes: normal sniffer or fw monitor

On SecuRemote/SecureClient

srfw monitor o <filename>

Troubleshooting UTM-1 Edge


Analyse local policy Run info fw rules on command line or WebUI Setup Tools Command Line Analyse NAT policy Run info nat on command line or WebUI Setup Tools Command line

Troubleshooting UTM-1 Edge


Create diagnostics file Log into WebUI Setup Tools Diagnostics

Troubleshooting UTM-1 Edge


Is the SMS process running on SmartCenter? ps aux | grep sms Is traffic reaching the SmartCenter? fw monitor libsw must be current, at least same version as latest firmware installed on a Edge. Check /opt/CPEdgecmp-R71/libsw/version.txt [Expert@fwm]# head -n1 version.txt libsw built with version 8.1.21

Troubleshooting UTM-1 Edge


Sofaware Management Server Console http://<ip SmartCenter>:9283/
-

restart SMS reload SMS settings force policy update reboot reset local (Edge) password view status information

Troubleshooting UTM-1 Edge

Troubleshooting UTM-1 Edge


Debugging Sofaware Management Server
Edit $FWDIR/conf/sofaware/SWManagement.ini Change in line containing LogPolicy1 the value Info to Debug Smsstop sms confdir $FWDIR/conf/sofaware

Replicate the problem and watch for console output. Terminate programm and restart SMS afterwards
smsstart

Troubleshooting UTM-1 Edge


Configuration for Edge Devices on SPLAT under /opt/CPEdgecmp-R71/tmp <name <name <name <name <name of of of of of Edge Edge Edge Edge Edge object>.pf ruleset object>.pfz compressed ruleset object>.topo topology for VPN object>.tpz compressed topology object>.p12 PKCS#12 certificate

Delete files. Install policy again to re-generate them. Make sure, that the files are compiled and the Edge gets the latest version.

Opening a service request


Submit info to Check Point TAC or your CCSP/CSP provide contact info describe Check Point environment list used gateway hardware provide info about network topology and hardware describe the problem / the symptoms in detail what kind of business impact has this problem recommendation: get your supporter on the phone and be available for remote sessions use chat tool!

Opening a service request


Create compressed CPInfo diagnostic file
/opt/CPinfo-10/bin/cpinfo z <filename>

Create compressed CPInfo diagnostic file including logs


/opt/CPinfo-10/bin/cpinfo l z <filename>

CPInfo files can be viewed using InfoView

Make sure to have the latest CPinfo build installed! Check sk30567 for instructions!

TAC organisation
Director TAC Customer Focus Programmers

INTL Support

Escalations

Diamond Services

Knowledge Center

Data Security Escalation

3 Product Teams High end Core VPN

3 Product Teams High end Core VPN

Secure Knowledge

Technical Publications

TAC escalation
Support desk

Product team

Escalations

Customer focus programmer

TAC escalation path

http://www.checkpoint.com/services/contact/escalation.html

General debugging
kernel mode
usbcore rtmmod simmod vpntmod vpnmod fwmod

user mode
security server sms cpd fwd fwm

fw, VPN, FG-1, H323, BOA, WS, CPAS, CLUSTER, RTM, kiss, kissflow, multik, SFT, CI

kernel mode debug


View kernel modules with fw ctl debug h
kiss kissflow fw h323 multik BOA WS CI CPAS VPN RTM SFT Cluster FG-1 ?????? ??????? "Firewall Module" "VoIP H.323 Module" "related to CoreXL" "Malicious Code Protection Module" "SmartDefense Web Intelligence Module" Content Inspection "Active Streaming Module" "VPN Module" "SmartView Monitor Module" ??????? "ClusterXL Module" "Floodgate-1 QoS Module"

kernel mode debug


Some examples for modules and options: Module: fw Options: error warning cookie crypt domain ex driver filter hold if install ioctl kbuf ld log machine memory misc packet q xlate xltrc conn synatk media align balance chain bridge tcpstr scv ndis packval sync ipopt link nat cifs drop Module: vpn Options: driver err packet policy sas rdp clear cipher init sr comp xl counters mspi cphwd ref vin cluster nat l2tp warn

kernel mode debug


fw ctl debug Allocation of a buffer for the debug logs fw ctl debug buf [size in kb] The main debug command fw ctl debug m <module> <option> Writing the debug logs into a file fw ctl kdebug T f o <filename> Stop debugging fw ctl debug 0

kernel mode debug


Filter debug, only lines with <strings> in it are written to the output (best practice: error, failed) fw ctl debug d <strings> Filter debug, only lines that dont contain <string> in it are written to the output fw ctl debug d ^<strings> Can be combined fw ctl debug d error,failed,^packet

kernel mode debug


Stop debug messages when a certain string is issued. fw ctl debug s <string> Example: fw ctl debug s error

kernel mode debug


Example: debugging ClusterXL fw ctl fw ctl sync fw ctl fw ctl debug buf 32000 debug m fw + conn drop packet if debug m cluster all kdebug T f o <filename>

Example: debugging Site to Site VPN fw ctl debug -buf 32000 fw ctl debug -m VPN all fw ctl debug -m fw + conn drop ld xlate xltrc nat fw ctl kdebug T f o <filename>

kernel mode debug


Example: debugging SIP fw ctl debug buf 32000 fw ctl debug m fw + conn drop vm sip fw ctl kdebug T f o <filename> Example: debugging VoIP fw fw fw fw ctl ctl ctl ctl debug -buf 32000 debug -m fw + conn drop vm debug m h323 all kdebug T f o <filename>

kernel mode debug


Example: debugging SmartDefense fw ctl debug buf 32000 fw ctl debug m fw + conn drop vm tcp-str spii fw ctl kdebug T f o <filename> Example: debugging NAT fw ctl debug -buf 32000 fw ctl debug -m fw + xlate xltrc fw ctl kdebug T f o <filename>

kernel mode debug


Example: debugging QoS fw ctl debug buf 32000 fw ctl debug m FG-1 all fw ctl kdebug T f o <filename> Example: debugging SmartView Monitor fw ctl debug -buf 32000 fw ctl debug -m RTM all fw ctl kdebug T f o <filename>

VPN debug
Best practice before starting debug Compare configuration on both ends
often Phase I / Phase II parameters are not equal which causes the VPN to fail take special notice of networks and subnet masks carefully compare Pre-Shared-Secrets

Have a close look at the logs in SmartView Tracker Most informations can be found in the logs

VPN debug
To determine status of VPN tunnels, use menu based
vpn tunnelutil vpn tu

or SmartView Monitor To shutdown all VPN operation, use


vpn drv off

To enable VPN again, use


vpn drv on install policy

VPN debug
VPN debugging events can be logged on the gateway
vpn debug on Debug output is written to $FWDIR/log/vpnd.elg

More details can be logged using the command


vpn debug on TDERROR_ALL_ALL=5

Turn off debugging with


vpn debug off

VPN debug
IKE negotiations during VPN tunnel establishment can be logged in ike.elg On the gateway:
vpn debug ikeon / vpn debug ikeoff Debug output is written to $FWDIR/log/ike.elg

VPN debug
Initiate VPN and IKE debug together
vpn debug trunc

Disable VPN and IKE debug


vpn debug off vpn debug ikeoff

VPN debug
Capture traffic using fw monitor
fw monitor e accept port(500) or port(4500); o monitor.out Output file is monitor.out, IKE payloads are encrypted.

Capture traffic using vpn debug


vpn debug mon Output file is ikemonitor.snoop, IKE payloads are in clear. Turn off with vpn debug moff.

VPN debug
On UTM-1 Edge appliance:
WebUI -> Reports -> Tunnels -> save IKE trace

Click Save IKE Trace, which creates ike.elg

user mode debug


General syntax

fw debug <process> <on|off> TDERROR_ALL_ALL=<value> fw debug <process> <on|off> OPSEC_DEBUG_LEVEL=<value>

Exception: cpd

fwm debug
FWM controls connections from the SmartConsole to the SmartCenter server and is responsible for policy related functions To debug fwm do the following fw debug fwm on TDERROR_ALL_ALL=5 fw debug fwm on OPSEC_DEBUG_LEVEL=9 To stop debug run fw debug fwm off TDERROR_ALL_ALL=0 fw debug fwm off OPSEC_DEBUG_LEVEL=0 Logs are written to $FWDIR/log/fwm.elg

fwm debug
[FWM 11927 1981476992]@firewallr70[8 Sep 18:46:32] fwnetobj_getbysicname: table_chosen_get_with_param(eTABLE_NETWORK_OBJECTS, is_obj_SIC_name, IP=212.1.56.233,CN=Gui_Client) returned NULL. Login failed: 212.1.56.233 is not allowed for remote login [FWM 11927 1981476992]@firewallr70[8 Sep 18:46:32] fwm_log: Login failed from IP=212.1.56.233,CN=Gui_Client: Unauthorized client Wed Sep 8 18:46:32 2010 (GMT): reject client IP=212.1.56.233,CN=Gui_Client [FWM 11927 1981476992]@firewallr70[8 Sep 18:46:32] PM_policy_query: rule not found. [FWM 11927 1981476992]@firewallr70[8 Sep 18:46:32] PM_policy_query: finished successfully. 1st method = deny IP not defined in $FWDIR/conf/gui-clients

fwm debug
[FWM 11927 1981476992]@firewallr70[8 Sep 18:48:07] fwm_cpmi_auth_handler: authenticating admin admin by Name and Password [FWM 11927 1981476992]@firewallr70[8 Sep 18:48:07] Administrator admin found in fwm database [FWM 11927 1981476992]@firewallr70[8 Sep 18:48:07] CBinObjCommon::PackLogData: Field number:12, Data offset:34, Type:eFtCstring, Value:Administrator failed to log in: Wrong Password

fwd debug
FWD daemon controls logging, alerts, communication with the kernel, OPSEC communication, invokes child processes (security servers, ICA) To debug fwd do the following fw debug fwd on TDERROR_ALL_ALL=5 To stop debug run fw debug fwd off TDERROR_ALL_ALL=0

Logs are written to $FWDIR/log/fwd.elg

Desktop log server debug


To debug dtls do the following fw debug dtls on To stop debug run fw debug dtls off

Logs are written to $FWDIR/log/dtlsd.elg

Security servers debug


Some examples for security servers: FTP security server in.aftpd Telnet security server in.atelnetd HTTP security server in.ahttpd SMTP security server in.asmtpd ClientAuth (900) in.ahclientd ClientAuth (259) in.aclientd AntiSpam security server in.msd URL filtering security server in.aufpd

Security servers debug


Verify that security server process exists. Check $FWDIR/tmp for existing PID files. Start debugging (example for FTP security server) fw debug in.aftpd on FWAFTPD_LEVEL=3 Stop debugging fw debug in.aftpd off FWAFTPD_LEVEL=3

cpd debug
CPD controls SIC, Policy install To debug cpd do the following cpd_admin debug on TDERROR_ALL_ALL=5 To stop debug run cpd_admin debug off TDERROR_ALL_ALL=0

Logs are written to $CPDIR/log/cpd.elg

Secure Platform debug


Sometimes it is useful to verify file integrity and version against a test environment, for example after installation of ad-hoc fixes or HFA. Use md5sum for creating hashes.
[Expert@fwm]# md5sum upgrade_import e6c6417cca9db098b94673dd420a4903 upgrade_import

Use cpvinfo for displaying version information.


[Expert@fwm]# cpvinfo upgrade_import Build Number = 730080036 Major Release = NGX Minor Release = fli_up_ga Release Number = 5.0.5 Version Name = NGX

Secure Platform debug


For some problems with processes a core dump can be usefull. A core dump is a disk file that contains an image of the processs memory at the time of termination. Core dumps are mainly used by Check Point R&D for fixing a specific problem. Handling Core Files
http://downloads.checkpoint.com/dc/download.htm?ID=10479

Secure Platform debug


To enable core dumps do the following ulimit c unlimited um_core enable Reboot Check that /etc/sysconfig/enable_cores exist after Reboot. Dumps will be in /var/log/dump/usermode

Debugging GUI clients


Debug GUI clients Dashboard fwpolicy.exe d o fwp_debug.txt Tracker cplgv.exe d o cplgv_debug.txt Monitor smartcons.exe d o smartcons_debug.txt
general syntax: <executable> -d o <file_name>

Output is in specified directory or in


C:\Programme\CheckPoint\SmartConsole\R70\PROGRAM\data

if directory is omitted.

Resources
SmartSPLAT from ada Ulucan

www.smartsplat.com

Resources

Resources

Resources

Resources

Resources

Resources
fw monitor
http://www.checkpoint.com/techsupport/downloads/html/ ethereal/fw_monitor_rev1_01.pdf

The CPinfo utility


https://supportcenter.checkpoint.com/supportcenter/porta l?eventSubmit_doGoviewsolutiondetails=&solutionid=sk30 567

Documents related to troubleshooting


http://blog.lachmann.org/2010/09/documents-relatedto-troubleshooting/

Questions?

Still got a question?

Tobias Lachmann
[email protected] http://blog.lachmann.org

You might also like