WCG Help
WCG Help
8.5.x
©2022 Forcepoint
Forcepoint and the FORCEPOINT logo are trademarks of Forcepoint. All other trademarks used in this document are the property of their respective
owners.
Published 2022
Every effort has been made to ensure the accuracy of this document. However, Forcepoint makes no warranties with respect to this documentation
and disclaims any implied warranties of merchantability and fitness for a particular purpose. Forcepoint shall not be liable for any error or for
incidental or consequential damages in connection with the furnishing, performance, or use of this manual or the examples herein. The information
in this documentation is subject to change without notice.
Contents
Topic 1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
Content Gateway deployment options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
SSL inspection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
Web proxy cache. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Cache hierarchy. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
Managed cluster . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
DNS proxy cache . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
Content Gateway components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
Cache. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
RAM cache . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Adaptive Redirection Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Host database. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
DNS resolver . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
Content Gateway processes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
Content Gateway administration tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Proxy traffic analysis features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Technical Support. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
Topic 2 Getting Started with Content Gateway . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Accessing the Content Gateway manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Security certificate alerts. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Windows 7 considerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Configuring Content Gateway for two-factor authentication . . . . . . . . . . . . . 11
Accessing the Content Gateway manager if you forget the master administrator
password . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Content Gateway online Help . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Entering your subscription key. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Providing system information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Verifying that the proxy is processing Internet requests . . . . . . . . . . . . . . . . . . . 16
Using the command-line interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Starting and stopping Content Gateway on the command line . . . . . . . . . . . . . . 18
The no_cop file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Topic 3 Web Proxy Caching . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Cache requests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Ensuring cached object freshness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
HTTP object freshness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
FTP object freshness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Scheduling updates to local cache content . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Configuring the Scheduled Update option . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Online Help i
Contents
Online Help v
Contents
Subscription. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 298
UI Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299
Snapshots. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 303
Logs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305
Protocols . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306
HTTP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306
HTTP Responses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 316
HTTP Scheduled Update. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317
HTTPS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319
FTP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319
Content Routing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 320
Hierarchies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 321
Mapping and Redirection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 323
Browser Auto-Config . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 325
Security. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 325
Connection Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 326
FIPS Security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327
Web DLP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 328
Access Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 328
SOCKS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345
Subsystems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348
Cache. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348
Logging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 350
Networking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 354
Connection Management. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 354
ARM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356
WCCP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363
DNS Proxy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 367
DNS Resolver . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 368
ICAP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 372
Virtual IP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373
Health Check URLs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 374
SSL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 376
Appendix D Event Logging Formats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377
Custom logging fields. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377
Squid logging formats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 381
Netscape Common logging formats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 381
Netscape Extended logging formats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 382
Netscape Extended-2 logging formats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 382
Appendix E Content Gateway Configuration Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 383
Specifying URL regular expressions (url_regex). . . . . . . . . . . . . . . . . . . . . . . . 383
Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 384
auth_domains.config . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 384
Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 385
auth_rules.config . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 387
Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 388
bypass.config . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 389
Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 390
Dynamic deny bypass rules. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 390
Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 391
cache.config . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 391
Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 392
Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 394
filter.config . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 394
Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 395
Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 396
hosting.config . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 397
Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 398
Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 399
ip_allow.config. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 399
Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 399
Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 399
ipnat.conf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 400
Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 400
Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 400
log_hosts.config . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401
Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401
Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401
logs_xml.config . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 402
Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 402
Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 406
WebTrends Enhanced Log Format (WELF). . . . . . . . . . . . . . . . . . . . . . . . . 408
mgmt_allow.config . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 408
Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 408
Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 409
parent.config. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 409
Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 410
Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 411
partition.config . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 412
Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 412
Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 412
records.config . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413
Online Help ix
Contents
Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413
Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413
Configuration variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 414
System variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 415
Local manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 417
Process manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 420
Virtual IP manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 420
Alarm configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 420
ARM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 421
Load shedding configuration (ARM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 424
Authentication basic realm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 425
LDAP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 428
RADIUS authentication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 430
NTLM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 431
Integrated Windows Authentication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 433
Transparent authentication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 434
HTTP engine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 435
Parent proxy configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 437
HTTP connection timeouts (secs) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 439
Origin server connection attempts. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 440
Negative response caching . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 441
Proxy users variables. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 442
Security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 443
Cache control. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 444
Heuristic expiration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 446
Dynamic content and content negotiation. . . . . . . . . . . . . . . . . . . . . . . . . . . 446
Anonymous FTP password . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 447
Cached FTP document lifetime. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 447
FTP transfer mode. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 447
Customizable user response pages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 448
FTP engine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 449
SOCKS processor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 454
Net subsystem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 455
Cluster subsystem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 455
Cache. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 455
DNS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 456
DNS proxy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 458
HostDB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 458
Logging configuration. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 459
URL remap rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 464
Scheduled update configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 465
SNMP configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 465
Plug-in configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 466
Online Help xi
Contents
Related topics:
● Content Gateway deployment options, page 2
● Content Gateway components, page 4
● Proxy traffic analysis features, page 7
● Technical Support, page 8
SSL inspection
When the HTTPS option is enabled, HTTPS traffic is decrypted, inspected, and
re-encrypted as it travels to and from the client and origin server.
Content Gateway does not cache HTTPS content.
Important
Even when HTTPS is not enabled, Content Gateway still
performs a URL lookup for HTTPS requests and applies
policy accordingly.
In explicit proxy mode, when HTTPS is disabled, Content
Gateway performs URL filtering based on the hostname in
the request. If the site is blocked, Content Gateway serves
a block page. Note that some browsers do not support
display of the block page. To disable this feature, configure
clients to not send HTTPS requests to the proxy.
In transparent proxy mode, when HTTPS is disabled, if
there is an SNI in the request, Content Gateway gets the
hostname from the SNI and performs URL filtering based
on the hostname. Otherwise, Content Gateway uses the
Common Name in the certificate of the destination server.
However, if the Common Name contains a wildcard (*),
the lookup is performed on the destination IP address. If
the site is blocked, the connection with the client is
dropped; no block page is served. To disable this feature
when used with WCCP, do not create a service group for
HTTPS.
Cache hierarchy
Content Gateway can participate in flexible cache hierarchies, where Internet requests
not fulfilled in one cache can be routed to other regional caches, taking advantage of
their contents and proximity. In a hierarchy of proxy servers, Content Gateway can act
either as a parent or child, either to other Content Gateway servers or to other caching
products. See Hierarchical Caching, page 93.
Managed cluster
Content Gateway scales from a single node to multiple nodes, with a maximum
recommended limit of 16. This forms a managed cluster that improves system
capacity, performance, and reliability.
● A managed cluster detects the addition and removal of nodes.
● Cluster nodes automatically share configuration information, allowing members
of the cluster to all be administered at the same time.
If the virtual IP failover option is enabled, Content Gateway maintains a pool of
virtual IP addresses that it assigns to the nodes of the cluster. Content Gateway can
detect node failures (such as power supply or CPU failures) and reassign IP addresses
of the failed node to the operational nodes. See Virtual IP failover, page 90, for
details.
If Content Gateway is configured as a transparent proxy with WCCP, failover is
handled by WCCP and virtual IP failover should not be used. See WCCP load
distribution, page 54.
For complete information, see Clusters, page 85.
Cache
The cache consists of a high-speed object database called the object store. The object
store indexes objects according to URLs and associated headers. The object store can
cache alternate versions of the same object, varying on spoken language or encoding
type, and can store small and large documents, minimizing wasted space. When the
cache is full, the proxy removes stale data, ensuring that frequently requested objects
are fresh.
Content Gateway tolerates disk failure on any cache disk. If the disk fails completely,
Content Gateway marks the disk as corrupt and continues using the remaining disks. If
all cache disks fail, Content Gateway goes into proxy-only mode.
You can partition the cache to reserve disk space for storing data for specific protocols
and origin servers. See Configuring the Cache, page 95.
RAM cache
Content Gateway maintains a small RAM memory cache of extremely popular
objects. This RAM cache serves the most popular objects quickly and reduces load on
disks, especially during traffic peaks. You can configure the RAM cache size. See
Changing the size of the RAM cache, page 100.
Host database
The host database stores the Domain Name Server (DNS) entries of origin servers to
which the proxy connects. Among other information, the host database tracks:
● DNS information (for fast conversion of host names to IP addresses)
● The HTTP version of each host (so advanced protocol features can be used with
hosts running modern servers)
● Host reliability and availability information (to avoid waits for non-functional
servers)
DNS resolver
For transparent proxy deployments, the proxy includes an asynchronous DNS resolver
to streamline conversion of host names to IP addresses. Content Gateway implements
the DNS resolver natively, directly issuing DNS command packets, rather than relying
on resolver libraries. Many DNS queries can be issued in parallel and a fast DNS
cache maintains popular bindings in memory, reducing DNS traffic.
Important
Should the Linux system DNS server configuration change
(/etc/resolv.conf), you must restart Content Gateway.
The primary Content Gateway configuration and administration tool is the web-based
graphical user interface that is accessible through your browser. The Content Gateway
manager offers password-protected, SSL-encrypted, single-point administration for an
entire Content Gateway cluster. The Content Gateway manager provides graphs and
statistical displays for monitoring Content Gateway performance and network traffic,
and options for configuring and fine-tuning the proxy.
Sometimes it is convenient or necessary to use the Content Gateway command-line
interface. You can execute individual commands or script a series of commands in a
shell. This facility is not available when Content Gateway is hosted on a Forcepoint
appliance. Instead, use the Content Gateway manager and see your Forcepoint
appliance documentation.
Like the command line interface, it is sometimes convenient or necessary to make
configuration changes in Content Gateway configuration files. They support
administration through a file-editing and signal-handling interface. Any changes you
make through the Content Gateway manager or command-line interface are
automatically made to the configuration files.
See:
● Accessing the Content Gateway manager, page 9
● Using the command-line interface, page 17
Content Gateway provides options for network traffic analysis and monitoring:
● Manager statistics and graphs show network traffic information. View graphs and
statistics from the Content Gateway manager, or collect and process statistics
using the command-line interface.
● A variety of Performance graphs show historical information about virtual
memory usage, client connections, document hit rates, and so on. View
Performance graphs in the Content Gateway manager.
● Manager alarms are presented in the Content Gateway manager. Content
Gateway signals an alarm for any detected failure condition. You can configure
Content Gateway to send email or page support personnel when an alarm occurs.
Content Gateway also sends select alarms to the Forcepoint Security Manager,
where they are referred to as alerts. Summary alert messages are displayed on the
Web > Status > Dashboard > System page. The full alert message is displayed
on the Status > Alerts page. Web Security administrators can configure which
Content Gateway conditions cause alert messages to be sent, and which methods
(email or SNMP) are used to send the alert.
● Transaction logging lets you record information in a log file about every request
the proxy receives and every error it detects. Use the logs to determine how many
people use the proxy, how much information each person requested, and which
pages are most popular. You can see why a transaction was in error and see the
state of the proxy cache at a particular time. For example, you can see that Content
Gateway was restarted or that cluster communication timed out.
Content Gateway supports several standard log file formats, such as Squid and
Netscape, and its own custom format. You can analyze the standard format log
files with off-the-shelf analysis packages. To help with log file analysis, separate
log files so that they contain information specific to protocol or hosts.
For traffic analysis options, see Monitoring Traffic, page 111. For logging options, see
Working With Log Files, page 235.
Technical Support
After you have installed Content Gateway on a system or on all of the nodes in your
cluster, the proxy is ready for use.
You can configure Content Gateway via its web-based user interface: the Content
Gateway manager.
To get started, see:
● Accessing the Content Gateway manager, page 9
● Entering your subscription key, page 15
● Verifying that the proxy is processing Internet requests, page 16
● Using the command-line interface, page 17
● Starting and stopping Content Gateway on the command line, page 18
Note
When SSO (not available with Forcepoint DLP Web
Content Gateway) is used, the browser must be configured
to allow pop-ups on the Content Gateway IP address.
■ When two-factor authentication is enabled, this is the only method that can be
used. See Configuring Content Gateway for two-factor authentication, page
11.
■ For SSO configuration instructions, see the Forcepoint Web Security
Administrator Help.
■ If you log on to Content Gateway manager using SSO, when you log off of
Content Gateway manager your session is closed.
● By entering the IP address and port of the Content Gateway host system in your
browser:
1. In the browser address bar, enter:
https://<nodename>:<port>
Here, <nodename> is the IP address of Content Gateway and <port> is the
port number assigned to the Content Gateway manager (8081, by default).
2. On the logon page, enter your administrator ID (admin, by default) and
password.
○ The Content Gateway manager password is set during installation.
○ You can change the ID and password, as well as create and modify user
accounts. See Controlling access to the Content Gateway manager, page
164.
When you on to Content Gateway manager directly, when you click Log Off,
your session is not closed until you close all open browser windows.
On launch, the Content Gateway manager displays the Monitor > My Proxy >
Summary page. This page provides information on the features of your subscription
and details of your Content Gateway system.
● For information about the Monitor tab, see Viewing statistics in the Content
Gateway manager, page 111.
● Click the Configure tab to display the available configuration options.
■ This document provides instructions for the many tasks that can be performed
via the options on the Configure tab.
■ A list describing all of the options available on the Configure tab appears in
Configuration Options.
permanently accept the certificate within the browser. See your browser
documentation for details.
Note
If you are using Internet Explorer, the certificate error will
still be present after you accept the certificate. Close and
reopen your browser to remove the error message.
Windows 7 considerations
If you are using Windows 7, you may need to run the browser as administrator for it to
allow ActiveX controls.
1. Right-click the browser application and select Run as administrator.
2. Log on to the Content Gateway manager and accept the security certificate as
described above.
Important
If Content Gateway is installed on an appliance, see your
appliance documentation for details.
Note
The following procedure applies to Content Gateway
software installations.
If Content Gateway is running on an appliance, see your
Forcepoint appliance documentation.
Note
Ensure that there are no trailing spaces after the word
NULL.
■ Uppercase character
■ Lowercase character
■ Number
■ Special character
Supported characters include:
! #%&'()*+,- ./;<=>?@[ ]^_ {|}~
The following special characters are not supported:
Space $ : ` \ "
8. Click Apply.
The next time you access the Content Gateway manager, you must use the new
password.
Click on Get Help! on any page in the Content Gateway manager to get detailed
information about using the product.
Important
Default Internet Explorer settings may block operation of
the Help system. If a security alert appears, select Allow
Blocked Content to display Help.
If your organization’s security standards permit, you can
permanently disable the warning message on the
Advanced tab of the Tools > Internet Options interface.
(Mark Allow active content to run in files on My
Computer under Security options.)
To access a PDF version of online help, or to access Release Notes, installation and
deployment information, FAQs, tips, and other technical information, go to the
Documentation Library.
Related topic:
● Providing system information, page 15
When Content Gateway is deployed with Forcepoint Web Security, there is no need to
enter a subscription key in the Content Gateway manager. The Forcepoint Web
Security key is automatically shared with Content Gateway.
Note
A key is associated with a Policy Server instance. If you
have multiple keys, make sure that Content Gateway is
connected to the correct Policy Server instance on the
More Details view of the Monitor > My Proxy >
Summary page.
To change which Policy Server instance Content Gateway
uses:
● (Appliance) See your Forcepoint appliance
documentation.
● (Software) Edit the /opt/WCG/websense.ini file to set
the value of PolicyServerIP. After making the change,
stop and start Content Gateway processes:
/opt/WCG/WCGAdmin stop
/opt/WCG/WCGAdmin start
When Content Gateway is deployed with only Forcepoint DLP, you will need to enter
your subscription key manually.
1. Go to the Configure > My Proxy > Subscription > Subscription Management
page of the Content Gateway manager.
2. Enter your key in the field provided.
3. Click Apply.
4. Click Restart on the Configure > My Proxy > Basic > General page.
Gateway can connect to Filtering Service, and define what Content Gateway does
when communication is interrupted.
To do this:
1. Log on to the Content Gateway manager.
2. Go to the Configure > My Proxy > Subscription > Scanning tab and note the
Filtering Service IP address and port. This is information that you entered when
you installed Content Gateway.
3. Review the Communication Timeout setting. This is the time, in milliseconds,
that Content Gateway waits on communication with Policy Server or Filtering
Service before timing out and triggering the Action for Communication Errors
setting.
The default timeout value is 5000 ms (5 seconds). If you change the value, you
must restart Content Gateway.
4. In the Action for Communication Errors section, specify whether to permit or
block traffic if a communication timeout condition occurs. When a timeout
occurs, Content Gateway applies the setting and regularly polls the services to
detect their renewed availability.
5. Use the Scanning Data Files Update section to configure how long to wait after
downloading security analytic data files before they are put into use. Select a
Delay time from the drop-down list.
Keep in mind that the longer the delay, the higher the security risk. The Suspend
updates option is not recommended for extended use. Selecting it will prompt an
alarm as a reminder that downloads have been suspended. It is recommended that
you not clear the alarm until Delay time has been reset.
When a delay time is in place, there may be up to 2 sets of data files present on the
Content Gateway machine.
■ The current set of data files that are being used by the analytics.
■ The set of data files whose complete download is being delayed.
Once the delay period is met, the delayed database is moved to the current set of
files and the delay period is applied to next download.
This feature is typically used for a backup system.
6. When you have finished making changes, click Apply.
After you have installed the proxy, verify that it is processing requests for web
content.
1. Log on to the Content Gateway manager.
2. Go to the Monitor > My Proxy > Summary page to view subscription detail,
scanning data file status, and node details, including the number of objects served,
the hit rate, and other basic proxy service information.
3. Navigate to Monitor > Protocol > HTTP > General to display the General
HTTP Statistics table.
4. Note the current Total Document Bytes statistic in the Client section of the table.
The command-line interface provides a quick way to view proxy statistics and
configure Content Gateway if you do not have access to a browser or if you prefer to
use a UNIX shell-like command interface.
Note
This facility is not available when Content Gateway is
hosted on a Forcepoint appliance. Instead, use the Content
Gateway manager and see your appliance documentation.
You can execute individual commands or script multiple commands in a shell. See
Content Gateway commands, page 287.
1. Become root:
su
2. Change to the Content Gateway bin directory (/opt/WCG/bin). Run Content
Gateway commands from this directory.
■ Commands take the form:
content_line -<command_argument>
■ To view a configuration setting, enter the following command:
content_line -r <var>
Here, <var> is the variable associated with the configuration option (for a list
of the variables, refer to Configuration variables, page 414).
■ To change the value of a configuration setting, enter the following command:
content_line -s <var> -v <value>
Here, <var> is the variable associated with the configuration option and
<value> is the value you want to use.
3. For a list of content_line commands, enter:
content_line -h
Note
If the Content Gateway bin directory is not in your path,
prepend the command with “./”.
For example:
./content_line -h
./WCGAdmin status
Web proxy caching stores copies of frequently accessed web objects (such as
documents, images, and articles) close to users and serves this information to them.
Internet users get their information faster, and Internet bandwidth is freed for other
tasks.
Internet users direct their requests to web servers all over the Internet. For a caching
server to serve these requests, it must act as a web proxy server. A web proxy server
receives user requests for web objects and either serves the requests or forwards them
to the origin server (the web server that contains the original copy of the requested
information).
Content Gateway supports both transparent proxy deployment, in which the user’s
client software (typically a browser) is unaware that it is communicating with a proxy,
and explicit proxy deployment, in which the user’s client software is configured to
send requests directly to the proxy.
Cache requests
Related topics:
● Scheduling updates to local cache content, page 27
● Pinning content in the cache, page 29
● To cache or not to cache?, page 29
● Caching HTTP objects, page 30
● Forcing object caching, page 35
● Caching HTTP alternates, page 35
● Caching FTP objects, page 37
2. Using the web address, the proxy tries to locate the requested object in its object
store (cache).
3. If the object is in the cache, the proxy checks to see if the object is fresh enough to
serve (see Ensuring cached object freshness, page 22). If the object is fresh, the
proxy serves it to the user as a cache hit.
4. If the data in the cache is stale, the proxy connects to the origin server and asks if
the object is still fresh (a revalidation). If the object is still fresh, the proxy sends
the cached copy to the user.
5. If the object is not in the cache (a cache miss) or the server indicates that the
cached copy is no longer valid, the proxy obtains the object from the origin server,
simultaneously streaming it to the user and the cache. Subsequent requests for the
object will be served faster because the object will come directly from the cache.
Content Gateway can store and serve Java applets, JavaScript programs,
VBScripts, and other executable objects from its cache according to the freshness and
cacheability rules for HTTP objects. Content Gateway does not execute the applets,
scripts, or programs. These objects run only when the client system that sent the
request loads them.
Content Gateway does not store partial documents in the cache. Should a client
disconnect while an HTTP or FTP download is underway, Content Gateway continues
the download for up to 10 seconds after the disconnect. If the transfer completes
successfully, Content Gateway stores the object in the cache. If the download does not
complete, Content Gateway disconnects from the origin server and deletes the object
from the cache.
When Content Gateway receives a request for a web object, it tries to locate the
requested object in its cache. If the object is in the cache, the proxy checks to see if the
object is fresh enough to serve.
The protocol determines how the proxy handles object freshness in the cache:
● HTTP objects support author-specified expiration dates. The proxy adheres to
these expiration dates; otherwise, it picks an expiration date based on how
frequently the object is changing and on administrator-chosen freshness
guidelines. In addition, objects can be revalidated, checking with the origin server
if an object is still fresh. See HTTP object freshness, page 23.
● FTP objects stay in the cache for a specified time period. See FTP object
freshness, page 26.
Content Gateway determines whether an HTTP object in the cache is fresh by:
● Checking the Expires or max-age header
Some HTTP objects contain Expires headers or max-age headers that define how
long the object can be cached. Comparing the current time with the expiration
time tells the proxy whether or not the object is fresh.
● Checking the Last-Modified / Date headers
If an HTTP object has no Expires header or max-age header, the proxy can
calculate a freshness limit using the following formula:
freshness_limit =(date - last_modified) * 0.10
Here, date is the date in the object’s server response header, and last_modified is
the date in the Last-Modified header. If there is no Last-Modified header, the
proxy uses the date that the object was written to cache. You can increase or
reduce the value 0.10 (10 percent). See Modifying the aging factor for freshness
computations, page 23.
The computed freshness limit is bound by minimum and maximum boundaries.
See Setting an absolute freshness limit, page 24.
● Checking the absolute freshness limit
For HTTP objects that do not have Expires headers or do not have both Last-
Modified and Date headers, the proxy uses a maximum and minimum freshness
limit. See Setting an absolute freshness limit, page 24.
● Checking revalidate rules in the cache.config file
Revalidate rules apply freshness limits to specific HTTP objects. You can set
freshness limits for objects originating from particular domains or IP addresses,
objects with URLs that contain specified regular expressions, and objects
requested by particular clients, for example. See cache.config, page 391.
If an object does not contain any expiration information, Content Gateway can
estimate its freshness from the Last-Modified and Date headers. By default, the
proxy stores an object for 10% of the time that elapsed since it last changed. You can
increase or reduce the percentage.
1. Open the records.config file located in the Content Gateway config directory.
2. Edit the proxy.config.http.cache.heuristic_lm_factor variable to specify the
aging factor for freshness computations.
The default value is 0.10 (10 percent).
3. Save and close the file.
4. To apply the changes, run the following command from the Content Gateway bin
directory:
content_line -x
Some objects do not have Expires headers or do not have both Last-Modified and
Date headers. You can control how long these objects are considered fresh in the
cache by specifying an absolute freshness limit. A longer lifetime means objects are
kept in the cache longer. Performance can improve if pages are taken from the cache
rather than going out to the network.
1. Navigate to the Configure > Protocols > HTTP > Cacheability tab.
2. In the Minimum Heuristic Lifetime area of the Freshness section, specify the
minimum amount of time that HTTP objects without an expiration date can
remain fresh in the cache before being considered stale. The default value is
3600 seconds (1 hour).
3. In the Maximum Heuristic Lifetime field, specify the maximum amount of time
that HTTP objects without an expiration date can remain fresh in the cache before
being considered stale. The default value is 86400 seconds (1 day).
4. Click Apply.
To ensure freshness of the objects in the cache, configure Content Gateway to cache
only objects with specific headers.
Warning
By default, the proxy caches all objects (including objects
with no headers). As a bet practice, change the default
setting only for specialized proxy situations. If you
configure the proxy to cache only HTTP objects with
Expires or max-age headers, the cache hit rate will be
seriously reduced (very few objects have explicit
expiration information).
1. Navigate to the Configure > Protocols > HTTP > Cacheability tab.
2. Under Behavior > Required Headers, select one of the following:
■ An Explicit Lifetime Header to cache only HTTP objects with Expires or
Cache-Control headers.
■ A Last-Modified Header to cache only HTTP objects with Expires or Last-
Modified headers.
■ No Required Headers to cache all HTTP objects (no specific headers are
required). This is the default.
3. Click Apply.
Cache-Control headers
Help | Content Gateway | v8.5.x
Even though an object might be fresh in the cache, clients or servers might have
constraints that prevent them from retrieving the object from the cache. For example,
a client might request that a object not come from a cache, or if it does, it cannot have
been cached for more than 10 minutes.
Content Gateway bases the servability of a cached object on Cache-Control headers.
Cache-Control headers can appear in both client requests and server responses.
The following Cache-Control headers affect whether objects are served from the
cache:
● The no-cache header, sent by clients, tells the proxy to serve no objects directly
from the cache; always obtain the object from the origin server. You can configure
the proxy to ignore client no-cache headers (see Configuring the proxy to ignore
client no-cache headers, page 31).
● The max-age header, sent by servers, is compared to the object age; if the age is
less than max-age, the object is fresh and can be served.
● The min-fresh header, sent by clients, is an acceptable freshness tolerance. The
client wants the object to be at least this fresh. If a cached object does not remain
fresh at least this long in the future, it is revalidated.
● The max-stale header, sent by clients, permits the proxy to serve stale objects
provided they are not too old. Some browsers might be willing to take slightly old
objects in exchange for improved performance, especially during periods of poor
Internet availability.
The proxy applies Cache-Control servability criteria after HTTP freshness criteria.
For example, an object might be considered fresh, but if its age is greater than its max-
age, it is not served.
When a client requests an HTTP object that is stale in the cache, Content Gateway
revalidates the object, querying the origin server to check if the object is unchanged.
Revalidation results in one of the following:
● If the object is still fresh, the proxy resets its freshness limit and serves the object.
● If a new copy of the object is available, the proxy caches the new object, replacing
the stale copy, and serves the object to the user simultaneously.
● If the object no longer exists on the origin server, the proxy does not serve the
cached copy.
● If the origin server does not respond to the revalidation query, the proxy does not
perform any validation; it serves the stale object from the cache.
By default, the proxy revalidates a requested HTTP object in the cache if it considers
the object to be stale. The proxy evaluates object freshness as described in HTTP
object freshness, page 23. You can configure how often you want the proxy to
revalidate an HTTP object.
1. Navigate to the Configure > Protocols > HTTP > Cacheability tab.
2. In the When to Revalidate area of the Behavior section, select:
■ Never Revalidate to never verify the freshness of a requested HTTP object
with the origin server.
■ Always Revalidate to always verify the freshness of a requested HTTP object
with the origin server.
■ Revalidate if Heuristic Expiration to verify the freshness of a requested
HTTP object with the origin server if the object contains no Expires or
Cache-Control headers. Content Gateway considers all HTTP objects
without Expires or Cache-Control headers to be stale.
■ Use Cache Directive or Heuristic to verify the freshness of a requested
HTTP object with the origin server when Content Gateway considers the
object in the cache to be stale. This is the default.
3. Click Apply.
Note
You can also set specific revalidation rules in the
cache.config file. See cache.config, page 391.
FTP objects carry no time stamp or date information and remain fresh in the cache for
the period of time you specify (from 15 minutes to 2 weeks), after which they are
considered stale.
FTP objects can be requested from either an HTTP client (such as a browser) or an
FTP client (such as WS_FTP). Content Gateway caches only the FTP objects
requested from HTTP clients.
Note
In addition to setting an absolute freshness limit for all
FTP objects requested by HTTP clients, you can set
freshness rules for specific FTP objects in the
cache.config file (see cache.config, page 391).
1. Navigate to the Configure > Protocols > HTTP > Cacheability tab.
2. In the FTP Document Lifetime area of the Freshness section, enter the amount
of time that FTP objects requested by HTTP clients can remain fresh in the cache
before being considered stale. The default value is 259200 seconds (3 days).
3. Click Apply.
To further increase performance and to ensure that HTTP and FTP objects (requested
from HTTP clients) are fresh in the cache, you can use the Scheduled Update option to
configure the proxy to load specific objects into the cache at scheduled times.
To use the Scheduled Update option:
● Specify the list of URLs that contain the objects you want to schedule for update,
the time the update should take place, and the recursion depth for the URL.
● Enable the Scheduled Update option and configure optional retry settings.
See Configuring the Scheduled Update option, page 27, for more information.
Content Gateway uses the information you specify to determine the URLs for which it
is responsible and, for each URL, derives all recursive URLs if applicable. It then
generates a unique URL list. Using this list, the proxy initiates an HTTP GET for each
unaccessed URL, ensuring that it remains within the user-defined limits for HTTP
concurrency at any given time.
Note
The system logs the completion of all HTTP GET
operations, enabling you to monitor the performance of
this feature.
The Force Immediate Update option that enables you to update URLs without waiting
for the specified update time to occur. You can use this option to test your scheduled
update configuration. See Forcing an immediate update, page 28.
The Force Immediate Update option lets you verify the URLs listed in the
update.config file immediately. This option disregards the offset hour and interval set
in the update.config file and updates the URLs listed.
Important
When you enable the Force Immediate Update option, the
proxy continually updates the URLs specified in the
update.config file until you disable the option.
1. Navigate to Configure > Protocols > HTTP Scheduled Update > General.
2. Ensure that Scheduled Update is enabled.
3. Click the Update URLs tab.
4. Enable Force Immediate Update.
5. Click Apply.
The cache pinning option configures Content Gateway to keep certain HTTP objects
(and FTP objects requested from HTTP clients) in the cache for a specified time. Use
this option to ensure that the most popular objects are in the cache when needed and
that the proxy does not delete important objects from the cache.
Note
The proxy observes Cache-Control headers and pins an
object in the cache only if it is cacheable.
When Content Gateway receives a request for a web object that is not in the cache, it
retrieves the object from the origin server and serves it to the client. At the same time,
the proxy checks if the object is cacheable before storing it in its cache to serve future
requests.
Content Gateway determines if an object is cacheable based on protocol:
● For HTTP objects, the proxy responds to caching directives from clients and
origin servers. In addition, you can configure the proxy not to cache certain
objects. See Caching HTTP objects, page 30.
● For FTP objects, the proxy responds to caching directives you specify through
configuration options and files. See Caching FTP objects, page 37.
Content Gateway responds to caching directives from clients and origin servers, as
well as directives you specify through configuration options and files.
This section discusses the following topics:
● Client directives, page 30
● Origin server directives, page 32
● Configuration directives, page 33
Client directives
Help | Content Gateway | v8.5.x
By default, Content Gateway does not cache objects with the following request
headers:
● Cache-Control: no-store
● Cache-Control: no-cache
Note
You can configure the proxy to ignore the Cache-Control:
no-cache header. See Configuring the proxy to ignore
client no-cache headers, page 31.
● Authorization:
Note
FTP objects requested from HTTP clients can also contain
Cache-Control: no-store, Cache-Control: no-cache, or
Authorization headers. If an FTP object requested from
an HTTP client contains such a header, the proxy does not
cache it unless explicitly configured to do so.
Important
The default behavior of observing no-cache directives is
appropriate in most cases. Configure Content Gateway to
ignore client no-cache directives only if you are
knowledgeable about HTTP 1.1.
1. Navigate to the Configure > Protocols > HTTP > Cacheability tab.
2. In the Behavior section, enable the Ignore “no-cache” in Client Requests
option.
3. Click Apply.
Note
Certain versions of Microsoft Internet Explorer do not
request cache reloads from transparent caches when the
user presses the browser Refresh button. This can prevent
content from being loaded directly from the origin server.
You can configure Content Gateway to treat Microsoft
Internet Explorer requests more conservatively, providing
fresher content at the cost of serving fewer documents
from the cache. You can configure the proxy to add no-
cache headers to requests from Microsoft Internet
Explorer in the Content Gateway manager (in the
Behavior section of the Configure > Protocols >
HTTP > Cacheability tab).
By default, Content Gateway does not cache objects with the following response
headers:
● Cache-Control: no-store
● Cache-Control: private
● WWW-Authenticate:
Note
You can configure the proxy to ignore WWW-
Authenticate headers. See Configuring the proxy to
ignore WWW-Authenticate headers, page 33.
● Set-Cookie:
● Cache-Control: no-cache
Note
You can configure the proxy to ignore no-cache headers.
See Configuring the proxy to ignore server no-cache
headers, page 32.
Important
If you configure the proxy to ignore no-cache headers, it
also ignores no-store headers.
Important
The default behavior of observing no-cache directives is
appropriate in most cases. Configure the proxy to ignore
origin server no-cache headers only if you are
knowledgeable about HTTP 1.1.
Important
The default behavior of not caching objects with
WWW-Authenticate headers is appropriate in most cases.
Configure the proxy to ignore server WWW-Authenticate
headers only if you are knowledgeable about HTTP 1.1.
You can configure the proxy to ignore origin server WWW-Authenticate headers, in
which case, objects with WWW-Authenticate headers are stored in the cache for
future requests.
To do this:
1. Open the records.config file located in the Content Gateway config directory.
2. Edit the proxy.config.http.cache.ignore_authentication variable to 1 to cache
objects with WWW-Authenticate headers.
3. Save and close the file.
4. To apply the changes, run the following command from the Content Gateway bin
directory:
content_line -x
Configuration directives
Help | Content Gateway | v8.5.x
● Cache dynamic content (objects with URLs that contain a question mark (?), a
semicolon (;), or cgi, or that end in .asp). See Caching dynamic content, page 34.
● Cache objects served in response to the Cookie: header. See Caching cookied
objects, page 34.
● Observe never-cache rules in the cache.config file. See cache.config, page 391.
By default, Content Gateway caches all HTTP objects except those for which you
have set never cache rules in the cache.config file. You can disable HTTP object
caching so that all HTTP objects are served from the origin server and never cached.
1. Navigate to the Configure > Protocols > HTTP > Cacheability tab.
2. Disable HTTP Caching.
3. Click Apply.
Warning
It is recommended that you configure the proxy to cache
dynamic content for specialized proxy situations only.
1. Navigate to the Configure > Protocols > HTTP > Cacheability tab.
2. In the Dynamic Caching section, enable Caching Documents with Dynamic
URLs.
3. Click Apply.
You can force Content Gateway to cache specific URLs (including dynamic URLs)
for a specified duration regardless of Cache-Control response headers.
1. Navigate to the Configure > Protocols > HTTP > Cacheability tab.
2. Click Edit File at the end of the page to display the configuration file editor for
the cache.config file.
3. In the fields provided, supply the following information:
a. From the Rule Type drop-down box, select ttl-in-cache.
b. From the Primary Destination Type drop-down box, select url_regex.
c. In the Primary Destination Value field, specify the URL you want to force
cache.
d. In the Time Period field, specify the amount of time that the proxy can serve
the URL from the cache.
In addition, you can add secondary specifiers (such as Prefix and Suffix) to
the rule. All the fields are described in HTTP, page 306.
4. Click Add, and then click Apply.
5. Click Close.
Some origin servers answer requests to the same URL with a variety of objects. The
content of these objects can vary, according to whether a server delivers content for
different languages, targets different browsers with different presentation styles, or
provides different document formats (HTML, PDF). Different versions of the same
object are termed alternates and are cached by Content Gateway based on Vary
response headers.
Note
If you specify Cookie as the header field on which to vary
in the above fields, make sure that the appropriate option is
enabled under Dynamic Caching > Caching Response to
Cookies.
For example, if you enable Caching Response to
Cookies > Cache Only Image Types you enable Vary
Based on Content Type > Vary by Default on Text,
alternates by cookie will not apply to text.
4. Click Apply.
Note
Large numbers of alternates can affect proxy performance
because all alternates have the same URL. Although
Content Gateway can look up the URL in the index very
quickly, it must scan sequentially through available
alternates in the object store.
1. Navigate to the Configure > Protocols > HTTP > Cacheability tab.
2. In the Maximum Alternates field, enter the maximum number of alternate
versions of an object you want the proxy to cache. The default value is 3.
3. Click Apply.
FTP objects can be requested from either an HTTP client (such as a browser) or an
FTP client (such as WS_FTP).
For FTP objects requested from HTTP clients (FTP over HTTP), perform the
following configuration to determine what the proxy stores in the cache:
● Disable FTP over HTTP caching so that the proxy does not cache any FTP objects
requested from HTTP clients (see Disabling FTP over HTTP caching, page 37).
● Set never cache rules in the cache.config file (see cache.config, page 391).
● Configure the proxy to ignore client Cache-Control: no-store or
Cache-Control: no-cache headers (see Configuring the proxy to ignore client no-
cache headers, page 31).
Caching is not supported for FTP objects requested from FTP clients.
You can configure Content Gateway not to cache any FTP objects that are requested
from HTTP clients by disabling the FTP over HTTP option. The proxy processes the
requests by forwarding them to the FTP server but does not cache any requested
objects.
1. Navigate to the Configure > Protocols > HTTP > Cacheability tab.
2. In the Caching section, disable FTP over HTTP Caching.
3. Click Apply.
If Internet requests are not transparently routed to Content Gateway via a Layer 4
switch or router (see Transparent Proxy and ARM, page 47), traffic must be explicitly
routed to Content Gateway by configuring the client’s Internet browser. (This is
sometimes referred to as an explicit proxy deployment.)
Clients can configure their web browsers in 1 of 3 ways:
● By directly configuring their browsers to send requests directly to the proxy. See
Manual browser configuration, page 39.
● By configuring their browsers to download proxy configuration instructions from
a proxy auto-config (PAC) file. See Using a PAC file, page 40.
● By using Web Proxy Auto-Discovery Protocol (WPAD) to download proxy
configuration instructions from a WPAD server (Microsoft Internet Explorer
only). See Using WPAD, page 42.
In addition, if Content Gateway is configured to proxy FTP traffic, FTP client
applications, such as FileZilla or WS_FTP, must be configured to explicitly send
requests to the proxy. See Configuring FTP clients in an explicit proxy environment,
page 44.
To configure a browser to send requests to Content Gateway, clients must provide the
following information for each protocol they want the proxy to serve to their
browsers:
Important
If Integrated Windows Authentication is configured for
user authentication, the Fully Qualified Domain Name
must be used. Specifying the IP address will result in
authentication failure. See Integrated Windows
Authentication, page 189.
● The proxy server port. The Content Gateway default proxy server port is 8080.
Important
Do not set up the IP address of the Content Gateway proxy
to be a virtual IP address.
Although the Content Gateway manager does not prohibit
the entry of a virtual IP address, the proxy does not
function properly if a VIP is used.
In addition, clients can specify not to use the proxy for certain sites. Requests to the
listed sites go directly to the origin server.
For Microsoft Internet Explorer, proxy configuration settings are in Tools > Internet
Options > Connections > LAN Settings. By default, Microsoft Internet Explorer sets
all protocols to the same proxy server. To configure each protocol separately, click
Advanced in the LAN Settings section. See the browser documentation for complete
proxy configuration instructions.
For Mozilla Firefox, proxy configuration settings are in Tools > Options >
Advanced > Network > Settings > Connection Settings > Manual Proxy
Configuration. By default, you must configure each protocol separately. However,
you can set all protocols to the same proxy server by selecting Use this proxy server
for all protocols.
You do not have to set configuration options on the proxy to accept requests from
manually configured browsers.
A PAC file is a JavaScript function definition that a browser calls to determine how
requests are handled. Clients must specify in their browser settings the URL from
which the PAC file is loaded.
You can store a PAC file on the proxy and provide the URL for this file to your clients.
Note
The PAC file can reside on any server in your network.
Small networks may store the file on the proxy itself, but
large, enterprise-class networks should use a separate
server for storing the PAC file.
If the HTTPS protocol option is enabled, see Enabling SSL
support, page 131, for information about a PAC file to use
with HTTPS traffic.
1. If you have an existing proxy.pac file, replace the proxy.pac file located in the
Content Gateway config directory with your existing file.
2. Navigate to the Configure > Content Routing > Browser Auto-Config > PAC
tab.
3. In the Auto-Configuration Port field, specify the port that Content Gateway uses
to serve the PAC file. The default port is 8083.
4. The PAC Settings area displays the proxy.pac file:
■ If you copied an existing PAC file into the Content Gateway config directory,
the proxy.pac file contains your proxy configuration settings. Check the
settings and make changes if necessary.
■ If you did not copy an existing PAC file into the Content Gateway config
directory, the PAC Settings area is empty. Enter the script that provides the
proxy server configuration settings. A sample script is provided in Sample
PAC file, page 42. See, also, the article titled “PAC File Best Practices” in the
Documentation Library.
5. Click Apply.
6. Go to the Configure > My Proxy > Basic > General tab and click Restart.
7. Inform your users to set their browsers to point to this PAC file.
For example, if the PAC file is located on the proxy server with the hostname
proxy1 and Content Gateway uses the default port 8083 to serve the file, users
must specify the following URL in the proxy configuration settings:
http://proxy1.company.com:8083/proxy.pac
The procedures for specifying the PAC file location vary among browsers.
For Microsoft Internet Explorer:
1. Go to Tools > Internet Options > Connections > LAN Settings.
2. Select Use automatic configuration script.
3. In the Address field, enter:
http://<proxy_host>:8083/proxy.pac
4. Click OK.
For Mozilla Firefox:
1. Go to Tools > Options > Advanced > Network > Connection > Settings.
2. Select Automatic proxy configuration URL field, and enter
http://<proxy_host>:8083/proxy.pac
3. Click Reload, and then click OK.
See the documentation for your browser for details.
The following sample PAC file instructs browsers to connect directly to all hosts
without a fully qualified domain name and to all hosts in the local domain. All other
requests go to the proxy server called myproxy.company.com.
function FindProxyForURL(url, host)
{
if (isPlainHostName(host) || dnsDomainIs(host,
".company.com"))
return "DIRECT";
else
return "PROXY myproxy.company.com:8080; DIRECT";
}
Using WPAD
WPAD allows Internet Explorer to automatically detect a server that can supply it with
proxy server configuration settings. Clients do not have to configure their browsers to
send requests to a proxy server: a single server provides the settings to all clients on
the network.
Note
WPAD is incompatible with transparent proxy
deployments.
When an Internet Explorer browser starts up, it searches for a WPAD server. It
prepends the hostname WPAD to the current fully qualified domain name. For
example, a client in x.y.company.com searches for a WPAD server at
wpad.x.y.company.com. If unsuccessful, the browser removes the bottommost
domain and tries again; for example, it tries wpad.y.company.com. The browser stops
searching when it detects a WPAD server or reaches the third-level domain,
wpad.company.com. The algorithm stops at the third level so that the browser does
not search outside the current network.
Note
By default, Microsoft Internet Explorer are set to
automatically detect WPAD servers. However, browser
users can disable this setting.
When Content Gateway is configured to proxy FTP traffic (see FTP, page 319), also
configure FTP client applications, such as FileZilla or WS_FTP, to send FTP requests
to the proxy. After the initial configuration, users work with the FTP client application
as if no proxy were present.
To connect to an FTP server, 4 pieces of information are usually needed. These pieces
of information are mapped as follows:
From: To:
FTP server hostname FTP proxy hostname
FTP server port number FTP proxy port number (default is 2121)
FTP server username FTP_server_username@FTP_server_hostname
For example: [email protected]
FTP server password FTP server password
Some FTP client applications have a configuration page for specifying FTP proxy
information. Update those settings to point to the Content Gateway FTP proxy. See
your FTP client application documentation.
Port: 2121
The transparent proxy option enables Content Gateway to respond to client Internet
requests without requiring users to reconfigure their browsers. It does this by
redirecting the request flow to the proxy after the traffic has been intercepted,
typically by a Layer 4 (L4) switch or router.
In a transparent proxy deployment:
1. The proxy intercepts client requests to origin servers via a switch or router. See
Transparent interception strategies, page 49.
2. The Adaptive Redirection Module (ARM) intercepts incoming packets and
redirects them to the proxy. (The ARM is always enabled.)
3. The proxy receives and begins processing the intercepted client requests. If a
request is a cache hit, the proxy serves the requested object. If a request is a miss,
the proxy retrieves the object from the origin server and serves it to the client.
Important
For transparent proxy configurations with multiple
interfaces or gateways, Content Gateway must have proper
routes to clients and the Internet in the operating system’s
routing table.
For HTTP, the proxy can identify problem clients and servers, and the ARM can
disable interception for those clients and servers, passing their traffic directly to the
origin server. You can also create ARM static bypass rules to exempt clients and
servers from being redirected to the proxy. See Interception bypass, page 71.
Related topics:
● Transparent interception strategies, page 49
● Interception bypass, page 71
● Connection load shedding, page 74
● Reducing DNS lookups, page 75
● Content Gateway IP spoofing, page 77
● Content Gateway support for IPv6, page 82
The ARM inspects incoming packets before a routing decision is made and redirects
the packets to Content Gateway for processing.
The ARM uses iptables, policy routing, and transparent sockets configured during
product installation. The installation process also creates redirection rules to intercept
packets. The ARM is always active.
To ensure that the proxy can serve HTTP, HTTPS, FTP, and DNS requests
transparently, verify the redirection rules in the ipnat.conf file and edit them if
necessary.
● If you are using WCCP for transparent interception, there must be a redirection
rule for every port in every active service group.
● Rules for standard ports are included by default.
To review and edit the ARM redirection rules:
1. Log on to the Content Gateway manager and go to the Configure >
Networking > ARM > General tab.
2. Verify the Redirection Rules (taken from the ipnat.conf file) and make any
needed changes. To change a redirection rule:
a. Click Edit File to open the configuration file editor for the ipnat.conf file.
b. Select the rule you want to edit and modify the appropriate fields.
c. Click Set and then click Apply to apply your changes.
d. Click Close to exit the configuration file editor.
All fields are described in ARM, page 356.
3. If you have made any changes, go to the Configure > My Proxy > Basic >
General tab and click Restart.
Layer 4 switches can redirect supported protocols to the proxy, while passing all other
Internet traffic directly to its destination, as shown below for HTTP.
Layer 4 switches offer the following features, depending on the particular switch:
● A Layer 4 switch that can sense downed hosts on the network and redirect traffic
adds reliability.
● If a single Layer 4 switch feeds several proxy servers, the switch handles load
balancing among the Content Gateway nodes. Different switches might use
different load-balancing methods, such as round-robin or hashing. If a node
becomes unavailable, the switch redistributes the load. When the node returns to
service, some switches return the node to its previous workload, so that the node
cache need not be repopulated; this feature is called cache affinity.
Note
It is recommended that you do not enable Content
Gateway virtual IP failover when a switch is providing
load balancing in a cluster configuration.
Related topics:
● WCCP v2 setup outline, page 52
● WCCP v2 supported features, page 53
● ARM bypass and WCCP, page 53
● WCCP load distribution, page 54
● Configuring WCCP v2 routers, page 55
● Enabling WCCP v2 in Content Gateway, page 60
● ARM bypass and WCCP, page 53
Important
The network clients, Content Gateway proxy servers, and
destination web servers (default gateway) must reside on
separate subnets.
4. The ARM redirects packets to the client. As a result, the user sees the response as
if it had been sent directly from the origin server.
See Enabling WCCP v2 in Content Gateway, page 60, and The Content Gateway
ARM, page 48.
3. Validate the configuration with test traffic.
If Content Gateway has an ARM bypass rule (discussed in Interception bypass, page
71), Content Gateway forwards particular client requests directly to the origin server,
bypassing the proxy.
Bypassed requests are unchanged by the ARM.
With WCCP v2, you can exclude certain router interfaces from redirection. Content
Gateway ARM bypass rules work only if you exclude the router interface that
Content Gateway is connected to from WCCP redirection. You do this on the
router by selecting the interface connected to Content Gateway and issuing the router
configuration command ip wccp redirect exclude in. This causes the router to
exclude traffic inbound on the specified interface from all redirection rules.
The WCCP protocol provides the assignment method for dynamic symmetric and
asymmetric load distribution in a cluster. WCCP detects node failures and performs
redistribution based on the configuration communicated to it by Content Gateway.
● Load distribution is configured in Content Gateway Manager and is pushed to the
WCCP devices.
● Load distribution is configured per service group.
For each service group:
■ Participating cluster members must be registered to the service group. (The
WCCP device makes no decisions about load balancing.)
■ The HASH or MASK assignment method is selected. HASH is typically used
with the GRE forward/return method, and MASK with the L2 forward/return
method.
Important
MASK was developed specifically for the Cisco Catalyst
series switches, and is one of the key characteristics that
enable WCCP interception to be performed completely in
hardware on these platforms. It should be used only with
devices for which there is documented support.
members based on the load distribution configuration. When a cluster member returns
to service and is detected by the WCCP device, load distribution is, again,
automatically adjusted based on the configuration.
For configuration steps, see Configuring service groups in the Content Gateway
manager, page 61.
Important
Weight is only useful if the Synchronize in the Cluster
option is disabled. See Configuring service groups in the
Content Gateway manager, page 61.
The weight value is unique to each service group and node. The weight value does not
propagate around the cluster and must be set individually on every node in the cluster.
The value of weight, relative to the settings on other cluster members, determines the
proportion of traffic that WCCP directs to the node.
By default, weight is set to 0, which results in equal distribution to all cluster
members.
To achieve asymmetric distribution, weight is set relative to other members of the
cluster. For example, assume a cluster of 3 nodes:
If Node1 goes offline, Node2 and Node3 will get an equal amount of traffic. If Node3
goes offline, Node1 will get two thirds of the traffic and Node2 will get one third of
the traffic.
Because the weight value is relative to the settings on other cluster nodes, the same
distribution as above can be achieved with weight values of 10, 5, 5. (The valid range
of weight is 0-255.)
If weight is changed from its default value of 0, it should be configured on all nodes in
the cluster.
Consult the documentation for your WCCP v2 device, as well as the manufacturer’s
support site, for device configuration and performance information.
Note
For instructions on configuring your specific router, please
refer to the documentation provided by your hardware
vendor. For Cisco routers, see http://www.cisco.com/
cisco/web/psa/default.html?mode=prod and search for
your IOS and device version, for example, IOS 12.4.
4. When you are done configuring the router, you must also configure and enable
WCCP in the Content Gateway manager. See Enabling WCCP v2 in Content
Gateway, page 60.
WCCP uses service groups to specify the traffic that is redirected to Content Gateway
(and other devices).
● A service group can intercept one or more protocols on one or more ports.
● Service groups are assigned a unique integer identifier (ID) from 0 to 255.
● Service groups IDs are user defined; they do not have a default port or traffic type.
The following table illustrates a set of service group definitions that are often found in
networks. If you are configuring for IP spoofing, see the table in Content Gateway IP
spoofing, page 77, for common reverse service group IDs.
The best practice is to configure the routers first and Content Gateway second.
Follow the instructions in your router documentation for specifics, but in general:
1. To see what has been configured on the router for WCCP, enter:
show running-config | include wccp
2. To enable WCCP v2, enter:
ip wccp version 2
3. If you used another proxy cache with your router prior to Content Gateway,
disable the service ID that was previously used. For example, if you have a Cisco
router, disable the service ID web-cache as follows:
no ip wccp web-cache
4. Specify the service group IDs you will use with Content Gateway. For the specific
commands to use, see your router documentation.
You must configure each service group supported by the router individually. You
cannot configure a router globally.
For each WCCP v2 service group that you configure, you must enable WCCP
processing.
WCCP v2 routers contain multiple network interfaces, including:
● one or more interfaces that receive inbound (ingress) client traffic
● one or more interfaces connected to Content Gateway
● an interface dedicated to outbound (egress) traffic that is aimed at the Internet
Following are some guidelines for enabling WCCP processing for a service group on
a router. Consult the procedures in your router documentation for specifics.
1. Turn on the WCCP feature:
ip wccp <service group ID> password [0-7] <passwd>
2. On the router or switch interface, enable redirection for incoming (ingress)
packets or outgoing (egress) packets.
Note
Where your hardware and network topology support it, it
is recommended that redirection be performed on the
ingress interface (using the “redirect in” commands).
The following are examples. Be sure to substitute the service group IDs that you
have established on your router(s).
First, select the interface to configure:
interface <type> <number>
Second, establish your redirection rules:
ip wccp <service group ID> redirect in
Examples for inbound redirection:
Run these commands for each protocol that you want to support, but only on the
interfaces dedicated to inbound (ingress) traffic.
For example, to turn on redirection of HTTP destination port traffic, enter:
ip wccp 0 redirect in
To turn on redirection of HTTPS destination port traffic:
ip wccp 70 redirect in
To turn on redirection of FTP destination port traffic enter:
ip wccp 5 redirect in
To turn on redirection of HTTP source port traffic, which is required for IP
spoofing, enter:
ip wccp 20 redirect in
Examples for outbound redirection:
Run these commands for each protocol that you want to support, but only on the
interfaces dedicated to outbound (egress) traffic.
First, select the interface to configure:
interface <type> <number>
Second, establish your redirection rules:
ip wccp <service group ID> redirect out
For example, to turn on redirection for HTTP, enter:
ip wccp 0 redirect out
To turn on redirection for HTTPS:
ip wccp 70 redirect out
If you need to disable WCCP processing for any reason, issue this command to turn
off the WCCP feature:
no ip wccp <service group ID> password [0-7] <passwd>
If you are running WCCP v2, you can enable security on the Content Gateway node so
that the proxy and your routers can authenticate each other. You must individually
enable security for each service group that the router supports. You cannot configure a
router globally as you would Content Gateway.
You enable the security option and provide the authentication password in the Content
Gateway manager.
The authentication password you specify must match the authentication password
configured on the router for each service group being intercepted. The following
procedure provides an example of how to set an authentication password for different
service groups.
1. Telnet to the router and switch to Enable mode.
2. At the prompt, enter the following command to configure the router from the
terminal:
configure terminal
3. If you defined a password when you enabled WCCP on the router, skip to step 4.
Otherwise, enter the following command for each service group that the router
intercepts:
<hostname>(config)# ip wccp <service_group> password <pwd>
Here, <hostname> is the host name of the router you are configuring,
<service_group> is the service group ID (for example, 0 for HTTP), and <pwd> is
the password you want to use to authenticate Content Gateway. This password
must match the password you specify in the Content Gateway configuration for
this service group.
Related topics:
● Configuring WCCP v2 routers, page 55
● Configuring service groups on the WCCP device
● Enabling WCCP processing for a service group
● Enabling WCCP v2 security on the router, page 60
After you have configured your WCCP v2 routers, these steps remain:
1. Enabling WCCP in the Content Gateway Manager:
a. Go to the Configure > My Proxy > Basic > General tab.
b. Under Features > Networking, locate WCCP and click On, then Apply. Do
not restart Content Gateway.
2. Configuring service groups in the Content Gateway manager.
3. Restarting Content Gateway.
Important
Before you restart Content Gateway, make sure that your
configuration meets the following requirements:
● Cisco IOS devices are running a very recent version of
IOS with all appropriate patches applied.
● WCCP routers are programmed with the correct
service groups and other features.
Every WCCP service group that redirects traffic to a Content Gateway proxy must
have a corresponding service group defined for it in the Content Gateway server or
cluster.
To define service groups:
1. Go to the Configure > Networking > WCCP page.
2. Review the existing entries in the Service Groups table and click Edit File to
add, modify, delete, or reorder service groups.
■ Entries are stored in the wccp.config file.
■ Click Refresh to prompt the Content Gateway manager to reread the
wccp.config file and update the table.
■ Detailed instructions can be found in Configuring a service group (editing
wccp.config), page 62.
3. If Content Gateway is configured in a cluster, under Synchronize in the Cluster,
Select Enabled (default) or Disabled. (The value of this option is always
synchronized in the cluster.)
■ When this option is enabled, the WCCP configuration (stored in wccp.config)
is synchronized in the cluster and configuration changes can be made on any
node in the cluster.
■ When this option is disabled, the WCCP configuration is not synchronized in
the cluster and changes to the WCCP configuration must be made
individually on each node. A common use case for this is to control which
service groups are enabled/disabled on each node, and/or to use proportional
load distribution using weight.
■ If this option is disabled, and then later enabled, the configuration on the node
on which the administrator enables the option is used to initially synchronize
the cluster.
Caution: When Synchronize in the Cluster is disabled, you must visit each
node in the cluster to examine and maintain your WCCP configuration. This can
also make WCCP troubleshooting more difficult.
Important
Every port in the service group must have a corresponding
ARM redirection rule to redirect the traffic to Content
Gateway. See The Content Gateway ARM.
f. From the drop down list, select the Network Interface on the Content
Gateway host system that this service group will use.
Note
When the FTP protocol is enabled, select eth0. Client
machines must be reachable via the eth0 interface.
Important
If you change the forward/return method configuration
while there is an active connection with the WCCP device,
in order to re-negotiated the method you must force the
current connection to terminate. Typically, this means
turning off the service group on the WCCP device for 60
seconds. See the documentation for your WCCP device.
Important
If multiple proxies are installed in your environment, each
with WCCP enabled, but configured with different Packet
Forward and Packet Return Methods, traffic may not be
processed. Some routers support only a single Packet
Forward Method within a group and may forward
packets to the other proxies using a method they do not
support.
Typically the router supports only one method, and the forward and return methods
match.
1. If traffic is routed to the proxy by a Cisco ASA firewall, in the Special Device
Profile drop down box select ASA Firewall. When this option is selected, GRE
is automatically selected for both Packet Forward Method and Packet Return
Method. These settings cannot be changed.
2. If traffic is routed to the proxy by a router or switch, select the Packet Forward
Method (L2 or GRE) and Packet Return Method that matches the capabilities
and position of your router or switch.
If Content Gateway is configured with a Forward/Return method that the router
does not support, the proxy negotiates the method supported by the router.
■ If L2 is selected, L2 is automatically selected as the return method (GRE is
not an option).
Important
Selecting L2 requires that the router or switch be
Layer 2-adjacent (in the same subnet) as Content Gateway.
■ If GRE is selected, for each router in the service group a unique Content
Gateway tunnel endpoint IP address must be specified in the WCCP Routers
section (see the “Provide router information” step, below).
Important
GRE cannot be used with WCCP multicast mode.
Important
GRE return, as documented by Cisco (see this site), is
fully functional in all deployments. GRE enhanced tunnel
return, in which the proxy forwards traffic back to the
router, is only available on an appliance. Contact
Technical Support for information on how to enable the
functionality.
Important
When the value of weight is greater than 0 on any member
of the cluster, any member of the cluster with a weight of 0
receives no traffic. If you plan to use weight, be sure to set
a weight on every member of the cluster.
For more information about load distribution, see WCCP load distribution, page
54.
3. Specify a Reverse Service Group ID for IP spoofing.
When IP spoofing is enabled, you must define a reverse service group for each
HTTP and HTTPS forward service group.
Note
Only HTTP and HTTPS are supported for IP Spoofing.
Using the specified ID, Content Gateway creates a reverse service group that is a
mirror of the forward service group. For example, if the forward service group has
assignment method based on destination IP address, the reverse service has an
assignment method based on the source IP address.
Note
IP spoofing is not supported with service groups that use a
hashing assignment method with both destination and
source attributes. If IP spoofing is enabled on such a
service group, an alarm is raised and IP spoofing is
disabled.
Note
It may take up to a minute for the router to report that a
new proxy server has joined a service group.
1. To use optional WCCP authentication, under Security, select Enabled and enter
the same password used for service group authentication on the router. See
Enabling WCCP v2 security on the router, page 60.
2. To run in multicast mode, under Multicast, select Enabled and enter the multicast
IP address. The multicast IP address must match the multicast IP address specified
on the router. See Transparent interception and multicast mode, page 67.
Important
GRE packet Forward/Return method cannot be used with
multicast mode.
■ If ping doesn’t return a response, you need to define a GRE Tunnel Next Hop
to that router. Intervening routers must have a route to the WCCP router, or a
next hop.
Note
WCCP routers that have multiple interfaces assign the
Router ID to the interface with the highest numeric value
IP address. Content Gateway must be able to connect to
the router ID to negotiate the method. To ensure
connectivity and that the router ID doesn’t change
unexpectedly, it is a best practice to make the router
loopback address the highest IP address. This also ensures
that traffic and statistics reported on the Monitor >
Networking > WCCP page are reported against a known
router ID.
Note
To check that the router is sending traffic to the proxy,
examine the statistics in the Content Gateway manager
Monitor pane. For example, check that the Objects
Served statistic in the My Proxy > Summary section
increases.
To configure Content Gateway to run in multicast mode, you must enable multicast
mode and specify the multicast IP address in the Content Gateway manager.
Important
GRE packet Forward/Return method cannot be used with
multicast mode.
In addition, you must set the multicast address on your routers for each service group
being intercepted (HTTP, FTP, DNS, and SOCKS). The following procedure provides
an example of how to set the multicast address for different service groups on a
WCCP v2-enabled router.
Instead of the WCCP protocol, you can use the policy routing capabilities of a router
to send traffic to Content Gateway. WCCP or a Layer 4 switch are generally
preferable to this configuration because policy-based routing has a performance
impact on the router, and policy-based routing does not support load balancing or
heartbeat messaging.
● All client Internet traffic is sent to a router that feeds Content Gateway.
● The router sends port 80 (HTTP) traffic to the proxy and sends the remaining
traffic to the next hop router.
● The ARM redirects intercepted requests to Content Gateway.
● Web objects to be served transparently are redirected by the ARM on the return
path to the client, so that the documents appear to have come from the origin
server.
A Content Gateway cluster with virtual IP failover adds reliability; if one node fails,
another node can take up its transparency requests. See Virtual IP failover, page 90.
You can deploy Content Gateway without adding routers or switches by using routing
software on the Content Gateway node. In this case, Content Gateway is a software
router and directs all traffic through the proxy machine. This solution can be useful in
low-traffic situations, where the performance cost of using the proxy machine as a
router is not high.
On Linux systems, you can use the routed and gated daemons as a software-based
routing solution.
● The routed daemon is a bundled part of all normal Linux distributions.
● The gated daemon is an extensible commercial software package from the Merit
GateD Consortium.
When you use routing software with Content Gateway:
● All Internet traffic goes through Content Gateway from machines behind it in the
network.
● The routing software routes all non-transparent requests to the Internet; it routes
port 80 HTTP requests to the proxy cache.
● The ARM redirects intercepted requests into proxy requests.
● Web objects to be served transparently are redirected by the ARM on the return
path to the client, so that the objects appear to have come from the origin server.
Note
Although Content Gateway machines can function as
routers, they are not expressly designed to be routers. For
reliability, you can use a Content Gateway cluster with the
virtual IP failover option. If one node fails, another cluster
node takes over. (See Virtual IP failover, page 90.) The
Content Gateway cluster failover mechanism is similar to
the Hot Standby Router Protocol (HSRP).
You can configure Content Gateway to serve only transparent requests and prevent
explicit proxy requests from being served in the following ways:
● You can control client access to Content Gateway by specifying ranges of IP
addresses that are allowed to connect to the proxy. If Content Gateway receives a
request from an IP address not listed in a specified range, it discards the request.
See Controlling client access to the proxy, page 163.
● If you do not know the ranges of client IP addresses allowed to access Content
Gateway, you can add rules to the ipnat.conf file on the Configure >
Networking > ARM > General tab in the Content Gateway manager so that only
requests that have been redirected by your Layer 4 switch or WCCP router reach
the proxy port.
To make a transparent-only Content Gateway server, add rules in the ipnat.conf
file before the normal redirect service rule to redirect explicit proxy traffic to a
port on which no service is listening.
For example, if you want Content Gateway to ignore explicit HTTP requests, add
rules above the normal HTTP redirect rule in the ipnat.conf file as shown below:
rdr hme0 <ipaddress> port 80 -> <ipaddress> port
<port_number> tcp
rdr hme0 <ipaddress> port 8080 -> <ipaddress> port
<port_number> tcp
rdr hme0 0.0.0.0/0 port 80 -> <ipaddress> port 8080 tcp
Here, <ipaddress> is the IP address of your Content Gateway system and
<port_number> is a port number on which no service is listening.
Add equivalent rules to the ipnat.conf file for each protocol service port or
separate network interface to be served. After you make changes to the ipnat.conf
file, you must restart the proxy.
● If your Content Gateway system has multiple network interfaces or if you
configure the Content Gateway operating system to use virtual IP addresses, you
can give Content Gateway 2 IP addresses. One address must be the real address
that the proxy uses to communicate with origin servers and the other a private IP
address (for example 10.0.0.1) for WCCP or switch redirection. After you
configure the IP addresses, you must add the following variables to the end of the
records.config file. Replace <private_ipaddress> with the private IP address used
for WCCP or switch redirection and <real_ipaddress> with the IP address the
proxy uses to communicate with origin servers.
LOCAL proxy.local.incoming_ip_to_bind STRING
<private_ipaddress>
LOCAL proxy.local.outgoing_ip_to_bind STRING
<real_ipaddress>
Interception bypass
A small number of clients and servers do not work correctly with web proxies. Some
reasons include:
● Client software irregularities (customized, non-commercial browsers)
● Server software irregularities
● Applications that send non-HTTP traffic over HTTP ports as a way of defeating
security restrictions
● Server IP address authentication (the origin server limits access to a few client IP
addresses, but the Content Gateway IP address is different, so it cannot get access)
This is not in frequent use because many ISPs dynamically allocate client IP dial-
up addresses, and more secure cryptographic protocols are now more often used.
Web proxies are very common in corporate and Internet use, so interoperability
problems are rare. Nonetheless, Content Gateway contains an adaptive learning
module that recognizes interoperability problems caused by transparent proxy
processing and automatically bypasses the traffic around the proxy server without
operator intervention.
Content Gateway follows 2 types of bypass rules:
● Dynamic (also called adaptive) bypass rules are generated dynamically if you
configure Content Gateway to bypass the cache when it detects non-HTTP traffic
on port 80 or when it encounters certain HTTP errors. See Dynamic bypass rules,
page 72.
● Static bypass rules must be manually configured in the bypass.config file. See
Static bypass rules, page 73.
Note
Do not confuse ARM bypass rules with client access
control lists. Bypass rules are created in response to
interoperability problems. Client access control is simply
restriction of the client IP addresses that can access the
proxy, as described in Controlling client access to the
proxy, page 163.
The proxy can be configured to watch for the following protocol interoperability
errors and configure the ARM to bypass the proxy for the clients and servers causing
the errors.
In this way, the small number of clients or servers that do not operate correctly
through proxies are auto-detected and routed around the proxy caching server so that
they can continue to function (but without caching).
For example:
● When Content Gateway is configured to bypass on authentication failure (403
Forbidden), if any request to an origin server returns a 403 error, Content
Gateway generates a destination bypass rule for the origin server’s IP address. All
requests to that origin server are bypassed until you restart the proxy.
● If the ARM detects that a client is sending a non-HTTP request on port 80 to a
particular origin server, Content Gateway generates a source/destination rule. All
requests from that particular client to the origin server are bypassed; requests from
other clients are not bypassed.
To enable dynamic bypass rules:
1. In the Content Gateway manager, navigate to the Configure > Networking >
ARM > Dynamic Bypass tab.
2. Under Dynamic Bypass, select Enabled.
3. Under Behavior, enable each dynamic bypass rule you want to use.
4. Click Apply.
5. Navigate to the Configure > My Proxy > Basic > General tab and click Restart.
Bypass rules that are generated dynamically are purged after a Content Gateway
restart. If you want to preserve dynamically generated rules, you can save a snapshot
of the current set of bypass rules. See Viewing the current set of bypass rules, page 74.
To prevent Content Gateway from bypassing certain IP addresses dynamically, you
can set dynamic deny bypass rules in the bypass.config file. Deny bypass rules can
prevent the proxy from bypassing itself. For information about setting dynamic deny
bypass rules, see bypass.config, page 389.
Content Gateway tallies bypassed requests for each type of dynamic bypass trigger
(for example, requests bypassed in response to a 401 error). View these statistics on
the Monitor > Networking > ARM page of the Content Gateway manager, under
HTTP Bypass Statistics.
You can configure bypass rules to direct requests from certain clients or to particular
origin servers around the proxy. Unlike dynamic bypass rules that are purged when
you restart the proxy, these static bypass rules are saved in a configuration file.
You can configure 3 types of static bypass rules:
● Source bypass, in which Content Gateway bypasses a particular source IP address
or range of IP addresses. For example, you can use this solution to bypass clients
who want to opt out of a caching solution.
● Destination bypass, in which Content Gateway bypasses a particular destination
IP address or range of IP addresses. For example, these could be origin servers
that use IP authentication based on the client’s real IP address. Destination bypass
rules prevent Content Gateway from caching an entire site. You will experience
hit rate impacts if the site you bypass is popular.
● Source/destination pair bypass, in which Content Gateway bypasses requests that
originate from the specified source to the specified destination. For example, you
could route around specific client-server pairs that experience broken IP
authentication or out of band HTTP traffic problems.
Source/destination bypass rules might be preferable to destination rules because
they block a destination server only for those particular users that experience
problems.
To configure static bypass rules, edit the bypass.config file (See bypass.config,
page 389).
Note
When Content Gateway bypass is enabled on the Web >
Settings > Scanning > Bypass Settings page of the
Forcepoint Security Manager, appropriate rules are added
to bypass.config.
The ARM has a supporting utility called netcontrol that allows you to view the
current dynamic and static bypass rules.
To view all current dynamic and static bypass rules:
1. Log on to a Content Gateway node and then change directory to the Content
Gateway bin directory (/opt/WCG/bin).
2. Enter the following command at the prompt and press Return:
./netcontrol.sh -B
All current static and dynamic bypass rules are displayed on screen. The rules are
sorted by IP address. You can direct the output of netcontrol to a file and save it.
The load shedding feature prevents client request overloads. When there are more
client connections than the specified limit, the ARM forwards incoming requests
directly to the origin server. The default client connection limit is 1 million
connections.
1. In the Content Gateway manager, navigate to the Configure > Networking >
Connection Management > Load Shedding page.
2. In the Maximum Connections field, specify the maximum number of client
connections allowed before the ARM starts forwarding requests directly to the
origin server.
3. Click Apply.
4. Navigate to the Configure > My Proxy > Basic > General tab and click Restart.
If you are running Content Gateway in transparent proxy mode, you can enable the
Always Query Destination option to reduce the number of DNS lookups and
improve response time. When enabled, the Always Query Destination option
configures the proxy to always obtain the original destination IP address of incoming
requests from the ARM. Content Gateway then uses that IP address to determine the
origin server instead of doing a DNS lookup on the hostname of the request. Because
the client already performed a DNS lookup, Content Gateway does not have to.
When Always Query Destination is enabled, the value defined for the variable
proxy.config.arm.use_hostname_for_wisp_and_reporting determines whether IP
address or hostname is captured for reporting purposes.
Important
It is recommended that you do not enable the Always
Query Destination option if Content Gateway is running in
both explicit and transparent proxy mode. In explicit proxy
mode, the client does not perform a DNS lookup on the
hostname of the origin server, so the proxy must perform a
DNS lookup.
Also, the category lookup is performed based on the IP
address, which is not always as accurate as a URL-based
lookup.
In addition, do not enable the Always Query Destination
option if you want domain names, rather than IP addresses,
in Forcepoint Web Security transaction logs.
IP spoofing is sometimes used to support upstream activities that require the client IP
address or a specific IP address. It also results in origin servers seeing the client or
specified IP address instead of the proxy IP address (although the proxy IP address
can be a specified IP address; more below).
Content Gateway IP spoofing support has the following features and restrictions:
● IP spoofing is supported for HTTP and HTTPS traffic only.
● When IP spoofing is enabled, it is applied to both HTTP and HTTPS. It cannot be
configured for only one protocol.
● HTTPS traffic is spoofed whether SSL support is enabled or not.
● IP spoofing relies on the ARM.
Warning
Deploying IP spoofing requires precise control of the
routing paths on your network, overriding the normal
routing process for traffic running on TCP port 80 and
443. When configured with either transparent or
explicit proxy, return traffic must be routed back to the
proxy.
For assistance, please contact your network equipment
vendor or Technical Support.
With IP spoofing enabled, traditional debugging tools such
as traceroute and ping have limited utility.
Important
For a discussion of how the proxy kernel routing table
impacts transparent proxy deployment, see the Solution
Center article titled, Web sites in the Static or Dynamic
bypass list fail to connect.
Range-based IP spoofing
Range-based IP spoofing supports groupings of clients (IP addresses and IP address
ranges) that are mapped to specified IP addresses.
Among other uses, range-based IP spoofing facilitates:
● The delivery of web-hosted services when the identification is by source IP
address. For example, to receive a web-hosted service, an organization might be
required to identify membership to the service via a known IP address.
● IP address-based authentication with an external service when a unique IP address
represents a group of users.
● A way to configure traditional IP spoofing for some clients (source IP addresses
that don’t match any group are spoofed with their own IP address), range-based IP
spoofing for some clients, and standard proxy IP address substitution for some
clients. The latter is done by creating a group that specifies the proxy IP address.
Important
Range-based IP Spoofing is not supported on many older
versions of Cisco IOS firmware. To avoid problems,
update your Cisco device to the latest firmware.
IP Spoofing is supported for IPv6. However, range-based
IP Spoofing is not supported for IPv6.
7. A proxy response to the client is generated and returned to the client on the proxy-
to-client TCP connection.
Note
When IP spoofing is enabled, the proxy advertises a
reverse service group for each enabled WCCP service. The
reverse service group must be applied along the return path
of the proxy.
WCCP service group IDs are user defined and must be programmed on the WCCP
devices and in Content Gateway (see Configuring service groups on the WCCP device
and Configuring service groups in the Content Gateway manager).
The following definitions are suggested.
Policy-based routing (PBR) uses access control lists (ACL) to identify and redirect
flows. In a PBR deployment, all of the configuration is done on the router and there is
no corresponding Content Gateway configuration. PBR deployments have to redirect
traffic returning from origin servers from port 80 and 443 to Content Gateway.
Configuring IP spoofing
● To configure the proxy to use the IP address of the client for IP spoofing, see
Configure basic IP spoofing, page 80.
● To configure the proxy to use a specified IP address for IP spoofing, see Configure
range-based IP spoofing, page 81.
● For a list of features and restrictions for IP spoofing support, see Content Gateway
IP spoofing, page 77.
Contact your network equipment vendor or Technical Support for any needed
assistance.
Warning
The ARM is a critical component of Content Gateway that
should never be disabled. If it is disabled while IP spoofing
is enabled, client requests receive a “Cannot display Web
page” error and an error message is recorded in the /var/
log/messages directory.
For information about configuring WCCP routers, see Configuring WCCP v2 routers,
page 55.
Important
Range-based IP spoofing is not supported for IPv6.
Warning
If any of the formatting is invalid, all of the data in that
row is cleared.
Forcepoint security solutions, including Content Gateway, provide support for IPv6.
Important
In transparent proxy deployments, support requires WCCP
v2.01. If you use a Cisco router, it must be version 15.4(1)
or later.
● Client IPv6 addresses and address ranges to allow or restrict access to the Content
Gateway manager (mgmt_allow.config)
● IPv6 Primary Destination value and Source IP values in proxy filtering rules
(filter.config), cache rules (cache.config), and parent proxy servers in a chain
(parent.config)
● IPv6 addresses in the SSL Incident List
● SNMP traps and counters for IPv6 data
Limits and restrictions:
● IPv6-only internal networks are not supported
● IPv4 must be used to communicate among all Forcepoint components, including
other members of a Content Gateway cluster (multicast address)
● With all user authentication, the domain controllers must be reachable on an IPv4
address
● Range-based IP Spoofing is not available for IPv6.
● SOCKS proxy is not supported
● IPv6 support is not available for FTP passive mode with the transparent proxy.
● IPv6 only clients do not display a block page correctly. The user is blocked from
the site as expected but will receive a browser error rather than a block page.
Dual-stack IPv6 clients receive the normal block page.
IPv6 proxy statistics:
Content Gateway tracks IPv6 traffic. View statistics on the Monitor > Networking >
System page.
Effect of IPv6 on Event logs:
When IPv6 is enabled, Event log entries are normalized to IPv6 format. For example,
“10.10.41.200” is logged as “::ffff:10.10.41.200”.
To filter on a client at “10.10.41.200” in a custom log, requires the following filter:
<LogFilter>
<Name = "IPv6_Test_Machine"/>
<Condition = "chi MATCH ::ffff:10.10.41.200"/>
<Action = "ACCEPT"/>
</LogFilter>
2. Navigate to the Configure > My Proxy > Basic > General tab.
3. Under Networking, locate the IPv6 row and select On.
Once IPv6 support is enabled, in any field that accepts an IPv6 address, the address
can be entered in any format that conforms to the standard. For example:
● Leading zeros within a 16-bit value may be omitted
● One group of consecutive zeros may be replaced with a double colon
When IPv6 is disabled, IPv6 entry fields are hidden from view and IPv6 values are
deleted from configuration files.
When the DNS Resolver is used, go to the Configure > Networking > DNS
Resolver page to set an IPv4 or IPv6 preference. IPv4 is the default.
Related topics:
● Changing clustering configuration, page 86
● Adding nodes to a cluster, page 88
● Deleting nodes from a cluster , page 89
● Virtual IP failover, page 90
Content Gateway scales from a single node to a cluster of 2 or more nodes, with a
maximum recommended limit of 16. This allows you to quickly increase capacity and
improve system performance and reliability.
Note
For assistance with scaling your deployment, contact your
Forcepoint account representative.
● Content Gateway detects the addition and deletion of nodes in the cluster and can
detect when a node is down.
● You can add or delete a node from a cluster at any time.
● When you remove a node from the cluster, Content Gateway removes all
references to the missing node.
● Restarting a node in the cluster causes all nodes in the cluster to restart.
● When the Virtual IP failover feature is enabled, the live nodes in a cluster can
assume a failed node’s traffic.
● Nodes in a cluster automatically share configuration information except for the
following:
■ Filtering Service and Policy Service IP addresses are not propagated around
the cluster.
■ In transparent proxy deployments with WCCP, the service group enabled/
disabled state and weight settings are not propagated. See Transparent
interception with WCCP v2 devices, page 51.
■ When SSL support is enabled, the Dynamic Incident List is not propagated
around the cluster.
Content Gateway uses a proprietary protocol for clustering, which is multicast for
node discovery and heartbeat, and unicast for all data exchange within the cluster.
Important
It is recommended that a dedicated network interface be
used for Content Gateway cluster communication, except
when the host is a Forcepoint appliance, in which case the
P1 interface is recommended.
Important
In a proxy hierarchy, the nodes in the cluster cannot be a
mixture of HTTP parents and children.
Management clustering
In management clustering mode you can administer all Content Gateway nodes at the
same time because cluster nodes share configuration information.
● Content Gateway uses a multicast management protocol to maintain a single
system image of all nodes in the cluster.
● Information about cluster membership, configuration, and exceptions is shared
across all nodes.
● The content_manager process propagates configuration changes to cluster nodes.
● When the HTTPS option is enabled (SSL support), its settings also propagate
around the cluster, except for the Dynamic Incident List.
Clustering is usually configured when you install the proxy. You can, however,
configure clustering afterward, or at any time, in the Content Gateway manager.
1. Go to the Configure > My Proxy > Basic > Clustering tab.
2. Under Cluster > Type:
■ Select Management Clustering to include this proxy in a cluster.
■ Select Single Node if this node is not part of a cluster.
3. Under Interface, enter the name of the network interface. This is the interface used
by Content Gateway to communicate with other nodes in the cluster.
Warning
Ensure that the multicast IP address does not conflict with
the address used by any other application or service.
If there is a conflict and the Content Gateway node is
allowed to restart, it will fail to initialize the interface and
the Content Gateway instance will shut down. You can
verify the condition by examining /var/log/messages and
looking for a message similar to:
[LocalManager::initCCom] Unable to find
network interface eth2.#011 Exiting
To correct the problem, identify a unique multicast IP
address that will work for all members of the cluster and
do one of the following:
● If Content Gateway is on an appliance, see the
Forcepoint Appliances CLI Guide.
● If Content Gateway is installed on a Linux server:
1. Log on to the server and go to /opt/WCG/config.
2. Edit (vi) records.config.
3. Find proxy.config.cluster.mc_group_addr and
assign it the value of the multicast IP address.
4. Save and close the file.
5. Check each member of the cluster to ensure that
they are all using the same multicast IP address.
6. Restart the node.
7. Click Apply.
Important
Content Gateway does not apply the clustering mode
change to all of the nodes in the cluster. You must change
the clustering mode on each node individually.
Content Gateway detects new Content Gateway nodes on your network and adds them
to the cluster, propagating the latest configuration information to the newcomer. This
provides a convenient way to bootstrap new machines.
To connect a node to a Content Gateway cluster, you need only install Content
Gateway software on the new node, making sure during the process that the cluster
name and port assignments are the same as those of the existing cluster. In this way,
Content Gateway automatically recognizes the new node.
Important
The nodes in a cluster must be homogeneous; each node
must be on the same hardware platform, each must be on
the same operating system version, and Content Gateway
must be installed in the same directory (/opt/WCG).
4. Set the Multicast Group Address to the address being used by the cluster.
5. In the Type area, select Management Clustering.
6. Click Apply.
7. Go back to the General tab and click Restart.
You can also add a node by editing variable values in the record.config file of the
node to be added.
1. On the node you want to add to the cluster, open the records.config file located in
/opt/WCG/config.
2. Edit the following variables:
Variable Description
proxy.local.cluster.type Specify the clustering mode:
2 = management mode
3 = no clustering
proxy.config.proxy_name Specify the name of the Content Gateway
cluster. All nodes in a cluster must use the
same name.
proxy.config.cluster.mc_group_addr Specify the multicast address for cluster
communications. All nodes in a cluster
must use the same multicast address.
proxy.config.cluster.rsport Specify the reliable service port. The
reliable service port is used to send data
between the nodes in the cluster. All nodes
in a cluster must use the same reliable
service port. The default value is 8087.
proxy.config.cluster.mcport Specify the multicast port. The multicast
port is used for node identification. All
nodes in a cluster must use the same
multicast port. The default port is 8088.
proxy.config.cluster.ethernet_interface Specify the network interface for cluster
traffic. All nodes in a cluster must use the
same network interface.
Virtual IP failover
Warning
Incorrect IP addressing can disable your system. Make
sure you understand how virtual IP addresses work before
changing them.
1. In the Content Gateway manager, go to the Configure > Networking > Virtual
IP page.
■ The page is available only after you have enabled the Virtual IP option.
■ The Virtual IP Addresses area displays the virtual IP addresses managed by
Content Gateway.
2. Click Edit File to add new or edit existing virtual IP addresses.
■ To edit a virtual IP address, select it from the table at the top of the page, edit
the fields provided, and then click Set.
■ To delete the selected IP address, click Clear Fields.
■ To add a virtual IP address, specify the virtual IP address, the Ethernet
interface, and the Subinterface in the fields provided, and then click Add.
3. Click Apply, and then Close.
Virtual IP addresses are IP addresses that are not tethered to particular machines.
Thus, they can rotate among nodes in a Content Gateway cluster.
It is common for a single machine to represent multiple IP addresses on the same
subnet. This machine would have a primary or real IP address bound to its interface
card and also serve many more virtual addresses.
You can set up your user base to use a DNS round-robin pointing at virtual IP
addresses, as opposed to using the real IP addresses of the Content Gateway machines.
Because virtual IP addresses are not bound to machines, a Content Gateway cluster
can take addresses from inactive nodes and distribute those addresses among the
remaining live nodes.
Using a proprietary management protocol, Content Gateway nodes communicate their
status with their peers. If a node fails, its peers notice the failure and negotiate which
of the remaining nodes will mask the fault by taking over the failed node’s virtual
interface.
Content Gateway can participate in HTTP cache hierarchies, in which requests not
fulfilled in one cache can be routed to other regional caches, taking advantage of the
contents and proximity of nearby caches.
A cache hierarchy consists of levels of caches that communicate with each other.
Content Gateway supports several types of cache hierarchies. All cache hierarchies
recognize the concept of parent and child. A parent cache is a cache higher up in the
hierarchy, to which the proxy can forward requests. A child cache is a cache for which
the proxy is a parent.
For more information, see:
● HTTP cache hierarchies, page 93
● Configuring Content Gateway to use an HTTP parent cache, page 94
In an HTTP cache hierarchy, if a Content Gateway node cannot find a requested object
in its cache, it can search a parent cache—which itself can search other caches—
before resorting to retrieving the object from the origin server. See Configuring
Content Gateway to use an HTTP parent cache.
● You can configure a Content Gateway node to use one or more HTTP parent
caches, so that if one parent is unavailable, another parent can service requests.
This is called parent failover and is described below.
● If you do not want all requests to go to the parent cache, you can configure the
proxy to route certain requests directly to the origin server (for example, requests
that contain specific URLs) by setting parent proxy rules in the parent.config
configuration file (described in parent.config, page 409).
● If the request is a cache miss on the parent, the parent retrieves the content from
the origin server (or from another cache, depending on the parent’s configuration).
The parent caches the content and then sends a copy to the proxy (its child), where
it is cached and served to the client.
Parent failover
When you configure the proxy to use more than one parent cache, the proxy detects
when a parent is not available and sends missed requests to another parent cache. If
you specify more than two parent caches, the order in which the parent caches are
queried depends upon the parent proxy rules configured in the parent configuration
file described in parent.config, page 409. By default, the parent caches are queried in
the order in which they are listed in the configuration file.
Important
Perform this procedure on the child proxy. Do not make
any changes on the parent.
The cache consists of a high-speed object database called the object store. The object
store indexes objects according to URLs and associated headers, enabling Content
Gateway to store, retrieve, and serve web pages and parts of web pages, providing
optimum bandwidth savings. Using object management, the object store can cache
alternate versions of the same object, varying on language or encoding type, and can
store small and large documents, minimizing wasted space. When the cache is full,
Content Gateway removes stale data.
Fault tolerance
Content Gateway can tolerate disk failures on cache disks. If a disk drive fails five
successive I/O operations, Content Gateway marks the disk as down, removes the
drive from the cache, and sends an alarm message to the Content Gateway manager,
indicating which disk failed. Normal cache operation continues on the remaining
cache disks. If all cache disks fail, Content Gateway goes into proxy-only mode.
You can perform the following cache configuration tasks:
● Change the total amount of disk space allocated to the cache. See Changing cache
capacity, page 96.
● Partition the cache by reserving cache disk space for specific protocols and origin
servers and domains. See Partitioning the cache, page 98.
● Specify a size limit for objects allows in the cache. See Configuring cache object
size limit, page 99
● Delete all data in the cache. See Clearing the cache, page 100.
● Change the size of the RAM cache. See Changing the size of the RAM cache, page
100.
RAM cache
Content Gateway maintains a small RAM cache of popular objects. This RAM cache
serves the most popular objects as fast as possible and reduces load on disks,
especially during temporary traffic peaks. You can configure the RAM cache size. See
Changing the size of the RAM cache, page 100.
Related topics:
● Increasing cache capacity, page 96
● Reducing cache capacity, page 97
The maximum aggregate disk cache size is limited to 147 GB. This size makes best
use of system resources, while also providing an excellent end-user experience.
The minimum disk cache size is 2 GB.
To increase the total disk space allocated to the cache on existing disks, or to add new
disks to a Content Gateway node:
1. Stop Content Gateway. See Starting and stopping Content Gateway on the
command line, page 18.
2. Add hardware, if necessary.
a. Set up the raw device and modify the permissions. For example:
mknod /etc/udev/devices/raw c 162 0
chmod 600 /etc/udev/devices/raw
b. Identify the physical device name and note the size in bytes (used later). For
example:
fdisk -l | grep "^Disk"
Disk /dev/cciss/c0d1: 146.7 GB, 146778685440 bytes
c. For each real disk, create a node, change the owner of the node, and map that
raw node to a physical disk. Note that the final argument increments by 1 for
each disk added.
To create a node:
You can reduce the total amount of disk space allocated to the cache on an existing
disk or remove disks from a Content Gateway node.
1. Stop Content Gateway.
2. Remove hardware, if necessary.
3. Edit the storage.config file to reduce the amount of disk space allocated to the
cache on existing disks or to delete the reference to the hardware you are
removing. See storage.config, page 486.
4. If you remove a disk, you must edit the /etc/rc.d/init.d/content_gateway file to
remove the raw disk binding for the disk.
5. Restart Content Gateway.
Important
In the storage.config file, a formatted or raw disk must be
at least 2 GB.
You can manage your cache space more efficiently and restrict disk usage by creating
cache partitions of different sizes for specific protocols. You can further configure
these partitions to store data from specific origin servers and domains. See
Partitioning the cache according to origin server or domain, page 98.
Important
The partition configuration must be the same on all nodes
in a cluster.
HTTP is the only protocol supported.
After you have partitioned the cache according to size and protocol, you can assign the
partitions you created to specific origin servers and domains.
You can assign a partition to a single origin server or multiple origin servers.
However, if a partition is assigned to multiple origin servers, there is no guarantee on
the space available in the partition for each origin server. Content is stored in the
partition according to popularity.
In addition to assigning partitions to specific origin servers and domains, you must
assign a generic partition to store content from all origin servers and domains that are
not listed. This generic partition is also used if the partitions for a particular origin
server or domain become corrupt.
Important
If you do not assign a generic partition, Content Gateway
runs in proxy-only mode.
Note
You do not need to stop Content Gateway before you
assign partitions to particular hosts or domains. However,
this type of configuration can cause a spike in memory
usage and is time consuming. It is recommended that you
configure partition assignment during periods of low
traffic.
You can partition the cache according to host name and domain in the Content
Gateway manager.
In the Content Gateway manager:
1. Configure the cache partitions according to size and protocol, as described in
partition.config, page 412.
Create a separate partition based on protocol (HTTP only) for each host and
domain, and an additional generic partition to use for content that does not belong
to these origin servers or domains. For example, if you want to separate content
from two different origin servers, you must have at least three separate partitions:
one HTTP-based partition for each origin server and a generic partition for all
other origin servers not listed (the partitions do not have to be the same size).
2. Go to the Configure > Subsystems > Cache page.
3. Click the Hosting tab, then Edit File under Cache Hosting to open the
configuration file editor for the hosting.config file.
4. Enter information in the fields provided, and then click Add. All the fields are
described in Cache, page 348.
5. Click Apply, and then click Close.
By default, Content Gateway allows objects of any size in the cache. You can change
the default behavior and specify a size limit for objects in the cache.
1. In the Content Gateway manager, go to the Configure > Subsystems > Cache >
General tab.
2. In the Maximum Object Size field, enter the maximum size allowed (in bytes)
for objects in the cache. Enter 0 (zero) if you do not want to have a size limit.
3. Click Apply.
When an object exceeds the size limit, the following message is entered in the system
log file.
WARNING: Maximum document size exceeded
When you clear the cache, you remove all data from the entire cache, which includes
the data in the host database. Clear the cache before performing certain cache
configuration tasks, such as partitioning.
Note
You cannot clear the cache when Content Gateway is
running.
1. Stop Content Gateway. See Starting and stopping Content Gateway on the
command line, page 18.
2. From the Content Gateway bin directory (/opt/WCG/bin), enter the following
command to clear the cache:
content_gateway -Cclear
Warning
The clear command deletes all data in the object store and
the host database. Content Gateway does not prompt you
to confirm the deletion.
Content Gateway provides a dedicated RAM cache for fast retrieval of popular small
objects. The default RAM cache size is calculated based on the number and size of the
cache partitions you have configured. You can increase the RAM cache size for better
cache hit performance.
Warning
If you increase the size of the RAM cache and observe a
decrease in Content Gateway performance (such as
increased latencies), the operating system might require
more memory for network resources. Return the RAM
cache size to its previous value.
Note
If you have partitioned your cache according to protocol or
hosts, the size of the RAM cache for each partition is
proportional to the size of that partition.
1. In the Content Gateway manager, go to the Configure > Subsystems > Cache >
General tab.
2. In the Ram Cache Size field, enter the amount of space (in bytes) you want to
allocate to the RAM cache. Although the user interface will accept larger values,
do not exceed 512 MB.
The default size is 104857600 (100 MB).
Note
A value of “-1” directs Content Gateway to automatically
size the RAM cache to be approximately 1 MB per 1 GB
of disk cache.
3. Click Apply.
4. Go to the Configure > My Proxy > Basic > General tab and click Restart.
Typically, clients send DNS requests to a DNS server to resolve hostnames. However,
DNS servers are frequently overloaded or not located close to the client; therefore
DNS lookups can be slow and can be a bottleneck to fulfilling requests.
The DNS proxy caching option allows Content Gateway to resolve DNS requests on
behalf of clients. This option off-loads remote DNS servers and reduces response
times for DNS lookups. See Configuring DNS proxy caching, page 104.
Important
You can use the DNS proxy caching option only with a
layer 4 switch or a Cisco router running WCCP v2.
The following overview illustrates how Content Gateway serves a DNS request.
1. A client sends a DNS request. The request is intercepted by a router or L4 switch
that is configured to redirect all DNS traffic on port 53 to Content Gateway.
2. The ARM examines the DNS packet. If the DNS request is type A (answer), the
ARM forwards the request to Content Gateway. The ARM forwards all DNS
requests that are not type A to the DNS server.
3. For type A requests, Content Gateway checks its DNS cache to see if it has the
hostname to IP address mapping for the DNS request. If the mapping is in the
DNS cache, Content Gateway sends the IP address to the client. If the mapping is
not in the cache, Content Gateway contacts the DNS server to resolve the
hostname. When Content Gateway receives the response from the DNS server, it
caches the hostname to IP address mapping and sends the IP address to the client.
If round-robin is used, Content Gateway sends the entire list of IP address
mappings to the client and the round-robin order is strictly followed.
Note
If the hostname to IP address mapping is not in the DNS
cache, Content Gateway contacts the DNS server specified
in the /etc/resolv.conf file. Only the first entry in
resolv.conf is used. This might not be the same DNS server
for which the DNS request was originally intended.
The DNS cache is held in memory and backed up on disk. Content Gateway updates
the data on disk every 60 seconds. The TTL (time-to-live) is strictly followed with
every hostname to IP address mapping.
Important
You can use the DNS proxy caching option only with a
layer 4 switch or a Cisco router running WCCP v2.
6. Under Features > Networking, enable DNS Proxy and click Apply. Postpone the
prompted restart until step 8.
7. Go to the Networking > DNS Proxy page.
8. Enter the DNS Proxy Port (5353, by default).
9. Click Apply and restart Content Gateway.
10. Configure your layer 4 switch or WCCP v2 router to send DNS traffic to the
Content Gateway DNS port (53, by default).
The configuration snapshot feature lets you save all current configuration settings and
restore them if needed. Content Gateway can store configuration snapshots on the
node where they are taken, on an FTP server, and on portable media. Content Gateway
restores a configuration snapshot on all the nodes in the cluster.
Note
It is recommended that you take a configuration snapshot
before performing system maintenance or attempting to
tune system performance. Taking a configuration snapshot
takes only a few seconds.
You can save all of the current Content Gateway configuration settings via the Content
Gateway manager.
Relative paths are created in the Content Gateway config directory. To create a
snapshot directory in another location, use the full path.
3. In the Save Snapshot field, type the name you want to use for the current
configuration.
4. Click Apply.
Restore a saved configuration from the Content Gateway manager. If you are running
a cluster of Content Gateway servers, the configuration is restored to all the nodes in
the cluster.
After you have successfully logged on to the FTP server, the FTP Server tab
displays additional fields.
4. Use the Restore Snapshot drop-down list to select the configuration snapshot that
you want to restore.
5. Click Apply.
The Content Gateway system or cluster uses the restored configuration.
Content Gateway provides the following tools to monitor system performance and
analyze network traffic:
● Statistics that show Content Gateway performance and network traffic
information, available from the Content Gateway manager or the command line.
See:
■ Viewing statistics in the Content Gateway manager, page 111
■ Viewing statistics from the command line, page 112.
● Alarms that signal detected failure conditions. See Working with alarms, page
112.
● Performance graphs that show historical Content Gateway performance and
network traffic information. See Using Performance graphs, page 115.
● Reports for SSL traffic. See Creating SSL certificate authorities reports, page 117,
and Creating an SSL incidents report, page 117.
Use the options on the Monitor tab of the Content Gateway manager to collect and
interpret statistics about Content Gateway performance and web traffic.
Statistics are available regarding:
● My Proxy (the current Content Gateway instance, or nodes in the same cluster)
See My Proxy, page 261, and Working with alarms, page 112, for details.
● Protocols (HTTP and FTP)
See Protocols, page 267, for details.
● Security (LDAP, NTLM, and IWA proxy authentication and SOCKS server
connections)
See Security, page 270, for details.
● Subsystems (cache, clustering, and logging)
You can use the command-line interface to view statistics about Content Gateway
performance and web traffic.
To view specific information about a Content Gateway node or cluster, specify the
variable that corresponds to the desired statistic.
1. Become root:
su
2. Log on to a Content Gateway node.
3. From the Content Gateway bin directory (/opt/WCG/bin), enter the following
command:
./content_line -r <variable>
Here, <variable> is the variable that holds the information you want. For a list of
the variables you can specify, see Content Gateway variables, page 289.
For example, the following command displays the document hit rate for the node:
content_line -r proxy.node.http.cache_hit_ratio
Content Gateway signals an alarm when it detects a problem, for example if the space
allocated to event logs is full, or if it cannot write to a configuration file. A general
alarm message is displayed at the top of the content pane in the Content Gateway
manager.
Not all alarms are critical. Some alarms report transient conditions. For example, a
“Content Gateway subscription download failed: error connecting” alarm can be
generated by a temporary disruption in Internet connectivity.
Content Gateway alarm messages, page 493, provides a description of some of the
alarm messages that Content Gateway generates.
Use the Monitor > My Proxy > Alarms page to see a listing of current alarms, as
shown below.
Note
Content Gateway also sends select alarms to the Web
module of the Forcepoint Security Manager, where they
are referred to as alerts. Summary alert messages are
displayed on the System tab of the Web > Status >
Dashboard page. Security Manager administrators can also
configure SNMP and email alert notifications for Content
Gateway alarms on the Settings > Alerts pages.
Clearing alarms
After you have addressed an alarm issue, click Clear in the alarm message window to
dismiss the alarm.
Important
Clicking Clear only dismisses alarm messages; it does not
resolve the cause of the alarms.
If the same alarm condition occurs a second time, it will not be logged if the first
alarm has not been cleared.
If Filtering Service is also running on the Content Gateway machine and you want to
monitor it, add:
proc EIMServer 1 1
Here, “-u” indicates UPD, “-v” indicates verbose output, “-z” means to scan for
listening daemons, and “-w2” indicates to wait 2 seconds before timing out.
Sample results:
10.228.85.10: inverse host lookup failed: Unknown host
(UNKNOWN) [10.228.85.10] 161 (snmp) open
The Performance graphing tool (Multi Router Traffic Grapher [MRTG]) allows you to
monitor Content Gateway performance and analyze network traffic. Performance
graphs show information about virtual memory usage, client connections, cache hit
and miss rates, and so on. The information provided is recorded from the time that
Content Gateway was started. Statistics are gathered at 5-minute intervals.
Use the Monitor > Performance page in the Content Gateway manager to access
performance graphs.
Important
To run MRTG, you must have Perl v5.005 or later installed
on your Content Gateway system.
1. If your Content Gateway node is in a cluster, select the node whose statistics you
want to view from the Monitor > My Proxy > Summary page.
2. Go to the Performance > Monitor page.
3. Select an option:
■ Click Overview to see a subset of available graphs.
■ Click Daily to see statistics for the current day.
■ Click Weekly to see statistics for the current week.
■ Click Monthly to see statistics for the current month.
■ Click Yearly to see statistics for the current year.
4. Wait at least 15 minutes after starting Content Gateway before looking at the
graphs. It takes several 5-minute sample intervals for the tool to initialize
statistics.
If MRTG has not been configured, the system displays a message indicating that it is
not available. To configure the tool:
1. Make sure Perl 5.005 is installed on your system.
2. To ensure that the perl binary is in your PATH, open a command shell, navigate to
the bin directory (/opt/WCG/bin), and enter the following command:
perl ./pathfix.pl ‘which perl‘
3. In the bin directory, use the following command to modify the MRTG update
interval:
./update_mrtg;sleep 5;./update_mrtg;sleep 5;
By default, an MRTG update interval is set to 15 minutes. This command sets the
update to 5 minutes.
4. In the bin directory, start the MRTG cron updates:
./mrtgcron start
5. Wait about 15 minutes before accessing the performance graphs from the Content
Gateway manager.
Note
To stop MRTG cron updates, use the following command:
./mrtgcron stop
Note
To delete the collected SSL log data, click Reset all
collected data.
5. Click Generate Report. It may take several seconds for the report to be created.
Note
To delete the collected SSL log data, click Reset all
collected data.
Related topics:
● Deploying Content Gateway to work with Forcepoint DLP, page
120
● Registering Content Gateway with Forcepoint DLP, page 121
● Configuring the ICAP client, page 125
● ICAP failover and load balancing, page 126
Note
When a request is blocked and the DLP server sends a
block page in response:
● Content Gateway forwards the block page to the
sender in a 403 Forbidden message.
● The block page must be larger than 512 bytes or some
browsers will substitute a generic error message.
In addition to applying Web DLP policies, the DLP Module can be used to enable data
theft analysis for outbound traffic. Configure outbound security options in the Web
Security module of the Forcepoint Security Manager on the Scanning >
Scanning Options page.
Related topics:
● Working With Web DLP, page 119
● Registering Content Gateway with Forcepoint DLP manually, page
123
● Web DLP configuration options for Content Gateway, page 123
● Stopping and starting Forcepoint DLP processes, page 124
Content Gateway registers with on-box DLP Module components automatically once
an administrator enables Web DLP integration.
Note
Automatic registration is not available with Forcepoint
DLP Web Content Gateway. See Registering Content
Gateway with Forcepoint DLP manually.
Note
To later disable the integration and unregister Content
Gateway and Forcepoint DLP components, turn the
Integration option to Off and restart Content Gateway.
Related topics:
● Working With Web DLP, page 119
● Registering Content Gateway with Forcepoint DLP, page 121
● Web DLP configuration options for Content Gateway, page 123
● Stopping and starting Forcepoint DLP processes, page 124
Related topics:
● Working With Web DLP, page 119
● Registering Content Gateway with Forcepoint DLP, page 121
Once Content Gateway has registered with Forcepoint DLP, use the Configure >
Security > Web DLP page in the Content Gateway manager to configure the
following options:
1. If Content Gateway is configured to proxy FTP traffic, select Analyze FTP
Uploads to send FTP uploads to Forcepoint DLP for analysis and policy
enforcement.
Note
A Content Gateway manager alarm is generated if:
● Web DLP is enabled but not registered.
● Web DLP is enabled and registered but not configured
in the Data Security module of the Forcepoint Security
Manager.
Related topics:
● Working With Web DLP, page 119
● Registering Content Gateway with Forcepoint DLP, page 121
When Content Gateway is registered with Forcepoint DLP and the Forcepoint DLP
policy engine is running on the Content Gateway machine, 3 daemon processes are
active on the Content Gateway machine:
● PolicyEngine handles transaction and data analysis.
● PAFPREP manages the Forcepoint DLP fingerprint repository.
● mgmtd handles configuration storage and replication.
These processes start automatically whenever the computer is started.
You must have root privileges to stop or start the processes.
To stop or start all policy engine processes, on the command line enter:
/opt/websense/PolicyEngine/managePolicyEngine -command
[stop|start]
ICAP can be used with any version of Forcepoint DLP. The direct interface is
recommended, however, when the policy engine is on the Content Gateway machine.
See Registering Content Gateway with Forcepoint DLP, page 121.
Note
A secondary ICAP server can be specified as a failover
should the primary server fail.
The primary and secondary can also be configured to
perform load balancing.
See ICAP failover and load balancing, below.
Note
If you change the URI, you must restart Content Gateway.
Other changes do not require a restart.
Content Gateway can be configured to failover to a backup ICAP server if the active
ICAP server fails. The proxy detects the failure condition and sends traffic to the
secondary server. If the secondary becomes unresponsive, the proxy uses the primary.
If no ICAP servers are available, the proxy fails open.
Load balancing between 2 ICAP servers is also an option.
Time to failover
Content Gateway may experience temporary request-processing latency between the
time the real failure occurs and the time the proxy marks the failed server as down.
After the failed server is marked down, all new requests are sent to the second ICAP
server. The time to failover is primarily limited by the connection timeout
configuration.
Failure conditions
The following failure conditions lead to failover
● ICAP request failed due to layer-3 failure (twice for the same request)
● Failure to connect to a port within a given timeout
● Failure to send request (server resetting connection, and similar)
Content Gateway does not consider missing, invalid, or slow responses as failures.
Content Gateway does, however, verify that the ICAP server is valid at startup by
verifying the response to the ICAP OPTIONS request.
Content Gateway tests for the following recovery conditions for each down ICAP
server at a specified interval:
● TCP connection success
● Successfully sent OPTIONS request
● Successfully received valid response to OPTIONS request
Upon server recovery (server comes back online and is marked as up):
● Load balancing ON: Requests start being distributed to the newly up server
(round-robin)
● Load balancing OFF: If the primary server recovers, all requests start being sent to
the primary. If the secondary server recovers, traffic continues to be sent to the
primary, until the primary goes down.
Fail open
If all ICAP servers are down, a configuration option allows fail open or fail closed
behavior. When all ICAP servers are down, the background thread continuously
attempts to reestablish a new connection with each server.
Configuration settings
These ICAP failover parameters are set in the records.config file (defaults shown):
Related topics:
● Initial SSL configuration tasks, page 132
● Enabling SSL support, page 131
● Certificates, page 133
● Internal Root CA, page 133
● Managing certificates, page 141
● SSL configuration settings for inbound traffic, page 144
● SSL configuration settings for outbound traffic, page 145
● Validating certificates, page 146
● Managing HTTPS website access, page 152
● Enabling SSL support, page 131
● Client certificates, page 157
● Customizing SSL connection failure messages, page 159
● Custom certificate key, page 160
● SSL decryption port mirroring (appliance deployments), page 161
Secure Sockets Layer (SSL) and Transport Layer Security (TLS) are the industry
standards for secure transmission of data on the Internet. They rely on data encryption
and a system of trusted certificates issued by certificate authorities (CA) that are
recognized by clients and servers. SSL/TLS requests made in a browser are easily
identified by the “https” string that leads the URL.
In the topics that follow, for convenience and simplicity, SSL/TLS is referred to
simply as SSL.
To establish an SSL connection, the client sends an SSL connection request to the
server. If the server consents, the client and server use a standard handshake to
negotiate an SSL connection.
Content Gateway offers 2 types of support for HTTPS traffic. Only one can be used at
a time.
Important
Even when HTTPS support is not enabled and HTTPS is
not decrypted, Content Gateway performs a URL lookup
and applies policy. In these circumstances:
● In explicit proxy mode, Content Gateway performs
URL filtering based on the hostname in the request. If
the site is blocked, Content Gateway serves a block
page. Some browsers do not support display of the
block page.
To prevent this URL filtering, configure clients to not
send HTTPS requests to the proxy.
● In transparent proxy mode, if there is an SNI in the
request, Content Gateway gets the hostname from the
SNI and performs URL filtering based on the
hostname. Otherwise, Content Gateway uses the
Common Name in the certificate of the destination
server. If the Common Name contains a wildcard (*),
the lookup is performed on the destination IP address.
If the site is blocked, the connection with the client is
dropped; no block page is served.
To prevent this URL filtering with WCCP, do not
create a service group for HTTPS.
Note
Content Gateway does not cache HTTPS content.
Note
If you are deployed with the DLP Module and it is
configured to inspect HTTPS traffic, you must enable
HTTPS.
Note
By default, Content Gateway does not try to tunnel non-
SSL traffic. To change this, update the records.config file
(in /opt/WCG/config, by default) as follows:
CONFIG proxy.config.ssl_decryption_bypas
s.tunnel_non-ssl_traffic INT 1
Restart Content Gateway to implement the change.
Set the value to 0 to turn off tunneling of non-SSL traffic.
Warning
Tunneled connections are not decrypted or inspected.
When tunneling is enabled, Forcepoint Web Security behavior varies based on the
type of proxy deployment.
■ When Content Gateway is an explicit proxy, a URL lookup is performed and
policy is applied before the SSL connection request is made. Transactions are
logged as usual.
■ When Content Gateway is a transparent proxy, if there is an SNI in the
request, Content Gateway gets the hostname from the SNI and performs URL
filtering based on the hostname. Otherwise, when Content Gateway sends the
connect to the server, the unknown protocol error causes the request to be
tunneled without the proxy being aware of it, and no transaction is logged.
Tunneling of WebSocket traffic over HTTPS (secure mode) is enabled by default.
Note
Client authentication may not work correctly for
WebSocket traffic. To avoid the issue, it is recommended
that a filtering rule be added for each WebSocket Primary
Destination Type so client requests to those destinations
are not authenticated. See Configure > Security > Access
Control > Filtering, page 329,for instructions.
For inbound (client to Content Gateway) traffic, perform these steps to prepare for
supporting HTTPS traffic through Content Gateway:
Certificates
Internal Root CA
The internal Root CA dynamically generates all certificates used between the client
browser and Content Gateway.
● You must have an internal Root CA to complete an inbound connection.
● Only one internal Root CA can be active at a time.
Important
The default internal Root CA that is included with Content
Gateway is not unique and should not be used in a
production environment.
Replace the default internal Root CA with your
organization’s Root CA or create a new one.
Important
Back up the existing internal Root CA before importing or
creating a new one. This enables you to return to an earlier
version, if necessary. See Backing up your internal Root
CA, page 140, for details.
If your organization already has a Root CA, or if you have created a certificate as
described elsewhere in this document, you can import it into Content Gateway. The
certificate must be trusted by all browsers in your organization.
Be sure to back up any new internal Root CA that you import. See Backing up your
internal Root CA, page 140, for details.
To import your Root CA:
1. In the Content Gateway manager, go to the Configure > SSL > Internal Root
CA > Import Root CA tab.
2. Click Choose File and browse to select the certificate. The certificate must be in
X.509 format and base64-encoded.
3. Click Choose File and browse to select the private key. It must correspond to the
certificate you selected in Step 2.
■ The certificate and private key format must match.
■ The private key format must match the format required by the importing node
(unencrypted or encrypted).
To verify the certificate and private key format, view the files in a text editor. Use
Backup Root CA to export the CA from the database.
Note
For information about converting the private key format,
see:
● Preparing an Internal Root CA for importing into a
FIPS 140-2 enabled node
● Converting an RSA key type to a PKCS#8 key type
● Converting an encrypted private key to an RSA key
Related topic:
● Creating a subordinate certificate authority, page 136
If you do not already have a Root CA, you can use the Content Gateway manager to
create one. The process uses openssl pkcs#8.
Be sure to back up any new Root CAs that you create. See Backing up your internal
Root CA, page 140, for details.
1. In the Content Gateway manager, go to the Configure > SSL > Internal Root
CA > Create Root CA tab.
2. Provide requested information in the fields, particularly noting the following:
■ The fields Organization, Organizational unit, and Common name comprise a
distinguished name.
○ For Organization, enter the name of your company.
○ Optionally provide an Organizational Unit (for example, division,
section, or department) name.
○ For Common Name, enter the name of your company certificate authority.
■ The comment becomes part of the certificate. The first line you enter can be
seen by end users.
■ Enter, and then confirm, the passphrase. (A passphrase is similar to a
password. Usually, however, it is longer to provide greater security. It is
recommended that you use a strong passphrase, with a combination of
numbers, characters, and upper- and lower-case letters.)
3. Click Generate and Deploy Certificate to deploy the certificate to the Content
Gateway server.
Creating a subordinate certificate authority (sub CA) enables you to take advantage of
all the information already existing for your Root CA. However, the Root CA can
revoke the sub CA at any time.
Follow these steps to generate a sub CA using OpenSSL and the certificate services in
Microsoft Windows.
Preparation
● If you are not the Enterprise domain administrator, you will need to work
with that person to get the correct domain permissions to generate a sub CA.
● Install the OpenSSL toolkit (www.openssl.org) on a Windows or Linux machine.
4. There will be a series of questions. Answer each question and make note of the
challenge password; it will be needed later in the process.
The openssl command generates 2 files:
■ wcg.csr is the CSR that will be signed by the Certificate Authority to create
the final certificate.
■ wcg.key is the private key.
5. If you created the CSR on a Linux system, copy it to your Windows host with
WinSCP or some other file transfer utility.
1. Open wcg.csr with WordPad (to preserve the formatting) and copy the contents
onto the clipboard (Edit > Select all; Edit > Copy).
6. On the Submit a Certificate Request or Renewal Request screen, paste the content
of the wcg.csr file (previously placed on the clipboard) in the field provided and
click Submit.
7. The certificate is issued and the Certificate Issued screen displays.
If, instead, the Certificate Pending screen displays, you do not have sufficient
privileges to create a sub CA. Contact your Enterprise domain administrator to
complete the certificate creation process before proceeding.
8. Select the Base 64 encoded radio button, and then select Download certificate.
9. Save the certificate to your desktop. Later you will import it into Content
Gateway.
With the base 64 encoded certificate on your desktop, along with the private key
created during the CSR generating process, you are ready to import both into Content
Gateway. See Importing your Root CA, page 134, for instructions.
Always back up the public and private keys of your internal Root CAs before
importing or creating new ones. This enables you to return to an earlier version of the
certificate, if necessary. In addition, back up any new Root CAs that you import or
create.
1. In the Content Gateway manager, go to Configure > SSL > Internal Root CA >
Backup Root CA tab.
2. Click Save Public CA Key to view or save the public CA key.
3. Click Save Private CA Key to view or save the private CA key.
Depending on your browser settings, you may be prompted to open or save each key
file, or the keys may automatically be saved to the browser’s default downloads
directory.
Managing certificates
Related topics:
● Adding new certificate authorities, page 142
● Backing up certificates, page 142
● Restoring certificates, page 142
● Automatic certificate updates, page 143
Content Gateway initially populates its trusted certificate store, the Certificate
Authority Tree (CA tree) with the list qualified by Mozilla for Firefox (see
mozilla.org), by Microsoft for Internet Explorer, and by Apple for Safari. The CA tree
appears on the Configure > SSL > Certificates > Certificate Authorities tab in the
Content Gateway manager. Content Gateway trusts origin servers that offer these
certificates.
In the CA tree, a small “i” appears before the names of certificates that can be
validated via certificate revocation lists (CRL) or online certification status protocol
(OCSP). Content Gateway checks the revocation status of certificates used for both
inbound and outbound traffic. See Keeping revocation information up to date, page
149, for information about checking the revocation status of a certificate.
To view, delete, or change the allow/deny status of a certificate:
1. In the Content Gateway manager, go to the Configure > SSL > Certificates >
Certificate Authorities tab.
2. Select the name of an authority to open a small pop-up window with information
about that authority.
3. Do one of the following:
■ To open or download the certificate for review, select Click to view
certificate.
Depending on your browser settings, you may be prompted to open or save
the certificate file, or the file may automatically be saved to the browser’s
default downloads directory.
■ To delete a certificate, select Click to delete certificate, then confirm your
choice.
After deleting the certificate, verify that it no longer appears on the Certificate
Authorities tab.
■ To allow or deny the certificate, select the Click to change status to option.
Depending on the status of the certificate, your choice is allow or deny.
○ If you change the status to deny, a red X appears next to the name of the
certificate authority in the certificate authority tree.
○ If you change the status to allow, a green circle appears next to the name
of the certificate authority.
Use the Configure > SSL > Certificates > Add Root CA tab to manually import
additional certificate authorities. Certificates that you import manually have a default
status of allow.
Important
Back up your current certificates before making any
changes, such as adding or deleting certificates. See
Backing up certificates, page 142. If you want to back up
your entire Content Gateway configuration, see Saving
and Restoring Configurations, page 107.
1. Browse to the certificate location. Look for files that have a “.cer” extension. The
certificate must be in X.509 format and base64-encoded.
2. Click Add Certificate Authority.
3. If the import was successful, check that the new certificate is listed on
Configure > SSL > Certificates > Certificate Authorities.
New CAs are also added when users visit a site signed by that authority. These
certificates may be allowed or denied.
Backing up certificates
Help | Content Gateway | v8.5.x
Restoring certificates
Help | Content Gateway | v8.5.x
3. Click Restore. You receive a message telling you that the restore was successful
and indicating where the previous certificate database was backed up.
The certificate database is propagated around the cluster.
If you are running multiple proxies, use this restore feature to ensure that all the
proxies have the same configuration.
Note
The update process maintains only Public certificates.
Customers are responsible for maintaining Private
certificates.
Enabled by default, the feature can be disabled by editing records.config using this
command:
CONFIG proxy.config.ssl.catree_update INT 0
Use the Configure > SSL > Decryption / Encryption page in the Content Gateway
manager to configure SSL and TLS settings and ciphers for inbound and outbound
traffic. For outbound traffic, also configure session cache settings (removed in v8.5.4).
For instructions, see:
● SSL configuration settings for inbound traffic, page 144
● SSL configuration settings for outbound traffic, page 145
Related topics:
● SSL configuration settings for outbound traffic, page 145
To configure SSL and TLS settings and ciphers for inbound traffic:
1. In the Content Gateway manager, go to the Configure > SSL > Decryption /
Encryption > Inbound tab.
2. Under Protocol Settings, mark the check box next to each protocol that you want
Content Gateway to support. Supported protocols are:
■ SSLv2 (removed in v8.5.4)
■ SSLv3
■ TLSv1
■ TLSv1.1 (enabled by default)
■ TLSv1.2 (enabled by default)
Select the protocols that your organization’s security policy has adopted and that
your browsers support.
■ You must select at least one protocol.
■ These settings override the settings for these protocols in the users’ browsers.
■ You can select different protocols for outbound traffic.
3. Under Cipher Settings, select the appropriate Cipherlist for your deployment.
The cipher list describes available algorithms and level of encryption between the
client and Content Gateway.
The Content Gateway DEFAULT cipher list matches the OpenSSL Default list,
excluding those that Forcepoint experts believe provide the least security or
encryption strength.
■ ADH
■ RC4
■ EXP
■ DES
Edit the variables defined in the records.config file to change the default list. See
SSL Decryption.
The strongest cipher (providing the highest level of encryption) is applied first.
This can be set to a different level of encryption than for outbound traffic.
Additional cipher settings are:
■ HIGH encryption cipher suites are those with key lengths larger than 128
bits, and some cipher suites with 128-bit keys.
■ MEDIUM encryption cipher suites are the high cipher list plus additional
cipher suites that use 128-bit encryption algorithms.
For inbound requests (clients connections to Content Gateway), consider using
MEDIUM encryption to improve performance.
Regardless of the selected setting, specific insecure ciphers are disabled by
default. Control this list via the proxy.config.ssl.server.cipherlist_suffix variable
in the records.config file. See the information provided in the SSL Decryption
section of Content Gateway Configuration Files for more information.
For more information about ciphers, refer to www.openssl.org/docs.
4. Click Apply.
5. Go to the Configure > My Proxy > Basic > General tab and click Restart.
Use Configure > SSL > Decryption / Encryption > Outbound to configure SSL
and TLS settings, session cache (removed in v8.5.4), and ciphers for outbound traffic
(Content Gateway to the origin server).
1. Under Protocol Settings, indicate which protocols you want Content Gateway to
support. Supported protocols are:
■ SSLv2 (removed in v8.5.4)
■ SSLv3
■ TLSv1
■ TLSv1.1 (enabled by default)
■ TLSv1.2 (enabled by default)
Select the protocols that your organization’s security policy has adopted.
■ You must select at least one protocol.
■ You can select different protocols for inbound traffic.
2. Select Use session cache in the Session Cache section (removed in v8.5.4) if you
want to cache keys until the time specified in the Session cache timeout field
expires. If keys are not cached, each request is negotiated again.
3. Use the Session cache timeout field to specify how long (in seconds) keys should
be kept in the cache. The default is 300 seconds (5 minutes).
To disable session caching, set the session cache timeout to 0 (zero).
4. Under Cipher Settings, select the appropriate Cipherlist for your deployment.
The cipher list describes available algorithms and level of encryption between the
client and Content Gateway.
The Content Gateway DEFAULT cipher list matches the OpenSSL Default list,
excluding those that Forcepoint experts believe provide the least security or
encryption strength.
The strongest cipher (providing the highest level of encryption) is applied first.
This can be set to a different level of encryption than for inbound traffic.
Additional cipher settings are:
■ HIGH encryption cipher suites are those with key lengths larger than 128
bits, and some cipher suites with 128-bit keys.
■ MEDIUM encryption cipher suites include the high cipher list plus additional
cipher suites that use 128-bit encryption algorithms.
For outbound requests, consider using HIGH to improve security.
Note that regardless of the selected setting, specific insecure ciphers are disabled
by default. Control this list via the proxy.config.ssl.client.cipherlist_suffix
variable in the records.config file. See the information provided in the SSL
Decryption section of Content Gateway Configuration Files for more
information.
For more information about ciphers and cipher lists, refer to www.openssl.org/
docs.
5. Click Apply.
6. Go to the Configure > My Proxy > Basic > General tab and click Restart.
Validating certificates
Related topics:
● Bypassing verification, page 149
● Keeping revocation information up to date, page 149
● For information about options when verification fails and you prefer to trust the
site, see Bypassing verification, page 149.
● For a comprehensive discussion of the use and best practices of the CVE, see SSL
Certificate Verification Engine.
Note
It is recommended that you use OCSP in addition to, rather
than instead of, CRLs. See Keeping revocation
information up to date, page 149, for more information
about CRLs and OCSP.
10. If you are using OCSP revocation checking, use the Block certificates with
Unknown OCSP state option to determine whether to block certificates that
return the “Unknown” status.
11. If both CRL and OCSP revocation checking are enabled, indicate your Preferred
method for revocation check. The selected method (CRL, by default), is applied
first.
12. If you have enabled CRL or OCSP checking (or both), use the Block certificates
with no CRL URI and with no OCSP URI option to block certificates that do
not have the expected, associated URIs. For example, if only CRL checking is
enabled and the certificate doesn’t have a CRL URI, if this option is enabled the
connection is blocked. When both CRL and OCSP checking are enabled, the
block occurs only if both CRL and OCSP lack a URI.
■ You can view URI information in the certificate when you select to view the
certificate in your browser. See Managing certificates, page 141, for details.
Bypassing verification
When verification bypass is enabled, users are allowed to access a website after they
have been informed that the site has an invalid certificate.
It is recommended that organizations deploy initially with verification bypass enabled.
Then, as the incident rate changes, administrators can use the Incident List to enforce
policy. See Managing HTTPS website access, page 152.
Use the Configure > SSL > Validation > Verification Bypass tab in the Content
Gateway manager to configure verification bypass settings.
1. Select Permit users to visit sites with certificate failure after confirmation to
enable verification bypass (default). If this check box is not selected, users do not
have the option to browse to sites with an invalid certificate.
2. If verification bypass is enabled, use the Time before the user is notified again
for the site field to specify a period of time, in minutes, that the user is allowed to
visit a particular site without having to click through the warning again. The
default is 6 minutes.
3. Select Enable the SSL session cache for bypassed certificates to store
information about bypassed certificates in cache and reuse the connections.
■ If this option is selected, not all users are notified that they are trying to access
a site where verification has failed.
■ If this option is not selected, all users are notified about sites that do not have
valid certificates.
4. Click Apply.
As a best practice, configure Content Gateway to check the status of any certificate
before accepting it, to ensure that the certificate has not been revoked. There are 2
methods of doing this: through CRLs (see Certificate revocation lists, page 150) and
through OCSP (see Online certification status protocol, page 150).
● CRLs may include information about thousands of certificates, and may therefore
take some time to download and process.
● OCSP operates on a request/response basis for individual certificates, which may
improve performance, but not all CAs provide OCSP responses.
Note
Downloading CRL files can take some time and consume
CPU resources. Download CRL updates at a time when
Internet traffic on your system is light.
2. Because the update process may take some time, click View CRL Update
Progress to see the status of the update.
For more information about certificate revocation lists, see RFC 3280.
2. Click Apply.
For more information about OCSP, see RFC 2560.
Use an existing PAC file or create a new one to direct HTTPS traffic to Content
Gateway.
Step 5, below, provides a script that can be used a basis for building a custom PAC
file.
To configure Content Gateway to serve a PAC file:
1. In the Content Gateway manager, go to the Configure > My Proxy > Basic >
General tab.
2. Under Features > Protocols, make sure that, ensure that HTTPS is On.
If HTTPS is disabled, set it to On, click Apply, and then click Restart.
3. Go to the Configure > Content Routing > Browser Auto-Config > PAC tab.
4. Specify an Auto-Configuration Port for the proxy to use to serve the PAC file
(8083, by default).
5. Use the PAC Settings area to review or create the PAC file:
■ If an administrator has copied an existing PAC file into the Content Gateway
config directory (as described in Using a PAC file, page 40), the contents of
the file are displayed. Review and update the file as needed.
■ If no PAC file has been configured, the PAC Settings field is empty. To start
creating a PAC file, copy and paste the following template into the PAC
Settings field. Replace <host> with the IP address or hostname of the Content
Gateway machine.
function FindProxyForURL(url, host)
{
url = url.toLowerCase();
host = host.toLowerCase();
if(url.substring(0, 5) == "http:"){
return "PROXY <host>:8080";
}
else if(url.substring(0, 4) == "ftp:"){
return "PROXY <host>:2121";
}
else if(url.substring(0, 6) == "https:"){
return "PROXY <host>:8080";
}
else{
return "DIRECT";
}
}
The template is for basic testing only. Administrators should modify the file
as needed to suit their organization’s needs.
6. Click Apply.
7. Go to the Configure > My Proxy > Basic > General tab and click Restart.
Once the new PAC file is in place, configure users’ browsers to use the PAC file. For
example, if the PAC file is located on the proxy server with the hostname “proxy1”
and Content Gateway uses the default port 8083 to serve the file, users’ browsers must
be configured to include the following URL in their proxy configuration settings:
http://proxy1.company.com:8083/proxy.pac
The procedures for specifying the PAC file location vary among browsers. See Using
a PAC file, page 40, for more information.
Related topics:
● Viewing incidents, page 153
● Changing the status of an incident, page 154
● Deleting an incident, page 155
● Changing the text of a message, page 155
● Viewing incident details, page 155
● Adding websites to the Incident List, page 156
Use the Configure > SSL > Incident List and Add Website tabs to manage access to
websites and troubleshoot website access issues.
● When an end user receives an access denial message because a website does not
comply with the organization’s security policy, Content Gateway generates an
incident. See Viewing incidents, page 153.
● To specify how Content Gateway treats a particular site, add it to the Incident List.
See Adding websites to the Incident List, page 156.
Additional troubleshooting information can be found in SSL Certificate Verification
Engine.
Viewing incidents
Help | Content Gateway | v8.5.x
Use the Configure > SSL > Incidents > Incident List tab to see a report of those
times when clients received an access denial message.
Every node in a cluster has its own incident list.
● Incidents that are added or modified by the administrator are copied around the
cluster (synchronized).
● Unexpected incidents that result in an access denial message are not synchronized
in the cluster.
Use the fields in this report to specify how Content Gateway treats requested access to
a site in the future.
● To view a specific incident in the local list, enter the ID number or URL and click
Search Node.
If the node is part of a cluster and you want see all instances of the ID or URL, in
all lists, click Search Cluster.
● After performing a search, to restore the complete local list, click Show All in
Node.
When the list is very large, Show All displays only the first 2,500-3,000 records.
Use the scroll bar to scroll through the list. Use the “>” and “<” buttons to view
the next or previous page.
Field Description
Node The name of the Content Gateway node on which the list entry is located.
ID The incident ID number assigned by the system, also called the Ticket ID. Help
Desk can ask the user for the Ticket ID in the error message and quickly
retrieve it from the Incident List.
The end user sees the Ticket ID and a denial message.
Field Description
Status Determines how Content Gateway will treat this website in the future. Four
conditions are possible:
● Allow
Users can access the site even if the certificate is not valid. Traffic is
decrypted, and certificate checking is disabled.
● Blacklisted
The site is completely blocked. Users cannot access this site even if the
Verification Bypass is configured.
● Block
If certificate verification fails, access to the website is blocked, unless
Verification Bypass is configured, in which case the block page includes a
“Visit site anyway” button. See Bypassing verification, page 149.
● Tunnel
The site is tunneled. Traffic is not decrypted and Content Gateway does not
check the certificate. Tunneling can be used to bypass inspection of trusted
sites and improve performance.
Note: Tunnel by URL does not work with all transparent proxy traffic. See
Adding websites to the Incident List, page 156.
Use the drop-down list in the Action column to change the status of a site.
Type Indicates whether the site was added based on its URL or its certificate. It is
recommended that administrators add sites to the Incident List by certificate.
See Adding websites to the Incident List, page 156.
URL The URL of a site whose certificate could not be validated.
Message Offers the option to edit the error message. See Changing the text of a message,
page 155, for information about customizing error messages. The pencil and
the magnifying glass icon are both links. See Viewing incident details, page
155, for details.
Action Offers the option to change the status of an incident and to delete the incident.
See Deleting an incident, page 155.
When an administrator changes the status of an incident, that changes how Content
Gateway treats the listed URL in the future.
1. In the Content Gateway manager, go to the Configure > SSL > Incidents >
Incident List tab.
2. Identify the incident to update.
3. Select one of the following from the drop-down list in the Actions column. (See
The incident report, page 153, for an explanation of these options.)
■ Tunnel
■ Block
■ Blacklist
■ Allow
4. Click OK. The icon in the Status column changes to reflect the new status.
Deleting an incident
Help | Content Gateway | v8.5.x
1. In the Content Gateway manager, go to the Configure > SSL > Incidents >
Incident List tab.
2. Select the incident to delete. If the incident is not visible, you can search by ID.
See Viewing incidents, page 153.
3. In the Action column, select Delete from the Action drop-down list, and then click
OK.
If it is necessary or convenient, the entire Incident List can be deleted using a sqlite3
command:
sqlite3 /opt/WCG/config/new_scip3.db "delete from
certificate_acl;"
Use the Configure > SSL > Incidents > Add Website tab to specify sites that you
want to allow, blacklist, or tunnel. Sites that are added manually are assigned
chronological Ticket IDs. These appear on the Incident List. See Viewing incidents,
page 153.
1. Enter the URL of the site to add to the Incident List.
Note
When specifying an IPv6 address, enclose the address in
square brackets ([]).
Important
Tunnel by URL does not work for all transparent proxy
requests.
It works under these conditions:
● When the client application uses TLS and includes an
SNI (server name indication), Content Gateway
checks the Incident list for the hostname in the SNI.
● When there is no SNI, Content Gateway connects to
the origin server to retrieve the certificate. If the
Common Name is a unique FQDN, Content Gateway
looks it up in the Incident list. If the Common Name
contains a “*” (wildcard), or is not a unique FQDN,
Content Gateway looks for the IP address in the
Incident list.
Alternatively, use ARM Static bypass rules.
■ Allow: Users can access the site even if the certificate is not valid. Traffic is
decrypted, and certificate checking is disabled.
■ Blacklist: The site is completely blocked. Users cannot access this site even if
the Verification Bypass is configured.
4. Click Apply.
As a best practice, administrators should manually add sites to the Incident List after
monitoring network traffic for a period of time with the CVE disabled. (See
Configuring validation settings, page 147.) This enables administrators to improve
performance by tunneling trusted sites and blocking those they know should not be
accessed.
Client certificates
Related topics:
● Importing client certificates, page 158
● When a client certificate is always required: the Hostlist, page 158
● Deleting client certificates, page 159
Related topics:
● Client certificates, page 157
● When a client certificate is always required: the Hostlist, page 158
● Deleting client certificates, page 159
Use the Configure > SSL > Client Certificates > Import tab in the Content Gateway
Manager to import certificates from the organization represented by the client.
Note that a network administrator may need to provide the key and passphrase
information needed to complete this configuration.
Important
Use only X.509-formatted, base64-encoded certificates.
Related topics:
● Client certificates, page 157
● Deleting client certificates, page 159
Use the Configure > SSL > Client Certificates > Hostlist tab in the Content
Gateway manager to list destination servers that always require a client certificate.
Be sure to import the certificate before adding it to the Hostlist (see Importing client
certificates, page 158).
1. Enter the IP address or hostname of the destination server that requires the client
certificate.
2. In the Client Certificate drop-down list, select the name of the client certificate.
Only certificates you have already imported appear in this list.
3. Click Add.
Important
For browsers that don’t send a Server Name Indicator
(SNI), such as Internet Explorer version 8 and earlier,
create an entry for both the destination IP address and the
hostname.
Related topics:
● Client certificates, page 157
● Importing client certificates, page 158
Use Configure > SSL > Client Certificates > Manage Certificates tab in the
Content Gateway manager to delete imported client certificates.
1. Select the certificate you want to delete.
2. Click Delete.
Administrators can use the tabs of the Configure > SSL > Customization page in the
Content Gateway manager as follows:
● Certificate Failure: customize the message users receive when they are trying to
connect to a site that has an invalid certificate.
● Connect Error: customize the message users receive when Content Gateway is
unable to connect to the destination web server.
The following variables may optionally be included in the message templates.
Note
There is a known problem in Internet Explorer 10 that
sometimes results in the wrong block page being displayed
in the Preview pane. To work around the problem, click
Preview repeatedly until the correct page is displayed, or
disable TLS 1.0.
(Added in v8.5.3) Use the Configure > SSL > Custom Certificate Key options to
specify your own base64-encoded key pair that Content Gateway will use, in place of
a predefined pair, to generate the dynamic certificate that is sent to clients.
In environments with multiple clusters using the same load balancer, it is best to use
the same custom certificate key. Use the backup option from in one cluster, and import
the same key to other clusters. Optionally, import the same key to each cluster.
Note
The key format must be PKCS#8. See this article for
information about converting to a PKCS#8 key type.
The passphrase and confirm passphrase entries must match and be the passphrase
used when the key was created.
3. Click Import Custom Certificate Key.
The Content Gateway proxy can be configured to decrypt HTTPS traffic for analysis.
Port mirroring delivers all decrypted HTTPS traffic to a physical network interface.
This allows a trusted service device to inspect and analyze the decrypted data for its
own purpose. The trusted device, however, cannot modify the decrypted traffic and
inject it back into the data stream.
SSL decryption port mirroring is available only when the proxy is hosted on a
Forcepoint appliance. The feature can be enabled and configured using CLI
commands.
Important
The mirror port interface should not be connected to a live
network.
Administrators can configure Content Gateway to allow only certain clients to use the
proxy.
● When this configuration is in place, only clients whose IP address is included in
the ip_allow.config file can access the proxy.
Note
If an unauthorized client tries to access Content Gateway, a
message is displayed in their browser, indicating that the
requested content cannot be obtained.
Administrators can restrict access to the Content Gateway manager to ensure that only
authenticated users can change configuration options and view performance and
network traffic statistics.
Administrators can:
● Set the master administrator ID and password. A user who logs on to the Content
Gateway manager with the administrator ID has access to all Content Gateway
manager activities. See Setting the administrator ID and password, page 165.
● Create and maintain a list of user accounts that determines who can log on to the
Content Gateway manager and which activities they can perform. See Creating a
list of user accounts, page 165.
● Create an access control list of IP addresses that defines which machines can
access the Content Gateway manager. See Controlling host access to the Content
Gateway manager, page 166.
● Use SSL for secure administration. See Using SSL for secure administration, page
167.
The administrator who installs Content Gateway sets a password that controls
administrative access to the Content Gateway manager. A user who logs on to the
Content Gateway manager using the correct ID and password can view all the
statistics on the Monitor tab and change any configuration options on the Configure
tab.
To change the administrator ID and password in the Content Gateway manager:
1. Navigate to the Configure > My Proxy > UI Setup > Login tab.
2. To change the current administrator ID, under Administrator > Login, type a new
ID.
3. To change the current password, type the current password in the Old Password
field. Type the new password in the New Password field, and then retype the new
password in the New Password (Retype) field.
Passwords must be 8 to 15 characters and include at least one:
■ Uppercase character
■ Lowercase character
■ Number
■ Special character
Supported characters include:
! #%&'()*+,- ./;<=>?@[ ]^_ {|}~
The following special characters are not supported:
Space $ : ` \ "
If you have forgotten the current administrator password, see Accessing the
Content Gateway manager if you forget the master administrator password, page
13.
4. Click Apply.
If a single administrator ID and password for the Content Gateway manager is not
sufficient, an administrator can create a list of user accounts that define who has
access to the Content Gateway manager and which activities they can perform.
1. In the Content Gateway manager, go to the Configure > My Proxy > UI Setup >
Login tab.
2. Under Add New User, enter the name of the user allowed to access the Content
Gateway manager.
3. Enter the password for the user, and then enter the password again in the New
Password (Retype) field.
Passwords must be 8 to 15 characters and include at least one:
■ Uppercase character
■ Lowercase character
■ Number
■ Special character
Supported characters include:
! #%&'()*+,- ./;<=>?@[ ]^_ {|}~
The following special characters are not supported:
Space $ : ` \ "
4. Click Apply.
5. In the Access drop-down list of the user table, select which Content Gateway
manager activities the user can perform:
■ Select No Access to disable Content Gateway manager access for the user.
■ Select Monitor Only to allow the user to view statistics from the Monitor tab
only.
■ Select Monitor and View Configuration to allow the user to view statistics
from the Monitor tab and to view configuration options from the Configure
tab.
■ Select Monitor and Modify Configuration to allow the user to view
statistics from the Monitor tab and to change configuration options from the
Configure tab.
6. Click Apply.
7. Repeat this procedure for each user allowed to access the Content Gateway
manager.
Forcepoint Web Security uses the Secure Sockets Layer protocol (SSL) to protect
administrator communication with the Content Gateway manager. SSL security
provides authentication of both ends of a network connection using certificates, and
provides privacy using encryption.
Administrators can optionally replace the Forcepoint-provided certificate with a
custom certificate.
To do this:
1. Obtain an SSL certificate from a recognized certificate authority (for example,
VeriSign) or, if you use Active Directory Certificate Services, generate a
certificate using Certificate Services and a script provided with your Content
Gateway software. (See Creating an SSL Certificate for Content Gateway
manager with Active Directory Certificate Services.)
2. Install the certificate in the Content Gateway config directory (/opt/WCG/bin).
Either rename the certificate to the default filename (private_key.pem), or specify
the name of the certificate in the Content Gateway manager.
3. If you have used a name other than the default, log on to the Content Gateway
manager and navigate to the Configure > My Proxy > UI Setup > General tab.
The HTTPS option is enabled by default.
4. In the Certificate File field, specify the filename of the SSL certificate.
5. Click Apply.
Warning
Once the FIPS 140-2 option is enabled, it cannot be
disabled without completely reinstalling Content Gateway.
If Content Gateway is on an appliance, the appliance must
be reimaged.
Important
FIPS 140-2 is not used for:
● Traffic that flows through the cloud (Hybrid Module).
● Traffic forwarded to Forcepoint Advanced Malware
Detection.
● Forcepoint Mobile Security.
● IWA fallback to NTLM or Legacy NTLM user
authentication.
Important
After FIPS is enabled, you must re-install any hotfixes
previously installed for the current version of Content
Gateway.
Content Gateway supports the ability to create rules that inspect requests for certain
parameters and, when matched, apply a specified action. Rules can be created to:
Note
To create rules for IWA, NTLM, and LDAP user
authentication, see Rule-Based Authentication, page 203.
To get started with Content Gateway user authentication
options, see Content Gateway user authentication, page
177.
Use the Configure > Security > Access Control > Filtering tab to create and modify
filtering rules. Rules are stored in the filter.config file.
● Rules are applied in the order listed, top to bottom. Only the first match is applied.
If no rule matches, the request proceeds.
● Secondary specifiers are optional. More than one secondary specifier can be used
in a rule. You cannot, however, repeat a secondary specifier.
● Three filtering rules are configured by default. The first denies traffic on port 25 to
all destinations. The second and third bypass user authentication for connections
to 2 Forcepoint Advanced Malware Detection destinations.
● When Authentication bypass is enabled on the Web > Settings > Scanning >
Bypass Settings page of the Forcepoint Security Manager, appropriate rules are
added to filter.config.
After adding, deleting, or modifying a rule, restart Content Gateway.
See filter.config for information about the structure of stored rules.
Note
The “radius” rule type is not supported.
4. Select a Primary Destination Type and then enter a corresponding value in the
Primary Destination Value field. Primary Destination Types include:
dest_domain: a requested domain name. The value is a domain name.
dest_host: a requested hostname. The value is a hostname.
dest_ip: a requested IP address. The value is an IP address.
url_regex: a regular expression to be found in a URL. The value is a regular
expression.
5. If the Primary Destination Type is keep_hdr or strip_hdr, select the type of
information to keep or strip from the Header Type drop down list. Options
include:
■ date
■ host
■ cookie
■ client_ip
6. If the rule applies to only inbound traffic on a specific port, enter a value for
Proxy Port.
7. If the rule type is add_hdr, specify the Custom Header and Header Value. The
Custom Header and Header Value must be values that the destination host
expects. See the example for Google Business Gmail below.
8. Provide values for any required or desired Secondary Specifiers. They include:
Time: specifies a time range, such as 08:00-14:00.
Prefix: specifies a prefix in the path part of a URL.
Suffix: specifies a file suffix in the URL.
Source IP address: specifies a single client IP address, or an IP address range of
clients.
Port: specifies the port in a requested URL.
Method: specifies a request URL method:
■ get
■ post
■ put
■ trace
Scheme: specifies the protocol of a requested URL. Options are:
■ HTTP
■ HTTPS
■ FTP (for FTP over HTTP only)
User-Agent: specifies a request header User-Agent value. This is a regular
expression (regex).
You can use the User-Agent field to create application filtering rules that:
■ Allow applications that don’t properly handle authentication challenges to
bypass authentication
■ Block particular client-based applications from accessing the Internet
See the knowledge base article titled “When authentication prevents devices,
browsers, and custom applications from working with the proxy” for more
information and several examples.
9. When you have finished defining the rule, click Add to add the rule and then
Apply to save the rule.
10. When you are done adding rules, click Apply to save all the changes and then
click Close to close the edit window.
Editing a rule
1. In the Content Gateway manager, go to the Configure > Security > Access
Control > Filtering tab.
2. Click Edit File to open filter.config in the file editor.
3. In the list, select the rule to be modified and change the values as desired.
4. Click Set to update the rule and click Apply to save the rule.
5. Click Close to close the edit window.
Google provides a mechanism in the form of a custom header in the request, that
allows Google to recognize and allow or block access to enterprise gmail and other
Google Apps for Business.
To make Google’s solution work for enterprise gmail:
1. In the Web Security module of the Forcepoint Security Manager, permit the
category Internet Communication > General Email.
2. In the Content Gateway manager enable HTTPS (SSL decryption). If your site
does not already use SSL support, acquaint yourself with the feature before
enabling it.
3. In the Content Gateway manager, on the Configure > Security > Access Control
page, open filter.config and create an add_hdr rule.
Note
The add_hdr rule type can be used with any site that uses
a custom header-value pair to accomplish special handling.
a. Select add_hdr.
b. For Primary Destination Type select dest_domain.
c. For Primary Destination Value specify “mail.google.com”.
d. In the Custom Header field, specify “X-GoogApps-Allowed-Domains”.
e. In the Header Value field, specify your domain, or a list of domains separated
by commas. For example: www.example1.com,www.example2.com
f. Optionally, in the Source IP field specify the source IP address or address
range to which this rule will be applied. For example: 10.10.20.30 or
10.10.1.1-10.30.40.50.
g. Click Add to add the rule.
h. Click Apply to save all the changes, and then click Close to close the edit
window.
When a user attempts to access Google services from an unauthorized account,
Google displays a block page similar to this:
For Google’s description of the filtering solution, see the article Block access to
consumer accounts and services while allowing access to Google Apps for your
organization.
Related topics:
● Configuring SOCKS servers, page 174
● Setting SOCKS proxy options, page 175
● Setting SOCKS server bypass, page 176
Note
Content Gateway does not perform authentication with the
client. However, Content Gateway can perform user name
and password authentication with a SOCKS server running
SOCKS version 5.
Content Gateway can be configured to work with one or more SOCKS servers in your
network. When Content Gateway is installed on an appliance, a SOCKS server is
included with the module.
Note
When Content Gateway is not installed on an appliance,
no SOCKS server is provided with Content Gateway.
You can always return to the editor, select the rule, make changes, and click
Set to save them.
5. If there are multiple SOCKS servers, after they have been added, or while they are
being added, you can arrange them in precedence-order by selecting an entry and
moving it up or down the list with the up and down arrows.
6. Click Apply to accept your changes, and Close to close the editor.
7. In the SOCKS Server Rules area you can create rules for specific routing and
bypass by destination IP address. See, Setting SOCKS server bypass, page 176.
8. To review configuration options that apply to all SOCKS servers, select the
Options tab.
a. Review and adjust the Server Connection Timeout value. It specifies how
many seconds Content Gateway waits attempting to connect to a SOCKS
server before timing out.
b. Review and adjust the Connection Attempts Per Server value. It specifies
how many times Content Gateway attempts to connect to a given SOCKS
server before marking the server as unavailable.
c. Review and adjust the Server Pool Connection Attempts value. It specifies
how many times Content Gateway attempts to connect to a given SOCKS
server in the pool before giving up.
9. When SOCKS server configuration is complete, click Apply and then go to
Configure > My Proxy > General and restart Content Gateway.
To remove a server from the list:
1. In the SOCKS Server area click Edit File.
2. In the list, select the entry you want to delete and click X, to the left of the list.
3. Click Apply and then Close, when you’re ready to exit the editor.
4. When configuration is complete, go to Configure > My Proxy > General and
restart Content Gateway.
To configure Content Gateway as a SOCKS proxy, you must enable the SOCKS proxy
option and specify the port on which Content Gateway accepts SOCKS traffic from
SOCKS clients.
As a SOCKS proxy, Content Gateway can receive SOCKS packets (usually on port
1080) from the client and forward requests directly to the SOCKS server.
Note
You must set SOCKS proxy options in addition to enabling
the SOCKS option and specifying SOCKS server
information described in Configuring SOCKS servers,
page 174.
You can configure Content Gateway to bypass SOCKS servers and access certain
origin servers directly.
1. Navigate to Configure > Security > SOCKS > Server. In the SOCKS Server
Rules area click Edit File to open socks.config.
2. To modify an existing rule, select it from the list, make your changes, and click
Set.
3. To create a new rule, specify the parameters and click Add.
a. Select a Rule Type:
Route through SOCKS server
Do not route through SOCKS server
b. Specify a destination IP address or range of addresses. Never specify the all
networks broadcast address: 255.255.255.255
c. Select the SOCKS servers to be used for the traffic.
d. Select whether the traffic will be distributed to the specified SOCKS servers
in round robin fashion.
e. Click Add to add the rule.
4. Click Apply and then Close.
5. Click Restart on Configure > My Proxy > Basic > General.
You can configure Content Gateway to use multiple DNS servers, depending on your
security requirements. For example, you can configure Content Gateway to look to
one set of DNS servers to resolve host names on your internal network, while allowing
DNS servers outside the firewall to resolve hosts on the Internet. This maintains the
security of your intranet, while continuing to provide direct access to sites outside
your organization.
To configure Split DNS, you must perform the following tasks:
● Specify the rules for performing DNS server selection based on the destination
domain, the destination host, or a URL regular expression.
● Enable the Split DNS option.
In the Content Gateway manager:
1. Go to the Configure > Networking > DNS Resolver > Split DNS tab.
2. Enable the Split DNS option.
3. In the Default Domain field, enter the default domain for split DNS requests.
Content Gateway appends this value automatically to a host name that does not
include a domain before determining which DNS server to use.
4. In the DNS Servers Specification area, click Edit File to open the configuration
file editor for the splitdns.config file.
5. Enter information in the fields provided, and then click Add. All the fields are
described in splitdns.config.
6. Click Apply, and then click Close.
7. On the Split DNS tab, click Apply to save your configuration.
8. Click Restart on Configure > My Proxy > Basic > General.
Related topics:
● Browser limitations, page 180
● Global authentication options, page 181
● Integrated Windows Authentication, page 189
● Legacy NTLM authentication, page 195
● LDAP authentication, page 197
● RADIUS authentication, page 200
● Rule-Based Authentication, page 203
● Mac and iPhone/iPad authentication, page 229
Important
Use the directory service used by Web Security. (For
v8.5.3)
In both explicit and transparent proxy modes, Content Gateway supports user
authentication with:
● Integrated Windows Authentication (Kerberos with SPNEGO to NTLM)
● Legacy NTLM authentication (NTLMSSP)
● LDAP authentication
● RADIUS authentication
Content Gateway also supports combinations of Integrated Windows Authentication
(IWA), Legacy NTLM, and LDAP using:
● Rule-Based Authentication, page 203
Browser limitations
Help | Content Gateway | v8.5.x
Note
Please see the Certified Product Matrix for the most up-to-
date information.
Note
Each time Internet Explorer is accessed, authentication
information is requested even if Integrated Windows
Authentication (IWA) has been configured.
Use the Configuration > Security > Access Control > Global Authentication
Options page to configure:
● User authentication Fail Open/fail closed behavior
● Credential Caching options
● The Redirect Options (required for transparent proxy deployments)
(Note that this section was called Redirect Hostname prior to v8.5.4.)
● Cookie Sharing options
These settings apply to all proxy user authentication configurations, within the
parameters stated for each option below.
Whenever changes are made to any of these settings, click Apply to save your
changes and then restart the proxy to put the changes into effect.
Fail Open
Fail Open specifies whether requests are allowed to proceed for processing when user
authentication fails.
When Fail Open is enabled and a Forcepoint Web Security transparent identification
agent is configured, if authentication fails and the client is identified by the agent,
user-based policy is applied. If the user cannot be identified and a policy is assigned to
the client’s IP address, that policy is applied. Otherwise, the Default policy is applied.
Important
The Fail Open setting does not apply when IWA is the
authentication method and the client fails to retrieve a
kerberos ticket from the domain controller (DC) because
the DC is down.
The Fail Open setting does apply with IWA when IWA
falls back to NTLM.
The Fail Open setting does not apply when using LDAP in
explicit proxy mode.
Options include:
Important
When user authentication is rule-based with a domain list:
● If Enabled only for critical service failures is
selected, when a critical service failure occurs fail
open is not applied. An error always results in fail
closed.
● If Enabled for all authentication failures, including
incorrect password is selected, after trying basic
credentials with every domain in the list, fail open is
applied.
Credential Caching
Credential Caching options include:
● Credential Caching selections
● Caching Method
● Cache Time-To-Live (TTL), in minutes
● Cookie Expiration (added in v8.5.3)
● LDAP Specific Settings
Credential caching settings apply to all clients whether Content Gateway is in
transparent or explicit mode. In explicit mode, caching exceptions can be configured.
Credential caching applies to:
● All authentication methods when Content Gateway is a transparent proxy
● When Content Gateway is an explicit proxy:
■ Integrated Windows Authentication (IWA)
■ Legacy NTLM
When IWA authenticates with Kerberos, Kerberos handles ticket (credential) caching.
Note
This feature should be used for clients for whom IP or
cookie cache is not available, such as NATed IP addresses
or IP addresses used for clients behind a terminal server.
Since all requests from the clients listed are authenticated,
performance may be impacted.
Important
Cookie mode caching:
● Cookie mode caching does not work with applications
that do not support cookies, or with browsers in which
cookie support has been disabled.
● When the browser is Internet Explorer, the full proxy
hostname in the form “http://host.domain.com” must
be added to the Local intranet zone.
● When the browser is Chrome, it must be configured to
allow third-party cookies or configured for an
exception to allow cookies from the proxy hostname in
the form “host.domain.com”.
● When the IP address is set for cookie mode and the
request method is CONNECT, no caching is
performed.
● Cookie mode caching is not performed for FTP
requests.
● Cookie mode caching is supported by Captive Portal
and client certificate authentication.
● For explicit proxy, cookie-based authentication is not
supported for HTTPS. IP-address authentication is
used.
Note
The user interface setting to disable the NTLM cache for
explicit proxy has been removed. Although not
recommended, the cache can be disabled for explicit proxy
traffic in records.config by setting the value of
proxy.config.ntlm.cache.enabled to 0 (zero).
Cache Time-To-Live
Cache Time-To-Live (TTL) specifies the duration, in minutes, that an entry in the
cache is retained. When the TTL expires, the entry is removed and the next time that
the user submits a request, the user is authenticated. If the authentication succeeds, an
entry is placed in the cache.
The default TTL is 15 minutes. The range of valid values is 5 to 1440 minutes.
Redirect Options
(Prior to v8.5.4, this section was labeled Redirect Hostname.).
Redirect Options include:
● Redirect Hostname specifies an alternate hostname for the proxy.
By default, authenticating clients are redirected to the hostname of the Content
Gateway machine. If clients are unable to resolve that hostname through DNS, or if an
alternate DNS name for the proxy is defined, that hostname should be specified in the
Redirect Hostname field.
Redirect Options
(Prior to v8.5.4, this section was labeled Redirect Hostname.).
Redirect Options include:
● Redirect Hostname specifies an alternate hostname for the proxy.
By default, authenticating clients are redirected to the hostname of the Content
Gateway machine. If clients are unable to resolve that hostname through DNS, or if an
alternate DNS name for the proxy is defined, that hostname should be specified in the
Redirect Hostname field.
Note
To ensure that user authentication for transparent proxy
occurs transparently (without prompting the user for
credentials), the browser must be configured so that the
Redirect Hostname is in its Intranet Zone. Typically, this
is achieved by ensuring that the Redirect Hostname is in
the same domain as the computer on which the browser is
running. For example, if the client is
workstation.example.com and the Redirect Hostname is
proxyhostname.example.com, the browser allows
authentication to occur transparently. Consult your
browser documentation.
Note
Content Gateway supports transparent authentication in
proxy clusters that use WCCP load distribution. However,
the assignment method distribution attribute must be
the source IP address. For more information see WCCP
load distribution, page 54.
By default, all authentication for HTTPS requests is done over HTTP, using port
8080. Click Enabled to direct all HTTPS requests to authenticate over HTTPS.
Note
To ensure that user authentication for transparent proxy
occurs transparently (without prompting the user for
credentials), the browser must be configured so that the
Redirect Hostname is in its Intranet Zone. Typically, this
is achieved by ensuring that the Redirect Hostname is in
the same domain as the computer on which the browser is
running. For example, if the client is
workstation.example.com and the Redirect Hostname is
proxyhostname.example.com, the browser allows
authentication to occur transparently. Consult your
browser documentation.
Note
Content Gateway supports transparent authentication in
proxy clusters that use WCCP load distribution. However,
the assignment method distribution attribute must be
the source IP address. For more information see WCCP
load distribution, page 54.
Cookie Sharing
Authentication credentials cached with cookie surrogates can be shared across all
nodes in a cluster.
When cookie mode caching is enabled, after a user is authenticated the cookie for that
user is used for subsequent authentication attempts by any of the proxies that are
clustered with the proxy that did the initial authentication. This feature is especially
useful in load balanced environments.
When either Cache using Cookies only or Cache using both IP addresses and
Cookies is enabled, the Cookie Sharing option is automatically enabled.
Note
All proxies in the cluster must use the same caching
method when cookie sharing is enabled.
● Select Choose File for both Public and Private keys to import your own keys for
use with this feature. Browse to the file you want to use and select it. Files must be
in PEM format.
The same keys must be imported for each proxy in the cluster.
● After selecting each file, click Import Keys to import custom keys
(recommended) and store them in the default location.
Note that default keys are provided and are added when the product is installed or
upgraded. The default files are:
/opt/WCG/config/cookie_auth_public.pem
/opt/WCG/config/cookie_auth_private.pem
Select the files you wish to import. The custom keys are automatically copied to
this folder and renamed to the default names.
Important
When custom keys are imported, the default files provided
by Forcepoint are overwritten. You should backup the
default keys prior to importing. See Save Public Key and
Save Private Key below.
Keys must be PKCS#1 RSA public keys and are RSA 1024/2048/4096 bit public
and private key pairs without a passphrase. Use the following commands to
generate keys:
openssl genrsa -out cookie_auth_private.pem 1024
openssl rsa -in cookie_auth_private.pem -RSAPublicKey_out -out
cookie_auth_public.pem
Change 1024 to 2048 or 4096 to generate 2048 or 4096 bit keys.
● Select Save Public Key and Save Private Key to make a backup of the files.
Select the location and filenames to use for the backup copy, keeping in mind that
the default names are always used for the active keys.
Key files should be backed up prior to importing new keys.
When load balancing has been configured, all proxies must use the same setting for
Redirect Hostname. The value must be the fully qualified domain name (FQDN) of
the load balancer.
Important
Cookie sharing has the following limitations:
● Cookie caching limitations also apply to cookie
sharing. Therefore, since cookie caching is not
supported for CONNECT requests, cookie sharing is
not supported.
● Custom keys must be imported manually. Custom
Keys are not synchronized across the cluster.
● Cookie sharing is not supported with client certificate
authentication.
Surrogate credentials
Surrogate credentials are entries placed in the credential cache after initial successful
authentications.
● An IP address surrogate ties a credential to an IP address and assumes that the IP
address is used by only one user at any given time.
● A cookie surrogate is tied to a cookie placed on the client’s system and depends on
client application support for cookies. This method is required when a client IP
address is shared by more than one user at a time, as with multi-user hosts such as
Citrix servers.
After the initial successful authentication, Content Gateway uses the surrogate
credential to respond to subsequent authentication requests on behalf of the user, thus
reducing latency and the load on domain controllers and directory services. Credential
surrogate entries are deleted when the Time-To-Live expires.
● Can be used with Rule-Based Authentication and, with v8.5.4, Captive Portal
Authentication.
● Supports Internet Explorer, Firefox, Google Chrome, Windows Safari, Safari on
iPad iOS4, and Opera
● Supports UTF-8 user names
● Supports fall back to prompted authentication
Requires that:
● Clients be joined to the domain
● Client browsers specify the Fully Qualified Domain Name (FQDN) of Content
Gateway as an intranet site or trusted site (HTTP://FQDN)
● When Redirect for HTTPSS Authentication (new in v8.5.4) is enabled on the
Configure > Security > Access Control > Global Authentication page, Content
Gateway will redirect over HTTPS. To avoid user prompts, HTTPS://FQDN must
also be specified as an intranet or trusted site in client browsers.
Note
Microsoft Edge does not support trusted sties. Intranet
sites are required for clients using Edge.
a. In the Domain Name field, enter the fully qualified domain name.
b. In the Administrator Name field enter the Windows Administrator user
name.
c. In the Administrator Password field enter the Windows Administrator
password.
The name and password are used only during the join and are not stored.
d. Select how to locate the domain controller:
○ Auto-detect using DNS
○ DC name or IP address
If the domain controller is specified by name or IP address, you can also
specify backup domain controllers in a comma separated list, no spaces.
e. In the Content Gateway Hostname field, confirm that the hostname is the
correct hostname and that it is no more than 15 characters (no more than 11
characters on appliances). If it is longer, it must be shortened if IWA is to be
used. The length restriction results from the 15 character limit on NetBIOS
hostnames.
Warning
Do not change the hostname after the domain is joined. If
the hostname is changed, IWA immediately stops working
and will not work again until the domain is unjoined and
then re-joined with the new hostname.
f. Click Join Domain. If there is an error, ensure that the conditions outlined
above are met and then see Failure to join the domain.
Important
All clients subject to authentication must be joined to the
domain.
Browsers and other proxy clients must be configured to
specify the FQDN of Content Gateway as an intranet site
or trusted site.
g. Restart Content Gateway and run some test traffic through the proxy to verify
that authentication is working as expected. If there is a problem, see
Troubleshooting Integrated Windows Authentication.
Important
After upgrade, check and, if necessary, rejoin IWA
domains.
In a load-balanced environment:
● Clients explicitly point to the Content Gateway cluster via the FQDN, which,
when a load balancer is used, must resolve to the load balancer’s VIP.
● Kerberos then returns a ticket for the load balancer’s VIP, which the client then
sends to Content Gateway.
● Because the ticket is not issued for the proxy’s IP address, but rather for the load
balancer’s VIP, Content Gateway cannot decrypt the ticket and authentication
fails.
To restate the problem, it’s not possible to configure clients to request Content
Gateway’s Kerberos ticket because the client’s operating system handles the ticket
request based on the FQDN of the proxy, which resolves to the VIP of the load
balancer.
Normally, Content Gateway would be configured to share the hostname of the load
balancer, but this is not possible when the load balancer requires hostname resolution
(as with DNS-based load balancing).
Because it’s not possible to stop clients from sending a load-balancer’s Kerberos ticket
to Content Gateway, the proxies must be configured to accept the load-balancer’s
ticket, making the Content Gateway nodes appear as the load-balancer within the
scope of Kerberos.
Please contact this article for detailed, step-by-step configuration instructions.
● Errors encountered in the join action are reported at the top of the screen (the
Integrated Windows Authentication tab).
● The error message usually includes a link to the failure log where you can get
more details.
● Join failures are logged to /opt/WCG/logs/smbadmin.join.log
● In most cases, the failure message in the log is a standard Samba and Kerberos
error message that is easily found with an Internet search.
Troubleshooting:
In the Content Gateway manager, use the Diagnostic Test function on the Monitor >
Security > Integrated Windows Authentication tab. This Monitor page displays
authentication request statistics and provides the diagnostic test function.
The Diagnostic Test function performs connectivity and authentication testing and
reports errors. It also shows domain controller TCP port connectivity and latency.
Errors and messages are logged to:
● /var/log/messages
● content_gateway.out
● /opt/WCG/logs/smbadmin.log
● /opt/WCG/logs/smbadmin.join.log
Performance issues:
● IWA (Kerberos): Authentication performance is bound by CPU. There is no
communication to the domain controllers for Kerberos authentication.
Content Gateway supports the NTLM (NT LAN Manager) authentication protocol as
a method of ensuring that users in a Windows network are authenticated before they
access the Internet.
Important
This implementation of NTLM support (Legacy NTLM)
relies solely on the NTLMSSP protocol. Although it
performs reliably as documented in this section, it is highly
recommended that the Integrated Windows Authentication
mode be used instead. It provides more robust and secure
support for NTLM.
Important
If rule-based authentication will be used, configure Legacy
NTLM authentication through the Rule-Based
Authentication option.
However, read this section to become familiar with Legacy
NTLM features and restrictions.
When the Legacy NTLM option is enabled, the proxy challenges users who request
content for proof of their credentials. The proxy then sends the proof of the user’s
credentials directly to the Windows domain controller to be validated. If the
credentials are valid, the proxy serves the requested content and stores the credentials
in the NTLM cache for future use. If the credentials are not valid, the proxy sends an
authentication failed message.
Restrictions:
1. WINS resolution is not supported. Domain controllers must have host names that
can be resolved by a DNS server.
2. Extended security is not supported and cannot be enabled on the domain
controller.
3. NTLM2 session security is not supported and cannot be enabled on clients. In the
Security Settings area of the Windows operating system, inspect the Network
Security: Minimum session security settings.
4. NTLMv2 is not supported with Active Directory 2008. The required Network
Security: LAN Manager Authentication setting is described in step 5 of
Configuring NTLM proxy authentication, below.
Note
If you are using Active Directory 2008, you must include
the netbios_name or use SMB port 445. If you do not use
port 445, you must ensure that the Windows Network File
Sharing service is running on the Active Directory server.
See your Windows Server 2008 documentation for details.
Note
If you are using Active Directory 2008, in the Windows
Network Security configuration, LAN Manager
Authentication level must be set to Send NTLM
response only. See your Windows Server 2008
documentation for details.
6. Enable Load Balancing if you want the proxy to balance the load when sending
authentication requests to multiple domain controllers.
Note
When multiple domain controllers are specified, even if
load balancing is disabled, when the load on the primary
domain controller reaches the maximum number of
connections allowed, new requests are sent to a secondary
domain controller as a short-term failover provision, until
such time that the primary domain controller can accept
new connections.
7. Click Apply and restart Content Gateway (Configure > My Proxy > Basic >
General).
Optionally, you can configure Content Gateway to allow certain clients to access
specific sites on the Internet without being authenticated by the NTLM server; See
Access Control, page 328).
LDAP authentication
Help | Content Gateway | v8.5.x
Content Gateway supports the LDAP option to ensure that users are authenticated
with an LDAP server before accessing content through the proxy.
Important
If rule-based authentication will be used, configure LDAP
authentication through the Rule-Based Authentication
option. However, read this section to become familiar with
LDAP features and restrictions.
Note
When the LDAP directory service is Active Directory,
requests from users located outside the global catalog’s
base domain will fail to authenticate. This is because the
default port for LDAP is 389 and requests sent to 389
search for objects only within the global catalog’s base
domain. To authenticate users from outside the base
domain, change the LDAP port to 3268. Requests sent to
3268 search for objects in the entire forest.
7. Enable Secure LDAP if you want the proxy to use secure communication with
the LDAP server. Secure communication is performed on port 636 or 3269.
Change the port value in the previous field, if necessary.
8. Select the type of directory service to set the filter for searching.
■ Microsoft Active Directory (sAMAccountName) sets the type to
sAMAccountName (default).
■ Microsoft Active Directory (userPrincipalName) sets the type to
userPrincipalName.
■ Other sets the type to uid for eDirectory or other directory services.
9. Enter the Bind Distinguished Name (fully qualified name) of a user in the
LDAP-based directory service. For example:
CN=John Smith,CN=USERS,DC=MYCOMPANY,DC=COM
Enter a maximum of 128 characters in this field.
If no value is specified for this field, the proxy attempts to bind anonymously.
10. Enter a password for the user specified in the previous step.
11. Enter the Base Distinguished Name (DN). Obtain this value from your LDAP
administrator.
12. Click Apply.
13. Click Restart on Configure > My Proxy > Basic > General.
As optional steps, you can:
● Change LDAP cache options. See Setting LDAP cache options, page 199.
● Configure Content Gateway to allow certain clients to access specific sites on the
Internet without being authenticated by the LDAP server. See Access Control,
page 328).
Variable Description
proxy.config.ldap.cache.size Specify the number of entries
allowed in the LDAP cache.
The default value is 5000. The
minimum value is 256.
proxy.config.ldap.auth.ttl_value Specify the number of minutes
that Content Gateway can
store username and password
entries in the LDAP cache.
proxy.config.ldap.cache. Specify the maximum amount
storage_size of space (in bytes) that the
LDAP cache can occupy on
disk.
When modifying this value,
you must update the value of
proxy.config.ldap.cache.size
proportionally. For example, if
you double the storage size,
also double the cache size.
Modifying this variable
without modifying
proxy.config.ldap.cache.size
causes the LDAP subsystem to
stop functioning.
Note
The Directory Service must be configured to support
LDAPS authentication. See to the documentation provided
by the directory provider for instructions.
RADIUS authentication
Help | Content Gateway | v8.5.x
Content Gateway supports the RADIUS option to ensure that users are authenticated
with a RADIUS server before accessing content through the proxy.
When the RADIUS option is enabled:
■ Content Gateway acts as a RADIUS client and directly challenges users who
request content for a username and password.
■ After receiving the username and password, Content Gateway contacts the
RADIUS server to check that the credentials are correct.
■ If the RADIUS server accepts the username and password, the proxy serves
the client with the requested content and stores the username and password
entry in the RADIUS cache; all future authentication requests for that user are
served from the RADIUS cache until the entry expires.
■ If the RADIUS server rejects the username and password, the user’s browser
displays a message indicating that authorization failed and prompts again for
a username and password.
Content Gateway supports a primary RADIUS server and a secondary RADIUS
server for failover. If the primary server does not respond to the proxy request within
the specified timeout (60 seconds by default), Content Gateway tries to check the
username and password again. If a response from the primary RADIUS server is not
received after the maximum number of retries (10 by default), the proxy contacts the
secondary RADIUS server. If Content Gateway cannot contact the secondary
RADIUS server, the user is prompted again for a username and password.
The RADIUS cache is held in memory and stored on disk. Content Gateway updates
the data on disk every 60 seconds. In addition, Content Gateway stores username and
password entries in the RADIUS cache for 60 minutes. If a password and username
entry is expired in the RADIUS cache, Content Gateway contacts the RADIUS server
to accept or reject the username and password.
To configure Content Gateway to be a RADIUS client:
● Enable the RADIUS option.
● Specify the hostname or IP address of the primary and secondary (optional)
RADIUS servers, and the port and shared key that Content Gateway uses to
communicate with the RADIUS servers.
See Configuring Content Gateway to be a RADIUS client, page 201.
Note
In addition to performing these procedures, you must add
the Content Gateway machine as a trusted client on the
primary and secondary RADIUS servers and provide the
shared key you want to use for the Content Gateway
machine (the shared key must be the same one you specify
in the procedure below). See your RADIUS server
documentation.
Variable Description
proxy.config.radius.auth. Specify the amount of time
min_timeout in seconds that the Content
Gateway connection to the
RADIUS server remains
idle before Content
Gateway closes the
connection.
proxy.config.radius.auth. Specify the maximum
max_retries number of times Content
Gateway tries to connect to
the RADIUS server.
proxy.config.radius.cache.size Specify the number of
entries allowed in the
RADIUS cache.
The minimum value is 256
entries. If you enter a value
lower than 256, Content
Gateway signals a SEGV.
proxy.config.radius.auth.ttl_value Specify the number of
minutes that Content
Gateway can store username
and password entries in the
RADIUS cache.
proxy.config.radius.cache. Specify the maximum
storage_size amount of space that the
RADIUS cache can occupy
on disk.
This value must be at least
100 times the number of
entries. It is recommended
that you provide the
maximum amount of disk
space possible.
Rule-Based Authentication
Help | Content Gateway | v8.5.x
Related topics:
● Global authentication options, page 181
● Rule-based authentication Domain list, page 208
● Creating an authentication rule, page 213
● Working with existing authentication rules, page 216
● Rule-based authentication use cases, page 217
● Authentication based on User-Agent, page 220
● Authentication using Captive Portal
● Client certificate authentication, page 225
● Troubleshooting authentication rules, page 226
Note
If all the users in your network can be authenticated by
domain controllers that share trust relationships, you
probably don’t need rule-based authentication.
However, the option is well suited to single domain
environments that may benefit from multiple rules based
on IP addresses, inbound proxy port (explicit proxy), and/
or User-Agent values.
Note
Credential caching configuration is performed on the
Configure > Security > Access Control > Global
Configuration Options tab. On that page you specify IP
address caching, cookie caching, or both. The setting
applies to both transparent proxy and explicit proxy traffic.
When both IP address caching and cookie caching are
specified, the IP addresses that cookie caching is applied to
must be specified.
See Credential Caching for more information.
Logic:
● One or more rules are defined for clients and domains (Configure > Security >
Access Control > Authentication Rules).
● When a request for web content is received:
■ A top-down rule list traversal begins
■ The first match is applied
■ If the rule includes a list of domains, authentication proceeds as follows:
○ The proxy attempts to authenticate with the first domain using the method
configured for that domain. For example, if the first domain is IWA,
Content Gateway transparently negotiates with the browser for credentials
(407 or 401).
○ If authentication fails and Content Gateway hasn’t already challenged
(prompted) for credentials, it then prompts for credentials.
Exception: When Content Gateway is an explicit proxy, the first and
second domains are IWA, and the client has a ticket from the
authentication domain, there is no prompt for basic credentials. Instead,
Content Gateway uses the Kerberos ticket provided by the client to
attempt to authenticate with the second domain. If the attempt fails and
the fallback to NTLM authentication fails, the user is prompted for
credentials.
When Content Gateway is a transparent proxy the standard behavior
applies. This is because when the user is not a member of the first domain,
the request for a Kerberos ticket fails because the client does not trust the
FQDN sent with the request. The fallback to NTLM authentication also
fails and the user is prompted for credentials.
○ Content Gateway then uses the basic credentials with each domain,
starting with the second, proceeding sequentially until authentication
succeeds or the list is exhausted.
○ Content Gateway then uses the basic credentials to attempt, again, to
authenticate with the first domain.
Important
Content Gateway must be configured with a DNS server
that can resolve the fully qualified domain name (FQDN)
of Content Gateway for every realm used by IWA. If this
isn’t done, IWA fails to work. How to configure the DNS
server is up to the network administrator. One option is to
configure a DNS transfer zone (Sub Zone) between the
primary DNS server of Content Gateway and the DNS
server of each authentication realm (isolated domain).
Important
You must also configure your clients to use the correct
port.
2. Configure Global authentication options, page 181 (Configure > Security >
Access Control > Global Authentication Options).
3. Create a domain list (Configure > Security > Access Control > Domains).
○ To specify a domain in a rule, it must be a member of the Domain List.
○ Active Directory domains used with IWA must be joined.
Important
In rule-based authentication, Content Gateway may
authenticate users that are outside the User Service
primary domain. In these cases, Content Gateway can be
configured to send an “alias” user name that User Service
knows about. Or, you can send no name, in which case
standard Filtering Service precedence is applied to
determine the correct policy. (See Enforcement order in
Administrator Help for the Web module.) This
specification is made for each domain in the Domain list.
For more information, see Unknown users and the ‘alias’
option, below.
4. Create authentication rules (Configure > Security > Access Control >
Authentication Rules).
5. Restart Content Gateway to make the new rules take effect.
To use rule-based authentication, you create and maintain a Domain List. There must
be at least one domain on the list before an authentication rule can be defined.
When a domain is added to the list, the authentication method is specified.
When a rule is defined, the domain or domains are selected from the domain list.
Supported domain types include:
● Active Directory (AD) domains to be used with IWA. These domains must be
joined by Content Gateway, as well as by its members (users).
● Domain Controllers (DC) to be used with Legacy NTLM
● AD and uid domain controllers and directory servers to be used with LDAP
See:
● Adding an Active Directory domain for use with IWA
● Adding an NTLM domain controller for use with Legacy NTLM
● Adding a domain (directory service) for use with LDAP
Warning
Do not change the hostname after the domain is joined. If
it is changed, IWA immediately stops working and will not
work again until the domain is unjoined and then re-joined
with the new hostname.
To change the way the domain controller is found, and other attributes
1. On the Domains page, in the list select the domain you want to change and click
Edit.
2. In the IWA Domain Details section, select how to locate the domain controller:
■ Auto-detect using DNS
■ DC name or IP address
If the domain controller is specified by name or IP address, you can also
specify backup domain controllers in a comma separated list, no spaces.
3. You can also change the Aliasing setting. See Unknown users and the ‘alias’
option, page 208.
4. Click Apply.
1. Go to Configure > Security > Access Control > Domains and click New
Domain.
2. Select Legacy NTLM from the Authentication Method drop down box.
3. In the Domain Identifier field, enter a unique name that will help you recognize
the domain and its purpose. After the domain is added, the name cannot be
changed.
4. Optionally, configure the Aliasing option. For information see: Unknown users
and the ‘alias’ option, page 208.
5. In the Legacy NTLM Domain Details section:
a. In the Domain Controller entry field enter the IP address and port number of
the primary domain controller. If no port is specified, Content Gateway uses
port 139.
You can also specify secondary domain controllers in a comma-separated list.
The supported formats are:
host_name[:port][%netbios_name]
IP_address[:port][%netbios_name]
The netbios_name is required with Active Directory 2008.
b. Specify whether load balancing should be applied among multiple DCs.
Note
Even if load balancing is not selected, if multiple domain
controllers are specified and the load on the primary
domain controller reaches the maximum number of
connections allowed, new requests are sent to a secondary
domain controller as a short-term fail over provision, until
such time that the primary domain controller can accept
new connections.
■ If the LDAP server rejects the username and password, the user’s browser
displays a message indicating that authorization failed and prompts again for
a username and password.
LDAP authentication supports both simple and anonymous bind.
To add an LDAP domain to the Domains list:
1. Go to Configure > Security > Access Control > Domains and click New
Domain.
2. Select LDAP from the Authentication Method drop down list.
3. In the Domain Identifier field, enter a unique name that will help you recognize
the domain and its purpose. After the domain is added, the name cannot be
changed.
4. Optionally, configure the Aliasing option. For information see: Unknown users
and the ‘alias’ option, page 208.
5. In the LDAP Domain Details section:
a. In the LDAP Server Name field, enter the fully qualified domain name or IP
address of the LDAP server.
b. If the LDAP server port is other than the default (389), in the LDAP Server
Port field, enter the LDAP server port.
c. Enter the LDAP Base Distinguished Name. Obtain this value from your
LDAP administrator.
d. Select the LDAP Server Type from the drop down list.
○ Select sAMAccountName (MS AD) for Active Directory.
○ Select userPrincipalName (MS AD) for Active Directory.
○ Select uid (Other LDAP) for other directory services.
e. In the Bind Domain Name field, enter the bind distinguished name. This
must be a Full Distinguished Name of a user in the LDAP directory service.
For example:
CN=John Smith,CN=USERS,DC=MYCOMPANY,DC=COM
f. In the Bind Password field, enter the password for the name given in the
Bind Domain Name field.
g. Enable Secure LDAP if you want Content Gateway to use secure
communication with the LDAP server. If enabled, set the LDAP port to 636 or
3269.
6. Click Add Domain.
A confirmation dialogue displays. Confirm that you want to remove the domain from
the list.
Warning
When a domain is removed, it is also removed from any
authentication rules that specify it.
If it is the only domain specified in a rule, when the
domain is removed the rule is made invalid and, therefore,
the rule is removed.
Note
In the Rule editor, after entering all specifiers, click Add
before clicking Apply. If Apply is clicked first, or the edit
window is closed, all entry fields are cleared.
The size of a rule cannot exceed 2048 characters.
1. Go to Configure > Security > Access Control and review and adjust the Global
Authentication Options and Domains list.
2. If AD domains are used with IWA, go to Monitor > Security > Integrated
Windows Authentication and confirm that the IWA domains are joined and that
connections are established.
3. Go to Configure > Security > Access Control > Authentication Rules. A list of
existing authentication rules is displayed at the top of the page.
4. Click Edit File to open the rule editor.
5. If some rules have already been defined, note the order of the rules in the list at the
top of the page.
Important
Rule order matters. The rule match traversal is performed
top-to-bottom. Only the first match is applied.
6. Select Enabled next to Status if you want the rule to be active after the rule is
added and Content Gateway is restarted.
7. Enter a unique Rule Name (required). A short, descriptive name will help you
recognize the rule and its purpose. It is recommended that the name not exceed 50
characters.
8. If the rule applies to specific IP addresses, in the Source IP field, enter a comma-
separated list of individual IP addresses and/or IP address ranges. Do not use
spaces. For example:
10.4.1.1,10.12.1.1-10.12.254.254
The list can contain up to:
■ 64 IPv4 addresses
■ 32 IPv4 address ranges
■ 24 IPv6 addresses
■ 12 IPv6 address ranges
Source IP address ranges can overlap. Overlapping ranges may be useful as a
quick way of identifying sub-groups in a large pool. In overlapping ranges, the
first match is used.
If this field is empty (undefined), all IP addresses match.
9. If the rule applies to inbound traffic on a specific port, select the Proxy Port from
the drop down list. This option is valid with explicit proxy only.
Inbound ports are specified on the Configure > My Proxy > Protocols >
HTTP > General page in the Secondary HTTP Proxy Server Ports field. Client
applications must be configured to send requests to the desired port.
If undefined, all ports match. Transparent proxy deployments should leave the
field undefined.
10. To apply the rule to specific User-Agent values, enter POSIX-compliant regular
expressions (regex) to match the desired values. To specify a common browser
type, select a Predefined regex from the drop down list and click Include.
If undefined, all User-Agents match.
You can edit the field directly.
Use the “|” character (logical ‘or’) to separate regexes.
The “^” regex operator is not supported.
The regex is validated when the rule is committed to the configuration file, which
happens after clicking Add or Set and then Apply. If the regex is not valid, the
rule is deleted and must be recreated with a valid regex.
For an extended description and examples, see Authentication based on User-
Agent, page 220.
11. Click Enabled next to Client Certificate to enable client certificate authentication.
Click Disabled to disable the feature.
a. In the drop-down box next to Enabled, select a Client Certificate
Authentication profile. See Client certificate authentication profiles, page
226.
Only one profile is allowed.
b. Check the box next to Use the next selected authentication method if
Client Certificate authentication fails to use one of the other authentication
methods if certificate authentication fails for a user.
If this option is not selected, no further authentication is attempted for users
who fail certificate authentication.
If the fallback option is enabled,
○ The Domain Sequence list cannot be empty.
○ Enable HTTP Authentication Page for Captive Portal is not supported
and the option is disabled when the fallback option is selected.
12. Specify the domain(s) to authenticate against.
a. From the Domains drop down list, select the applicable domain and click
Include. Only domains that have been added to the Domains list are available
(Configure > Security > Access Control > Domains).
b. If an ordered list of domains will be used, select each domain one at a time
and click Include. Then select domains in the list and use the up and down
arrows to achieve the desired order.
Important
The Fail Open/fail closed setting is applied after every
domain in the list is tried.
Note that if client certificate authentication is enabled with Use the next
selected authentication method if Client Certificate authentication fails
option selected, this option is disabled.
This option is disabled if an IWA domain is included in the domains list.
If this option is enabled and an IWA domain is added to the domains list, an error
message will display.
Note that when Content Gateway receives an unauthenticated POST request from
a user who matches a Captive Portal rule, it redirects the user to the web portal
authentication page and does not record the POST data. After successful
authentication, the original POST data must be input again.
See Authentication using Captive Portal for additional details.
14. Click Add to add the rule.
15. At the top of the page, check and adjust the position of the rule in the rule list. The
first rule matched is applied.
16. Click Apply and then restart Content Gateway to put the rule into effect.
Warning
If a rule has invalid values, a warning message displays
that identifies the invalid rule. The rule in not written to the
file.
Use the rule editor in the Content Gateway manager. Do not directly edit
auth_rules.config.
Editing a rule
1. Go to Configure > Security > Access Control > Authentication Rules and click
Edit File.
2. In the table of rules, click on the rule to be changed. Its values populate the fields
in the definition area.
3. Make the desired changes, click Set and then click Apply.
Important
If a field value is not valid, the rule is not commit ed and
the rule entry is discarded. To avoid difficulty in recreating
a rule, separately record the field values so that it is easy to
correct the bad field value and recreate the rule.
4. Click Close to return to the Authentication Rules tab and click Refresh to see
the updated list.
5. Restart Content Gateway to put the changes into effect.
Deleting a rule
1. Go to Configure > Security > Access Control > Authentication Rules and click
Edit File.
2. In the table of rules, click on the rule to be deleted and click the “X” button on the
left.
3. When you are done deleting rules, click Apply.
4. Click Close to return to the Authentication Rules tab and click Refresh to see
the updated list.
5. Restart Content Gateway to put the changes into effect.
Multiple realm use case 1: Domain acquired; explicit proxy, page 217
Multiple realm use case 2: Internal domain added; explicit proxy, page 218
Multiple realm use case 3: Temporary domain added; transparent proxy, page 219
Authentication based on User-Agent, page 220
have a separate use policy for New Corp users (i.e., not use the “default” user on the
QCORP domain).
Rule-based authentication makes this possible.
To configure the solution, Quality Corp would:
1. Enable Rule-Based Authentication.
2. Add a second, non-default HTTP port (Configure > Protocols > HTTP >
General). This port will be used by all members of NCORP.
3. Create a PAC file for members of NCORP that causes them to connect to Content
Gateway on the new, second port.
4. Create authentication rules, one each for the QCORP and NCORP domains:
a. On Configure > Security > Access Control > Domains, add the QCORP
and NCORP domains to the Domains list.
○ When adding NCORP, use the Aliasing option to specify “NCorpUser” for
use in policy determination.
b. On Configure > Security > Access Control > Authentication Rules, create
an NCORP rule for connections on the second port. You must know the IP
addresses/ranges of New Corp users, and specify the NCORP domain.
c. Define the QCORP rule to handle all other connections.
5. In the Web module of the Forcepoint Security Manager, add “NCorpUser” to the
QCORP domain as a valid user and create policy for that user.
At this point, everyone connecting to Content Gateway from NCORP is authenticated
against the NCORP domain controller and gets the group policy associated with
NCorpUser. Note that no individual user-based policy or features, such as quota time,
are possible in this scenario. Transactions are logged as NCorpUser. This is all
performed with no effect on the authentication, policy, or logging of users on the
QCORP domain.
a. On Configure > Security > Access Control > Domains, add the CTEMP
domain, enable Aliasing and leave the name field blank. This will have the
result of applying the Default policy to all users of CTEMP.
b. Add the CCORP domain to the Domains list.
c. On Configure > Security > Access Control > Authentication Rules, create
a CTEMP rule to apply to all connections coming from the IP address range
assigned to the CTEMP domain.
d. Define the CCORP rule to handle all other connections.
At this point, anyone using the Internet on one of the kiosks is authenticated against
the CTEMP network and has the Default policy applied to their requests.
Microsoft Edge
Edge ([1]{1}[\.0-9]{0})
Example User-Agent string:
Search the Internet for lists of User-Agent strings, example regular expressions, regex
checkers, and related resources.
Use case:
This describes a case in which an organization with a single domain wants to
authenticate requests from 2 common web browsers. They also want to bypass
authentication for web applications that do not support authentication.
An organization—let’s call it Best Corp—uses Content Gateway. They have one
domain (BCORP), and one domain controller. They use IWA to authenticate users.
Best Corp wants to ensure that:
● Requests from common web browsers are authenticated. They control which web
browsers are allowed on their computers.
● Web applications that don’t support authentication bypass authentication.
The User-Agent feature of rule-based authentication makes this possible.
To configure the solution, Best Corp:
1. Enables Rule-Based Authentication.
2. Adds the BCORP domain to the Domains list.
3. Creates an IWA rule that:
a. Optionally, specifies the supported client IP address ranges.
That’s it. With this configuration, all requests from Internet Explorer and Firefox, the
only 2 browsers that can be installed on their computers, are subject to user
authentication. All other requests, most particularly web applications, bypass
authentication. To further customize the approach, Best Corp could create other
authentication rules and/or add proxy filtering rules (filter.config) to deny or bypass
specific applications by User-Agent value.
● When this option is enabled, an error message will display if an IWA domain is
selected for inclusion in the Auth Sequence list.
Note that when Content Gateway receives an unauthenticated POST request from a
user who matches a Captive Portal rule, it redirects the user to the web portal
authentication page and does not record the POST data. After successful
authentication, the original POST data must be input again.
Note
If the requested URL is configured for tunneling or bypass,
no user authentication is performed.
When a rule is added with the Captive Portal option enabled, users are reminded that
they can customize the pre-defined web portal page. Go to the new Captive Portal
Page Customization tab of Configure > Security > Access Control. Edit the text and
HTML to suit your needs. For example, you may want to include your company logo
in place of the default logo.
Note
The css and image files also reside in /opt/WCG/ui/
configure/auth_form and /opt/WCG/ui/configure/
auth_form/images, respectively, for use by the Preview
feature. Copy any new files to those directories to use
Preview.
Add a variable to records.config to use a different name for the saved Captive Portal
page or store the css and image files in a different directory.
For example:
name=auth_server dest_ip=* ssl_cert_name=custom_cert.crt
ssl_key_name=custom_key.key
Note that ssl_multicert.config file can only have one entry. It does not support
multiple entries.
4. Make a backup of records.config. (Default location: /opt/WCG/config)
5. Run the following command to check the current value of the parameter. By
default, the value is 0.
/opt/WCG/bin/content_line -r
proxy.config.ssl.use_custom_cert_for_captive_portal
6. Run the following command to enable the feature and make the custom certificate
work with captive portal.
/opt/WCG/bin/content_line -s
proxy.config.ssl.use_custom_cert_for_captive_portal -v 1
7. Restart Content Gateway.
Important
Enable this parameter only if you have a custom
certificate to be uploaded to the proxy. If the parameter
is enabled but no custom certificate is entered in
ssl_multicert.confg, the proxy can run into unexpected
issues.
1. The rules in filter.config are checked and applied. This action occurs first in every
type of Content Gateway user authentication. If a filtering rule is matched, the rule
is applied and user authentication processing stops. See Content Gateway filtering
rules, page 168.
2. If no filtering rule matches, user authentication rule matching is performed.
a. The requestor’s IP address is checked, top-down, against the rule set.
b. If the IP address matches a rule, the source port is checked.
c. If the IP address matches a rule, the User-Agent value is checked.
d. The first rule matched is applied. If no rule matches, no authentication is
attempted.
3. If a rule is matched, the specified authentication protocol is applied against the
specified domain. All rule configuration details are applied.
4. If the user is authenticated, the request proceeds or is denied per the assigned
policy.
5. The transaction is logged.
To see how the logic is applied in a running environment, you can temporarily enable
user authentication debug output. Among other details, the debug output shows the
parsing of rules and matching. See Enabling and disabling user authentication debug
output.
Troubleshooting
When rule-based authentication doesn’t produce the expected results, it is
recommended that you troubleshoot the problem in the following order:
1. Check Redirection Rules
Confirm that there is no unexpected entries. In the Content Gateway manager, go
to Configure > Networking > ARM > General and examine the Redirection
Rules.
2. Check the rules in filter.config
Confirm that there is no unexpected matching of a filter.config rule. Among other
purposes, filter.config rules can be used to bypass user authentication. See
Content Gateway filtering rules.
3. Check rule matching
Using the IP address of a user who is or is not being challenged as expected, walk
through each rule, top to bottom, examining the settings to find the first match. Be
meticulous in your analysis. A common problem is that the IP address falls within
a too-broad IP address range.
If the rule uses an alias, confirm that the alias is present in the User Service of the
primary domain controller.
For explicit clients configured to send traffic to a specific port, check both the rule
and the configuration of the client’s browser.
4. Check the domain
If you are getting the match you expect, verify that the domain is reachable and
that the user is a member of the domain. If yes, troubleshoot the problem at the
authentication protocol level. For IWA, see Troubleshooting Integrated Windows
Authentication.
5. When Content Gateway is in a proxy chain
If Content Gateway is a member of a proxy chain, verify that X-Forwarded-For
headers are sent by the downstream proxy and read by Content Gateway.
■ Use a packet sniffer to inspect inbound packets from the downstream proxy.
Look for properly formed X-Forwarded-For headers.
■ In the Content Gateway manager, go to Configure > My Proxy > Basic,
scroll to the bottom of the page and verify that Read authentication from
child proxy is enabled. If it’s not, select On, click Apply, and then restart
Content Gateway.
Warning
Debug output should not be left enabled. Debug output
slows proxy performance and can fill the file system with
log output.
Find and modify the following parameters and assign values as shown:
CONFIG proxy.config.diags.debug.enabled INT 1
CONFIG proxy.config.diags.debug.tags STRING
http_xauth.* | auth_* | winauth.* | ldap.* | ntlm.*
Save and close the file. Force Content Gateway to reread the file with the command:
(root)# /opt/WCG/bin/content_line -x
Save and close the file. Force Content Gateway to reread the file with the command:
(root)# /opt/WCG/bin/content_line -x
Note
If the Mac only logs to the domain without mounting a file
share, it will not be visible to DC Agent.
Configuration summary:
● Ensure that each participating Mac user is a member of a common Active
Directory. See your Active Directory documentation.
● Create a home folder for each Mac user, and make sure that it is accessible to the
user. See the first paragraph of this section.
When the user logs on to the properly configured Mac OS X system, the Mac mounts
a network directory as the user’s home directory, the DC Agent user map is populated,
and user and group-based policies can be applied to user requests. When requests are
blocked, browser-based block pages are displayed normally.
Important
Safari users may be prompted for credentials the first time
they open a browser. The user should enter their
credentials and check the “Remember password in
keychain” check box.
Firefox users may receive an “Proxy Authentication
Required” error message. This is a known issue in FireFox
(http://support.mozilla.org/en-US/questions/926378) and
is easily corrected by changing the browser configuration.
In About:Config set the following options to false:
● network.automatic-ntlm-auth.allow-proxies
● network.negotiate-auth.allow-proxies
6. Highlight Active Directory and click on the Pencil icon to configure the Active
Directory connection.
7. Under Domain, enter the Fully Qualified Domain Name (FQDN).
8. Under Computer ID, enter the computer name.
9. Click Bind. You are prompted for network credentials and a computer OU. Enter
your OU admin account and password, and the computer OU location. For
example:
ou=computers,ou=orgunits,dc=ad,dc=example,dc=com
Your machine will be bound to the specified Active Directory.
10. Click Apply in the Directory Utility to save your changes and restart the machine.
Explicit proxy settings can be configured in the iOS Network settings area.
Related topics:
● Event log files, page 236
● Managing event log files, page 237
● Event log file formats, page 239
● Rolling event log files, page 245
● Splitting event log files, page 248
● Collating event log files, page 250
● Viewing logging statistics, page 253
● Viewing log files, page 254
● Example event log file entries, page 255
● Error log files record information about why a transaction was in error.
● Event log files (also called access log files) record information about the state of
each transaction that Content Gateway processes.
Content Gateway creates both error and event log files and records system
information in system log files. You can disable event logging and/or error logging. It
is recommended that you log errors only or disable logging during peak usage hours.
On the Configure > Subsystems > Logging tab, select one of the following options:
Log Transactions and Errors, Log Transactions Only, Log Errors Only, or
Disabled.
Event log files record information about every request that Content Gateway
processes. By analyzing the log files, you can determine how many people use the
proxy, how much information each person requested, what pages are most popular,
and so on.
Content Gateway supports several standard log file formats, such as Squid and
Netscape, and user-defined custom formats. You can analyze the standard format log
files with off-the-shelf analysis packages. To help with log file analysis, you can
separate log files so that they contain information specific to protocol or hosts. You
can also configure Content Gateway to roll log files automatically at specific intervals
during the day.
The following sections describe how to:
● Manage your event log files
You can choose a central location for storing log files, set how much disk space to
use for log files, and set how and when to roll log files. See Managing event log
files, page 237.
● Choose different event log file formats
You can choose which standard log file formats you want to use for traffic
analysis (for example, Squid or Netscape). Alternatively, you can use the Content
Gateway custom format, which is XML-based and enables you to institute more
control over the type of information recorded in log files. See Event log file
formats, page 239.
● Roll event log files automatically
You can configure Content Gateway to roll event log files at specific intervals
during the day so that you can identify and manipulate log files that are no longer
active. See Rolling event log files, page 245.
● Separate log files according to hosts
You can configure the proxy to create separate log files for different protocols
based on the host. See Splitting event log files, page 248.
You can manage your event log files and control where they are located, how much
space they can consume, and how low disk space in the logging directory is handled.
● If the autodelete option is disabled or there are not enough old log files to delete
for the system to emerge from its low space state, Content Gateway issues a
warning and continues logging until space is exhausted. Content Gateway
resumes event logging when enough space becomes available for it to exit its low
space state. You can make space available by removing files from the logging
directory or by increasing the logging space limit.
You can run a cron script in conjunction with Content Gateway to automatically
remove old log files from the logging directory (before Content Gateway enters the
low space state) and relocate them to a temporary partition. Once the files are
relocated, you can run log analysis scripts on them, and then you can compress the
logs and move them to an archive location or delete them.
Note
The log directory you specify must already exist and must
be /opt/WCG/logs or a subdirectory of it.
The user must have read/write permissions for the
directory storing the log files.
3. In the Limit field of the Log Space area, enter the maximum amount of space you
want to allocate to the logging directory.
When Content Gateway is on an appliance, the size is set to 5120 (5 GB) and
cannot be changed.
When Content Gateway is installed on a stand-alone server, the default size is
20480 (20 GB) and the size is configurable.
Note
All files in the logging directory contribute to the space
used, even if they are not log files.
4. In the Headroom field, enter the tolerance for the log space limit. The default
value is 100 MB.
If the Auto-Delete Rolled Files option is enabled in the Log Rolling section,
autodeletion is triggered when the amount of free space available in the logging
directory is less than the headroom. For information about log file rolling, see
Rolling event log files, page 245.
5. Click Apply.
Important
Event log files consume a large amount of disk space.
Creating log entries in multiple formats at the same time
can consume disk resources very quickly and affect proxy
performance.
Important
When IPv6 is enabled, Event log entries are normalized to
IPv6 format.
For example, “10.10.41.200” is logged as
“::ffff:10.10.41.200”.
To filter on a client at “10.10.41.200” in a custom log, use:
<LogFilter>
<Name = "IPv6_Test_Machine"/>
<Condition =
"chi MATCH ::ffff:10.10.41.200"/>
<Action = "ACCEPT"/>
</LogFilter>
The standard log formats include Squid, Netscape Common, Netscape Extended, and
Netscape Extended-2.
The standard log file formats can be analyzed with a wide variety of off-the-shelf log-
analysis packages. You should use one of the standard event log formats unless you
need information that these formats do not provide. See Custom format, page 240.
By default, Content Gateway is configured to use the Netscape Extended log file
format only.
Custom format
Help | Content Gateway | v8.5.x
The XML-based custom log format is more flexible than the standard log file formats,
giving you more control over the type of information in your log files. Create a custom
log format if you need data for analysis that is not available in the standard formats.
You can decide what information to record for each Content Gateway transaction and
create filters to define which transactions to log.
The heart of the custom logging feature is an XML-based logging configuration file
(logs_xml.config) that enables you to create modular descriptions of logging objects.
The logs_xml.config file uses three types of objects to create custom log files:
● The LogFormat defines the content of the log file using printf-style format
strings.
● The LogFilter defines a filter so that you include or exclude certain information
from the log file.
● The LogObject specifies all the information needed to produce a log file. For
example:
■ The name of the log file (required).
■ The format to be used (required). This can be a standard format (Squid or
Netscape) or a previously defined custom format (a previously defined
LogFormat object).
■ The file mode (ASCII, Binary, or ASCII_PIPE). The default is ASCII.
The ASCII_PIPE mode writes log entries to a UNIX named pipe (a buffer in
memory). Other processes can then read the data using standard I/O functions.
The advantage of using this option is that Content Gateway does not have to
write to disk, freeing disk space and bandwidth for other tasks.
Note
When the buffer is full, Content Gateway drops log entries
and issues an error message indicating how many entries
were dropped. Content Gateway writes only complete log
entries to the pipe; therefore, only full records are dropped.
Note
To generate a custom log format, you must specify at least
one LogObject definition. One log file is produced for
each LogObject definition. You can create a custom log
format in the Content Gateway manager or by editing a
configuration file.
Content Gateway performs several hundred operations per second; therefore, event
log files can grow quite large. Using SQL-like aggregate operators, you can configure
Content Gateway to create summary log files that summarize a set of log entries over
a specified period of time. This can reduce the size of the log files generated.
You generate a summary log file by creating a LogFormat object in the XML-based
logging configuration file (logs_xml.config) using the following SQL-like aggregate
operators:
● COUNT
● SUM
● AVERAGE
● FIRST
● LAST
You can apply each of these operators to specific fields, requesting it to operate over a
specified interval.
Summary log files represent a trade-off between convenience and information
granularity. Since you must specify a time interval during which only a single record
is generated, you can lose information. If you want the convenience of summary logs
and need the detail of a conventional log file, consider creating and enabling two
custom log formats—one using aggregate operators and the other not using aggregate
operators.
To create a summary log file format:
1. In the Content Gateway manager, go to the Configure > Subsystems >
Logging > Custom tab to display the logs_xml.config file.
2. Define the format of the log file as follows:
<LogFormat>
<Name = "summary"/>
<Format = "%<operator(field)> : %<operator(field)>"/>
<Interval = "n"/>
</LogFormat>
Here:
■ “operator” is one of the five aggregate operators (COUNT, SUM, AVERAGE,
FIRST, LAST). You can specify more than one operator in the format line.
■ “field” is the logging field that you want to aggregate.
■ “n” is the interval in seconds between summary log entries.
For more information, see logs_xml.config, page 402.
For example, the following format generates one entry every 10 seconds, with
each entry summarizing the time stamp of the last entry of the interval, a count of
the number of entries seen within that 10-second interval, and the sum of all bytes
sent to the client:
<LogFormat>
<Name = "summary"/>
<Format = "%<LAST(cqts)> : %<COUNT(*)> :
%<SUM(psql)>"/>
<Interval = "10"/>
</LogFormat>
Important
You cannot create a format specification that contains both
aggregate operators and regular fields. For example, the
following specification would be invalid:
<Format = "%<LAST(cqts)> : %<COUNT(*)> :
%<SUM(psql)> : %<cqu>"/>
4. Click Apply.
After modifying the logs_xml.config file on one Content Gateway node, enter the
following command from the Content Gateway bin directory (/opt/WCG/bin):
content_line -x
Content Gateway applies the changes to all nodes in the cluster. The changes take
effect immediately.
You can configure Content Gateway to create event log files in either of the following:
● ASCII: these files can be processed using standard, off-the-shelf log-analysis
tools. However, Content Gateway must perform additional processing to create
the files in ASCII, resulting in an increase in overhead. Also, ASCII files tend to
be larger than the equivalent binary files. ASCII log files have a .log filename
extension by default.
● Binary: these files generate lower system overhead, as well as generally
occupying less space on the disk, depending on the type of information being
logged. You must, however, use a converter application before you can read or
analyze these files using standard tools. Binary log files use a .blog filename
extension by default.
While binary log files typically require less disk space, this is not always the case. For
example, the value 0 (zero) requires only one byte to store in ASCII but requires four
bytes when stored as a binary integer. If you define a custom format that logs IP
addresses, a binary log file would require only four bytes of storage per 32-bit address.
However, the same IP address stored in dot notation would require around 15
characters (bytes) in an ASCII log file.
For standard log formats, you select Binary or ASCII on the Configure >
Subsystems > Logging > Formats tab in the Content Gateway manager. See Setting
standard log file format options, page 240. For the custom log format, you specify
ASCII or Binary mode in the LogObject. Refer to Custom format, page 240.
Note
For custom log files, in addition to the ASCII and Binary
options, you can also write log entries to a UNIX named
pipe (a buffer in memory). Other processes can then read
the data using standard I/O functions. The advantage of
using this option is that Content Gateway does not have to
write to disk, freeing disk space and bandwidth for other
tasks. In addition, writing to a pipe does not stop when
logging space is exhausted because the pipe does not use
disk space. See logs_xml.config, page 402, for more
information about the ASCII_PIPE option.
Before selecting ASCII versus binary for your log files, consider the type of data that
will be logged. Try logging for one day using ASCII and then one day using binary.
Assuming that the number of requests is roughly the same for both days, you can
calculate a rough metric comparing the two formats.
You must convert a binary log file to ASCII before you can analyze it using standard
tools.
1. Change to the directory containing the binary log file.
2. Make sure that the logcat utility is in your path.
3. Enter the following command:
logcat <options> <input_filename>
Option Description
-o output_file Specifies where the command output is directed.
-a Automatically generates the output filename based on the input
filename. If the input is from stdin, this option is ignored.
For example:
logcat -a squid-1.blog squid-2.blog
squid-3.blog
generates:
squid-1.log, squid-2.log, squid-3.log
-S Attempts to transform the input to Squid format, if possible.
-C Attempts to transform the input to Netscape Common format, if
possible.
-E Attempts to transform the input to Netscape Extended format, if
possible.
-2 Attempt to transform the input to Netscape Extended-2 format, if
possible.
Note
Use only one of the following options at any given time:
-S, -C, -E, or -2.
If no input files are specified, logcat reads from the standard input (stdin). If you do
not specify an output file, logcat writes to the standard output (stdout).
For example, to convert a binary log file to an ASCII file, you can use the logcat
command with either of the following options:
logcat binary_file > ascii_file
logcat -o ascii_file binary_file
Content Gateway provides automatic log file rolling. This means that at specific
intervals during the day, Content Gateway closes its current set of log files and opens
new log files.
Log file rolling offers the following benefits:
● It defines an interval over which log analysis can be performed.
● It keeps any single log file from becoming too large and assists in keeping the
logging system within the specified space limits.
● It provides an easy way to identify files that are no longer being used so that an
automated script can clean the logging directory and run log analysis programs.
You should roll log files several times a day. Rolling every six hours is a good
guideline to follow.
Content Gateway provides a consistent name format for rolled log files that allows
you to identify log files.
When Content Gateway rolls a log file, it saves and closes the old file and starts a new
file. Content Gateway renames the old file to include the following information:
● The format of the file (for example, squid.log).
● The hostname of the Content Gateway server that generated the log file.
● Two timestamps separated by a hyphen (-). The first time stamp is a lower bound
for the time stamp of the first record in the log file. The lower bound is the time
when the new buffer for log records is created. Under low load, the first time
stamp in the filename can be different from the timestamp of the first entry. Under
normal load, the first time stamp in the filename and the time stamp of the first
entry are similar.
The second time stamp is an upper bound for the time stamp of the last record in
the log file (this is normally the rolling time).
● The suffix .old, which makes it easy for automated scripts to find rolled log files.
The timestamps have the following format:
%Y%M%D.%Hh%Mm%Ss-%Y%M%D.%Hh%Mm%Ss
squid.log.mymachine.20000912.12h00m00s-
20000913.12h00m00s.old
In this example, the file is squid log format and the host machine is mymachine. The
first time stamp indicates a date and time of year 2000, month September, and day 12
at 12:00 noon. The second time stamp indicates a date and time of year 2000, month
September, and day 13 at 12:00 noon. At the end, the file has a .old suffix.
The logging system buffers log records before writing them to disk. When a log file is
rolled, the log buffer might be partially full. If so, the first entry in the new log file will
have a time stamp earlier than the time of rolling. When the new log file is rolled, its
first time stamp will be a lower bound for the time stamp of the first entry. For
example, suppose logs are rolled every three hours, and the first rolled log file is:
squid.log.mymachine.19980912.12h00m00s-
19980912.03h00m00s.old
If the lower bound for the first entry in the log buffer at 3:00:00 is 2:59:47, the next
log file, when rolled, will have the following time stamp:
squid.log.mymachine.19980912.02h59m47s-
19980912.06h00m00s.old
The contents of a log file are always between the two timestamps. Log files do not
contain overlapping entries, even if successive timestamps appear to overlap.
Rolling intervals
Help | Content Gateway | v8.5.x
Log files are rolled at specific intervals relative to a given hour of the day. Two
options control when log files are rolled:
● The offset hour, which is an hour between 0 (midnight) and 23
● The rolling interval
Both the offset hour and the rolling interval determine when log file rolling starts.
Rolling occurs every rolling interval and at the offset hour.
For example, if the rolling interval is six hours and the offset hour is 0 (midnight), the
logs roll at midnight (00:00), 06:00, 12:00, and 18:00 each day. If the rolling interval
is 12 hours and the offset hour is 3, logs roll at 03:00 and 15:00 each day.
4. In the Interval field, enter the amount of time Content Gateway enters data in the
log files before rotation takes place.
The minimum value is 300 seconds (five minutes). The maximum value is
86400 seconds (one day).
Note
If you start Content Gateway within a few minutes of the
next rolling time, rolling may not occur until the following
rolling time.
5. Ensure the Auto-Delete Rolled Files option is enabled (the default). This enables
auto deletion of rolled log files when available space in the log directory is low.
Auto deletion is triggered when the amount of free space available in the log
directory is less than the headroom.
6. Click Apply.
Note
You can fine tune log file rolling settings for a custom log
file in the LogObject specification in the logs_xml.config
file. The custom log file uses the rolling settings in its
LogObject, which override the default settings you
specify in the Content Gateway manager or the
records.config file described above.
By default, Content Gateway uses standard log formats and generates log files that
contain HTTP and FTP transactions in the same file. However, you can enable host
log splitting if you prefer to log transactions for different origin servers in separate log
files.
HTTP host log splitting enables you to record HTTP and FTP transactions for
different origin servers in separate log files. When HTTP host log splitting is enabled,
Content Gateway creates a separate log file for each origin server listed in the
log_hosts.config file (see Editing the log_hosts.config file, page 250).
When HTTP host log splitting is enabled, Content Gateway generates separate log
files for HTTP/FTP transactions, based on the origin server.
For example, if the log_hosts.config file contains the two origin servers uni.edu and
company.com, and the Squid format is enabled, Content Gateway generates the
following log files:
Content Gateway also enables you to create XML-based custom log formats that offer
even greater control over log file generation based on protocol and host name. See
Custom format, page 240.
Note
You can specify keywords in the log_hosts.config file to
record in a separate log file all transactions from origin
servers that contain the specified keyword in their names.
For example, if you specify the keyword sports, Content
Gateway records all HTTP and FTP transactions from
sports.yahoo.com and www.foxsports.com in a log file
called squid-sports.log (if the Squid format is enabled).
Note
If Content Gateway is clustered and if you enable log file
collation, it is recommended that you use the same
log_hosts.config file on every node in the cluster.
You can use the log file collation feature to keep all logged information in one place.
This allows you to analyze Content Gateway as a whole rather than as individual
nodes and to use a large disk that might only be located on one of the nodes in a
cluster.
Content Gateway collates log files by using one or more nodes as log collation servers
and all remaining nodes as log collation clients. When a node generates a buffer of
event log entries, it determines whether it is the collation server or a collation client.
The collation server node simply writes all log buffers to its local disk, just as it would
if log collation were not enabled.
The collation client nodes prepare their log buffers for transfer across the network and
send the buffers to the log collation server. When the log collation server receives a
log buffer from a client, it writes it to its own log file as if it were generated locally.
If log clients cannot contact their log collation server, they write their log buffers to
their local disks, into orphan log files. Orphan log files require manual collation.
Log collation servers can be stand-alone or they can be part of a node running Content
Gateway.
Note
Log collation can have an impact on network performance.
Because all nodes are forwarding their log data buffers to
the single collation server, a bottleneck might occur in the
network, where the amount of data being sent to a single
node in the network exceeds the node’s ability to process it
quickly.
Note
Collated log files contain time-stamp information for each
entry, but entries do not appear in the files in strict
chronological order. You can sort collated log files before
doing analysis.
Note
All collation clients must use this same secret.
5. Click Apply.
Important
If you modify the collation port or secret after connections
between the collation server and collation clients have
been established, you must restart Content Gateway.
Note
To send custom XML-based formatted log entries to the
collation server, you must add a log object specification to
the logs_xml.config file. See Custom format, page 240.
3. In the To Collation Server field, enter the hostname of the collation server. This
could be the Content Gateway collation server or a stand-alone collation server.
4. In the Log Collation Port field, enter the port number used for communication
with the collation server. The default port number is 8085.
5. In the Log Collation Secret field, enter the password used to validate logging
data and prevent the exchange of arbitrary information. This must be the same
secret you set on the collation server.
6. Enable the Log Collation Host Tagged option if you want to preserve the origin
of log entries in the collated log files.
7. In the Log Collation Orphan Space field, enter the maximum amount of space
(in megabytes) you want to allocate to the logging directory on the collation client
for storing orphan log files. (Orphan log files are created when the log collation
server cannot be contacted). The default value is 25 MB.
8. Click Apply.
Important
If you modify the collation port or secret after connections
between the collation clients and collation server have
been established, you must restart Content Gateway.
If you do not want the log collation server to be a Content Gateway node, you can
install and configure a stand-alone collator (SAC) which can dedicate more of its
power to collecting, processing, and writing log files.
Note
The stand-alone collator is currently available for the
Linux platform only.
1. Configure your Content Gateway nodes as log collation clients. See Configuring
Content Gateway to be a collation client, page 252.
2. Copy the sac binary from the Content Gateway bin directory (/opt/WCG/bin) to
the machine serving as the stand-alone collator.
3. Create a directory called config in the directory that contains the sac binary.
4. Create a directory called internal in the config directory you created in Step 3.
This directory will be used internally by the stand-alone collator to store lock
files.
5. Copy the records.config file (/opt/WCG/config) from a Content Gateway node
configured to be a log collation client to the config directory you created in Step 3
on the stand-alone collator.
The records.config file contains the log collation secret and port you specified
when configuring nodes to be collation clients. The collation port and secret must
be the same for all collation clients and servers.
6. Open the records.config file on the stand-alone collator and edit the
proxy.config.log2.logfile_dir variable to specify the directory where you want to
store log files.
■ You can specify an absolute path to the directory or a path relative to the
directory from which the sac binary is executed.
■ The directory must already exist on the machine serving as the stand-alone
collator.
7. Save and close the file.
8. Enter the following command:
sac -c config
Content Gateway generates statistics about the logging system that help you see the
following information:
Related topics:
● Squid format, page 256
● Netscape examples, page 257
You can view the system, event, and error log files that Content Gateway creates from
the Content Gateway manager. You can view an entire log file, a specified last number
of lines in the log file, or all lines that contain a specified string.
You can also delete a log file or copy it to your local system.
Note
You must have the correct user permissions to copy and
delete log files.
Note
Content Gateway displays only the first 1 MB of data in
the log file. If the log file you select is larger than 1 MB,
Content Gateway truncates the file and displays a warning
message indicating that the file is too big.
You can now access log files through the Content Gateway manager.
1. Navigate to the Configure > My Proxy > Logs > System tab.
2. To view, copy, or delete a system log file, go to Step 3.
To view, copy, or delete an event or error log file, select the Access tab.
3. In the Log File drop-down list, select the log file you want to view, copy, or
delete.
Content Gateway lists the system log files logged with the system-wide logging
facility syslog under the daemon facility.
Content Gateway lists the event log files located in the directory specified in the
Logging Directory field in the Configure > Subsystems > Logging > General
tab or by the configuration variable proxy.config.log2.logfile_dir in the
records.config file. The default directory is logs in the Content Gateway
installation directory.
4. In the Action area, select one of the following options:
■ Display the selected log file to view the entire log file. If the file is larger than
1 MB, only the first MB of data is displayed.
■ Display last lines of the selected file to view the last lines of the log file.
Enter the number of lines you want to view in the field provided.
■ Display lines that match in the selected log file to view all the lines in the
log file that match a particular string. Enter the string in the field provided.
■ Remove the selected log file to delete the selected log file from the Content
Gateway system.
■ Save the selected log file in local filesystem to save a copy of the selected
log file on your local system.
5. Click Apply.
If you selected to view the log file, Content Gateway displays the file at the end of
the page.
If you selected to delete the log file, Content Gateway deletes the file. You are not
prompted to confirm the deletion.
If you selected to save the log file, you are prompted for the location where you
want to save the file on your local system.
This section shows examples of a log file entry in each of the standard log formats
supported by Content Gateway:
● Squid format, page 256
● Netscape examples, page 257
● Netscape Extended format, page 257
● Netscape Extended-2 format, page 257
Squid format
Help | Content Gateway | v8.5.x
The following figure shows a sample log entry in a squid.log file. The table below
describes each field.
1 2 5 6 7
3 4
987548934.123 19 209.131.54.138 TCP_HIT/200 4771 GET http://europe.cnn.com/
EUROPE/potd/2001/04/17/tz.pullitzer.ap.jpg - NONE/- image/jpeg
7 cont’d 8 9 10
Field Description
1 The client request time stamp in Squid format; the time of the client
request in seconds since January 1, 1970 UTC (with millisecond
resolution).
2 The time the proxy spent processing the client request; the number of
milliseconds between the time that the client established the connection
with the proxy and the time that the proxy sent the last byte of the
response back to the client.
3 The IP address of the client’s host machine.
4 The cache result code; how the cache responded to the request: HIT,
MISS, and so on. Cache result codes are described in Cache result codes
in Squid- and Netscape-format log files, page 259.
The proxy response status code (the HTTP response status code from
Content Gateway to client).
5 The length of the Content Gateway response to the client in bytes,
including headers and content.
6 The client request method: GET, POST, and so on.
7 The client request canonical URL; blanks and other characters that might
not be parsed by log analysis tools are replaced by escape sequences. The
escape sequence is a percentage sign followed by the ASCII code number
of the replaced character in hex.
8 The authenticated client’s user name. A hyphen (-) means that no
authentication was required.
9 The proxy hierarchy route; the route Content Gateway used to retrieve the
object. The proxy request server name; the name of the server that
fulfilled the request. If the request was a cache hit, this field contains a
hyphen (-).
10 The proxy response content type; the object content type taken from the
Content Gateway response header.
Netscape examples
Help | Content Gateway | v8.5.x
1 2 3 4 5
209.131.54.138 - - [17/Apr/2001:16:20:28 -0700] "GET http://europe.cnn.com/
EUROPE/potd/2001/04/17/tz.pullitzer.ap.jpg HTTP/1.0" 200 4473
5 cont’d 6 7
1 2 3 4 5
209.131.54.138 - - [17/Apr/2001:16:20:28 -0700] "GET http://europe.cnn.com/EUROPE/potd/2001/
04/17/tz.pullitzer.ap.jpg HTTP/1.0" 200 4473 000 0 0 0 458 297 0 0 0
5 cont’d 6 7 8 9 10 11 12 13 14 15 16
1 2 3 4 5
209.131.54.138 - - [17/Apr/2001:16:20:28 -0700] "GET http://europe.cnn.com/EUROPE/potd/2001/04/
17/tz.pullitzer.ap.jpg HTTP/1.0" 200 4473 000 0 0 0 458 297 0 0 0 NONE FIN FIN TCP_MEM_HIT
5 cont’d 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
Field Description
Netscape Common
1 The IP address of the client’s host machine.
2 This hyphen (-) is always present in Netscape log entries.
3 The authenticated client user name. A hyphen (-) means no
authentication was required.
4 The date and time of the client’s request, enclosed in brackets.
Field Description
5 The request line, enclosed in quotes.
6 The proxy response status code (HTTP reply code).
7 The length of the Content Gateway response to the client in bytes.
Netscape Extended
8 The origin server’s response status code.
9 The server response transfer length; the body length in the origin
server’s response to the proxy, in bytes.
10 The client request transfer length; the body length in the client’s request
to the proxy, in bytes.
11 The proxy request transfer length; the body length in the proxy request
to the origin server.
12 The client request header length; the header length in the client’s request
to the proxy.
13 The proxy response header length; the header length in the proxy
response to the client.
14 The proxy request header length; the header length in the proxy request
to the origin server.
15 The server response header length; the header length in the origin
server’s response to the proxy.
16 The time Content Gateway spent processing the client request; the
number of seconds between the time that the client established the
connection with the proxy and the time that the proxy sent the last byte
of the response back to the client.
Netscape Extended-2
17 The proxy hierarchy route; the route Content Gateway used to retrieve
the object.
18 The client finish status code: FIN if the client request completed
successfully or INTR if the client request was interrupted.
19 The proxy finish status code: FIN if the Content Gateway request to the
origin server completed successfully or INTR if the request was
interrupted.
20 The cache result code; how the Content Gateway cache responded to the
request: HIT, MISS, and so on. Cache result codes are described in
Cache result codes in Squid- and Netscape-format log files, page 259.
This section describes the following statistics accessed on the Content Gateway
manager Monitor tab:
● My Proxy, page 261
● Protocols, page 267
● Security, page 270
● Subsystems, page 275
● Networking, page 277
● Performance, page 282
● SSL, page 284
My Proxy
Statistic/Field Description
Subscription Details
Feature Lists available features, such as analytic options, threat
detection, and the file sandbox.
Purchased Status Indicates if a feature has been purchased.
Expiration Date If a feature has been purchased, displays the expiration
date of the subscription.
More Detail
Subscription key Displays the subscription key. See Entering your
subscription key, page 15.
Last successful Displays the time of the last successful validation of the
subscription download subscription key. The check is made once a day.
time
Connection status Displays the Content Gateway connection status to
Policy Server, Policy Broker, and Filtering Service.
Registration status Displays the Content Gateway registration status with the
Forensics Repository.
Scanning Data Files
Engine Name Displays the name of each scanning engine.
Engine Version Displays the version number of the scanning engine.
Data File Version Displays the version number of the data file currently in
use by the scanning engine.
Last update Displays the time and date when Content Gateway last
successfully loaded that analytics data files, settings, and
policies.
Last time Content Displays the time and date when Content Gateway last
Gateway loaded data successfully loaded databases, settings, and policies.
Last time Content Displays the time and date when Content Gateway last
Gateway checked for successfully communicated with the download server to
updates check for data file updates.
Node Details
Node Name of the Content Gateway node or cluster.
On/Off Indicates if the proxy and manager services are running.
Objects Served The total number of objects served by the node.
Ops/Sec The number of operations per second processed by the
node.
Hit Rate The percentage of HTTP requests served from the cache,
averaged over the past 10 seconds.
Node
Help | Content Gateway | v8.5.x
Browser limitations require configuring a specific port in order for these graphs to
display properly. The Node and Graphs options are disabled until a port is specified in
records.config (in /opt/WCG/config, by default).
1. Update this variable to enable the Node and Graphs pages:
proxy.config.admin.overseer_port INT ##
where ## is a valid port number.
2. Restart Content Gateway.
If the node is part of a cluster, two sets of statistics are shown:
● Information about the single node and
Statistic Description
Node Summary
Status Indicates if Content Gateway is running on this
node (active or inactive).
Up Since Date and time Content Gateway was started.
Clustering Indicates if clustering is on or off on this node.
Cache
Document Hit Rate Ratio of cache hits to total cache requests,
averaged over 10 seconds. This value is refreshed
every 10 seconds.
Bandwidth Savings Ratio of bytes served from the cache to total
requested bytes, averaged over 10 seconds. This
value is refreshed every 10 seconds.
Cache Percent Free Ratio of cache free space to total cache space.
In Progress
Open Server Connections Number of currently open origin server
connections.
Open Client Connections Number of currently open client connections.
Cache Transfers in Progress Number of cache transfers (cache reads and
writes) in progress.
Network
Client Throughput (Mbit/Sec) Number of megabits per second passing through
the node (and cluster).
Transactions per Second Number of HTTP transactions per second.
Name Resolution
Host Database Hit Rate Ratio of host database hits to total host database
lookups, averaged over 10 seconds. This value is
refreshed every 10 seconds.
DNS Lookups per Second Number of DNS lookups per second.
Graphs
Help | Content Gateway | v8.5.x
Browser limitations require configuring a specific port in order for these graphs to
display properly. The Node and Graphs options are disabled until a port is specified in
records.config (in /opt/WCG/config, by default).
Important
The graph is displayed in your browser using a Java applet.
You should have the latest version of Java installed on
your PC (at least version 1.7). To validate your access to
Content Gateway statistics, you will be prompted for
Content Gateway logon credentials.
Alarms
Help | Content Gateway | v8.5.x
Content Gateway signals an alarm when it detects a problem (for example, if the space
allocated to event logs is full or if Content Gateway cannot write to a configuration
file) and displays a description of the alarm in the alarm message window. In addition,
the Alarm! [pending] bar at the top of the Content Gateway manager display
indicates when alarms are detected and how many alarms exist.
After you have read an alarm message, click Clear in the alarm message window to
dismiss the alarm. Clicking Clear only dismisses alarm messages; it does not actually
resolve the cause of the alarms.
For information about working with alarms, see Working with alarms, page 112.
Diagnostics
Help | Content Gateway | v8.5.x
Use the tools provided to help diagnose communication or connection issues, trace
network packets, or capture network packets.
● Automatic diagnostic tests, page 265
● Manual diagnostic tests, page 266
Important
TCPDump uses a lot of system resources. Try to avoid
using it during peak hours when the system is busy.
As each command executes, the Run button becomes a Stop button. Click Stop to
abort the command.
Protocols
HTTP
Help | Content Gateway | v8.5.x
Statistic Description
General
Client
Total Document Bytes Total amount of HTTP data served to clients since
installation.
Total Header Bytes Total amount of HTTP header data served to clients
since installation.
Total Connections Total number of HTTP client connections since
installation.
Current Connections Current number of HTTP client connections
Transactions in Progress Total number of HTTP client transactions in progress.
FTP
Help | Content Gateway | v8.5.x
Statistic Description
Client
Open Connections Number of client connections currently open.
Bytes Read Number of client request bytes read since installation.
Bytes Written Number of client request bytes written since installation.
Server
Open Connections Number of FTP server connections currently open.
Security
Note
Even when multiple authentication rules are used, Content
Gateway reports authentication statistics discreetly for
each authentication method (IWA, LDAP, Legacy NTLM).
Statistic Description
Diagnostic Test
This function runs diagnostic tests on the Kerberos
connection to the selected domain. Results are
displayed on screen and written to /opt/WCG/logs/
content_gateway.out and /opt/WCG/logs/
smbadmin.log.
Domain drop down box Select a joined domain. Unless Rule-Based
Authentication is configured, there will only be 1
joined domain.
Run Test button Click to initiate a test.
Active Directory Joined Domains list
Lists all joined AD domains.
The Content Gateway Hostname DNS is the name
that clients must specify in their browser proxy
settings for Kerberos authentication to occur.
LDAP
Help | Content Gateway | v8.5.x
Statistic Description
Cache
Hits Number of hits in the LDAP cache.
Misses Number of misses in the LDAP cache.
Errors
Server Number of LDAP server errors.
Successful Authentications
Authentication Succeeded Number of times authentication was successful.
Legacy NTLM
Help | Content Gateway | v8.5.x
Statistic Description
Cache
Hits Number of hits in the NTLM cache.
Misses Number of misses in the NTLM cache.
Errors
Server Number of NTLM server errors.
Successful Authentications
Authentication Number of times authentication was successful.
Succeeded
Unsuccessful Authentications
Authentication Denied Number of times the NTLM server denied
authentication.
Authentication Number of times authentication was cancelled.
Cancelled
Authentication Rejected Number of times authentication failed because the
queue was full.
Queue Size
Authentication Queued Number of requests that are currently queued because
all of the domain controllers are busy.
Statistic Description
On-Appliance SOCKS Indicates whether the on-appliance SOCKS server is
Server on (enabled) or off (disabled).
(when Content Gateway is
on an appliance)
Unsuccessful Connections Number of unsuccessful connections to the SOCKS
server since Content Gateway was started.
Successful Connections Number of successful connections to the SOCKS
server since Content Gateway was started.
Connections in Progress Number of connections to the SOCKS server
currently in progress.
Web DLP
Help | Content Gateway | v8.5.x
Statistic Description
Total Posts Total number of posts sent to Web DLP.
Total Analyzed Total number of posts analyzed by Web DLP.
FTP Analyzed Total number of FTP requests analyzed by DLP.
Blocked Requests Total number of requests blocked after analysis and
policy enforcement.
Allowed Requests Total number of requests allowed after analysis and
policy enforcement.
Failed Requests Total number of posts sent to Web DLP that timed
out or otherwise failed to complete.
Huge Requests Total number of requests that exceeded the maximum
transaction size.
Tiny Requests Total number of requests that were smaller than the
minimum transaction size.
Decrypted Requests Total number of SSL requests decrypted and sent to
Web DLP.
Total Bytes Scanned Total number of bytes scanned by Web DLP.
Average Response Time Average time needed to by Web DLP to complete a
scan since the last time Content Gateway was started.
Cache
Help | Content Gateway | v8.5.x
Note
Cache statistics may be non-zero even if all content sent to
Content Gateway is not cacheable. Content Gateway
performs a cache-read even if the client sends a no-cache
control header.
Statistic Description
General
Bytes Used Number of bytes currently used by the cache.
Cache Size Number of bytes allocated to the cache.
Ram Cache
Bytes Total size of the RAM cache, in bytes.
Hits Number of document hits from the RAM cache.
Misses Number of document misses from the RAM cache. The documents
may be hits from the cache disk.
Reads
In Progress Number of cache reads in progress (HTTP and FTP).
Hits Number of cache reads completed since Content Gateway was
started (HTTP and FTP).
Misses Number of cache read misses since Content Gateway was started
(HTTP and FTP).
Writes
In Progress Number of cache writes in progress (HTTP and FTP).
Successes Number of successful cache writes since Content Gateway was
started (HTTP and FTP).
Clustering
Help | Content Gateway | v8.5.x
Statistic Description
Clustering Nodes Number of clustering nodes.
Logging
Help | Content Gateway | v8.5.x
Statistic Description
Currently Open Log Files Number of event log files (formats) that are currently
being written.
Space Used for Log Files Current amount of space being used by the logging
directory, which contains all of the event and error
logs.
Number of Access Events Number of access events that have been written to log
Logged files since Content Gateway installation. This counter
represents one entry in one file. If multiple formats
are being written, a single access creates multiple
event log entries.
Networking
System
Help | Content Gateway | v8.5.x
Statistic/Field Description
General
Hostname The hostname assigned to this Content Gateway machine.
Search Domain Search domain that this Content Gateway machine uses.
IPv4 or IPv6
Default Gateway IP address of the default gateway used to forward packets from
this Content Gateway machine to other networks or subnets.
Primary DNS IP address of the primary DNS server that this Content
Gateway machine uses to resolve host names.
Secondary DNS Secondary DNS server that this Content Gateway machine uses
to resolve host names.
Tertiary DNS Third DNS server that this Content Gateway machine uses to
resolve host names.
NIC <interface_name>
Status Indicates whether the NIC is up or down.
Start on Boot Indicates whether the NIC is configured to start on boot.
IPv4 or IPv6
ARM
Help | Content Gateway | v8.5.x
Statistic Description
Network Address Translation (NAT) Statistics
Client Connections Number of client connections redirected transparently by
Natted the ARM.
Client Connections in Number of client connections currently in progress with
Progress the ARM.
Total Packets Natted Number of packets translated by the ARM.
DNS Packets Natted Number of DNS packets translated by the ARM.
Bypass Statistics
Total Packets Total number of packets bypassed by the ARM.
Bypassed
Packets Dynamically Total number of packets dynamically bypassed. See
Bypassed Dynamic bypass rules, page 72.
DNS Packets Number of DNS packets bypassed by the ARM.
Bypassed
Packets Shed Total number of packets shed.
HTTP Bypass Statistics
Bypass on Bad Client Number of requests forwarded directly to the origin server
Request because Content Gateway encountered non-HTTP traffic
on port 80.
Bypass on 400 Number of requests forwarded directly to the origin server
because an origin server returned a 400 error.
Bypass on 401 Number of requests forwarded directly to the origin server
because an origin server returned a 401 error.
Bypass on 403 Number of requests forwarded directly to the origin server
because an origin server returned a 403 error.
Bypass on 405 Number of requests forwarded directly to the origin server
because an origin server returned a 405 error.
Bypass on 406 Number of requests forwarded directly to the origin server
because an origin server returned a 406 error.
ICAP
Help | Content Gateway | v8.5.x
Statistic Description
Total Posts Total number of posts sent to Forcepoint DLP.
Total Analyzed Total number of posts analyzed by Forcepoint DLP.
FTP Analyzed Total number of FTP requests analyzed by
Forcepoint DLP.
Blocked Requests Total number of requests blocked after analysis and
policy enforcement.
Allowed Requests Total number of requests allowed after analysis and
policy enforcement.
Failed Requests Total number of posts sent to Forcepoint DLP that
timed out or otherwise failed to complete.
Huge Requests Total number of requests that exceeded the maximum
transaction size.
Decrypted Requests Total number of SSL requests decrypted and sent to
Forcepoint DLP.
WCCP
Help | Content Gateway | v8.5.x
Statistic/Field Description
WCCP v2.0 Statistics
WCCP Fragmentation
Total Fragments Total number of WCCP fragments.
Fragmentation Table Entries Number of entries in the fragmentation table.
Out of Order Fragments Number of fragments out of order.
Matches Number of fragments that match a fragment in the
fragmentation table.
DNS Proxy
Help | Content Gateway | v8.5.x
Statistic Description
Total Requests Total number of DNS requests received from clients.
Hits Number of DNS cache hits.
Misses Number of DNS cache misses.
Statistic Description
DNS Resolver
Total Lookups Total number of DNS lookups (queries to name
servers) since installation.
Successes Total number of successful DNS lookups since
installation.
Average Lookup Time (ms) Average DNS lookup time.
Host Database
Total Lookups Total number of lookups in the Content Gateway
host database since installation.
Total Hits Total number of host database lookup hits since
installation.
Average TTL (min) Average time to live in minutes.
Virtual IP
Help | Content Gateway | v8.5.x
The Virtual IP table displays the virtual IP addresses that are managed by the proxies
in the cluster.
Statistic Description
Clients Connections
Current Unique Clients
Connected
Total Unique Clients that Total since Content Gateway last started.
have Connected
Total Clients that have Total clients that exceeded the connection limits
Exceeded the Limits since Content Gateway last started. See Configure >
Connection Management > Client Connection
Control.
Total Clients for which Total since Content Gateway last started.
Connections were Closed
Performance graphs allow you to monitor Content Gateway performance and analyze
network traffic. Performance graphs also provide information about virtual memory
usage, client connections, document hit rates, hit and miss rates, and so on.
Performance graphs are created by the Multi Router Traffic Grapher tool (MRTG).
MRTG uses 5-minute intervals to accumulate statistics.
Performance graphs provide the following information.
Statistic Description
Overview Displays a subset of the graphs available.
Daily Displays graphs that provide historical information for the current
day.
Weekly Displays graphs that provide historical information for the current
week.
Monthly Displays graphs that provide historical information for the current
month.
Yearly Displays graphs that provide historical information for the current
year.
Important
To run the Multi Router Traffic Grapher tool in Linux, you
must have Perl version 5.005 or later installed on your
Content Gateway system.
A description is given adjacent to each graph. Click on a graph to get the daily,
weekly, monthly, and yearly on a single screen.
These graphs are available (sorted alphabetically):
■ Active Client Connections
■ Active Native FTP Client Connections
■ Active Origin Server Connections
■ Active Parent Proxy Connections
■ Analytic Response Latency
■ Bandwidth Savings
■ Cache Read
■ Cache Reads Per Second
■ Cache Writes
SSL
Statistic/Field Description
SSL Inbound Key Data
Is alive Online indicates that SSL support is enabled.
Current SSL connections The number of active inbound SSL requests (browser to
Content Gateway).
Total SSL server connections The number of browser requests.
Total finished SSL server The number of browser requests that resulted in
connections decryption.
CRL Statistics
Help | Content Gateway | v8.5.x
Statistic/Field Description
CRL Statistics
CRL list count The number of certificates on the Certificate Revocation
List. This list is downloaded every night. See Keeping
revocation information up to date, page 149.
OCSP Statistics
OCSP good count The number of responses that certificates are valid.
OCSP unknown count The number of OCSP responses where the certificate
cannot be verified.
OCSP revoked count The number of certificates found to have been revoked.
See Creating SSL certificate authorities reports, page 117, and Creating an SSL
incidents report, page 117, for information about creating reports on certificate
authorities or incidents.
Use the command line to execute individual commands and when scripting multiple
commands in a shell.
Run commands as ‘root’.
Execute Content Gateway commands from the Content Gateway bin directory.
Note
If the Content Gateway bin directory is not in your path,
prepend the command with:
./
For example:
./content_line -p
Command Description
WCGAdmin start Starts the Content Gateway service
WCGAdmin stop Stops the Content Gateway service
WCGAdmin restart Stops the Content Gateway service and then starts
it again
WCGAdmin status Displays the status (running or not running) of the
Content Gateway services: Content Cop, Content
Gateway, Content Gateway Manager, and
Analytics Server.
WCGAdmin help Displays a list of the WCGAdmin commands
content_line -h Displays the list of Content Gateway commands.
You can change the value of a specific configuration variable on the command line
with the content_line -s command. The variables that can be set are described in
records.config, page 413.
You can view statistics related to specific variables on the command line with the
content_line -r command. See below for a list of variables.
See, also, Viewing statistics from the command line, page 112, and Using the
command-line interface, page 17.
Statistics
Help | Content Gateway | v8.5.x
The following table lists the variables you can specify on the command line to view
individual statistics. See Statistics, page 261 for additional information.
To view a statistic, at the prompt enter:
content_line -r <variable>
Statistic Variable
Summary
Node name proxy.node.hostname
Node
Document hit rate proxy.node.cache_hit_ratio_avg_10s
proxy.cluster.cache_hit_ratio_avg_10s
Bandwidth savings proxy.node.bandwidth_hit_ratio_avg_10s
proxy.cluster.bandwidth_hit_ratio_avg_10s
Cache percent free proxy.node.cache.percent_free
proxy.cluster.cache.percent_free
Open origin server proxy.node.current_server_connections
connections proxy.cluster.current_server_connections
FTP
Currently open FTP proxy.process.ftp.connections_currently_open
connections
Successful PASV proxy.process.ftp.connections_successful_
connections pasv
Cache
Bytes used proxy.process.cache.bytes_used
Host DB
Total lookups proxy.process.hostdb.total_lookups
DNS
DNS total lookups proxy.process.dns.total_dns_lookups
Cluster
Bytes read proxy.process.cluster.read_bytes
SOCKS
Unsuccessful proxy.process.socks.connections_unsuccessful
connections
Successful connections proxy.process.socks.connections_successful
Options are grouped as follows on the left side of the Configure pane:
My Proxy, page 293
Protocols, page 306
Content Routing, page 320
Security, page 325
Subsystems, page 348
Networking, page 354
My Proxy
Policy Server
IP address The IP address of the Policy Server. This value is
specified when Content Gateway is installed.
Port The port used by Policy Server. The default port is
55806.
Filtering Service
IP address Specify the IP address of the Filtering Service. This
value is specified when Content Gateway is installed.
Port Specify the port used by Filtering Service. The
default port is 15868.
Communication Specifies the timeout, in milliseconds, in which
Timeout Policy Server and Filtering Service must respond
before a communication timeout condition occurs and
the Action for Communication Errors setting is
applied.
The default value is 5000 ms (5 seconds).
Action for
Communication Errors
Permit traffic Permits all traffic if communication with Policy
Server or Filtering Service fails.
Block traffic Blocks all traffic if communication with Policy
Server or Filtering Service fails.
UI Setup
Help | Content Gateway | v8.5.x
Snapshots
Help | Content Gateway | v8.5.x
FTP Server Specifies the name of the FTP server from which
you want to restore a configuration snapshot or to
which you want to save a configuration snapshot.
Login Specifies the login needed to access the FTP
server.
Password Specifies the password needed to access the FTP
server.
Remote Directory Specifies the directory on the FTP server from
which you want restore, or in which you want to
save a configuration snapshot.
Restore Snapshot Lists the configuration snapshots on the FTP
server that you can restore.
This field appears after you have logged on to the
FTP server successfully.
Save Snapshot to FTP Server Specifies the name of the configuration snapshot
you want to take and save on the FTP server.
This field appears after you have logged on to the
FTP server successfully.
Log File Lists the system log files you can view, delete or
copy to your local system. Content Gateway lists
the system log files logged with the system-wide
logging facility syslog under the daemon facility.
Action: Display the selected When this option is enabled, Content Gateway
log file displays the first MB of the system log file selected
in the Log File drop-down list.
To view the entire file, select “Save the selected
log file in local filesystem” and view the file with
a local viewer.
Action: Display last lines of When this option is enabled, Content Gateway
the selected file displays the last specified number of lines in the
selected system log file.
Action: Display lines that When this option is enabled, Content Gateway
match in the selected log file displays all the lines in the selected system log file
that match the specified string.
Action: Remove the selected When this option is enabled, Content Gateway
log file deletes the selected log file.
Action: Save the selected log When this option is enabled, Content Gateway
file in local filesystem saves the selected log file on the local system in a
location you specify.
Log File Lists the event or error log files you can view,
delete, or copy to your local system. Content
Gateway lists the event log files located in the
directory specified in the Logging Directory field
under Subsystems/Logging and by the
configuration variable
proxy.config.log2.logfile_dir in the
records.config file. The default directory is logs in
the Content Gateway installation directory.
Action: Display the selected When this option is enabled, Content Gateway
log file displays the first MB of the event or error log file
selected in the Log File drop-down list.
To view the entire file, select “Save the selected
log file in local filesystem” and view the file with
a local viewer.
Protocols
The Protocol configuration options are divided into the following categories:
HTTP, page 306
HTTP Responses, page 316
HTTP Scheduled Update, page 317
HTTPS, page 319
FTP, page 319
HTTP
Help | Content Gateway | v8.5.x
HTTP Proxy Server Port Specifies the port that Content Gateway uses when
acting as a Web proxy server for HTTP traffic or when
serving HTTP requests transparently. The default port
is 8080.
If you change this option, you must restart Content
Gateway.
Secondary HTTP Proxy For explicit proxy configurations only, specifies
Server Ports additional ports on which Content Gateway listens for
HTTP traffic.
Transparent proxy configurations always send all
HTTP traffic to port 8080.
Caching: HTTP Caching Enables or disables HTTP caching. When this option
is enabled, Content Gateway serves HTTP requests
from the cache. When this option is disabled, Content
Gateway acts as a proxy server and forwards all HTTP
requests directly to the origin server.
Note: HTTPS content is never cached.
Caching: FTP over HTTP Enables or disables FTP over HTTP caching. When
Caching this option is enabled, Content Gateway serves FTP
requests from HTTP clients from the cache. When this
option is disabled, Content Gateway acts as a proxy
server and forwards all FTP requests from HTTP
clients directly to the FTP server.
Insert Headers: Client-IP When enabled, Content Gateway inserts the Client-IP
header into outgoing requests to retain the client’s IP
address.
This option is mutually exclusive with the Remove
Headers: Client-IP option. When Insert Headers:
Client-IP is enabled the Remove Headers: Client-IP
option is automatically disabled.
Insert Headers: Client-IP and Remove Headers:
Client-IP can both be disabled.
Insert Headers: Via When enabled, Content Gateway inserts a Via header
into the outgoing request. The Via header informs the
destination server of proxies through which the
request was sent.
Insert Headers: When enabled, Content Gateway inserts an
X-Forwarded-For X-Forwarded-For header into the outgoing request.
The X-Forwarded-For value contains the originating
IP address.
If enabled, header information is sent only to a
configured parent proxy. To send header values for all
outbound requests, enable
proxy.config.http.insert_xff_to_external.
Remove Headers: When this option is enabled, Content Gateway
Client-IP removes the Client-IP header from outgoing requests
to protect the privacy of your users.
This option is mutually exclusive with the Insert
Headers: Client-IP option. When Remove Headers:
Client-IP is enabled the Insert Headers: Client-IP
option is automatically disabled.
Remove Headers: Client-IP and Insert Headers:
Client-IP can both be disabled.
Remove Headers: Cookie When this option is enabled, Content Gateway
removes the Cookie header from outgoing requests to
protect the privacy of your users. The Cookie header
often identifies the user that makes a request.
Custom Responses You can customize the responses Content Gateway sends
to clients. By default, the responses you can customize are
located in the Content Gateway config/body_factory/
default directory.
Select Enabled Language-Targeted Response to send
your custom responses to clients in the language specified
in the Accept-Language header.
Select Enabled in “default” Directory Only to send the
custom responses located in the default directory to clients.
Select Disabled to disable the custom responses. If Never
Suppressed or Intercepted Traffic Only is selected for the
Response Suppression Mode option, Content Gateway
sends the hard-coded default responses.
If you change this option, you must restart Content
Gateway.
Custom Response When enabled, Content Gateway sends a message to the
Logging error log each time custom responses are used or modified.
If you change this option, you must restart Content
Gateway.
Custom Response Specifies the directory where the custom responses are
Template Directory located. The default location is the Content Gateway
config/body_factory directory.
If you change this option, you must restart Content
Gateway.
HTTPS Proxy Server Port Specifies the port that Content Gateway uses when
acting as a Web proxy server for HTTPS traffic.
The default value is 8080.
See also, Configure > Protocols > HTTP >
General: HTTPS Ports.
Tunnel Unknown Enables and disables tunneling of HTTPS requests
Protocols when the SSL handshake results in an unknown
protocol error.
Tunneled connections are not decrypted or
inspected.
When Content Gateway is an explicit proxy, a URL
lookup is performed and policy is applied before
the SSL connection request is made with the server.
Therefore, tunneled transactions appear in the
Forcepoint Web Security transaction log.
When Content Gateway is a transparent proxy, if
there is an SNI a URL lookup is done on the
hostname in the SNI. Otherwise no URL lookup is
possible and tunneled transactions are not logged.
This is because an initial connection with the server
is required to get the Common Name from the SSL
certificate. It is used for the URL lookup. If the
connection handshake fails and this option is
enabled, the connection is tunneled without the
proxy being aware of it.
Important: This setting persists after the HTTPS
feature is disabled (on Configure > My Proxy >
Basic > General). Therefore, disable this option
before disabling HTTPS support.
FTP
Help | Content Gateway | v8.5.x
Note
The FTP configuration options appear on the Configure
pane only if you have enabled FTP processing in the
Features table on the Configure > My Proxy > Basic >
General tab.
FTP Proxy Server Port Specifies the port that Content Gateway uses to accept
FTP requests. The default port is 2121.
Listening Port Specifies how FTP opens a listening port for a data
Configuration transfer.
Select Default Settings to let the operating system choose
an available port. Content Gateway sends 0 and retrieves
the new port number if the listen succeeds.
Select Specify Range if you want the listening port to be
determined by the range of ports specified in the
Listening Port (Max) and Listening Port (Min) fields.
Default Data Specifies the default method used to set up data
Connection Method connections with the FTP server.
Select Proxy Sends PASV to send a PASV to the FTP
server and let the FTP server open a listening port.
Select Proxy Sends PORT to set up a listening port on
the Content Gateway side of the connection first.
Shared Server When enabled, server control connections can be shared
Connections between multiple anonymous FTP clients.
Keep-Alive Timeout: Specifies the timeout value when the FTP server control
Server Control connection is not used by any FTP clients. The default
value is 90 seconds.
Inactivity Timeouts: Specifies how long FTP client control connections can
Client Control remain idle. The default value is 900 seconds.
Inactivity Timeouts: Specifies how long the FTP server control connection can
Server Control remain idle. The default value is 120 seconds.
Active Timeouts: Specifies the how long FTP client control connections can
Client Control remain open. The default value is 14400 seconds.
Active Timeouts: Specifies how long the FTP server control connection can
Server Control remain open. The default value is 14400 seconds.
Content Routing
The Content Routing configuration options are divided into the following categories:
Hierarchies, page 321
Mapping and Redirection, page 323
Hierarchies
Help | Content Gateway | v8.5.x
Serve Mapped Hosts Select Required if you want the proxy to serve requests
Only only to origin servers listed in the mapping rules of the
remap.config file. If a request does not match a rule in
the remap.config file, the browser receives an error. This
option provides added security for your Content Gateway
system.
Retain Client Host When this option is enabled, Content Gateway retains the
Header client host header in a request (it does not include the
client host header in the mapping translation).
Redirect No-Host Specifies the alternate URL to which to direct incoming
Header to URL requests from older clients that do not provide a Host:
header.
It is recommended that you set this option to a page that
explains the situation to the user and advises a browser
upgrade or provides a link directly to the origin server,
bypassing the proxy. Alternatively, you can specify a
map rule that maps requests without Host: headers to a
particular server.
URL Remapping Rules Displays a table listing the mapping rules in the
remap.config file so that you can redirect HTTP requests
permanently or temporarily without the proxy having to
contact any origin servers.
Note: Mapping a URL to another URL in the same
domain requires that a “/” be specified in From Path
Prefix field. See the example following this table.
Browser Auto-Config
Help | Content Gateway | v8.5.x
WPAD Settings Lets you edit the wpad.dat file. See Using WPAD, page
42.
Security
The Security configuration options are divided into the following categories:
Connection Control, page 326
FIPS Security, page 327
Web DLP, page 328
Access Control, page 328
SOCKS, page 345
Option Description
Proxy Access
Access Control Displays the rules in the ip_allow.config file that control which
clients can access Content Gateway.
By default, all remote hosts are allowed to access the proxy.
Refresh Updates the table to display the most up-to-date rules in the
ip_allow.config file.
Edit File Opens the configuration file editor for to the ip_allow.config
file.
ip_allow.config Configuration File Editor
rule display box Lists the ip_allow.config file rules. Select a rule to edit it. The
buttons on the left of the box allow you to delete or move the
selected rule up or down in the list.
Add Adds a new rule to the rule display box at the top of the
configuration file editor page.
Set Updates the rule display box at the top of the configuration file
editor page.
IP Action Lists the type of rules you can add.
An ip_allow rule allows the clients listed in the Source IP field
to access the proxy.
An ip_deny rule denies the clients listed in the Source IP field
access to the proxy.
Source IP Specifies the IP address or range of IP addresses of the clients.
Apply Applies the configuration changes.
Close Exits the configuration file editor.
Click Apply before you click Close; otherwise, all
configuration changes will be lost.
Important
After FIPS is enabled, you must re-install any hotfixes
previously installed for the current version of Content
Gateway.
Warning
Once enabled, FIPS 140-2 mode cannot be disabled
without reinstalling Content Gateway. If Content Gateway
is on an appliance, the appliance must be reimaged.
Important
Due to a system limitation, FIPS 140-2 mode cannot be
used with NTLM user authentication (IWA fallback to
NTLM or Legacy NTLM).
Option Description
FIPS Enable/Disable By default, Content Gateway is installed in non-FIPS
radio buttons 140-2 mode.
To switch to FIPS 140-2 mode, select the Enabled
radio button, click Apply, and restart Content
Gateway.
Warning: Once enabled, FIPS 140-2 mode cannot be
disabled without reinstalling Content Gateway. For
appliance installations, reinstallation requires
reimaging the system.
Note
The Web DLP configuration options appear on the
Configure menu only if you have enabled Web DLP
(integrated on-box) on the Configure > My Proxy >
Basic > General tab and selected Integration > Web
DLP (integrated on-box) in the Features table.
Option Description
Forcepoint management Specifies the IP address of the Forcepoint management
server IP address server. Configure Web DLP policy in the Data
Security module of the Forcepoint Security Manager.
Analyze HTTPS Content Specifies whether decrypted traffic should be sent to
Forcepoint DLP for analysis, or sent directly to the
destination.
Analyze FTP Uploads Specifies whether to send FTP upload requests to
Forcepoint DLP for analysis. The FTP proxy feature
must be enabled. See FTP, page 319.
Option Description
Forcepoint management Specifies the IP address of the Forcepoint management
server IP server. This is where data security policy
configuration and management is performed.
Administrator user name Specifies the account name of a Forcepoint DLP
administrator. The administrator must have Deploy
Settings privileges.
Administrator password Specifies the password of the Forcepoint DLP
administrator.
Register button Initiate the registration action. This button is enabled
only after data is entered in all of the fields.
Access Control
Help | Content Gateway | v8.5.x
Configure > Security > Access Control > Global Configuration Options
Use this page to specify global options for:
● The fail open/fail closed action to take when user authentication fails
● Credential caching
● For transparent proxy, an alternate hostname for the proxy that all clients on the
network can resolve. Required.
● Cookie sharing
Note
The user interface setting to disable the NTLM cache for
explicit proxy has been removed. Although not
recommended, the cache can be disabled for explicit proxy
traffic in records.config by setting the value of
proxy.config.ntlm.cache.enabled to 0 (zero).
LDAP
LDAP Server: Hostname Specifies the hostname of the LDAP server.
If you change this option, you must restart Content
Gateway.
Radius
Primary Radius Server: Specifies the hostname or IP address of the primary
Hostname RADIUS authentication server.
If you change this option, you must restart Content
Gateway.
NTLM
Important
You must configure the Domains list before you configure
authentication rules.
If you have never configured rule-based authentication,
see Rule-Based Authentication, page 203, for complete
information.
Domains
Domain List An unordered list of domains that have been identified
for use in authentication rules.
Use the Edit button to change some attributes
associated with the domain.
Use the Delete or Unjoin button to remove a domain
from the list.
The domain list is stored in auth_domains.config.
Domain list: New Use the New Domain button to add a domain to the
Domain button Domains list. The screen is expanded to allow for
specification of the domain.
New Domain action
Domain Details: Domain Specify a unique name for the domain. The name is
Identifier used only by Content Gateway; it does not change any
attribute of the actual domain or directory.
Important: You cannot change the domain identifier
after it has been added to the list. To change the name,
delete the entry from the list and re-add it with the new
name.
Domain Details: Specify the authentication method: IWA, Legacy
Authentication Method NTLM, or LDAP. Radius is not supported.
When you select an authentication method,
configuration options specific to that method are
added to the page.
Important: You cannot change the authentication
method after you add the domain to the list. To change
the authentication method, delete the entry from the
list and re-add the domain specifying the new
authentication method.
Domain Details: Aliasing Specify an alias to send to the filtering service for all
users who match this rule (optional). The alias must be
static. It can be empty (blank). The alias must exist in
the primary domain controller (the DC visible to the
filtering service). See Unknown users and the ‘alias’
option, page 208.
IWA Domain Details These options are presented when IWA is specified as
the authentication method.
Important
If you have never configured rule-based authentication,
see Rule-Based Authentication, page 203, for complete
information.
Authentication Rules
Authentication Rule List Displays a table of the ordered list of rules defined for
user authentication. Rules are defined for sets of
clients to be authenticated against one or more IWA,
LDAP and NTLM domains. See Rule-Based
Authentication, page 203.
Refresh Updates the table to display the current rules in the
auth_rules.config file.
Edit File Opens the authentication rule editor.
Warning: Do not edit rules directly in the
configuration file.
SOCKS
Help | Content Gateway | v8.5.x
For more information about Content Gateway support for SOCKS, see Configuring
SOCKS firewall integration, page 173.
Note
The SOCKS configuration options appear on the
Configure pane only if you have enabled SOCKS in the
Features table on the Configure > My Proxy > Basic >
General tab.
Subsystems
The Subsystems configuration options are divided into the following categories:
Cache, page 348
Logging, page 350
Networking, page 354
Cache
Help | Content Gateway | v8.5.x
Allow Pinning Enables or disables the cache pinning option, which lets
you keep objects in the cache for a specified time. Set
cache pinning rules in the cache.config file.
Ram Cache Size Specifies the size of the RAM cache, in bytes. The default
size is 104857600 (100 MB).
A value of “-1” directs Content Gateway to automatically
size the RAM cache to approximately 1 MB per 1 GB of
disk cache.
If you change this option, you must restart Content
Gateway.
Maximum Object Size Specifies the maximum size allowed for objects in the
cache.
A value of 0 (zero) means that there is no size restriction.
Cache Hosting Displays a table listing the rules in the hosting.config file
that controls which cache partitions are assigned to
specific origin servers and domains.
Refresh Updates the table to display the most up-to-date rules in
the hosting.config file.
Edit File Opens the configuration file editor for the hosting.config
file.
The configuration file editor page is described below.
hosting.config Configuration File Editor
rule display box Lists the hosting.config file rules. Select a rule to edit it.
The buttons on the left of the box allow you to delete or
move the selected rule up or down in the list.
Add Adds a new rule to the rule display box at the top of the
configuration file editor page.
Set Updates the rule display box at the top of the
configuration file editor page.
Primary Destination Specifies the primary destination rule type:
Type Select domain if you want to partition the cache
according to domain.
Select hostname if you want to partition the cache
according to hostname
Primary Destination Specifies the domain or origin server’s hostname whose
Value content you want to store on a particular partition.
Partitions Specifies a comma-separated list of the partitions on
which you want to store the content that belongs to the
origin server or domain specified.
Apply Applies the configuration changes.
Close Exits the configuration file editor.
Click Apply before you click Close; otherwise, all
configuration changes will be lost.
Collation Mode Specifies the log collation mode for this Content
Gateway node. You can use the log file collation feature
to keep all logged information in one place. For more
information about log file collation, see Collating event
log files, page 250.
Select Collation Disabled to disable log collation on
this Content Gateway node.
Select Be a Collation Server to configure this Content
Gateway node to be the collation server.
Select Be a Collation Client to configure this Content
Gateway server to be a collation client. A Content
Gateway server configured as a collation client sends
only the active standard log files, such as Squid,
Netscape Common, and so on, to the collation server. If
you select this option, enter the hostname of the
collation server for your cluster in the Log Collation
Server field.
Note: When logs are collated, the source of the log
entry—its node of origin—is lost unless you turn on the
Log collation host tagged option (described below).
Log collation consumes cluster bandwidth in sending
all log entries to a single node. It can therefore affect the
performance of the cluster.
If you want Content Gateway as a collation client to
send custom (XML-based) log files, you must specify a
LogObject in the logs_xml.config file.
Log Collation Server Specifies the hostname of the log collation server to
which you want to send log files.
Log Collation Port Specifies the port used for communication between the
collation server and client. You must specify a port
number in all cases, except when log collation is
inactive. The default port number is 8085.
Note: Do not change the port number unless there is a
conflict with another service already using the port.
Log Collation Secret Specifies the password for the log collation server and
the other nodes in the cluster. This password is used to
validate logging data and prevent the exchange of
arbitrary information.
Log Collation Host When this option is enabled, Content Gateway adds the
Tagged hostname of the node that generated the log entry to end
of the entry in the collated log file.
Log Collation Orphan Specifies the maximum amount of space (in megabytes)
Space allocated to the logging directory for storing orphan log
files on the Content Gateway node. Content Gateway
creates orphan log entries when it cannot contact the log
collation server.
Networking
The Networking configuration options are divided into the following categories:
Connection Management, page 354
ARM, page 356
WCCP, page 363
DNS Proxy, page 367
DNS Resolver, page 368
ICAP, page 372
Virtual IP, page 373
Health Check URLs, page 374
Connection Management
Help | Content Gateway | v8.5.x
The options on the Connection Management pages allow you to tune several
important properties of proxy behavior, including connection throttling and load
shedding, and individual client connection limits and rates.
By default, Content Gateway accepts 60,000 connections. A connection throttle event
occurs when client or origin server connections reach 90% of half the configured limit
(27,000 by default). When a connection throttle event occurs, Content Gateway
continues processing all existing connections and queues new client connection
requests until the connection count falls below the limit.
If you think that Content Gateway is hitting the connection limits, you should monitor
the Performance graphs to get an accurate reading of connection activity. In particular,
check the Active Client Connections and TCP ESTABLISHED Connections
graphs. You can also check error messages in the system log file, error log file, or
event log files.
ARM
Help | Content Gateway | v8.5.x
Redirection Rules Displays the redirection rules in the ipnat.conf file that
specify how incoming packets are redirected when the
proxy is serving traffic transparently. During installation,
Content Gateway creates a small number of default rules.
These rules can be added to and modified. IPv4 and IPv6
addresses are supported. During operation, Content
Gateway traverses the list top down and applies the first
matching rule.
Refresh Updates the table to display the most up-to-date rules in
the ipnat.conf file.
Edit File Opens the configuration file editor for the ipnat.conf file.
Important
This feature is for transparent proxy deployments only.
Static Bypass table Lists the configured static bypass rules. When Content
Gateway is serving transparent traffic, the proxy uses
these rules to determine whether to bypass incoming
client requests or attempt to serve them transparently.
Rules are stored in bypass.config
Refresh Updates the table to display the most up-to-date rules in
the bypass.config file.
Edit File Opens the configuration file editor for the bypass.config
file.
bypass.config Configuration File Editor
rule display box Lists the bypass.config file rules. Select a rule to edit it.
The buttons on the left of the box allow you to delete or
move the selected rule up or down in the list.
Add Adds a new rule to the rule display box at the top of the
configuration file editor page.
Set Updates the rule display box at the top of the
configuration file editor page.
Rule Type Specifies the rule type:
A bypass rule bypasses specified incoming requests.
A deny_dyn_bypass rule prevents the proxy from
bypassing specified incoming client requests
dynamically (a deny bypass rule can prevent Content
Gateway from bypassing itself).
Source IP Specifies the source IP address in incoming requests that
the proxy must bypass or deny bypass. The IP address can
be one of the following:
A simple IP address, such as 123.45.67.8
In CIDR (Classless Inter-Domain Routing) format, such
as 1.1.1.0/24.
A range separated by a dash, such as 1.1.1.1-2.2.2.2
Any combination of the above, separated by commas,
such as 1.1.1.0/24, 25.25.25.25, 123.1.23.1-123.1.23.123
Note
The WCCP configuration options appear on the Configure
pane only if you have enabled WCCP in the Features table
on the Configure > My Proxy > Basic > General tab.
The options defined in the wccp.config configuration file control the use of WCCP
with Content Gateway. Entries should be defined and maintained using the editor
provided on Configure > Networking > WCCP.
Administrators should have a good working knowledge of WCCP.
Only WCCP v2 is supported.
It is recommended that you consult the documentation and the manufacturer’s support
site for information regarding optimal configuration and performance of your
WCCP v2 device. Most devices should be configured to take best advantage of
hardware-based redirection. With Cisco devices, the most recent version of IOS is
usually best.
For every active WCCP service group, there must be a corresponding ARM
redirection rule. See ARM, page 356.
For a complete description of Content Gateway support for WCCP v2, see
Transparent interception with WCCP v2 devices, page 51.
Option Description
WCCP Service Groups Displays a table of the service groups defined in the
wccp.config file. WCCP service group configuration
defines WCCP behavior. Column fields are
explained in the Configuration Editor entries below.
Refresh Refreshes the table to display the current definitions
in the wccp.config file.
Edit File Opens wccp.config in the configuration file editor.
DNS Proxy
Help | Content Gateway | v8.5.x
Note
The DNS Proxy configuration options appear on the
Configure pane only if you have enabled DNS Proxy in the
Features table on the Configure > My Proxy > Basic >
General tab.
DNS Proxy Port Specifies the port that Content Gateway uses for
DNS traffic. The default port is 5353.
DNS Resolver
Help | Content Gateway | v8.5.x
DNS Lookup Timeout Specifies the maximum number of seconds the proxy
can wait for a lookup response from the DNS server.
Specifies how long, in seconds, the proxy will wait
before making a second DNS request if there is no
response to the first request. The value is stored in
“proxy.config.hostdb.lookup_timeout”. The default
value is 120 seconds.
Important: This setting is not used. Instead the
records.config entry
“proxy.config.dns.lookup_timeout” is used. The
default value is 20 seconds.
proxy.config.dns.lookup_timeout specifies how long
the proxy will wait for the DNS response after sending
the request.
Note
The ICAP configuration option appears on the Configure
pane only if you have enabled ICAP in the Features table
on the Configure > My Proxy > Basic > General tab.
ICAP provides an alternate interface to Forcepoint DLP, and other data security
services that are ICAP-conversant. A primary and backup URI can be specified, and
failover and load balancing can be configured. See Configuring the ICAP client, page
125 and the subsection for ICAP failover and load balancing, page 126.
ICAP Service URI Specifies the Uniform Resource Identifier for the
ICAP service. The format is:
icap://hostname:port/path
For example:
icap://ICAP_machine:1344/reqmod
The default ICAP port is 1344. If you are using the
default port, you need not specify it in the URI.
An optional secondary URI service can be specified
immediately after the first by adding a comma and the
URI of the second service, no spaces.
Analyze HTTPS Content Select whether decrypted traffic should be sent to the
data protection software for analysis or sent directly to
the destination.
Analyze FTP Uploads Select whether to send FTP upload requests to the data
protection software for analysis. The FTP proxy
feature must be enabled. See FTP, page 319.
Action for Select whether to allow traffic or send a block page if
Communication Errors Content Gateway receives an error while
communication with the data protection software.
Action for Large files Select whether to allow traffic or send a block page if
a file larger than the size limit specified in the data
protection software is sent. The default size limit in
Forcepoint DLP is 50 MB.
Note
The Virtual IP configuration options appear on the
Configure pane only if you have enabled Virtual IP in the
Features table on the Configure > My Proxy > Basic >
General tab.
Content Gateway includes 3 URLs that return proxy health and performance
information in the HTTP response. These URLs are designed to help load balancers
optimize performance by acquiring and adjusting for real-time state information of
each proxy node.
The default port for health check URLs is 8083. The value can be changed in
records.config by assigning the desired value to proxy.config.admin.autoconf_port
WSDOWN
Health Check URLs The load balancer should consider the service down
if the URL request fails for the following reasons:
● No TCP connection -- proxy down
● Response too slow -- proxy deadlocked or not
responsive
● Invalid response
http://[Content Gateway IP address]: Checks connectivity with Content Gateway and
8083/health.basic responds with WSUP or WSDOWN.
Load=2253
Conns=5150
Mbps=6.42
Note
HTTP connection and bandwidth information can be
viewed in the Content Gateway manager on the Monitor >
Protocols > HTTP page.
SSL
The SSL configuration options are divided into the following categories:
● Certificates (see Managing certificates, page 141)
● Decryption/Encryption (see SSL configuration settings for inbound traffic, page
144 and SSL configuration settings for outbound traffic, page 145)
● Validation (see Validating certificates, page 146)
● Incidents (see Managing HTTPS website access, page 152)
● Client certificates (see Client certificates, page 157)
● Customization (see Customizing SSL connection failure messages, page 159)
● Internal Root CA (see Internal Root CA, page 133)
Related topic:
● Logging format cross-reference, page 381
For example, if you want to create a custom format called short_sq based on the first
three Squid fields, enter a line in the logs.config file as follows:
format:enabled:1:short_sq:%<cqts> %<ttms>
%<chi>:short_sq:ASCII:none
See Custom format, page 240, for more information about defining custom log files.
Content Gateway contains the following configuration files that you can edit to
customize the proxy.
Entries of type url_regex within the configuration files use regular expressions to
perform a match.
The following table offers examples to illustrate how to create a valid url_regex.
Value Description
x Matches the character x.
. Match any character.
^ Specifies beginning of line.
$ Specifies end of line.
Examples
To match any host in mydomain.com, specify:
dest_domain=mydomain.com
auth_domains.config
The auth_domains.config file stores the list of domains that have been identified for
use with Rule-Based Authentication, page 203.
Format
Each line in auth_domains.config consists of a set of tags; each tag is followed by its
value. For example:
type=<auth_method> name=<unique_name> use_alias=<0 or 1> <additional tags>
The set of tags varies depending on the selected authentication method.
The following table lists all of the tags.
The following table lists the additional tags used with IWA domains.
The following table lists the additional tags used with LDAP domains.
auth_rules.config
The auth_rules.config file stores rules that direct specified IP addresses and IP
address ranges, and/or traffic on specified inbound ports (explicit proxy only), and/or
matching Request header User-Agent values to authenticate with distinct domain
controllers. One or more domain controllers can be specified in an ordered list. This
feature is called Rule-Based Authentication, page 203.
Rule-based authentication rules must be defined in the Content Gateway manager on
the Configure > Security > Access Control > Authentication Rules tab. Do not edit
this configuration file.
● Rule-based authentication is supported for Integrated Windows Authentication
(IWA), legacy NTLM, and LDAP authentication only.
● Each authentication rule can specify source IP addresses, inbound port (explicit
proxy only), and/or a User-Agent regex
● Each authentication rule can specify one or more domains in an ordered list.
Domains are identified on the Configure > Security > Access Control >
Authentication Rules tab. That process includes specifying the authentication
method (IWA, Legacy NTLM, LDAP).
● When a rule matches, authentication is performed against one or more domains in
the ordered list. The first successful authentication ends domain list traversal and
the authenticating domain is cached for later use.
Note
If all the users in your network can be authenticated by
domain controllers that share trust relationships, you
probably don’t need rule-based authentication.
However, rule-based authentication can be useful in any
deployment that needs to perform special authentication
handling based on IP address, inbound proxy port (explicit
proxy), and/or User-Agent values.
Format
Each line in auth_rules.config contains an authentication rule that consists of a set of
tags, each followed by its value. Authentication rules have the format:
rule_name=<name> src_ip=<IP addresses> user_agent=<regex> <additional tags>
The following table lists all of the tags.
bypass.config
The bypass.config file contains static bypass rules that Content Gateway uses in
transparent proxy mode. Static bypass rules instruct Content Gateway to bypass
certain incoming client requests so that they are served by the origin server.
The bypass.config file also accepts dynamic deny bypass rules. See Dynamic deny
bypass rules, page 390.
You can configure three types of static bypass rules:
● Source bypass rules configure the proxy to bypass a particular source IP address
or range of IP addresses. For example, you can bypass clients that do not want to
use caching.
● Destination bypass rules configure the proxy to bypass a particular destination IP
address or range of IP addresses. For example, you can bypass origin servers that
use IP authentication based on the client’s real IP address.
Important
Destination bypass rules prevent the proxy from caching
an entire site. You will experience hit rate impacts if the
site you bypass is popular.
● Source/destination pair bypass rules configure the proxy to bypass requests that
originate from the specified source to the specified destination. For example, you
can route around specific client-server pairs that experience broken IP
Format
Bypass rules have the following format:
bypass src ipaddress | dst ipaddress | src ipaddress AND dst
ipaddress
Option Description
src ipaddress Specifies the source (client) IP address in incoming
requests that the proxy must bypass.
ipaddress can be one of the following:
A simple IP address, such as 123.45.67.8
● In CIDR (Classless Inter-Domain Routing) format,
such as 1.1.1.0/24
● A range separated by a dash, such as 1.1.1.1-2.2.2.2
● Any combination of the above, separated by commas,
such as 1.1.1.0/24, 25.25.25.25, 123.1.23.1-123.1.23.
123
dst ipaddress Specifies the destination (origin server) IP address in
incoming requests that the proxy must bypass.
ipaddress can be one of the following:
A simple IP address, such as 123.45.67.8
● In CIDR (Classless Inter-Domain Routing) format,
such as 1.1.1.0/24
● A range separated by a dash, such as 1.1.1.1-2.2.2.2
● Any combination of the above, separated by commas,
such as 1.1.1.0/24, 25.25.25.25, 123.1.23.1-123.1.23.
123
src ipaddress Specifies the source and destination IP address pair that the
AND dst proxy must bypass.
ipaddress ipaddress can be a single IP address, an IP address range,
or a combination of both separated by commas
For a description of the options, see the table in Format, page 390.
Note
For the dynamic deny bypass rules to work, you must
either:
● Enable the Dynamic Bypass option in the Content
Gateway manager.
● Set proxy.config.arm.bypass_dynamic_enabled to 1
in the records.config file.
Important
Static bypass rules overwrite dynamic deny bypass rules.
Therefore, if a static bypass rule and a dynamic bypass rule
contain the same IP address, the dynamic deny bypass rule
is ignored.
Examples
The following example shows source, destination, and source/destination bypass
rules:
bypass src 1.1.1.0/24, 25.25.25.25, 128.252.11.11-128.252.
11.255
bypass dst 24.24.24.0/24
bypass src 25.25.25.25 AND dst 24.24.24.0
cache.config
The cache.config file defines how the proxy caches web objects. You can add caching
rules to specify the following configuration:
● Not to cache objects from specific IP addresses
● How long to pin particular objects in the cache
Important
After you modify this file, run the following command to
apply the changes:
/opt/WCG/bin/content_line -x
When you apply the changes to a node in a cluster, Content
Gateway applies the changes to all nodes in the cluster.
Format
Each line in the cache.config file contains a caching rule. Content Gateway
recognizes three space-delimited tags:
primary_destination=value secondary_specifier=value
action=value
The following table lists the possible primary destinations and their allowed values.
Secondary specifiers are optional in the cache.config file. The following table lists the
possible secondary specifiers and their allowed values.
Note
You can use more than one secondary specifier in a rule.
However, you cannot repeat a secondary specifier.
The following table lists the possible actions and their allowed values.
Action Value
action One of the following values:
● never-cache configures the proxy to never cache specified
objects.
● ignore-no-cache configures the proxy to ignore all Cache-
Control: no-cache headers.
● ignore-client-no-cache configures the proxy to ignore
Cache-Control: no-cache headers from client requests.
● ignore-server-no-cache configures the proxy to ignore
Cache-Control: no-cache headers from origin server
responses.
pin-in-cache The amount of time you want to keep the objects in the cache.
The following time formats are allowed:
● d for days (for example 2d)
● h for hours (for example, 10h)
● m for minutes (for example, 5m)
● s for seconds (for example, 20s)
● mixed units (for example, 1h15m20s)
revalidate The amount of time you want to consider the object(s) fresh.
Use the same time formats as pin-in-cache.
ttl-in-cache The amount of time you want to keep objects in the cache
regardless of Cache-Control response headers. Use the same
time formats as pin-in-cache and revalidate.
The following example configures the proxy to keep documents with URLs that
contain the regular expression “politics” and the path prefix/viewpoint in the cache
for 12 hours:
url_regex=politics prefix=/viewpoint pin-in-cache=12h
The following example configures the proxy to revalidate gif and jpeg objects in
the domain mydomain.com every 6 hours and all other objects in mydomain.com
every hour:
dest_domain=mydomain.com suffix=gif revalidate=6h
dest_domain=mydomain.com suffix=jpeg revalidate=6h
dest_domain=mydomain.com revalidate=1h
Note
The rules are applied in the order listed.
filter.config
Important
After you modify this file, run the following command to
apply the changes:
/opt/WCG/bin/content_line -x
When you apply the changes to a node in a cluster, Content
Gateway applies the changes to all nodes in the cluster.
Format
Each line in filter.config is a filtering rule. Content Gateway applies the rules in the
order listed, starting at the top of the file. If no rule matches, the request is allowed to
proceed.
Content Gateway recognizes three space-delimited tags:
primary_destination=value secondary_specifier=value
action=value
Secondary specifiers are optional. The following table lists the possible secondary
specifiers and their purpose.
Note
You can use more than one secondary specifier in a rule.
However, you cannot repeat a secondary specifier.
The following table lists the possible actions and their allowed values.
Examples
The following example configures Content Gateway to deny all FTP document
requests to the IP address 112.12.12.12:
The following example configures Content Gateway to keep the client IP address
header for URL requests that contain the regular expression politics and whose path
prefix is
/viewpoint:
url_regex=politics prefix=/viewpoint keep_hdr=client_ip
The following example configures Content Gateway to strip all cookies from client
requests destined for the origin server www.server1.com:
dest_host=www.server1.com strip_hdr=cookie
The following example configures Content Gateway to disallow puts to the origin
server www.server2.com:
dest_host=www.server2.com method=put action=deny
Content Gateway applies the rules in the order listed in the file. For example, the
following sample filter.config file configures Content Gateway to do the following:
● Allow all users (except those trying to access internal.com) to access server1.com
● Deny all users access to notthatsite.com
dest_host=server1.com action=allow
dest_host=notthatsite.com action=deny
hosting.config
The hosting.config file lets you assign cache partitions to specific origin servers and
domains so that you can manage your cache space more efficiently and restrict disk
usage.
For step-by-step instructions on partitioning the cache according to origin servers and
domains, see Partitioning the cache according to origin server or domain, page 98.
Note
Before you can assign cache partitions to specific origin
servers and domains, you must partition your cache
according to size and protocol in the partition.config file.
For more about cache partitioning, see Partitioning the
cache, page 98. For a description of the partition.config
file, see partition.config, page 412.
After you modify the hosting.config file, run content_line -x from the Content
Gateway bin directory to apply the changes. When you apply the changes to a node in
Important
The partition configuration must be the same on all nodes
in a cluster.
Format
Each line in the hosting.config file must have one of the following formats:
hostname=hostname partition=partition_numbers
domain=domain_name partition=partition_numbers
where:
hostname is the fully qualified hostname of the origin server whose content you
want to store on a particular partition (for example, www.myhost.com).
domain_name is the domain whose content you want to store on a particular
partition (for example, mydomain.com).
partition_numbers is a comma-separated list of the partitions on which you want
to store the content that belongs to the origin server or domain listed. The partition
numbers must be valid numbers listed in the partition.config file (see partition.
config, page 412).
Note
If you want to allocate more than one partition to an origin
server or domain, enter the partitions in a comma-
separated list on one line. The hosting.config file cannot
contain multiple entries for the same origin server or
domain.
Generic Partition
When configuring the hosting.config file, you must assign a generic partition to use
for content that does not belong to any of the origin servers or domains listed. If all
partitions for a particular origin server become corrupt, Content Gateway uses the
generic partition to store content for that origin server.
The generic partition must have the following format:
hostname=* partition=partition_numbers
ip_allow.config
The ip_allow.config file controls client access to the proxy. You can specify ranges of
IP addresses that are allowed to use Content Gateway.
Important
After you modify this file, run the following command to
apply the changes:
/opt/WCG/bin/content_line -x
When you apply the changes to a node in a cluster, Content
Gateway applies the changes to all nodes in the cluster.
Format
Each line in the ip_allow.config file must have the following format:
src_ip=ipaddress action=ip_allow | ip_deny
Examples
The following example allows all clients to access the proxy:
src_ip=0.0.0.0-255.255.255.255 action=ip_allow
The following example denies all clients on a specific subnet to access the proxy:
src_ip=123.45.6.0-123.45.6.123 action=ip_deny
ipnat.conf
The ipnat.conf file contains redirection rules that specify how incoming packets are
readdressed when the proxy is serving traffic transparently. Content Gateway creates
the redirection rules during installation. You can modify these rules.
Important
After you modify this file, you must restart the proxy.
Format
Each line in the ipnat.conf file must have the following format:
rdr interface 0.0.0.0/0 port dest -> ipaddress port proxy
tcp|udp
where:
interface is the Ethernet interface that traffic will use to access the Content
Gateway machine (for example, eth0 on Linux).
dest is the traffic destination port (for example, 80 for HTTP traffic).
ipaddress is the IP address of your Content Gateway server.
proxy is the Content Gateway proxy port (usually 8080 for HTTP traffic).
Examples
The following example configures the ARM to redirect all incoming HTTP traffic to
the Content Gateway IP address (111.111.11.1) on the Content Gateway proxy port
8080:
rdr hme0 0.0.0.0/0 port 80 -> 111.111.11.1 port 8080 tcp
To record HTTP/FTP transactions for different origin servers in separate log files, you
must list each origin server’s hostname in the log_hosts.config file. In addition, you
must enable the HTTP host splitting option (see HTTP host log splitting, page 248).
Note
It is recommended that you use the same log_hosts.config
file on every Content Gateway node in your cluster.
Important
After you modify this file, run the following command to
apply the changes:
/opt/WCG/bin/content_line -x
When you apply the changes to a node in a cluster, Content
Gateway applies the changes to all nodes in the cluster.
Format
Each line in the log_hosts.config file has the following format:
hostname
Note
You can specify keywords in the log_hosts.config file to
record all transactions from origin servers with the
specified keyword in their names in a separate log file. See
the example below.
Examples
The following example configures Content Gateway to create separate log files
containing all HTTP/ FTP transactions for the origin servers webserver1, webserver2,
and webserver3.
webserver1
webserver2
webserver3
logs_xml.config
The logs_xml.config file defines the custom log file formats, filters, and processing
options. The format of this file is modeled after XML, the Extensible Markup
Language.
Format
The logs_xml.config file contains the following specifications:
● LogFormat specifies the fields to be gathered from each protocol event access.
See LogFormat, page 403.
● LogFilter specifies the filters that are used to include or exclude certain entries
being logged based on the value of a field within that entry. See LogFilter, page
404.
● LogObject specifies an object that contains a particular format, a local filename,
filters, and collation servers. See LogObject, page 405.
Note
The logs_xml.config file ignores extra white space, blank
lines, and all comments.
Examples
The following is an example of a LogFormat specification collecting information
using three common fields:
<LogFormat>
<Name = "minimal"/>
<Format = "%<chi> : %<cqu> : %<pssc>"/>
</LogFormat>
Note
When specifying the field in the filter condition, you can
omit the %<>. This means that the following filter is
equivalent to the example directly above:
<LogFilter>
<Name = "only_refresh_hits"/>
<Action = "ACCEPT"/>
<Condition = "pssc MATCH REFRESH_HIT"/>
</LogFilter>
The following is an example of a LogObject specification that creates a local log file
for the minimal format defined earlier. The log filename will be minimal.log because
this is an ASCII log file (the default).
<LogObject>
<Format = "minimal"/>
<Filename = "minimal"/>
</LogObject>
mgmt_allow.config
The mgmt_allow.config file specifies the IP addresses of remote hosts allowed access
or denied access to the Content Gateway manager.
Important
After you modify this file, run the following command to
apply the changes:
/opt/WCG/bin/content_line -x
When you apply the changes to a node in a cluster, Content
Gateway applies the changes to all nodes in the cluster.
Format
Each line in the mgmt_allow.config file has the following format:
src_ip=<ipaddress> action=<ip_allow|ip_deny>
Examples
The following example configures Content Gateway to allow only one user to access
the Content Gateway manager:
src_ip=123.12.3.123 action=ip_allow
The following example configures Content Gateway to deny one IP address access to
the Content Gateway manager:
src_ip=123.45.67.8 action=ip_deny
parent.config
The parent.config file identifies the HTTP parent proxies used in an HTTP cache
hierarchy. Use this file to perform the following configuration:
● Set up parent cache hierarchies, with multiple parents and parent failover
● Configure selected URL requests to bypass parent proxies
Rules are applied from the list top-down; the first match is applied. Bypass rules are
usually placed above parent proxy designation rules.
Content Gateway uses the parent.config file only when the HTTP parent caching
option is enabled. See Configuring Content Gateway to use an HTTP parent cache,
page 94.
Important
After you modify this file, run the following command to
apply the changes:
/opt/WCG/bin/content_line -x
When you apply the changes to a node in a cluster, Content
Gateway applies the changes to all nodes in the cluster.
The following table lists the possible primary destinations and their allowed values.
Secondary specifiers are optional in the parent.config file. The following table lists the
possible secondary specifiers and their allowed values.
Examples
The following rule configures a parent cache hierarchy consisting of Content Gateway
(which is the child) and two parents, p1.x.com and p2.x.com. The proxy forwards the
requests it cannot serve to the parent servers p1.x.com and p2.x.com in a round-robin
fashion because round_robin=true.
dest_domain=. method=get parent="p1.x.com:8080; p2.y.
com:8080" round_robin=true
The following rule configures Content Gateway to route all requests containing the
regular expression politics and the path /viewpoint directly to the origin server
(bypassing any parent hierarchies):
url_regex=politics prefix=/viewpoint go_direct=true
Important
Every line in the parent.config file must contain either a
parent= or go_direct= directive.
A bypass rule that includes parent= and go_direct=true,
causes the specified dest_domain to be sent to the parent
while all other domains are bypassed (the opposite of the
usual intended action).
The partition.config file lets you manage your cache space more efficiently by
creating cache partitions of different sizes. You can further configure these partitions
to store data from certain origin servers and domains in the hosting.config file. This
allows you to take better advantage of caching of frequently visited sites where the
content changes infrequently.
Important
The partition configuration must be the same on all nodes
in a cluster.
You must stop Content Gateway before you change the cache partition size.
Format
For each partition you want to create, enter a line with the following format:
partition=<partition_number> scheme=http size=<partition_
size>
Here:
● <partition_number> is a number between 1 and 255 (the maximum number of
partitions is 255).
● <partition_size> is the amount of cache space allocated to the partition. This value
can be either a percentage of the total cache space or an absolute value. The
absolute value must be a multiple of 128 MB, where 128 MB is the smallest
value. If you specify a percentage, the size is rounded down to the closest multiple
of 128 MB. Each partition is striped across several disks to achieve parallel I/O.
For example, if there are four disks, a 1 GB partition will have 256 MB on each
disk (assuming each disk has enough free space available).
Note
If you do not allocate all the disk space in the cache, the
extra disk space is not used. You can use the extra space
later to create new partitions without deleting and clearing
the existing partitions.
Examples
The following example partitions the cache evenly:
partition=1 scheme=http size=50%
partition=2 scheme=http size=50%
Warning
Do not change the records.config variables unless you are
certain of the effect. Many variables are coupled, meaning
that they interact with other variables. Changing a single
variable in isolation can cause Content Gateway to fail.
Whenever possible, use the Content Gateway manager
to configure Content Gateway.
Important
After you modify this file, run the following command to
apply the changes:
/opt/WCG/bin/content_line -x
When you apply the changes to a node in a cluster, Content
Gateway applies the changes to all nodes in the cluster.
Format
Each variable has the following format:
CONFIG <variable_name> <DATATYPE> <variable_value>
Examples
In the following example, the variable proxy.config.proxy_name is of datatype
STRING and its value is contentserver1. This means that the name of the Content
Gateway proxy is contentserver1.
CONFIG proxy.config.proxy_name STRING contentserver1
In the following example, the variable sets the cluster startup timeout to 10 seconds.
CONFIG proxy.config.cluster.startup_timeout INT 10
Configuration variables
Help | Content Gateway | v8.5.x
The following tables describe the configuration variables listed in the records.config
file.
Local manager
Help | Content Gateway | v8.5.x
Virtual IP manager
Help | Content Gateway | v8.5.x
Alarm configuration
Help | Content Gateway | v8.5.x
NTLM
Help | Content Gateway | v8.5.x
Security
Help | Content Gateway | v8.5.x
Cluster subsystem
Help | Content Gateway | v8.5.x
Cache
Help | Content Gateway | v8.5.x
DNS
Help | Content Gateway | v8.5.x
HostDB
Help | Content Gateway | v8.5.x
Logging configuration
Help | Content Gateway | v8.5.x
SNMP configuration
Help | Content Gateway | v8.5.x
WCCP configuration
Help | Content Gateway | v8.5.x
Web DLP
Help | Content Gateway | v8.5.x
The remap.config file contains mapping rules that Content Gateway uses to redirect
HTTP requests permanently or temporarily without Content Gateway having to
contact any origin server:
Important
After you modify this file, restart the proxy or run the
following command from the Content Gateway bin
directory (/opt/WCG/bin) to apply the changes:
content_line -x
When you apply the changes to a node in a cluster, Content
Gateway applies the changes to all nodes in the cluster.
Field Description
type Enter one of the following:
● map provides the same function as redirect. Use
redirect instead.
● redirect: redirects HTTP requests permanently without
having to contact the origin server. Permanent redirects
notify the browser of the URL change (by returning an
HTTP status code 301) so that the browser can update
bookmarks.
● redirect_temporary: redirects HTTP requests
temporarily without having to contact the origin server.
Temporary redirects notify the browser of the URL
change for the current request only (by returning an
HTTP status code 307).
Note: reverse_map is not supported.
target Enter the origin or from URL. You can enter up to four
components:
scheme://host:port/path_prefix
<scheme> can be http, https, or ftp.
strict URL matching Enable Match URL Exactly to force matching to be exact
flag against the entire requested URL.
Without this option, the URL is compared up to the end of
the target (From Path Prefix). If there is a match, the
redirect is applied. This can cause unwanted matching, when
the redirect URL includes the base URL. See Mapping and
Redirection, page 323.
replacement Enter the destination or to URL. You can enter up to four
components:
scheme://host:port/path_prefix
<scheme> can be http, https, or ftp.
Note
The scheme type (HTTP, HTTPS, FTP) of the target and
replacement must match.
Examples
The following rule permanently redirects all HTTP requests for www.company.com
to www.company2.com:
redirect http://www.company.com http://www.company2.com
socks.config
Note
It is recommended that all SOCKS configuration be
performed in the Content Gateway manager.
Important
After you modify this file, you must restart the proxy.
Traffic that does not match a manually configured rule is handled via a default rule. A
default rule is constructed for each SOCKS server with the default option enabled in
the Socks Servers table. Default rules are created automatically and displayed on the
SOCKS Server page. Default rules are not written in the socks.config file. The
destination IP address is “All.”
Format
To specify SOCKS servers that the proxy must use to reach specific origin servers,
add rules to the socks.config file in the following format:
dest_ip=<ipaddress> socksparent="<alias1>" [round_
robin=<value>]
Here:
<ipaddress> is the origin server IP address or range of IP addresses separated by -
or /.
<alias1> is the alias name of the SOCKS server named in the SOCKS Servers list.
<value> is either strict if you want Content Gateway to try the SOCKS servers
one by one, or false if you do not want round-robin selection to occur.
Note
Each rule in socks.config can consist of a maximum of
400 characters. The order of the rules in the socks.config
file is not significant.
Examples
The following example configures the proxy to send requests to the origin servers
associated with the range of IP addresses 123.15.17.1 - 123.14.17.4 through the
SOCKS server aliases “alias1” and “alias2.” Because the optional specifier round_
robin is set to strict, the proxy sends the first request to alias1, the second request to
alias2, the third request to alias1, and so on.
dest_ip=123.14.15.1 - 123.14.17.4
socksparent="alias; alias2" round_robin=strict
The following example configures the proxy to access the origin server associated
with the IP address 11.11.11.1 directly, without going through the SOCKS server:
no_socks 11.11.11.1
The following example configures Content Gateway to access the origin servers
associated with the range of IP addresses 123.14.15.1 - 123.14.17.4 and the IP address
113.14.18.2 directly, without going through the SOCKS server:
no_socks 123.14.15.1 - 123.14.17.4, 113.14.18.2
socks_server.config
Format
To specify SOCKS servers use the following format:
Here:
<name> is the name of a SOCKS server.
<IP_address | domain_name> is an IP address or a domain name that can be
resolved by your DNS service.
<port_number> is the port on which the SOCKS server is listening.
<username> and <password> are the username/password pair for SOCKS 5
authentication. The password is encrypted.
Set default to true to make the specified server a default SOCKS server. When the
default server option is on, the SOCKS server is used when no SOCKS rule
matches.
If no SOCKS server is designated a default server, traffic that doesn’t match a rule
is not routed through a SOCKS server.
Examples:
This example adds the SOCKS server “default1” at 127.0.0.1 on port 61080. It is
designated a default SOCKS server.
alias=default1 host=127.0.0.1 port=61080 default=true
This example adds a SOCKS server that uses authentication. Note that the password
(“465751475058”) is not the real password. It is encrypted.
alias=test1 host=socks5.example.com port=1080 username=test
password=465751475058 default=false
Note
Each rule in socks_server.config cannot exceed 400
characters.
splitdns.config
The splitdns.config file enables you to specify the DNS server that Content Gateway
should use for resolving hosts under specific conditions.
To specify a DNS server, you must supply the following information in each active
line within the file:
Important
After you modify this file, restart the proxy or run the
following command from the Content Gateway bin
directory (/opt/WCG/bin) to apply the changes:
content_line -x
When you apply the changes to a node in a cluster, Content
Gateway applies the changes to all nodes in the cluster.
Format
Each line in the splitdns.config file uses one of the following formats:
dest_domain=dest_domain | dest_host | url_regex named=dns_
server
def_domain=def_domain search_list=search_list
Examples
Consider the following DNS server selection specifications:
dest_domain=internal.company.com named=255.255.255.255:212
255.255.255.254 def_domain=company.com search_list=company.
com company1.com
dest_domain=!internal.company.com named=255.255.255.253
storage.config
The storage.config file lists all the files, directories, or hard disk partitions that make
up the cache.
Important
After you modify this file, you must restart the proxy.
Here, < pathname> is the name of a partition, directory, or file, and <size> is the size
of the named partition, directory, or file, in bytes. You must specify a size for
directories or files. For raw partitions, size specification is optional.
You can use any partition of any size. For best performance, the following guidelines
are recommended:
● Use raw disk partitions.
● For each disk, make all partitions the same size.
● For each node, use the same number of partitions on all disks.
Specify pathnames according to your operating system requirements. See the
following examples.
Important
In the storage.config file, a formatted or raw disk must be
at least 2 GB. The recommended disk cache size is
147 GB.
update.config
The update.config file controls how Content Gateway performs a scheduled update of
specific local cache content. The file contains a list of URLs specifying objects that
you want to schedule for update.
A scheduled update performs a local HTTP GET on the objects at the specific time or
interval. You can control the following parameters for each specified object:
● The URL
● URL-specific request headers, which overrides the default
● The update time and interval
Important
After you modify this file, restart the proxy or run the
following command from the Content Gateway bin
directory (/opt/WCG/bin) to apply the changes:
content_line -x
When you apply the changes to a node in a cluster, Content
Gateway applies the changes to all nodes in the cluster.
Format
Each line in the update.config file uses the following format:
URL\request_headers\offset_hour\interval\recursion_depth\
Examples
The following example illustrates an HTTP scheduled update:
http://www.company.com\User-Agent: noname user
agent\13\3600\5\
This example specifies the URL and request headers, an offset hour of 13 (1 p.m.), an
interval of one hour, and a recursion depth of 5. This would result in updates at 13:00,
14:00, 15:00, and so on. To schedule for an update to occur only once a day, use an
interval value of 24 hours x 60 minutes x 60 seconds = 86400.
The following example illustrates an FTP scheduled update:
ftp://[email protected]/pub/misc/test_file.
cc\\18\120\0\
This example specifies the FTP request, an offset hour of 18 (6 p.m.), and an interval
of every two minutes. The user must be anonymous and the password must be
specified by proxy.config.http.ftp.anonymous_passwd in the records.config file.
wccp.config
The wccp.config file stores the WCCP configuration information and service group
settings. When WCCP is enabled on the Configure > MyProxy > Basic page, WCCP
service group settings can be configured on the Configure > Networking > WCCP
page. Service groups must be defined if WCCP is to be used for transparent
redirection to Content Gateway.
For more information, see Transparent interception with WCCP v2 devices, page 51.
The following table lists messages that can appear in system log files. This list is not
exhaustive; it describes warning messages that can occur and might require your
attention. For information about warning messages not included in the list below, go
to www.forcepoint.com and then navigate to Support and Knowledge Base.
Message Description
Accept port is not between 1 and The port specified in the records.config file that
65535. Please check configuration. accepts incoming HTTP requests is not valid.
Ftp accept port is not between 1 and The port specified in the records.config file that
65535. accepts incoming FTP requests is not valid.
Self loop is detected in parent proxy The name and port of the parent proxy are the same
configuration. as that of Content Gateway. This creates a loop
when Content Gateway attempts to send requests to
the parent proxy.
Could not open the ARM device The ARM failed to load. The most common reason
for this is that the host system has an incompatible
system kernel.
To see if the ARM is loaded, run:
/sbin/lsmod | grep arm
content_manager failed to set cluster The content_manager process could not set the
IP address cluster IP address. Check the cluster IP address.
Make sure that it is not already used by another
device in the network.
Unable to initialize storage. Cache initialization failed during startup. The cache
(Re)Configuration required. configuration should be checked and configured or
reconfigured.
Message Description
Logfile error: error_number Generic logging error.
Bad cluster major version range Incompatible software versions causing a problem.
version1-version2 for node
IP address connect failed
can’t open config file filename for Custom logging is enabled, but Content Gateway
reading custom formats cannot find the logs.config file.
connect by disallowed client The specified client is not allowed to connect to
IP address, closing connection Content Gateway. The client IP address is not listed
in the ip_allow.config file.
Could not rename log filename to System error when renaming log file during roll.
rolled filename
Did this_amount of backup still to do Congestion is approaching.
remaining_amount
Different clustering minor versions Incompatible software versions causing a problem.
version 1, version 2 for node IP
address continuing
log format symbol symbol_name not Custom log format references a field symbol that
found does not exist. See Event Logging Formats, page
377.
missing field for field marker Error reading a log buffer.
Unable to accept cluster connections Contact Technical Support. Go to
on port: cluster_port_number support.forcepoint.com for Technical Support
contact information
Unable to open log file filename, Cannot open the log file.
errno=error_number
Error accessing disk disk_name Content Gateway might have a cache read problem.
You might have to replace the disk.
Too many errors accessing disk Content Gateway is not using the cache disk
disk_name: declaring disk bad because it encountered too many errors. The disk
might be corrupt and might have to be replaced.
No cache disks specified in The Content Gateway storage.config file does not
storage.config file: cache disabled list any cache disks. Content Gateway is running in
proxy-only mode. You must add the disks you want
to use for the cache to the storage.config file (see
storage.config, page 486).
All disks are bad, cache disabled There is a problem with the cache disk(s) and
caching has been disabled. Please verify that the
cache disks are working and have been properly
formatted for caching. See Configuring the Cache,
page 95.
Missing DC parameter A required parameter was not specified. Please
<missing_param> on auth.profile line provide a value for the missing parameter.
The following table describes alarm messages that you may see in the Content
Gateway manager.
Message Description/Solution
The Content Gateway subscription Please contact your Forcepoint customer service
has expired. representative or Technical Support for assistance.
Content Gateway subscription Content Gateway was unable to connect to the
download failed. download server to verify the subscription
information. Please check your connection to the
download server.
After several attempts, Content Verify that Content Gateway is able to access the
Gateway failed to connect to the Internet. Check firewall and upstream proxy server
Database Download Service. Please settings that might prevent Content Gateway from
troubleshoot the connection. connecting to the download server.
After several attempts, Content Verify that there is network connectivity between
Gateway failed to connect to the Content Gateway and the Policy Server machine.
Policy Server. Please troubleshoot Sometimes firewall settings block connectivity.
the connection. Also confirm that Policy Server is running.
After several attempts, Content Verify that there is network connectivity between
Gateway failed to connect to the Content Gateway and Policy Broker. Sometimes
Policy Broker. Please troubleshoot firewall settings block connectivity. Also confirm
the connection. that Policy Broker is running.
The specified ICAP server does not The hostname in the records.config file does not
have a DNS entry. Please ensure match any entries in the DNS. Ensure that the name
that a valid DSS hostname is of a valid Forcepoint DLP server is entered
entered correctly in Content correctly in the Content Gateway manager.
Gateway Manager or in the See Working With Web DLP, page 119 for
proxy.config.icap.ICAPUri information about the format of the URI.
configuration variable.
Content Gateway is not able to Ensure that the Forcepoint management server is up
communicate with the DSS server. and running, and accepting connections on the port
Please try again. specified in the proxy.config.icap.ICAPUri
variable. Contact your Forcepoint DLP
administrator if this message persists.
Domain controller The named NTLM domain controller is not
domain_controller_name:port is responding to requests and has been marked as
down. down. Investigation the status of the domain
controller.
Windows domain [domain name] This alarm can indicate any of the following:
unreachable or bad membership 1. The Active Directory is unreachable. The AD
status server is either down or there is a network
connectivity problem.
2. The AD is reachable, but there is a
configuration problem that prevents it from
communicating with Content Gateway. For
example, the alarm is generated if the AD has
multiple Sites and the subnet that Content
Gateway resides on has not been added to one
of them.
The Scanning Data Files Update This alarm is a reminder that downloads of the
option (My Proxy > Subscription) is security scanning data files used by Content
set to ‘suspend updates’. To get the Gateway analysis has been suspended.
best protection, set it to ‘no delay’, It is recommended that you not clear this alarm until
or, on a backup system, use a time- the delay time has been reset.
based option.
Port Mirroring cannot work unless (Appliance deployments only)
SSL decryption is enabled also. Ensure the SSL decryption (HTTPS) is enabled
Please enable SSL decryption before attempting to use Port Mirroring.
(HTTPS) if you want to use the Port
Mirroring feature.
Content Gateway returns detailed error messages to browser clients when there are
problems with the HTTP transactions requested by the browser. These response
messages correspond to standard HTTP response codes, but provide more
information. A list of the more frequently encountered HTTP response codes is
provided in Content Gateway standard HTTP response messages, page 499. You can
customize the response messages.
The following table lists the Content Gateway hard-coded HTTP messages, their
corresponding HTTP response codes, and their corresponding customizable files.
The following standard HTTP response messages are provided for your information.
For a more complete list, see the Hypertext Transfer Protocol — HTTP/1.1
Specification.
Message Description
200 OK
202 Accepted
204 No Content
206 Partial Content
300 Multiple Choices
301 Moved Permanently
302 Found
303 See Other
304 Not Modified
400 Bad Request
401 Unauthorized; retry
403 Forbidden
404 Not Found
405 Method Not Allowed
406 Not acceptable
408 Request Timeout
500 Internal server error
501 Not Implemented