SGOS 6.6.x Administration Guide
SGOS 6.6.x Administration Guide
SGOS 6.6.x
i
SGOS Administration Guide
Copyright © 2017 Symantec Corp. All rights reserved. Symantec, the Symantec Logo, the Checkmark Logo, Blue Coat, and the Blue
Coat logo are trademarks or registered trademarks of Symantec Corp. or its affiliates in the U.S. and other countries. Other names
may be trademarks of their respective owners. This document is provided for informational purposes only and is not intended as
advertising. All warranties relating to the information in this document, either express or implied, are disclaimed to the maximum
extent allowed by law. The information in this document is subject to change without notice.
THE DOCUMENTATION IS PROVIDED "AS IS" AND ALL EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND
WARRANTIES, INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE
OR NON-INFRINGEMENT, ARE DISCLAIMED, EXCEPT TO THE EXTENT THAT SUCH DISCLAIMERS ARE HELD TO BE
LEGALLY INVALID. SYMANTEC CORPORATION SHALL NOT BE LIABLE FOR INCIDENTAL OR CONSEQUENTIAL
DAMAGES IN CONNECTION WITH THE FURNISHING, PERFORMANCE, OR USE OF THIS DOCUMENTATION. THE
INFORMATION CONTAINED IN THIS DOCUMENTATION IS SUBJECT TO CHANGE WITHOUT NOTICE. SYMANTEC
CORPORATION PRODUCTS, TECHNICAL SERVICES, AND ANY OTHER TECHNICAL DATA REFERENCED IN THIS
DOCUMENT ARE SUBJECT TO U.S. EXPORT CONTROL AND SANCTIONS LAWS, REGULATIONS AND REQUIREMENTS,
AND MAY BE SUBJECT TO EXPORT OR IMPORT REGULATIONS IN OTHER COUNTRIES. YOU AGREE TO COMPLY STRICTLY
WITH THESE LAWS, REGULATIONS AND REQUIREMENTS, AND ACKNOWLEDGE THAT YOU HAVE THE RESPONSIBILITY
TO OBTAIN ANY LICENSES, PERMITS OR OTHER APPROVALS THAT MAY BE REQUIRED IN ORDER TO EXPORT,
RE-EXPORT, TRANSFER IN COUNTRY OR IMPORT AFTER DELIVERY TO YOU.
ii
Contents
Chapter 1: Introduction
Document Conventions ................................................................................................................... 22
Notes and Warnings......................................................................................................................... 23
About Procedures ............................................................................................................................. 24
Chapter 3: Licensing
License Editions.......................................................................................................................... 57
License Types.............................................................................................................................. 60
Licensing Terms ......................................................................................................................... 61
License Expiration...................................................................................................................... 62
Locating the System Serial Number ........................................................................................ 64
Obtaining a BlueTouch Online Account................................................................................. 64
Registering and Licensing Blue Coat Appliance and Software........................................... 64
Installing a License on a Registered System........................................................................... 65
Manually Installing the License ............................................................................................... 66
Adding an Add-on License ............................................................................................................. 69
Adding the Add-on License to the Appliance ....................................................................... 70
Enabling Automatic License Updates ........................................................................................... 71
Viewing the Current License Status............................................................................................... 72
1
Chapter 4: Controlling Access to the ProxySG
Moderate Security: Restricting Management Console Access Through the Console Access
Control List (ACL) .................................................................................................................... 80
2
Section H: Reference: Proxy Services, Proxy Configurations, and Policy
3
Chapter 9: Managing the SSL Proxy
IPv6 Support ............................................................................................................................. 244
Working with SSL Traffic........................................................................................................ 245
Section A: Intercepting HTTPS Traffic
Configuring the SSL Proxy in Explicit Proxy Mode .................................................................. 249
Specifying an Issuer Keyring and CCL Lists for SSL Interception ................................... 250
Using Client Consent Certificates.......................................................................................... 251
Downloading an Issuer Certificate ........................................................................................ 251
Warn Users When Accessing Websites with Untrusted Certificates ...................................... 254
Presenting Untrusted Certificates to a Browser .................................................................. 254
Set the Behavior when Encountering Untrusted Certificates ............................................ 254
Section B: Configuring SSL Rules through Policy
Section C: Viewing SSL Statistics
Viewing SSL History Statistics...................................................................................................... 261
Unintercepted SSL Data .......................................................................................................... 261
Unintercepted SSL Clients ...................................................................................................... 262
Unintercepted SSL Bytes ......................................................................................................... 262
Section D: Using STunnel
Configuring STunnel...................................................................................................................... 264
Viewing STunnel Results............................................................................................................... 266
Application Mix........................................................................................................................ 268
Viewing Session Statistics ....................................................................................................... 268
Viewing Protocol Details ........................................................................................................ 269
Access Logging......................................................................................................................... 269
Section E: Tapping Decrypted Data with Encrypted Tap
Viewing Encrypted Tap Results ............................................................................................ 272
Section F: Working with an HSM Appliance
Working with the SafeNet Java HSM .......................................................................................... 273
Before You Begin ...................................................................................................................... 273
Add an HSM ............................................................................................................................. 274
Add an HSM Keyring.............................................................................................................. 274
Add an HSM Keygroup .......................................................................................................... 275
Write HSM Policy ........................................................................................................................... 276
Section G: Advanced Topics
4
Control File Uploads with Policy ................................................................................................. 288
Control Desktop Sharing with Policy .......................................................................................... 291
WebEx Proxy Access Logging ...................................................................................................... 294
Review WebEx Proxy Sessions ..................................................................................................... 296
5
Viewing SOCKS Clients .......................................................................................................... 355
Viewing SOCKS Connections ................................................................................................ 355
Viewing SOCKS Client and Server Compression Gain Statistics .................................... 356
6
Section B: Setting up a Web Content Filter
Enabling a Content Filter Provider .............................................................................................. 425
Specifying a Blue Coat Data Source ...................................................................................... 426
Downloading the Content Filter Database ................................................................................. 427
About Database Updates ........................................................................................................ 427
Downloading a Content Filter Database .............................................................................. 428
Viewing the Status of a Database Download....................................................................... 429
Expiry Date for the Database.................................................................................................. 430
Viewing the Available Categories or Testing the Category for a URL ............................ 430
Testing the Application and Operation for a URL.............................................................. 430
Section C: Configuring Blue Coat WebFilter and WebPulse
Disabling Dynamic Categorization ....................................................................................... 432
Specifying a Custom Time Period to Update Blue Coat WebFilter.................................. 433
Configuring Dynamic Categorization Requests for HTTP/HTTPS (CLI only).............. 437
Section D: Configuring Intelligence Services for Content Filtering
Verify Subscribed Bundles...................................................................................................... 439
Configure Intelligence Services.............................................................................................. 439
Download a New Version of the Database .......................................................................... 440
Monitor Content Filter Health Status.................................................................................... 440
Troubleshoot Health Monitoring Errors............................................................................... 441
Section E: Using Intelligence Services to Classify Applications
Enable Application Classification.......................................................................................... 443
Review Applications and Operations ................................................................................... 444
Download a New Version of the Application Classification Database ........................... 446
Review Application Attributes .............................................................................................. 446
Monitor Application Classification and Application Attributes Health Status.............. 449
Section F: Configuring a Local Database
Local Database Matching Example ....................................................................................... 452
Selecting and Downloading the Local Database........................................................................ 454
Section G: Configuring Internet Watch Foundation
Section H: Configuring a Third-Party Vendor
Section I: About Blue Coat Categories for YouTube
Setting the YouTube Server Key ............................................................................................ 458
Distinguishing Blue Coat Categories for YouTube in the Access Log ............................. 458
Section J: Using Quotas to Limit Internet Access
Scenario: Limit a User’s Daily Access to YouTube Videos ................................................ 459
Scenario: Limit a User’s Weekly Data Usage ....................................................................... 460
View Quota Statistics............................................................................................................... 460
7
Reset Usage Quotas ................................................................................................................. 461
Section K: Applying Policy
Policy Examples Using the Application Control Objects................................................... 474
Section L: Troubleshooting
8
Using Secure ICAP ......................................................................................................................... 548
Using a Crossover Cable................................................................................................................ 550
Configuring ICAP Using a Crossover Cable........................................................................ 550
Using a Private Network ............................................................................................................... 551
Section D: Monitoring Content Analysis and Sessions
Introduction to Content Analysis Request Monitoring ............................................................ 554
Section E: Creating ICAP Policy
Using ICAP Headers in Policy...................................................................................................... 573
Section F: Managing Virus Scanning
9
Section F: Configuring QuickTime Player
Section G: Using the Flash Streaming Proxy
Configuring the Flash Streaming Proxy...................................................................................... 647
Configuring Client Browsers for Explicit Proxy.................................................................. 647
Intercepting the RTMP Service (Transparent Deployment) .............................................. 648
Intercepting the Explicit HTTP Service (Explicit Deployment) ........................................ 648
When VOD Content Gets Cached ......................................................................................... 651
Proxy Chaining......................................................................................................................... 651
CDN Interoperability Support ............................................................................................... 652
Section H: Supported Streaming Media Clients and Protocols
10
Chapter 32: Access Log Formats
Action Field Values ........................................................................................................................ 732
11
Section G: Securing the ADN
Securing a Managed ADN ............................................................................................................ 875
Enabling Device Authentication ............................................................................................ 875
Configuring Connection Security .......................................................................................... 877
Enabling Device Authorization.............................................................................................. 878
Section H: Configuring Load Balancing
Introduction to Load Balancing.................................................................................................... 882
Section I: Configuring Advanced ADN Settings
Configuring an ADN Node as an Internet Gateway................................................................. 886
Configuring the Byte-Cache Dictionary Size.............................................................................. 889
Manually Resizing the Byte Cache Dictionaries From the Statistics Tab ........................ 890
Manually Resizing Byte Cache Dictionaries from the Byte Caching Tab ........................ 891
Section J: Monitoring the ADN
Reviewing ADN History ............................................................................................................... 896
Reviewing ADN Active Sessions ................................................................................................. 898
Monitoring Adaptive Compression............................................................................................. 900
Section K: Related CLI Syntax to Configure an ADN
Section L: Policy
Section M: Troubleshooting
12
Using Return-to-Sender (RTS)................................................................................................ 943
13
Creating Forwarding Groups ............................................................................................... 1020
Configuring Global Forwarding Defaults................................................................................. 1023
Configuring the Forwarding Default Sequence ....................................................................... 1025
Section D: Using Forwarding Directives to Create an Installable List
Creating a Forwarding Installable List...................................................................................... 1034
14
Chapter 51: Certificate Realm Authentication
Configuring Certificate Realms .................................................................................................. 1110
Creating a Certificate Realm................................................................................................. 1110
Configuring Certificate Realm Properties .......................................................................... 1110
Defining General Certificate Realm Properties ................................................................. 1113
Specifying an Authorization Realm........................................................................................... 1115
15
Chapter 54: Integrating the Appliance with Your Windows Domain
Integrate the ProxySG Appliance into the Windows Domain............................................... 1166
Join the ProxySG Appliance to the Windows Domain..................................................... 1167
Edit a Windows Domain....................................................................................................... 1168
Configure SNMP Traps for the Windows Domain ................................................................. 1170
Chapter 55: Integrating ProxySG Authentication with Active Directory Using IWA
About IWA Challenge Protocols.......................................................................................... 1172
About IWA Failover .............................................................................................................. 1172
Preparing for a Kerberos Deployment ...................................................................................... 1174
Enabling Kerberos in an IWA Direct Deployment............................................................ 1174
Enabling Kerberos in a BCAAA Deployment.................................................................... 1175
Configuring IWA on the ProxySG Appliance .......................................................................... 1176
Creating an IWA Realm ........................................................................................................ 1176
Configuring IWA Servers ..................................................................................................... 1178
Defining IWA Realm General Properties ........................................................................... 1183
Creating the IWA Authentication and Authorization Policies.............................................. 1185
Creating an IWA Authentication Policy ............................................................................. 1186
Creating a Guest Authentication Policy ............................................................................. 1188
Creating an IWA Authorization Policy .............................................................................. 1189
Configuring Client Systems for Single Sign-On....................................................................... 1191
Configure Internet Explorer for Single Sign-On................................................................ 1191
Configure Firefox for Single Sign-On.................................................................................. 1192
Using IWA Direct in an Explicit Kerberos Load Balancing/Failover Scenario................... 1192
16
Querying the LDAP Novell SSO Search Realm ....................................................................... 1231
Configuring Authorization ......................................................................................................... 1232
Defining Novell SSO Realm General Properties...................................................................... 1233
17
Using Certificate Revocation Lists ............................................................................................ 1309
Section D: Using External Certificates
Section E: Advanced Configuration
Managing CA Certificate Lists.................................................................................................... 1318
Creating a CA Certificate List: ............................................................................................. 1318
Updating a CA Certificate List............................................................................................. 1320
Configuring Download of CCL Updates from Blue Coat................................................ 1320
Managing Cached Intermediate Certificates ............................................................................ 1323
Turn off Intermediate Certificate Caching ......................................................................... 1323
View Cached Intermediate Certificates .............................................................................. 1323
Clear Cached Intermediate Certificates .............................................................................. 1325
Section F: Checking Certificate Revocation Status in Real Time (OCSP)
Creating and Configuring an OCSP Responder ...................................................................... 1331
18
Special Considerations .......................................................................................................... 1390
Sample CAPTCHA Validation Form .................................................................................. 1391
19
Section C: Configuring Event Logging and Notification
Selecting Which Events to Log ................................................................................................... 1497
Setting Event Log Size.................................................................................................................. 1498
Enabling Event Notification........................................................................................................ 1499
Syslog Event Monitoring....................................................................................................... 1500
Securely Retrieving Event Logs from the Appliance........................................................ 1502
Viewing Event Log Configuration and Content ...................................................................... 1505
Section D: Monitoring Network Devices (SNMP)
Configuring SNMP Communities.............................................................................................. 1513
Configuring SNMP for SNMPv1 and SNMPv2c ..................................................................... 1515
Adding Community Strings for SNMPv1 and SNMPv2c................................................ 1515
Configuring SNMP Traps for SNMPv1 and SNMPv2c.................................................... 1516
Configuring SNMP for SNMPv3................................................................................................ 1519
About Passphrases and Localized Keys ............................................................................. 1519
Configuring SNMP Users for SNMPv3 .............................................................................. 1519
Configuring SNMP Traps and Informs for SNMPv3 ....................................................... 1521
Section E: Configuring Health Monitoring
About the Health Monitoring Metric Types ............................................................................. 1527
Thresholds and Notifications for General Metrics............................................................ 1528
Thresholds and Notifications for Licensing Metrics......................................................... 1529
Notifications for Status Metrics............................................................................................ 1531
Thresholds and Notifications for Subscription Metrics.................................................... 1533
Quick Reference: Default Threshold Values and States ................................................... 1534
Changing Threshold and Notification Settings ................................................................. 1536
Viewing Health Monitoring Statistics................................................................................. 1538
20
Section I: Health Check Topics
About Health Check Statistics .................................................................................................... 1583
Section J: Using Policy
21
22
Chapter 1: Introduction
This audience for this document is network administrators who are responsible
for managing Symantec Advanced Secure Gateway® appliances. This
document provides reference information and procedures to configure
Advanced Secure Gateway.
The information in this document supersedes information in the appliance’s
Management Console online help.
Supporting Documentation
Supporting documentation for Advanced Secure Gatewayis available on
BlueTouch Online (BTO):
https://bto.bluecoat.com/documentation/All-Documents/
Note: Release Notes are available on BTO on the Downloads page. Log in to BTO
with your username and password to access the release image and release
notes.
21
Advanced Secure Gateway Administration Guide
Conventions Definition
22
Section 2 Notes and Warnings
The following is provided for your information and to caution you against actions
that can result in data loss or personal injury:
23
Advanced Secure Gateway Administration Guide
Blue Coat assumes that you are logged into the first page of the Management
Console or entered into configuration mode in the CLI.
In most cases, procedures in this guide tell you how to perform a task in the
Management Console, even if there is a CLI equivalent.
24
Chapter 2: Accessing the Appliance
This section provides procedures for accessing the Advanced Secure Gateway
so that you can perform administrative tasks using the Management Console
and/or the command-line interface. It assumes that you have performed the
first-time setup using the Serial Console or the front panel and that you have
minimally specified an IP address, IP subnet mask, IP gateway, and DNS
server, and that you have tested the appliance and know that it is up and
running on the network. If you have not yet done this, refer to the hardware
guides for your appliance model.
This section includes the following topics:
❐ "Accessing the Advanced Secure Gateway Appliance Using the
Management Console" on page 26
❐ "Accessing the Advanced Secure Gateway Using the CLI" on page 41
❐ "Configuring Basic Settings" on page 43
❐ "Required Ports" on page 54
25
Advanced Secure Gateway Administration Guide
Note: When you access the Management Console home page, if you see a host
mismatch or an invalid certificate message, you must recreate the security
certificate used by the HTTPS-Console. For information on changing the security
certificate, see "Managing the HTTPS Console (Secure Console)" on page 1452.
26
Table 2–1 Ways to Access the Management Console
You want to run the Your deployment must have all of the See "Load the
Management Console following: Management Console
directly in a browser. • Any Advanced Secure Gateway version. Directly in a Browser" on
• A browser with NPAPI support. page 27.
• Browsers enabled with the minimum
supported version of Java to run the
Management Console.
You require an alternative Your deployment must have workstations with See "Run the
to running the the minimum supported version of Java to run Management Console
Management Console the Management Console (browsers need not using Java Web Start" on
directly in a browser be Java-enabled), and at least one of the page 28.
because: following:
• You know that the • Advanced Secure Gateway 6.6.5.x and
browser does not later and a browser without NPAPI
support NPAPI. support.
• Your browser is not • Any Advanced Secure Gateway version
configured to run and any browser version, provided you can
Java or JavaScript. access the Internet or can host the Launcher
applet internally.
You want to launch Your deployment has all of the following: See "Launch Multiple
multiple appliances. • Any browser version. Management Consoles"
• Workstations with the minimum supported on page 30.
version of Java to run Java Web Start;
browsers need not be Java-enabled.
• Access to the Internet.
Note: (Version 6.6.5.x and later) If the browser does not load the content
immediately, you can use Java Web Start instead (as described in "Run the
Management Console using Java Web Start" on page 28). A “Click here if your
browser does not support embedded applets” link appears at the bottom of the
Management Console; if you click the link, you are prompted to open or save a
Java Network Launch Protocol (JNLP) file. Otherwise, refresh the browser or wait
for the console to load the legacy Management Console.
27
Advanced Secure Gateway Administration Guide
2. Enter the user name and password that you created during initial
configuration. Upon successful login, the browser displays the Proxy tab of
the Advanced Secure Gateway Management Console.
Note: The event log records all successful and failed login attempts.
28
2. In the browser’s address bar, enter https://appliance_IP_address:port
The default management port is 8082.
For example, if the IP address configured during initial configuration is
192.168.0.6, type https://192.168.0.6:8082 in the address bar.
The browser prompts you to enter your user name and password.
3. Enter the user name and password that you created during initial
configuration.
The browser displays a message stating that NPAPI is not supported.
4. In the message, click the link to download the JNLP file (mc.jnlp).
Alternatively, in the Management Console footer, click the “Click here if your
browser does not support embedded applets” link to download the file.
If you have already downloaded the JNLP file, you can run it instead of
downloading a copy; go to step 5.
Save the file to a convenient location on disk. To avoid downloading copies of
the JNLP file, note the location for future use.
29
Advanced Secure Gateway Administration Guide
5. Open the JNLP file. When prompted, enter your user name and password
again.
Note: The event log records all successful and failed login attempts.
Note: If none of the appliances in your deployment run version 6.6.5.x or later,
you must have access to the internet to download the launcher.JNLP file from
BTO.
30
4. Run the JNLP file. The Management Console Launcher opens.
Figure 2–2 Management Console Launcher - Main dialog
31
Advanced Secure Gateway Administration Guide
Note: If you ran Launcher using the Launcher link in the Management
Console banner, the IP address and port fields are pre-populated with the
appliance’s console IP address and port.
a. Select the protocol (HTTP or HTTPS) and type the IP address in the
field.
b. In the Port field, type the port number of the appliance’s Management
Console.
c. (Recommended) In the Description field, enter a description for the
appliance to help identify it.
d. Click Add as New. The appliance you added appears in the list of
devices.
e. (Recommended) Test connectivity to the appliance you added. Select
the appliance in the list and click Test.
If the test is successful, a green checkmark appears beside the Test button.
If the test is unsuccessful, a red “X” appears beside the Test button. Check
the settings you entered and modify them if needed (see "Modify a
Device’s Properties" on page 33). Then, test the connection again.
32
3. To remove an appliance, select it in the list and click Delete. The appliance is
deleted from the list.
4. Click Done. Return to Launcher. The dialog displays the updated list of devices.
Note: You can also add appliances from the main Launcher dialog. The steps are
similar to the ones outlined previously.
Note: Deleting installed applications and applets in the Java Control Panel
removes the list of appliances from Launcher; thus, to prevent inadvertent
deletion, export the list periodically or when you make significant changes to
it.
33
Advanced Secure Gateway Administration Guide
Import/export devices:
1. On the Launcher dialog, click the Manage Devices link. The dialog displays a
“Device Connection Manager” list.
2. To import a list of devices:
a. Click the Import link at the top right of the dialog. See Figure 2–3 on
page 31.
b. In the dialog that opens, browse to the location of the CSV file to
import and select the file.
c. Specify what to do if devices already exist in the Launcher list:
• - This is selected by default. If devices exist in
Merge with current list
Launcher already, they are combined with the list of devices you
import.
• Replace the current list - If devices exist in Launcher already, the list of
devices you import replaces the existing list.
d. Click Done. Return to Launcher. The list of devices is imported.
3. To export the list of devices:
a. Click the Export link at the top right of the dialog. See Figure 2–3 on
page 31.
b. In the dialog that opens, browse to the location where you want to
save the CSV file. Enter a name for the file and save it.
4. Click Done. Return to Launcher. The list of devices is exported.
34
About the Management Console Banner
After you log in to the Advanced Secure Gateway appliance, the Management
Console displays a banner at the top of the page.
This guide covers the functions of the Advanced Secure Gateway Proxy tab.
The Proxy Management Console banner provides the following information:
❐ Appliance identification— the appliance name, hardware serial number, and
the software version.
❐ Appliance health status— Visible when the Proxy tab is selected. The health
state is represented by a text box and a color that corresponds to the health of
the system (OK-green, Warning- yellow or Critical -red). The system health
changes when one or more of the health metrics reaches a specified threshold
or returns to normal. The health state indicator is polled and updated every 10
seconds on the Advanced Secure Gateway.
To obtain more information about the health state, click the Health: status link
— OK, Warning, Critical. The Statistics > Health page displays; it lists the
current condition of the system’s health monitoring metrics. See "Verifying the
Health of Services Configured on the ProxySG" on page 1541 for more
information about the health monitoring metrics.
❐ License status and version— Your Advanced Secure Gateway license includes
all the component licenses for the Proxy and Content Analysis features that
you have purchased. To view a list of the license components and their
expiration date, go to the Maintenance > Licensing > View tab.
❐ Blue Coat product documentation and customer support links. You must have
a Blue Touch Online account to access documentation and to request support.
To log out of the Management Console, click the Log Out link.
❐ Proxy and Content Analysis tabs. Advanced Secure Gateway appliances
include both a module and a Content Analysis module. Use the tabs to switch
from one to the next. For information on configuring ICAP services to use the
internal Content Anlaysis service, see Chapter 24: "Malicious Content
Scanning Services" or the help icon (?) in the Content Anlaysis module.
35
Advanced Secure Gateway Administration Guide
performance of traffic within your network using its optimization, policy control,
and caching techniques. The Summary page visually demonstrates the overall
performance and efficiency of your network.
If you have just completed initial setup and have not configured the Advanced
Secure Gateway to intercept any traffic, the Summary page will not display much
information. For example, you cannot view bandwidth efficiency for traffic being
intercepted by the Advanced Secure Gateway.
❐ Service: A service represents the type of traffic that is being intercepted; the top
5 services are ranked in descending order of bytes saved.
❐ Bytes Saved Last Hour:Bytes saved display bandwidth savings in the last 60
minutes. It represents data that did not traverse the WAN because of object
and byte caching, protocol optimization, and compression. It is calculated as:
Client Bytes - Server Bytes,
where Client Bytes is the data rate calculated to and from the client on the
client-side connection, and Server Bytes is the data rate calculated to and
from the server on the server-side connection.
36
❐ Percent Savings: A percentage value of bytes saved, calculated as:
{(Client Bytes - Server Bytes)/ Client Bytes} * 100
In the Savings panel shown above, the Percent Savings for FTP is 50% and
bandwidth savings is 2x, which is calculated as Client Bytes/Server Bytes.
Note: The graph in the percent savings column represents savings over the
last hour, while the label reflects the percent savings in the last minute. For
more information on bandwidth savings, click on any row and navigate to the
Statistics > Traffic History page. By default, the traffic history page displays
bandwidth usage and bandwidth gain statistics for the corresponding service
over the last hour.
The Interface Utilization panel displays statistics on interface use, reveals network
performance issues, if any, and helps determine the need to expand your network.
❐ Interface:
The interfaces are labeled with an adapter number followed by an
interface number. For example, on 2-port bridge cards, the interface number is
0 for WAN and 1 for LAN connections; 4-port bridge cards have 0 and 2 for
WAN and 1 and 3 for LAN.
❐ Link state:
Indicates whether the interface is in use and functioning. It also
displays the duplex settings and includes the following information:
• Up or Down: Up indicates that the link is enabled and can receive and
transmit traffic. Down indicates that the link is disabled and cannot pass
traffic.
• Auto or Manual: Indicates whether the link is auto-negotiated or manually
set
• 10Mbps, 100 Mbps or 1Gbps: Displays the capacity of the link.
• FDX or HDX: Indicates whether the interface uses full duplex or half duplex
connection, respectively. In some cases, if a duplex mismatch occurs when
the interface is auto-negotiated and the connection is set to half-duplex,
the display icon changes to a yellow warning triangle. If you view a
duplex mismatch, you can adjust the interface settings in the Configuration
> Network > Adapters tab.
37
Advanced Secure Gateway Administration Guide
❐ Transmit Rate and Receive Rate: Displays number of bits processed per second,
on each interface.
The graphs in the transmit rate and receive rate columns represent interface
activity over the last hour, while the value in the label represents interface
activity over the last minute.
❐ Errors: Displays the number of transmission errors, if any, in the last hour.
Interfaces with input or output errors are displayed in red.
For more information on an interface, click on any row; the Statistics > Network >
Interface History page displays.
This information is also displayed on the Management Console banner and under
Configuration > General > Identification. To assign a name to your Advanced Secure
Gateway, see "Configuring the Advanced Secure Gateway Appliance Name" on
page 44.
38
The Statistics area displays the current percentages of CPU usage and memory
utilization, and the number of concurrent users. Concurrent users represents the
number of unique IP addresses that are being intercepted by the Advanced Secure
Gateway. For more information on these key resources, click the link; the
corresponding panel under Statistics > System > Resources displays.
❐ The Statistics panel also displays whether the Advanced Secure Gateway is
enabled to act as Client Manager for ProxyClient and Unified Agent users.
The status information displayed for the remote clients include the following
options:
The Connectivity area displays the status of external devices and services that the
Advanced Secure Gateway appliance relies on, for effective performance. The
status indicates whether the appliance is able to communicate with the external
devices and services that are configured on it.
The external devices or services, that can be configured on the Advanced Secure
Gateway, include:
❐ WCCP capable routers/switches
❐ External ICAP devices (such as Blue Coat ProxyAV or Content Analysis
appliances)
❐ DNS Servers
❐ Authentication realms
Only those external devices or services that are configured on the Advanced
Secure Gateway are displayed on this panel. If, for example, ICAP is not yet
enabled on the Advanced Secure Gateway, ICAP is not listed in the connectivity
panel.
The connectivity status for these external devices is represented with an icon —
Ok, Warning, or Critical. The icon and the text portray the most severe health
status, after considering all the health checks configured, for the device or service.
39
Advanced Secure Gateway Administration Guide
With the exception of WCCP, click on any row to view the health status details in
the Statistics > Health Checks tab. The Statistics > Health Checks tab provides
information on the general health of the Content Analysis services configured on
the Advanced Secure Gateway, allows you to perform routine maintenance tasks
and to diagnose potential problems. For more information on health checks, see
"Verifying the Health of Services Configured on the ProxySG" on page 1541.
To view details on the status of WCCP capable devices in your network, click on
the WCCP service row, the Statistics> Network > WCCP tab displays. The Statistics >
Network > WCCP tab provides information on the configured service groups and
their operational status. For more information on how to configure WCCP on the
Advanced Secure Gateway, see Chapter 33: "WCCP Configuration" on page 813.
For more detailed information about WCCP, refer to the WCCP Reference Guide.
If you do not respond within the 30-second period, you are logged out and lose all
unsaved changes. To log in again, click the You need to log in again to use the console
hyperlink in the browser (legacy Management Console only). To log out
completely, close the browser window.
40
Section 2 Accessing the Advanced Secure Gateway Using the CLI
You can connect to the Advanced Secure Gateway command-line interface via
Secure Shell (SSH) using the IP address, username, password that you defined
during initial configuration. The SSH management console service is configured
and enabled to use SSHv2 and a default SSH host key by default. If you wish to
access the CLI, you can use SSHv2 to connect to the Advanced Secure Gateway.
An SSH host key for SSHv2 and an SSH management service are configured by
default. If you want to use SSHv1 or Telnet without additional configuration.
Note: You can also access the CLI using Telnet or SSH v1. However, these
management services are not configured by default. For instructions on
configuring management services, see Chapter 71: "Configuring
Management Services" on page 1449.
41
Advanced Secure Gateway Administration Guide
Note: Most tasks can be performed in both the Management Console and the
CLI. This guide covers procedures for the Management Console; refer to the
Command Line Interface Reference for related CLI tasks. Tasks that are available only
in the Management Console or only in the CLI are noted as such.
42
Section 3 Configuring Basic Settings
This sections describes how to configure basic settings, such as the Advanced
Secure Gatewayappliance name, time settings, and login parameters. It includes
the following topics:
❐ "How Do I...?" on page 43
❐ "Configuring the Advanced Secure Gateway Appliance Name" on page 44
❐ "Changing the Login Parameters" on page 45
❐ "Viewing the Appliance Serial Number" on page 48
❐ "Configuring the System Time" on page 49
❐ "Synchronizing to the Network Time Protocol" on page 52
How Do I...?
To navigate this section, identify the task to perform and click the link:
Locate the Appliance Serial Number? "Viewing the Appliance Serial Number" on
page 48
Configure the local time on the "Configuring the System Time" on page 49
Advanced Secure Gateway?
Configure the time for console log out on "Changing the Advanced Secure Gateway
the Advanced Secure Gateway? Timeout" on page 47
43
Advanced Secure Gateway Administration Guide
44
Section 5 Changing the Login Parameters
You can change the console username and password, the console realm name
which displays when you log in to the appliance, and the auto-logout time. The
default value is 900 seconds.
The Management Console requires a valid administrator username and password
to have full read-write access; you do not need to enter a privileged-mode
password as you do when using the CLI. A privileged-mode password, however,
must already be set.
2. Edit the username of the administrator that is authorized to view and revise
console properties. Only one console account exists on the Advanced Secure
Gateway. If you change the console account username, that username
overwrites the existing console account username. The console account
username can be changed to anything that is not null and contains no more
than 64 characters.
45
Advanced Secure Gateway Administration Guide
Note: This does not change the enabled-mode password. You can only
change the enabled-mode password through the CLI.
4. Refresh the screen, which forces the SGOS software to re-evaluate current
settings. When challenged, enter the new password.
5. (Optional) Restrict access by creating an access control list or by creating a
policy file containing <Admin> layer rules. For more information, see
"Limiting Access to the ProxySG" on page 75.
46
Realm Name
47
Advanced Secure Gateway Administration Guide
48
Section 2 Configuring the System Time
To manage objects, the Advanced Secure Gateway must know the current
Coordinated Universal Time (UTC), which is the international time standard and
is based on a 24-hour clock. The Advanced Secure Gateway accesses the Network
Time Protocol (NTP) servers to obtain accurate UTC time and synchronizes its
time clock.
By default, the Advanced Secure Gateway connects to an NTP server in the order
they are listed on the NTP tab and acquires the UTC time. You can view UTC time
under UTC in the Configuration > General > Clock > Clock tab. If the appliance cannot
access any of the listed NTP servers, you must manually set the UTC time.
You can, however, also record time stamps in local time. To record time stamps in
local time, you must set the local time based on your time zone. The Advanced
Secure Gateway appliance ships with a limited list of time zones. If a specific time
zone is missing from the included list, you can update the list at your discretion.
The list can be updated by downloading the full time zone database from http://
download.bluecoat.com/release/timezones.tar. Also, the time zone database
might need to be updated if the Daylight Savings rules change in your area.
49
Advanced Secure Gateway Administration Guide
2. Click Set Time zone. The Time Zone Selection dialog displays.
3. Select the time zone that represents your local time. After you select the local
time zone, event logs record the local time instead of GMT. To add additional
time zones to the list, update the appliance's time zone database, as described
in the following procedure.
4. Click OK to close the dialog.
5. Click Apply.
50
To update the database:
1. Select Configuration > General > Clock > Clock.
2. Enter the URL from which the database will be downloaded or click Set to
default.
3. Click Install.
51
Advanced Secure Gateway Administration Guide
52
To add an NTP server:
1. Select Configuration > General > Clock > NTP.
53
Advanced Secure Gateway Administration Guide
Basic Ports
This table presents the non-configurable ports which must be available.
Networking Ports
This table presents ports required for networking, when the listed features are
enabled.
54
Port Protocol Direction Description
88 TCP/UDP Out Kerberos, used in IWA Direct authentication realms
445 TCP Out SMB, used in IWA Direct authentication realms
389 TCP Out LDAP, used in IWA Direct authentication realms
Other Ports
This table presents other ports which are required when the indicated feature is in
use.
55
Advanced Secure Gateway Administration Guide
56
Chapter 3: Licensing
This section describes ProxySG licensing behavior and includes the following
topics:
❐ "About Licensing" on page 57
❐ "Disabling the Components Running in Trial Period" on page 63
❐ "Registering and Licensing the Appliance" on page 63
❐ "Enabling Automatic License Updates" on page 71
❐ "Viewing the Current License Status" on page 72
About Licensing
Each ProxySG requires a license to function. The license is associated with an
individual serial number and determines what software features are available
and the number of concurrent users that are supported.
When you configure a new hardware appliance, the Blue Coat configuration
wizard automatically installs a trial license that allows you to use all software
features with support for an unlimited number of concurrent users for 60 days.
(Trial periods are not applicable to virtual or
The following sections describe the licensing options:
❐ "License Expiration" on page 62
❐ "License Types" on page 60
❐ "License Expiration" on page 62
Note: The information in this chapter does not apply to the Secure Web
Gateway Virtual Appliance (SWG VA). For licensing and upgrade information
specific to the SWG VA, refer to the Secure Web Gateway Initial Configuration
Guide.
License Editions
The license edition determines what features are available. ProxySG supports
two license editions:
❐ Proxy Edition License—Supports all security and acceleration features. The
Proxy Edition allows you to secure Web communications and accelerate the
delivery of business applications.
❐ MACH5 Edition License—Supports acceleration features and Blue Coat
Cloud Service; on-box security features are not included in this edition. The
MACH5 base license allows acceleration of HTTP, FTP, CIFS, DNS, MAPI,
and streaming protocols.
57
During the setup process, you indicate how you will deploy the appliance, which
determines trial license edition is installed. If you indicate that you will be using
the appliance as an acceleration node, a MACH5 trial license is installed. For other
deployment types, the wizard prompts you to select Proxy edition.
Proxy Edition and MACH5 license edition can run on any platform. The only
differences are the supported software features and the default configuration
settings. These differences are described in the following sections:
❐ "Differences in Default Configuration Settings"
❐ "MACH5 Feature Set" on page 59
❐ "Switching Between the License Editions" on page 60
58
MACH5 Feature Set
The MACH5 license edition provides a subset of the full feature set provided by
the Proxy Edition license. The following table describes feature support on an
appliance running a MACH5 license:
ADN Supported
59
Table 3–1 MACH5 Feature Support (Continued)
License Types
The following license types are available:
❐ Trial—The 60-day license that ships with new physical appliances. All
licensable components for the trial edition are active and available to use. In
addition, the Base SGOS user limit is unlimited. When a full license is
installed, any user limits imposed by that license are enforced, even if the trial
period is still valid.
❐ Demo—A temporary license that can be requested from Blue Coat to extend
the evaluation period.
60
❐ Permanent—A license for hardware platforms that permanently unlocks the
software features you have purchased. When a permanent license is installed,
any user limits imposed by that license are enforced, even if the trial period is
still valid.
❐ Subscription-based—A license that is valid for a set period of time. After you
have installed the license, the ProxySG appliance will have full functionality,
and you will have access to software upgrades and product support for the
subscription period.
Licensing Terms
ProxySG Appliances
Within sixty (60) days of the date from which the user powers up the ProxySG
(“Activation Period”), the Administrator must complete the ProxySG licensing
requirements as instructed by the ProxySG appliance to continue to use all of the
features. Prior to the expiration of the Activation Period, the ProxySG software
will deliver notices to install the license each time the Administrator logs in to
manage the product. Failure to install the license prior to the expiration of the
Activation Period may result in some ProxySG features becoming inoperable until
the Administrator has completed licensing.
ProxyClient/Unified Agent
The Administrator may install ProxyClient or Unified Agent only on the number
of personal computers licensed to them. Each personal computer shall count as
one “user” or “seat.” The ProxyClient or Unified Agent software may only be
used with Blue Coat ProxySG appliances. The Administrator shall require each
user of the Blue Coat ProxyClient software to agree to a license agreement that is
at least as protective of Blue Coat and the Blue Coat ProxyClient or Unified Agent
software as the Blue Coat EULA.
61
number of concurrent users/connections, features may not function beyond the
maximum number of concurrent users/connections. This means that, in these
cases, the network traffic will only be affected by the default policy set by the
Administrator (either pass or deny). Such cessation of functionality is by design,
and is not a defect in the Virtual Appliances. The Administrator may not install
the same license key or serial number on more than one instance of the Virtual
Appliance. The Administrator may move the Virtual Appliance along with its
license key and serial number to a different server, provided that server is also
owned by the Administrator and the Administrator permanently deletes the prior
instance of the Virtual Appliance on the server on which it was prior installed.
The Virtual Appliances require a third party environment that includes software
and/or hardware not provided by Blue Coat, which the Administrator will
purchase or license separately. Blue Coat has no liability for such third party
products.
License Expiration
When the base license expires, the appliance stops processing requests and a
license expiration notification message is logged in the Event Log (see "Viewing
Event Log Configuration and Content" on page 1505 for details on how to view
the event log).
In addition, for services set to Intercept:
❐ In a transparent deployment, if the default policy is set to Allow, the appliance
acts as if all services are set to Bypass, passing traffic through without
examining it. If default policy is set to Deny, traffic to these services is denied
with an exception. For details, see "Exceptions Due to Base License
Expiration" .
❐ In an explicit deployment, regardless of the default policy setting, traffic to
these services is denied with an exception. For details, see "Exceptions Due to
Base License Expiration" .
62
You can still perform configuration tasks through the CLI, SSH console, serial
console, or Telnet connection. Although a component is disabled, feature
configurations are not altered. Also, policy restrictions remain independent of
component availability.
Note: Because licensing trial periods are not offered on the VA, this option is not
available on virtual appliances.
63
❐ After the initial license installation, you might decide to use another feature
that requires a license. The license must be updated to support the new
feature.
64
5. Enter your BlueTouch Online credentials and click Register Now. This opens a
new browser page where you complete the registration process. When the
hardware is successfully registered, the Registration Status field on the License
Warning tab will display the Hardware auto-registration successful
message. You can close the new browser tab or window that displays the
License Self-service page.
6. Click Continue.
3a
3b
3. Enter information:
a. Enter your BlueTouch Online account login information.
b. Click Request License. The console displays the Confirm License Install
dialog.
c. Click OK to begin license retrieval (the dialog closes).
4. (Optional) Click Show results to verify a successful retrieval. If any errors occur,
check the ability for the appliance to connect to Internet.
5. Click Close to close the Request License Key dialog.
6. To validate the license, restart the appliance.
In the Management Console, select Maintenance > Tasks.
• Click Hardware and Software.
• Click Restart now.
65
Manually Installing the License
Perform manual license installation if:
❐ The ProxySG serial number is not associated with a software license (you have
registered the hardware separately)
❐ The ProxySG appliance is unable to access the licensing portal.
Beyond the initial setup, you must ensure that your Advanced Secure
Gateway appliance has access to the licensing server, as the Content Analysis
subscription services constantly validate the licenses you’ve purchased.
Note: Locate the email from Blue Coat that contains the activation code(s) for
your software. You require these activation codes, as well as your appliance serial
number, to complete the licensing process on the Blue Coat Licensing Portal.
66
Download and manually install the license:
Tip: Follow these steps if the appliance does not have access to the Internet. In the
activation email, click the link to the Licensing Portal. The browser opens the
portal on the main page.
1. Select > License Download. The portal prompts you for your appliance serial
number.
67
2. Follow the prompts to enter your serial number and download the license file.
3. Save the license file to a location that your appliance can access.
4. In the Management Console, select Maintenance > Licensing > Install, and then
select the appropriate option from the License Key Manual Installation drop-down
list:
Note: A message is written to the event log when you install a license through
the ProxySG.
68
Section 1 Adding an Add-on License
If you purchased a supplemental license to enable add-on features, you must
update the license by logging into the Blue Coat Licensing Portal and
generating the license activation code. To do this, you must have the code for
your ordered add-on feature that was sent in the e-mail from Blue Coat and
the hardware serial number of the appliance that is to run the add-on feature.
69
The portal displays a screen with license details for the software add-on. You
can click Back and proceed to the next section.
70
Section 2 Enabling Automatic License Updates
The license automatic update feature allows the ProxySG to contact the Blue Coat
licensing Web page 31 days before the license is to expire. If a new license has
been purchased and authorized, the license is automatically downloaded. If a new
license is not available on the Web site, the ProxySG continues to contact the Web
site daily for a new license until the current license expires. Outside the above
license expiration window, the ProxySG performs this connection once every 30
days to check for new license authorizations. This feature is enabled by default.
71
Section 3 Viewing the Current License Status
You can view the license status in the Management Console in the following
ways:
❐ Select Statistics > Configuration > Maintenance. The license status displays as a link
in the upper right hand-corner. Hovering over the license link displays
information, such as the expiration date of the trial period. Click the link to
switch to the View license tab.
❐ Select Maintenance > Licensing > View. The tab displays the license components
with expiration dates.
❐ Select Maintenance > Health Monitoring. The tab displays thresholds for license
expiration dates.
Current high-
level license
data
For more
details, select
a license
component
and click View
Details.
Each licensable component is listed, along with its validity and its expiration
date.
• To view the most current information, click Refresh Data.
• Highlight a license component and click View Details. A dialog displays
more detailed information about that component.
• If the trial period is enabled and you click Maintenance > Licensing > View, the
Management Console displays an option to disable the trial components.
If the trial period is disabled, the Management Console displays an option
to enable the trial components.
72
See Also
❐ "About Licensing" on page 57
❐ "Disabling the Components Running in Trial Period" on page 63
❐ "Locating the System Serial Number" on page 64
❐ "Obtaining a BlueTouch Online Account" on page 64
❐ "Registering and Licensing Blue Coat Appliance and Software" on page 64
73
74
Chapter 4: Controlling Access to the ProxySG
This section describes how to control user access to the ProxySG. It includes the
following topics:
❐ "Limiting Access to the ProxySG" on page 75
❐ "About Password Security" on page 76
❐ "Limiting User Access to the ProxySG—Overview" on page 77
❐ "Moderate Security: Restricting Management Console Access Through the
Console Access Control List (ACL)" on page 80
❐ "Maximum Security: Administrative Authentication and Authorization
Policy" on page 81
75
To clear the front-panel PIN, enter:
SGOS#(config) security front-panel-pin 0000
❐ Use the reset button (if the appliance has a reset button) to delete all system
settings. Otherwise, reset the to its factory settings by holding down the left
arrow key on the front-panel for 5 seconds. The appliance will be reinitialized.
To reconfigure the appliance or secure the serial port, refer to the hardware guides
for your appliance.
76
the ProxySG using an encrypted-password command (which is available in
several modes and described in those modes). If you use a third-party encryption
application, verify it supports RSA encryption, OAEP padding, and Base64
encoded with no new lines.
These passwords, set up during configuration of the external service, include:
❐ Access log FTP client passwords (primary, alternate)—For configuration
information, see "Editing the FTP client" on page 700.
❐ Archive configuration FTP password—For configuration information, see
Chapter 5: "Backing Up the Configuration" on page 85.
❐ RADIUS primary and alternate secret—For configuration information, see
Chapter 60: "RADIUS Realm Authentication and Authorization" on page
1253.
❐ LDAP search password—For configuration information, see "Defining LDAP
Search & Group Properties" on page 1210.
❐ Content filter download passwords—For configuration information, see
"Downloading the Content Filter Database" on page 427.
Note: If Telnet Console access is configured, Telnet can be used to manage the
ProxySG with behavior similar to SSH with password authentication.
SSL configuration is not allowed through Telnet, but is permissible through SSH.
Behavior in the following sections that applies to SSH with password
authentication also applies to Telnet. Use of Telnet is not recommended because it
is not a secure protocol.
77
Using the access control list (ACL) allows you to further restrict use of the
console account and SSH with RSA authentication to workstations identified
by their IP address and subnet mask. When the ACL is enforced, the console
account can only be used by workstations defined in the console ACL. Also,
SSH with RSA authentication connections are only valid from workstations
specified in the console ACL (provided it is enabled).
After setting the console account username, password, and Enable
(privileged-mode) password, use the CLI or the Management Console to
create a console ACL. See "Moderate Security: Restricting Management
Console Access Through the Console Access Control List (ACL)" on page 80.
❐ Per-user RSA public key authentication—moderate security
Each administrator’s public keys are stored on the appliance. When
connecting through SSH, the administrator logs in with no password
exchange. Authentication occurs by verifying knowledge of the
corresponding private key. This is secure because the passwords never go
over the network.
This is a less flexible option than CPL because you cannot control level of
access with policy, but it is a better choice than sharing the console credentials.
❐ Blue Coat Content Policy Language (CPL)—maximum security
CPL allows you to control administrative access to the ProxySG through
policy. If the credentials supplied are not the console account username and
password, policy is evaluated when the ProxySG is accessed through SSH
with password authentication or the Management Console. Policy is never
evaluated on direct serial console connections or SSH connections using RSA
authentication.
• Using the CLI or the Management Console GUI, create an authentication
realm to be used for authorizing administrative access. For administrative
access, the realm must support BASIC credentials—for example, LDAP,
RADIUS, Local, or IWA with BASIC credentials enabled.
• Using the Visual Policy Manager, or by adding CPL rules to the Local or
Central policy file, specify policy rules that: (1) require administrators to
log in using credentials from the previously-created administrative realm,
and (2) specify the conditions under which administrators are either
denied all access, given read-only access, or given read-write access.
Authorization can be based on IP address, group membership, time of
day, and many other conditions. For more information, refer to the Visual
Policy Manager Reference.
• To prevent anyone from using the console credentials to manage the
ProxySG, set the console ACL to deny all access (unless you plan to use
SSH with RSA authentication). For more information, see "Moderate
Security: Restricting Management Console Access Through the Console
Access Control List (ACL)" on page 80. You can also restrict access to a
single IP address that can be used as the emergency recovery workstation.
78
The following chart details the various ways administrators can access the
ProxySG console and the authentication and authorization methods that apply to
each.
Security Measures Available Serial SSH with SSH with RSA Management
Console Password Authentication Console
Authentication
Notes
❐ When using SSH (with a password) and credentials other than the console
account, the enable password is actually the same as the login password. The
privileged mode password set during configuration is used only in the serial
console, SSH with RSA authentication, or when logging in with the console
account.
❐ In this case, user credentials are evaluated against the policy before executing
each CLI command. If you log in using the console account, user credentials
are not evaluated against the policy.
79
Section 1 Moderate Security: Restricting Management Console Access
Through the Console Access Control List (ACL)
The ProxySG allows you to limit access to the Management Console and CLI
through the console ACL. An ACL, once set up, is enforced only when console
credentials are used to access either the CLI or the Management Console, or when
an SSH with RSA authentication connection is attempted. The following
procedure specifies an ACL that lists the IP addresses permitted access.
To create an ACL:
1. Select Configuration > Authentication > Console Access > Console Access.
2b
2a
c. Click OK to add the workstation to the ACL and return to the Console
Access tab.
Important: Before you enforce the ACL, verify the IP address for the
workstation you are using is included in the list. If you forget, or you find
that you mis-typed the IP address, you must correct the problem using the
serial console.
80
5. Click Apply.
Note: If you choose a realm that relies on an external server and that server is
unavailable, the appliance will not be able to authenticate against that realm.
For best security, the following authentication realms are recommended by Blue
Coat for administrative authentication to the appliance.
❐ IWA-BCAAA (with TLS -- not SSL) with basic credentials
❐ Local
❐ .509 certificate based (including certificate realms; refer to the Common Access
Card Solutions Guide for information)
❐ LDAP with TLS (not SSL)
❐ IWA-Direct with basic credentials
81
❐ RADIUS
The following realms can be configured for administrative authentication, but
pass administrative credentials in clear text. These realms should not be used for
administrative authentication:
❐ Windows SSO
❐ Novell SSO
❐ IWA-BCAAA without SSL or TLS
❐ LDAP without SSL or TLS
Note: Other authentication realms can be used, but will result in administrative
credentials being sent in clear text.
2. Using the Command Line Interface (CLI), create a list of users who need read-
only access. The list must include a username and password for each user.
a. Enter configuration mode in the CLI; this example creates a list called
Read_Access.
#(config)security local-user-list create Read_Access
82
b. Edit the list to add user(s) and to create usernames and passwords.
This example adds a user named Bob Kent.
#(config)security local-user-list edit Read_Access
#(config)user create Bob_Kent
#(config)user edit Bob_Kent
#(config)password 12345
3. Connect the user list (created in Step 2) to the local realm (created in Step 1).
a. In the Configuration > Authentication > Local > Local Main tab, select
MC_Access from the Realm name drop-down menu.
c. In the Action column, right click and select Set. In the Set Action dialog
that displays, click New and select Authenticate. The Add Authentication
Object displays.
83
d. In the Add Authenticate Object dialog that displays, select the local realm
you created in Step 1.
e. Create an Admin Access Layer.
f. In the Source column, right click and select Set. In the Set Source Object
dialog that displays, click New and select User. The Add User Object
dialog displays.
g. Enter the name of the user for whom you want to provide read-only
access.
h. Click OK in both dialogs.
i. In the Action column, right click and select Allow Read-only Access.
5. Click Install Policy.
The user can now log in the Management Console as a user with read-only
access. Repeat step 4 and use Allow Read/Write access to define user access
with read/write privileges
84
Chapter 5: Backing Up the Configuration
85
Section A: About Configuration Archives
This section describes the archive types and explains archive security and
portability.
This section includes the following topics:
❐ "About the Archive Types and Saved Information" on page 86
❐ "About Archive Security" on page 86
❐ "About Archive Portability" on page 87
❐ "What is not Saved" on page 87
86
To create signed archives, your appliance must have an SSL certificate guaranteed
by a CA. You can then use a trusted CA Certificate List (CCL) to verify the
authenticity of the archive.
Use signed archives only when security is high priority. Otherwise, use unsigned
archives. For information about creating secure archives, see "Creating and Saving
a Secure (Signed) Archive" on page 94.
87
Section B: Archiving Quick Reference
This section provides a table of quick reference tasks and describes the high-level
archive creation and restoration tasks.
This section includes the following topics:
❐ "Archiving Quick Reference Table" on page 89
❐ "Overview of Archive Creation and Restoration" on page 90
88
Section 1 Archiving Quick Reference Table
The following table lists common archive management tasks and where to get
more information.
Learn about the archive types "About the Archive Types and Saved
Information" on page 86
89
Overview of Archive Creation and Restoration
The following list describes all of the possible steps required to create and restore
an unsigned, signed, or transferable configuration archive. You do not have to
perform all of these steps to complete a standard, unsigned archive. Non-
standard archiving steps are indicated by the word “Optional.”
1. Optional (for transferable archives only)—Record the configuration-
passwords-key data on the source ProxySG appliance, as described in "Option
1: Recording SSL Keyring and Key Pair Information" on page 99. If you need
to restore the archive onto a different appliance, you must have this data.
Do not lose the password used to encrypt the private key. If you do, you will
not be able to recover your private keys.
2. Optional (for transferable archives only)—Record any other SSL keyring data
you want to save.
3. Determine the type of archive to create—secure or standard. See "About
Archive Security" on page 86.
If you are creating an standard archive, go to Step 5. Otherwise, go to Step 4.
4. Optional (for secure archives only)—Verify that the source ProxySG appliance
has an appliance certificate, as described in "Using the Appliance Certificate to
Sign the Archive" on page 94. If it does not have an appliance certificate:
a. Create a keyring on the appliance.
A keyring contains a public/private key pair. It can also contain a
certificate signing request or a signed certificate.
b. Create a Certificate Signing Request (CSR) and send it to a Certificate
Signing Authority (CA).
c. Have the CA sign the CSR.
To get more information about appliance certificates, see "Managing X.509
Certificates" on page 1281.
5. Archive the configuration:
• Standard, unsigned archive—"Creating and Saving a Standard
Configuration Archive" on page 92.
• Secure archive—"Creating and Saving a Secure (Signed) Archive" on page
94
• Transferable archive—"Creating a Transferable Archive" on page 99.
6. Store the archive in a secure location.
7. If you are restoring the archive to another device, import the configuration-
passwords-key onto the target device, as described in "Restoring an Archived
Key Ring and Certificate" on page 105.
8. Restore the archive, as described in "Restoring a Configuration Archive" on
page 113.
90
Figure 5–1 on page 91 describes the archive creation process.
91
Section C: Creating and Saving a Standard Configuration Archive
Use the Management Console to create a standard archive of the system
configuration. This is the simplest method of archive creation. This type of archive
cannot be transferred to another appliance unless you save the SSL keyrings as
described in Section E: "Preparing Archives for Restoration on New Devices" on
page 97.
2. Select Configuration > General > Archive. The Archive Configuration tab displays.
3b
3a
Note: You can also view the file by selecting Text Editor in the Install
Configuration panel and clicking Install.
92
3. Browse to the location of the archive and click Open. The configuration is
installed, and the results screen displays.
93
Section D: Creating and Saving a Secure (Signed) Archive
This section describes how to use the Management Console to save a secure
(signed) archive of the system configuration. A signed archive is an archive
signed with a digital signature that can only be read by the device that created it,
thus guaranteeing the integrity and authenticity of the archive. To create signed
archives, your appliance must have an SSL certificate guaranteed by a CA.
Signed archives have a .bcsc extension and contain the following files:
❐ show configuration output
❐ PKCS#7 detached signature
This section includes the following topics:
❐ "Using the Appliance Certificate to Sign the Archive" on page 94
❐ "Creating Signed Configuration Archives" on page 95
❐ "Modifying Signed Archives" on page 96
The appliance certificate displays if the appliance has one. Otherwise, the
following error is displayed:
Certificate "appliance-key" not found
4. If the appliance does not have an appliance certificate, create one as follows:
94
a. Create a keyring on the appliance.
A keyring contains a public/private key pair. It can also contain a
certificate signing request or a signed certificate.
b. Create a Certificate Signing Request (CSR) and send it to a Certificate
Signing Authority (CA).
c. Have the CA sign the CSR (this process results in a digital certificate).
d. Import the keyring and certificate as described in "Restoring an
Archived Key Ring and Certificate" on page 105.
For more information about appliance certificates, see "Managing X.509
Certificates" on page 1281.
1. Access the Management Console of the ProxySG appliance you want to back
up:
https://Appliance_IP:8082
2. Select the Configuration > General > Archive > Archive Storage tab.
3. From the Sign archives with keyring drop-down list, select a signing keyring to
use or accept the default (appliance-key).
4. Click Apply.
Note: If you do not click Apply, a pop-up displays when you click Save that
indicates that all unsaved changes will be saved before storing the archive
configuration. The unsaved changes are the Sign archives with keyring option
changes you made in Step 3.
5. From the Save archive drop-down list, select the archive type (Blue Coat
recommends Configuration - expanded).
6. Click Save.
95
A new browser window displays, prompting you to open or save the
configuration to the local disk of the device you are using to access the
ProxySG appliance.
2. Go to the Management Console Home page and view the Software version:
information to verify that the appliance is running the same software version
that was used to create the archive. For example:
Software version: SGOS 6.6.2.2
You can also verify the version from the appliance CLI:
# enable
# show version
96
Section E: Preparing Archives for Restoration on New Devices
While a configuration archive will back up the appliance configuration, that
configuration cannot be transferred to another device unless you save the SSL
keyrings on the appliance—especially the configuration-passwords-key keyring.
The process of creating the archive and saving the associated SSL keyrings is
called creating a transferable archive.
Note: You must also save the SSL keyrings if you plan to restore an encrypted
archive after a reinitialization. When you reinitialize the appliance, new keys get
created, and you will therefore not be able to restore the configuration unless you
first restore the configuration-passwords-key.
97
To ensure that the archive can be transferred to another appliance, you must do
one of the following:
❐ Restore the original configuration-passwords-key keyring
While it is possible to reset each of the passwords using the Management
Console, it is easier to save the original keyring so that you can import it to the
new appliance (before restoring the configuration). Restoring the keyring
allows all previously configured passwords to remain valid after archive
restoration.
❐ Change the encrypted passwords to clear text so that they can be regenerated.
Note: To save an SSL keyring, you must be able to view it. If the key is marked
no-show, you cannot save it.
98
Section 1 Creating a Transferable Archive
This section describes the steps required to create a transferable archive.
2. Go to the Management Console Home page and view the Software version:
information to verify that the appliance is running the same software version
that was used to create the archive. For example:
Software version: SGOS 5.3.0.2 Proxy Edition
You can also verify the version from the appliance CLI:
# enable
# show version
3. Restore the configuration-passwords-key data and any other SSL key data.
Import the configuration-passwords-key keyring as described in "Restoring
an Archived Key Ring and Certificate" on page 105.
4. Select Configuration > General > Archive.
5. Select Local File and click Install.
6. Browse to the location of the archive and click Open. The configuration is
installed, and the results screen displays.
99
To record the configuration-passwords-key keyring on the source appliance:
1. Copy the following template to a text file and use it to record the certificate
information so that you can import and restore it later. This template allows
you to import a certificate chain containing multiple certificates, from the CLI.
Alternatively, you can simply copy the SSL data into a blank text file.
!
ssl ; switches from config mode to config ssl
!
inline keyring show configuration-passwords-key "end-inline"
!
end-inline
inline keyring show default "end-inline"
!
end-inline
!
inline certificate default "end-inline"
!
end-inline
!
! repeat this process for each keyring. Be sure to import the private
key first, then the keyrings certificate
!
exit ; returns to config mode
!
Do not specify your passwords; the system will prompt you for them when
you restore the keys. You can modify the template to include other keyrings
and certificates.
2. From the CLI, access the config prompt (using the serial console or SSH):
# config terminal
100
Keyring ID: configuration-passwords-key
Private key showability: show
Signing request: absent
Certificate: absent
Note: The aes128 and aes256 encryption options are also supported.
This password is used to encrypt the private-key before displaying it. After
confirming the password, the ProxySG appliance displays the encrypted
private-key associated with that keyring.
Important: Do not lose the password used to encrypt the private key. If you
do, you will not be able to recover your private keys.
For example:
#(config ssl)view keypair des3 configuration-passwords-key
Encryption password: *****
Confirm encryption password: *****
-----BEGIN RSA PRIVATE KEY-----
Proc-Type: 4,ENCRYPTED
DEK-Info: DES-EDE3-CBC,D542F10E3FFF899F
101
aFqxQNOD+321IXdQjCGmT+adeQqMiQDAyCOvWd+aJ+OmDjITpd7bwijcxWA89RB8
y65NSia0UmTClY9MM4j6T/fXhBspEu7Wyc/nM+005pJldxTmZgPig6TiIiOlXtMI
ymCLolxjAr+vFSx7ji6jUT13JxZHfksNd9DS06DHLr6hJNERDi9dGog561zlwBo8
zvs0x4PqB+mq05qewmReMs9tnuLkGgBXguH+2Nw9hI0WKEa9KPFWrznD/+zEZbEo
nM+VOwn3nWuqcfRLFoSUP2QBZ581pU3XAUydabBn0uBOMR4a3C+F/W/v0p71jJ9o
JL6Ao/S46A4UgPkuswGMYXo1kG3K2J/Ev4nMBua6HSZgM87DxvMSiCZ1XxlKlBqv
F9P+l1o3mdR3g2LzK1DLTvlcA9pEPbW65gmnpGj/WLqhEyNPm+DkplxMtMESxNqM
4attb8fXAEcRI+1iUWpjxnycqlm+dcFqq6/bLixYSQ4HGXFLx5qTot+FtIvB5h3g
KwQusgaLVTiesn9K7BQK4wjXJKlDclIrog+ET1fkxtj2oA5/7HN10Ar0ogBxsZLj
0LS5fwVfHNkuyNLUXZSAiLLoIqFIvtRiRfiWe3e/eJvazIaErEk40NvIaaXP1j9p
ENzK2dw9WS7xtcU5kAcdoiX1lFONauKDVUkHwhvqz3KnMt1p81fkdUpiD1xaVfMg
s2FApgjAsYciEJxDUfPLzYV1vpOpx6DW3t0D0AlEKkPVNmd9RzlnXjk2CPTdPErC
pKN+EIKs2kqpRE6hHu37zzN06ipPNu2cCSHI/ozc0X4=
-----END RSA PRIVATE KEY-----
For example:
#(config ssl)view certificate appliance-key
-----BEGIN CERTIFICATE-----
MIICUzCCAbygAwIBAgIEFm6QWzANBgkqhkiG9w0BAQUFADBuMQswCQYDVQQGDAIg
IDETMBEGA1UECAwKU29tZS1TdGF0ZTEfMB0GA1UECgwWQmx1ZSBDb2F0IFNHMjAw
IFNlcmllczETMBEGA1UECwwKNDYwNTA2MDAwMTEUMBIGA1UEAwwLMTAuOS41OS4y
MTAwHhcNMDcxMjA0MjAxMTA3WhcNMDkxMjAzMjAxMTA3WjBuMQswCQYDVQQGDAIg
IDETMBEGA1UECAwKU29tZS1TdGF0ZTEfMB0GA1UECgwWQmx1ZSBDb2F0IFNHMjAw
IFNlcmllczETMBEGA1UECwwKNDYwNTA2MDAwMTEUMBIGA1UEAwwLMTAuOS41OS4y
MTAwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAJ/F/Sn3CzYvbFPWDD03g9Y/
O3jwCrcXLU8cki6SZUVl9blgZBTgBY3KyDl2baqZNl2QGwkspEtDI45G3/K2GRIF
REs3mKGxY7fbwgRpoL+nRT8w9qWHO393pGrlJKFldXbYOzn3p31EXUuGRfXkIqeA
919uvOD5gOX0BEzrvDRnAgMBAAEwDQYJKoZIhvcNAQEFBQADgYEASgIR9r2MuRBc
ltHq/Lb5rIXn13wFZENd/viO54YOiW1ZixlpCBbDIkef3DdJZLxVy3x7Gbw32OfE
3a7kfIMvVKWmNO+syAn4B2yasy0nxbSyOciJq1C42yPJ+Bj1MuYDmgIvMP6ne5UA
gYYhe/koamOZNcIuaXrAS2v2tYevrBc=
-----END CERTIFICATE-----
8. Copy the certificate and paste it into the template (copied in step 1) beneath
the inline certificate cert_name "end-inline" line).
9. Optional—For each named keyring that you want to restore, repeat steps 4
to 8.
102
Note: The appliance-key keyring's private key is not viewable, and cannot be
transferred to another ProxySG appliance. The default and passive-attack-
protection-only-key keys typically do not need to be restored either.
10. Save the template with the configuration-passwords-key and other SSL key
data on a secure server.
11. Save the password information (that you used to encrypt the keys) in a secure
place, for example, a restricted access cabinet or safe.
After saving this data, create a configuration archive as described in "Creating a
Transferable Archive" on page 99. When you are ready to restore the archive, you
must first restore the SSL data on the target appliance as described in "Restoring
an Archived Key Ring and Certificate" on page 105.
Note: The commands in the following example are bounded by the document
text area and wrap to the next line. They are not shown here as they would
appear in the CLI. See Step 1 in "Option 1: Recording SSL Keyring and Key Pair
Information" on page 99 to view an example of how the commands should
appear.
!
ssl ; switches from config mode to config ssl
!
inline keyring show configuration-passwords-key "end-inline"
-----BEGIN RSA PRIVATE KEY-----
Proc-Type: 4,ENCRYPTED
DEK-Info: DES-EDE3-CBC,2F6148C8A9902D7F
1lJjGKxpkcWBXj424FhyQJPKRdgHUIxl2C6HKigth6hUgPqsSJj958FbzEx6ntsB
lI+jXj34Ni6U94/9ugYGEqWLCqed77M1/WA4s6U5TCI9fScVuGaoZ0EVhx48lI3N
LGQplOJXmr0L5vNj/e1/LSeCOHg+7ASyY/PaFr9Dk8nRqAhoWMM/PQE1kvAxuXzE
8hccfZaa1lH1MiPWfNzxf1RXIEzA2NcUirDHO63/XU3eOCis8hXZvwfuC+DWw0Am
tGVpxhZVN2KnfzSvaBAVYMh/lGsxdEJjjdNhzSu3uRVmSiz1tPyAbz5tEG4Gzbae
sJY/Fs8Tdmn+zRPE5nYQ/0twRGWXzwXOeW+khafNE3iQ1u6jxbST6fCVn2bxw+q/
bB/dEFUMxreYjAO8/Tu86R9ypa3a+uzrXULixg1LnBcnoSvOU+co5HA6JuRohc5v
86ZPklQ9V4xvApY/+3Q+2mF9skJPsOV01ItYWtrylg9Puw17TE56+k0EAOwU6FWd
dTpGJRguh7lFVmlQl2187NEoyHquttlIHxRPEKRvNxgCzQI3GEOfmD9wcbyxd1nT
103
X11U2YgwwwH0gzJHBQPIfPhE9wJTedm1dhW268kPFonc1UY3dZTq0tiOLwtDfsyx
ForzG9JHhPmlUgLtujsiG5Cg8S183GSyJFqZs8VKxTyby7xa/rMkjtr/lpS++8Tz
GZ4PimFJM0bgcMsZq6DkOs5MmLSRCIlgd3clPSHjcfp+H4Vu0OPIPL98YYPvcV9h
0Io/zDb7MPjIT5gYPku86f7/INIimnVj2R0a0iPYlbKX7ggZEfWDPw==
-----END RSA PRIVATE KEY-----
end-inline
!
inline keyring show default "end-inline"
-----BEGIN RSA PRIVATE KEY-----
Proc-Type: 4,ENCRYPTED
DEK-Info: DES-EDE3-CBC,2F6148C8A99AAAA
2lJjGKxpkcWBXj424FhyQJPKRdgHUIxl2C6HKigth6hUgPqsSJj958FbzEx6ntsC
lI+jXj34Ni6U94/9ugYGEqWLCqed77M1/WA4s6U5TCI9fScVuGaoZ0EVhx48lI3G
LGQplOJXmr0L5vNj/e1/LSeCOHg+7ASyY/PaFr9Dk8nRqAhoWMM/PQE1kvAxuXzW
8hccfZaa1lH1MiPWfNzxf1RXIEzA2NcUirDHO63/XU3eOCis8hXZvwfuC+DWw0Am
tGVpxhZVN2KnfzSvaBAVYMh/lGsxdEJjjdNhzSu3uRVmSiz1tPyAbz5tEG4Gzbae
sJY/Fs8Tdmn+zRPE5nYQ/0twRGWXzwXOeW+khafNE3iQ1u6jxbST6fCVn2bxw+q/
bB/dEFUMxreYjAO8/Tu86R9ypa3a+uzrXULixg1LnBcnoSvOU+co5HA6JuRohc5v
86ZPklQ9V4xvApY/+3Q+2mF9skJPsOV01ItYWtrylg9Puw17TE56+k0EAOwU6FWd
dTpGJRguh7lFVmlQl2187NEoyHquttlIHxRPEKRvNxgCzQI3GEOfmD9wcbyxd1nT
X11U2YgwwwH0gzJHBQPIfPhE9wJTedm1dhW268kPFonc1UY3dZTq0tiOLwtDfsyx
ForzG9JHhPmlUgLtujsiG5Cg8S183GSyJFqZs8VKxTyby7xa/rMkjtr/lpS++8Tz
GZ4PimFJM0bgcMsZq6DkOs5MmLSRCIlgd3clPSHjcfp+H4Vu0OPIPL98YYPvcV9h
0Io/zDb7MPjIT5gYPku86f7/INIimnVj2R0a0iPYlbKX7ggZEfWDPw==
-----END RSA PRIVATE KEY-----
end-inline
!
inline certificate default "end-inline"
-----BEGIN CERTIFICATE-----
MIICUzCCAbygAwIBAgIEFjnHtzANBgkqhkiG9w0BAQQFADBuMQswCQYDVQQGDAJB
VTETMBEGA1UECAwKU29tZS1TdGF0ZTEfMB0GA1UECgwWQmx1ZSBDb2F0IFNHMjAw
IFNlcmllczETMBEGA1UECwwKMjEwNzA2MzI1ODEUMBIGA1UEAwwLMTAuOS41OS4x
NTwwHhcNMDcxMDI1MTkxNzExWhcNMTcxMDI1MTkxNzExWjBuMQswCQYDVQQGDAJB
VTETMBEGA1UECAwKU29tZS1TdGF0ZTEfMB0GA1UECgwWQmx1ZSBDb2F0IFNHMjAw
IFNlcmllczETMBEGA1UEdwwKMjEwNzA2MzI1ODEUMBIGA1UEAwwLMTAuOS41OS4x
NTEwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBANF9BL25FOJuBIFVyvjo3ygu
ExUM0GMjF1q2TRrSi55Ftt5d/KNbxzhhz3i/DLxlwh0IFWsjv9+bKphrY8H0Ik9N
Q81ru5HlXDvUJ2AW6J82CewtQt/I74xHkBvFJa/leN3uZ+D+fiZTXO15m9+NmZMb
zzGGbCWJRzuqp9z1DVNbqgMBAAEwDQYJKoZIhvcNAQEEBQADgYEAwMUYIa1KFfI0
J+lS/oZ+9g9IVih+AEtk5nVVLoDASXuIaYPG5Zxo5ddW6wT5qvny5muPs1B7ugYA
wEP3Eli+mwF49Lv4NSJFEkBuF7Sgll/R2Qj36Yjpdkxu6TPX1BKmnEcpoX9Q1Xbp
XerHBHpMPwzHdjl4ELqSgxFy9aei7y8=
-----END CERTIFICATE-----
end-inline
104
!
! repeat this process for each keyring. Be sure to import the private
key first, then the keyrings certificate
!
exit ; returns to config mode
!
Important: Blue Coat strongly recommends recording your SSL keyring and
key pair data because changing encrypted passwords to clear text is highly
insecure. Use the following procedure at your own risk.
You can edit the configuration to change encrypted passwords to clear text if you
choose to keep the existing configuration-passwords-key keyring intact on the
new appliance. You do not need to change hashed passwords to clear text—when
you restore the archive, new hashed-passwords are automatically generated using
the target ProxySG appliance’s configuration-passwords-key keyring.
Important: This procedure is not valid for signed archives. Signing guarantees
that the archive has not been modified.
Note: Hashed passwords do not have to be changed to clear text. When you
restore the archive, they are restored as specified on the source device. The
difference between hashing and encryption is that encryption enables
information to be decrypted and read, while hashing is a mathematical
function used to verify the validity of data. For example, a system might not
need to know a user’s password to verify that password. The system can run a
hash function on the password and confirm that the mathematical result
matches that specified for the user.
105
Note: You can also import a certificate chain containing multiple certificates.
Use the inline certificate command to import multiple certificates through
the CLI. See "Example: Completed SSL Data Template" on page 103 for more
information.
If you are importing a keyring and one or more certificates onto a ProxySG
appliance, first import the keyring, followed by its related certificate. The
certificate contains the public key from the keyring, and the keyring and
certificate are related.
5a
5b
5c
5d
5e
106
7. Click Apply.
The configuration-passwords-key does not have a certificate. However, if one or
more keyrings has a certificate, you must import it and associate it with a keyring.
107
Section F: Uploading Archives to a Remote Server
This section describes how to create an archive and upload it to a remote server.
Archives can be uploaded using HTTPS, HTTP, FTP, or TFTP. If you are concerned
about security, use HTTPS.
This section includes the following topics:
❐ "Creating and Uploading an Archive to a Remote Server" on page 109
❐ "Adding Identifier Information to Archive Filenames" on page 111
108
Section 2 Creating and Uploading an Archive to a Remote Server
Use the following procedure to create a signed or unsigned archive and upload it
to a secure, remote host.
1. If you use HTTPS, you must specify an SSL device profile to use for the SSL
connection.
An SSL device profile, which can be edited, contains the information required
for device authentication, including the name of the keyring with the private
key and certificate this device uses to authenticate itself. The default keyring is
appliance-key. (For information on private keys, public keys, and SSL device
profiles, see "Managing X.509 Certificates" on page 1281.)
2. Obtain write permission to a directory on a secure, remote host. This is where
the archive will be stored.
3. Access the Management Console of the ProxySG appliance you want to back
up:
https://Appliance_IP:8082
7a
7b
7c
7d
7e
6. For signed archives, ensure that a keyring has been selected in the Sign archive
with keyring option.
109
a. From the Protocol drop-down list, select an upload protocol.
In the preceding example, the %H%A prefix adds the hour (in 24-hour
format) and the full weekday name. Various combinations can be used.
See "Adding Identifier Information to Archive Filenames" on page 111 for
a list of allowed substitution values.
c. Optional, for HTTPS—Select an SSL device profile to use for the SSL
connection.
See "Uploading Archives to a Remote Server" on page 108 for more
information about device profiles.
d. Enter the remote server host name or IP address and port number. The
remote server can have an IPv4 or IPv6 address, or be a domain name
that resolves to an IPv4 or IPv6 address.
e. Enter the remote server upload path (not required for TFTP).
110
f. Enter the user name associated with the remote host (not required for
TFTP).
g. Optional—Change the HTTP, HTTPS, or FTP password.
8. Click Upload.
Specifier Description
%% Percent sign.
%a Abbreviated weekday name.
%A Full weekday name.
%b Abbreviated month name.
%B Full month name.
%C The ProxySG appliance name.
%d Day of month as decimal number (01 – 31).
%H Hour in 24-hour format (00 – 23).
%i First IP address of the ProxySG appliance, displayed in x_x_x_x format,
with leading zeros removed.
%I Hour in 12-hour format (01 – 12).
%j Day of year as decimal number (001 – 366).
%l The fourth (last) octet in the ProxySG appliance IP address (For example,
for the IP address 10.11.12.13, %l would be 13)
%m Month as decimal number (01 – 12).
%M Minute as decimal number (00 – 59).
%p Current locale’s A.M./P.M. indicator for 12-hour clock.
%S Second as decimal number (00 – 59).
%U Week of year as decimal number, with Sunday as first day of week (00 –
53).
111
Table 5–2 Filename Specifiers (Continued)
112
Section G: Restoring a Configuration Archive
To restore a configuration archive, you must:
❐ Perform pre-restoration tasks, for example, restoring the SSL configuration.
❐ For signed archives—Select a CCL to use to verify the archive.
❐ Restore the archive.
3. In the Management Console, click the Home link and look for the software
version in the banner to verify that the appliance is running the same software
version that was used to create the archive. The banner displays a version
such as:
SGOS 6.6.2.1 Proxy Edition
You can also verify the version from the appliance CLI:
# enable
# show version
4. Restore the configuration-passwords-key data and any other SSL key data.
Import the configuration-passwords-key keyring as described in "Restoring
an Archived Key Ring and Certificate" on page 105.
5. Select Configuration > General > Archive.
6. Optional, for signed archives—Select a CCL to use to verify the archive from
the Verify signed archive with CCL drop-down list. If you used the appliance-key
keyring, select appliance-ccl.
113
7. Optional, for signed archives—In the Install Configuration panel, check the
setting of the Enforce installation of signed archives option. If this option is
selected, only signed archives can be restored.
Note: Depending on the CA that was used to sign the certificate used for the
archive signature, you might have to import a CA certificate and create an
appropriate CCL. For details, see Chapter 63: "Managing X.509 Certificates"
on page 1281.
114
Section H: Sharing Configurations
To ease initial configuration, you can take a configuration from a running
appliance and use it to configure another appliance. This process is called
configuration sharing. You can take a post-setup configuration file (one that does not
include those configuration elements that are established in the setup console)
from an already-configured ProxySG appliance and push it to a newly-
manufactured or restored system that is to have the same or similar configuration.
Note: Blue Coat Director allows you to push a configuration from one
ProxySG appliance to multiple appliances at the same time. For more
information on using Director, refer to the Blue Coat Director Configuration
and Management Guide.
To create a configuration archive of the source device’s settings using the CLI:
1. Use an SSH client to establish a CLI session with the already configured
ProxySG appliance.
2. From the enable prompt (#), enter the following command:
show configuration post-setup
115
4. On the newly-manufactured ProxySG appliance, retrieve the configuration file
by doing one of the following:
• If you saved the configuration to the clipboard, go to the (config) prompt
and paste the configuration into the terminal.
• If you saved the configuration on a remote server:
At the enable command prompt, enter the following command:
# configure network “url”
116
Section I: Troubleshooting
When pushing a shared configuration or restoring an archived configuration,
keep in mind the following issues:
❐ If the content-filtering database has not yet been downloaded, any policy that
references categories is not recognized.
❐ Unless you restore the SSL configuration-passwords-key keyring from the
source device, archives can only be restored onto the same device that was the
source of the archive. This is because the encrypted passwords in the
configuration (login, enable, FTP, etc.) cannot be decrypted by a device other
than that on which it was encrypted.
❐ Do not take an expanded archive from an operational ProxySG appliance and
install it onto another ProxySG appliance. Expanded archives contain system-
specific settings (for example, hostnames, IP addresses, and connection
forwarding settings) that will cause conflicts.
❐ To use signed archives, your appliance must have an SSL certificate
guaranteed by a CA. If your appliance has a built-in appliance certificate, you
can use it and the corresponding appliance-ccl CCL to sign the archive.
Devices manufactured before July 2006 do not support appliance certificates.
If your appliance does not have a built-in appliance certificate, you must do
the following:
• Create a keyring on the appliance.
A keyring contains a public/private key pair. It can also contain a
certificate signing request or a signed certificate.
• Create a Certificate Signing Request (CSR) and send it to a Certificate
Signing Authority (CA).
• Have the CA sign the CSR.
To determine if your appliance has a built-in certificate, see "Using the
Appliance Certificate to Sign the Archive" on page 94.
See Also
For more information about appliance certificates, see Chapter 63:
"Managing X.509 Certificates" on page 1281.
117
118
Chapter 6: Explicit and Transparent Proxy
119
Manually Configure Client Browsers for Explicit Proxy
If you are using an explicit proxy deployment, you must set up each client Web
browser to use the ProxySG as its proxy server. Typically, the browser proxy
configuration requires the IP address or hostname of the ProxySG appliance and
the port on which the ProxySG will listen for traffic. The default port is 8080. The
required hostname format (that is, whether you must provide a fully qualified
DNS hostname or a short hostname) depends on the DNS configuration on your
client systems.
Use the following table to help you locate the browser proxy settings:
Browser Proxy Configuration Settings
Internet Explorer Tools > Internet Options > Connections > LAN
Settings
Firefox Tools > Options > Advanced > Network > Settings >
Manual Proxy Configuration
Note: NEVER use the ProxySG management port (8081/8082) to host the PAC
file.
120
For additional information about PAC files, see the following:
http://www.proxypacfiles.com/proxypac/
Note: Only the accelerated_pac_base.pac file can be edited. Any text editor can
be used to edit and customize the accelerated PAC file to meet your needs. After
editing the file, you can load a PAC file only through the CLI:
#(config)inline accelerated-pac 123
-paste PAC file here-
123
Then set the browser to use the following URL as the automatic configuration
script: http://Appliance_IP_Address:8080/accelerated_pac_base.pac
121
❐ Use the proxy over port 8080 for URLs containing:
• .company.com.cn anywhere within the URL
• ftp.company.com as the host
• images.company.com as the host
• graphics.company.com as the host
❐ Use the proxy over port 1755 for any URL using the scheme mms://
(Windows Media).
❐ Use the proxy over port 554 for any URL using the scheme rtsp:// (Windows
Media).
❐ Use the proxy over port 8080 for any URL containing
“streaming.company.com” anywhere within the URL.
❐ Go DIRECT (that is, not use a proxy) for any URL that:
• is a simple, one name host name (in other words, not fully qualified)
• is any internal, fully qualified host (for example, host.company.com)
• is any host in the trouble-site.com domain
❐ Otherwise, attempt to use the proxy on port 8080 (the default rule).
The “; DIRECT” after the proxy’s information means that any time the browser
cannot reach the ProxySG, the browser is allowed to fall-back and “go direct.”
This is helpful for laptop/mobile users who will not have to adjust their browser
connection settings manually, since (typically) they can not reach their company
ProxySG from a remote location (and therefore need their browser to “go direct”).
122
To configure the browser to use the PAC script:
It’s common for modern browsers to have a field where the PAC URL can be
entered. Some browsers (Internet Explorer is one example) have an additional
option to retrieve a PAC URL via DHCP option 252 (which may need to be added
to some DHCP servers). Internet Explorer calls this “Automatically detect
settings."
A PAC URL is typically in the form:
http://mycompany.com/accelerated_pac_base.pac
For this to work, your ProxySGTCP port 80 must be configured to accept explicit
connections. Internet Explorer can retrieve this URL via DHCP option 252 if your
DHCP server is configured to send option 252, and the host is using DHCP (as
opposed to a host configured with a static IP address.)
The default name of the accelerated PAC file (as served by the ProxySG) is
accelerated_pac_base.pac.
If you prefer, you can use policy to have the ProxySG return the PAC file if an
alternate name is requested. For example, suppose you configure your browsers
with the PAC file name http://proxy.company.com/mypacfile. You will need to
add policy to your ProxySG to redirect this request to the name
accelerated_pac_base.pac, as follows:
<Proxy>
url.path.exact="/pacfile" action.redirect_pac(yes)
define action redirect_pac
request_redirect(307,".*","http://<proxysIP>/
accelerated_pac_base.pac")
end
You also need to have the HTTP port 80 defined as “explicit” on your ProxySG.
You can avoid this policy, and avoid the need for the browser to make two
requests for the PAC file, by naming the file accelerated_pac_base.pac.
Note: You can also use port 8080, but port 80 is preferred because it doesn’t
require that you specify a port for the PAC-URL in the users’ browsers.
123
3. Configure a redirect policy to convert the client’s http://wpad.example.com/
wpad.dat request into a request for http://Proxy_IP_Address_or_hostname/
accelerated_pac_base.pac to the proxy.
Example policy:
<Proxy>
ALLOW url.path.exact=/wpad.dat action.ReturnRedirect1(yes)
124
❐ It’s best to write your PAC files as small and efficiently as possible. Fast and
efficient Javascript will perform better within the browser, especially on
“busy” web pages.
125
Transparent Proxies
Configure transparent proxy in the following ways:
❐ Through hardware: See "Configuring Transparent Proxy Hardware" on page
126.
❐ Through bridging: "Bridging" on page 126.
❐ Through using the ProxySG as a gateway: See "Configuring IP Forwarding"
on page 127.
In addition to the transparent proxy configuration, you must create a proxy
service for the transparent proxy and enable the service. At this time, you can also
set other attributes for the service, including the destination IP address and port
range. For information on creating or editing a proxy service for transparent
configuration, see Chapter 7: "Managing Proxy Services" on page 129.
Bridging
Network bridging through the ProxySG provides transparent proxy pass-through
and failover support. This functionality allows ProxySGs to be deployed in
environments where L4 switches and WCCP-capable routers are not feasible
options.
The ProxySG provides bridging functionality by two methods:
❐ Software—A software, or dynamic, bridge is constructed using a set of
installed interfaces. Within each logical bridge, interfaces can be assigned or
removed. Note that the adapters must of the same type. Although the
software does not restrict you from configuring bridges with adapters of
different types (10/100 or GIGE), the resultant behavior is unpredictable.
For instructions on setting up a software bridge, see "Configuring a Software
Bridge" on page 1439.
❐ Hardware—The Blue Coat Pass-Through card is a 10/100 dual interface
Ethernet device that enables a bridge, using its two adapters, so that packets
can be forwarded across it. However, if the system crashes, the Pass-Through
card becomes a network: the two Ethernet cables are connected so that traffic
can continue to pass through without restriction.
When the Pass-Through card is installed on the ProxySG, a bridge is
automatically created and traffic going through the bridge is intercepted
according to the proxy-service setting. Note that:
• Forwarding traffic behavior: By default, the bridge forwards packets that
are not to be intercepted.
126
• Proxy request behavior: Requests are proxied on either adapter, so if you
connect one side of the bridge to your Internet connection, there might be
a number of issues.
Configuring IP Forwarding
IP Forwarding is a special type of transparent proxy. The ProxySG is configured to
act as a gateway and is configured so that if a packet is addressed to the ProxySG
adapter, but not its IP address, the packet is forwarded toward the final
destination. If IP forwarding is disabled, the packet is rejected as being mis-
addressed.
By default, IP forwarding is disabled to maintain a secure network.
Important: When IP forwarding is enabled, be aware that all ProxySG ports are
open and all the traffic coming through them is not subjected to policy, with the
exception of the ports that have explicitly defined through the Configuration >
Services > Proxy Services tab.
127
To enable IP forwarding:
1. Select the Configuration > Network > Routing > Gateways tab.
2. Select the Enable IP forwarding option at the bottom of the pane.
3. Click OK; click Apply.
128
Chapter 7: Managing Proxy Services
This chapter discusses proxy services and service groups and their roles in
intercepting traffic.
129
Section A: Proxy Services Concepts
This section describes the purposes of Blue Coat ProxySG proxy services.
❐ "About Proxy Services"
❐ "About Proxy Service Groups" on page 131
❐ "About the Default Listener" on page 132
❐ "About Multiple Listeners" on page 133
❐ "About Proxy Attributes in the Services" on page 134
Important: Upon an upgrade to SGOS 6.x, all services existing before the
upgrade are preserved.
130
❐ Destination address—
Note: For a complete list of supported proxy services and listeners, see
"Reference: Proxy Services, Proxy Configurations, and Policy" on page 172.
Note: This list applies to new installations or the result of restoring the appliance
to factory defaults after the ab upgraded from a lower version. Upon upgrading
to the current version, the Services tab retains existing services, service group
names, and policies.
131
Table 7–1 Service Groups and Services
Note: The HTTPS Reverse Proxy service is also available but not created by
default. For information about configuring the HTTPS Reverse Proxy, see
Chapter 17: "Configuring and Managing an HTTPS Reverse Proxy" on page 365.
132
About Multiple Listeners
A listener identifies network traffic based on a source IP address or range,
destination IP address or range, or both. Multiple listeners can be defined for a
proxy service or console service. Each service has a set of default actions to apply
to the traffic identified by the listeners it owns.
The destination IP address of a connection can match multiple proxy service
listeners. Multiple matches are resolved using the most-specific match algorithm
used by routing devices. A listener is more specific if it has a larger Destination IP
subnet prefix. For example, the subnet 10.0.0.0/24 is more specific than
10.0.0.0/16, which is more specific than 10.0.0.0/8.
When a new connection is established, the ProxySG appliance first finds the most
specific listener destination IP. If a match is found, and the destination port also
matches, the connection is then handled by that listener. If the destination port of
the listener with the most specific destination IP does not match, the next most-
specific destination IP is found; this process continues until either a complete
match is found or no more matching addresses are found. If a destination IP
address is not specified, the closest matching explicit proxy service listener has
priority over a subnet match. In that instance, the explicit proxy service listener
handles the connection instead of the subnet listener. Explicit port 80 listeners
with a destination host IP identical to the ProxySG appliance have priority over
other explicit listeners.
For example, assume the following services were defined as given in the
following table.
An HTTP connection initiated to server 10.167.10.2 could match any of the three
listeners in the above table. The most specific match algorithm finds that a listener
in the New York CRM service is the most specific and since the destination port of
the connection and the listener match, the connection is handled by this service.
The advantage of the most specific match algorithm becomes evident when at
some later point another server is added in the New York Data Center subnet. If
that server needs to be handled by a different service than the New York Data
Center service, a new service with a listener specific to the new server would be
added. The administrator does not need to be concerned about rule order in order
to intercept traffic to this particular server using the new, most specific service
listener.
133
As another example, assume the following service and listeners were defined:
Table 7–3 Second Example Configuration for Most Specific Match Algorithm
L1 HTTP Explicit 80
L2 HTTP 10.0.0.0/8 80
About Authenticate-401
Available on the Explicit HTTP and External HTTP services.
When this option is selected, all transparent and explicit requests received on the
port always use transparent authentication (cookie or IP, depending on the policy
configuration).
If you have deployed Authentication in the way recommended by Blue Coat—
where only the ProxySG appliance nearest the user performs the authentication
tasks—configuring Authenticate-401 is not necessary. However, multiple,
explicitly-configured ProxySG appliances in a proxy chain are all attempting to
perform authentication tasks can cause issues with browsers. By forcing one of
the proxies (recommended: the one furthest away from the client) to use 401-style
authentication instead of the standard proxy 407-style authentication, the browser
can better handle the multiple authentication challenges.
134
If protocol detection is enabled, the appliance inspects the first bytes sent from
the client and determines if a corresponding application proxy is available to
hand off the connection. For example, an HTTP request identified on a TCP
tunnel has full HTTP policy applied to it, rather than just simple TCP tunnel
policy. In particular, this means that:
❐ The request arrives as a client protocol HTTP rather than a TCP Tunnel.
❐ The URL used while evaluating policy is an http:// URL of the tunneled
HTTP request, not a tcp:// URL to which the tunnel was connecting.
❐ Forwarding policy is applied based on the new HTTP request; therefore, the
selected forwarding host selected support HTTP. A forwarding host of type
TCP cannot handle the request, which forces the request to be blocked.
Enabling protocol detection helps accelerate the flow of traffic. However, the TCP
session must be fully established with the client before either the application
proxy or the TCP tunnel proxy contacts the origin server. In some cases, like in the
active-mode FTP data connections, enabling protocol detection might cause a
delay in setting up the connection.
To avoid this connection delay, either use a protocol specific proxy, such as the
FTP proxy, or disable protocol detection.
If protocol detection is disabled, traffic flows over a TCP tunnel without
acceleration provided by a protocol-specific proxy.
135
❐ With early intercept, the ProxySG appliance returns a server acknowledgement
back to the client and waits for the client acknowledgement, which completes
the TCP 3-way handshake, before the appliance connects upstream to the
server. Furthermore, proxies that support object caching (such as HTTP), the
ProxySG appliance serves from the cache—a server connection is not
necessary.
❐ With delayed intercept, the ProxySG appliance attempts to connect upstream
immediately after receiving the client's initial connection request, but waits to
return the server acknowledgement until determining whether or not the
upstream connection succeeds. This provides greater transparency, as the
client receives either an RST or no response, which mirrors what is sent from a
server when connections fail.
For every proxy listener except CIFS and TCP Tunnel services, early intercept is
hard-coded to enabled.
❐ For CIFS, the listener is hard-coded as delayed intercept because of a specific
issue with the way clients attempt to connect to ports 139 and 445
simultaneously. Without a full transparency in our response to the TCP three-
way handshakes, client connections might break.
❐ For TCP Tunnel, you have the option to select either (disabled by default). For
the TCP Tunnel service, the Early Intercept option is selectable and disabled by
default. When this option is disabled, the proxy delays responding to the
client until after it has attempted to contact the server. For maximum
transparency, disable this option. If reduced latency is more important, enable
it.
136
Section B: Configuring a Service to Intercept Traffic
This section describes:
❐ "Changing the State of a Service (Bypass/Intercept)" on page 138
❐ "Moving a Service" on page 146
❐ "Deleting a Service or Service Group" on page 147
❐ "Bypassing All Proxy Services (Troubleshooting)" on page 147
❐ "Importing a Service from the Service Library" on page 148
To learn more details about Blue Coat services, see "Proxy Services Concepts" on
page 130.
137
Section 1 Changing the State of a Service (Bypass/Intercept)
There are two service states:
❐ Bypass—Traffic for this service passes through the ProxySG appliance without
receiving an optimization or policy checking (as applicable).
❐ Intercept—The ProxySG appliance intercepts traffic for this service and applies
optimization or policy checks (as applicable).
Depending on the type of installation performed on the ProxySG appliance, the
state of existing services varies.
Upgrade from a previous SGOS release—Supported services remain in their
original service groups and retain their bypass/intercept states.
❐ New installation or you invoke a re-initialization—All services are set to
Bypass unless during a new installation process, the person performing the
installation might have set some services, such as External HTTP, to Intercept
You cannot change the state of entire predefined group; you must set each service
required for your deployment to Intercept.
Changing the state of a service to Intercept is only the first step in configuring a
protocol proxy. To achieve your corporate deployment goals, you must also
configure the proxy settings and define policy, both of which determine how the
ProxySG appliance processes the intercepted traffic. These aspects are discussed in
each proxy section later in this guide.
For more conceptual information about services, see "About Proxy Services" on
page 130.
2: Click to
expand a group
3 (optional)
2. Click the group name to expand the group. For example, you want to
intercept the CIFS services.
3. Optional: Select the Default Action for traffic that does not match any current
service.
138
Source IP->Destination IP/Port Select action
4. From the drop-down for the service or an individual service port, select to
Bypass or Intercept.
Next Tasks
As previously mentioned, setting a service to Intercept is one step in controlling
specific traffic types. There are other options for the services themselves, plus
proxy configurations and policy definitions. You can also create custom services
and service groups.
139
Section C: Creating Custom Proxy Services
This section describes how to create a new proxy service. Follow this procedure if
you need to create a proxy service for a custom application.
You can also create custom proxy service groups and populate them with custom
services or move default services to them. For example, this ProxySG appliance
serves a specific purpose and you want a custom group that contains only those
services. This procedure discusses creating a service group, creating a new
service, and placing that service in the custom group.
Note: If you only need to change the state of the proxy service (Bypass/Intercept),
you can do so from the main Proxy Services tab. You do not need to enter New/
Edit mode to change this setting.
Before you begin, you must understand the goal of your deployment, how the
application proxy operates, and the IP addresses (source and/or destination) and
ports to intercept. Some proxy services, such as DNS, are simple—comprised only
of IP addresses and ports. Others, such as HTTP, have more attributes to consider.
For a high-level description of these options, see "About Proxy Attributes in the
Services" on page 134.
For specific proxy descriptions, see
2
3
2. At the bottom of the tab, click New Service Group. The New Service Group dialog
displays.
3. In the Service Group field, name the custom service group.
140
4. Click OK. The new service group displays under Custom Service Groups.
6a
6b
6c
6d
141
Note: The Detect Protocol setting is disabled by default. You must select
this check box for filtering to be recognized.
Note: To get the maximum benefit of ADN, both byte caching and
compression should be enabled. In cases where byte caching may be
causing issues for an ADN deployment, you can turn off the Enable byte
caching option and just use compression (or vice versa). If you know the
traffic for this proxy is already compressed or encrypted, you can conserve
resources by clearing the Enable byte caching and Enable compression
options. For additional information about byte caching and compression,
see "ADN Acceleration Techniques" on page 839.
142
Note: For thin client processing to be most effective, you must deactivate
the thin client’s software-based encryption and compression.
Retention priority—You can control how long data is stored in the byte cache
dictionary by assigning a retention priority to a particular service. If you
want to keep certain types of data in the dictionary for as long as possible,
set a high retention priority for the service. Or for data that isn’t likely to
get much benefit from byte caching, you can set a low retention priority for
the related service. Most services are set to normal priority by default. This
option is available only if byte caching is enabled for the service.
You can use this option to preserve the most relevant content in the byte
cache in the face of continually incoming, competing byte cache data. For
example, when an application is being used for backup, you may want to
set the retention priority to high so that competing traffic doesn’t evict the
backup data. However, if an application is being used for data replication,
you may want to set the service’s retention priority to low as the data most
likely will only be hit in the next short duration.
7. Create a listener, or the IP address(es) and ports that this application protocol
uses. In the Listeners area, click New. The New Listener dialog displays.
143
8a
8b
8c
8d
144
See Also
❐ "Moving a Service"
❐ "Importing a Service from the Service Library"
145
Section D: Proxy Service Maintenance Tasks
This section provides various tasks for managing existing services.
❐ "Moving a Service"
❐ "Deleting a Service or Service Group" on page 147
❐ "Bypassing All Proxy Services (Troubleshooting)" on page 147
❐ "Importing a Service from the Service Library" on page 148
Moving a Service
The predefined services are not anchored to their default groups. You can move a
service to any other predefined or custom group.
Note: You must move the entire service; that is, you cannot move individual
service listeners.
2a
2b
2c
146
3. Click Apply.
To delete a service:
1. From the Management Console, select the Configuration > Services > Proxy
Services tab.
Note: Downgrading to a version that does not support force bypass while
running in bypass mode will result in restoration of proxy services.
2. In the Force Bypass area, select the Temporarily bypass all proxy services option.
The bypass statement to red.
3. Click Apply.
147
Importing a Service from the Service Library
Importing a service procedure is required if you delete a default service and want
to re-add it. If you import an existing service, you are prompted to confirm the
replacement of a service. Existing service settings are overwritten with the default
settings.
In addition, after upgrading the software, any new services added to the service
library must be imported if you want to use them.
3a
3b
3c
148
d. Click OK.
4. Click Apply.
149
Section E: Global Options for Proxy Services
This section describes features that apply to all proxies and services. See "Proxy
Service Global Options" for details.
150
Section 2 Proxy Service Global Options
Blue Coat provides optional settings that apply to all proxy services when
configured:
❐ "Ensuring Application Availability (Tunnel on Protocol Error)"
❐ "Using the Client IP Address for Server Connections" on page 153
❐ "Improving Performance by Not Performing a DNS Lookup" on page 154
❐ "Managing Licensed User Connection Limits (ProxySG to Server)" on page
158
Note: You can subscribe to the CachePulse service to optimize HTTP traffic. For
information, see "Enabling CachePulse" on page 208.
SSL Proxy
For the SSL proxy, the Tunnel on Protocol Error option applies when non-SSL
traffic arrives at the SSL port (443 by default). A common scenario that causes this
is having peer-to-peer applications (viz, Skype, BitTorrent, Gnutella, older AOL-
151
IM and eMule) configured to enable port 443 for peer-to-peer traffic without SSL
set as the transport protocol. A ProxySG appliance transparently intercepting all
443 traffic cannot process these connections, rendering the application unusable.
With an explicit proxy deployment, SSL errors during the initial handshake
causes the same issue. The following example illustrates this:
❐ The ProxySG appliance is configured to have an explicit HTTP service on port
8080.
❐ The HTTP service is configured with detect protocol enabled, which hands off
SSL traffic to the SSL proxy from an HTTP CONNECT request. Detect Protocol is
set to OFF by default.
Note: The same applies to an explicit SOCKS proxy deployment with protocol
detection enabled or an explicit TCP listener.
Forwarding Note
Enabling the TCP Tunnel on Error option might cause issues if the ProxySG
appliance has forwarding rules that direct traffic to upstream proxies or other
devices:
❐ Forwarding hosts are not viewed as HTTP proxies (even if they are). The
initial ProxySG HTTP proxy connects with a TCP tunnel to the forwarding
host. If the appliance has a policy to forward and tunnels on error, the
forwarding rule might not match if the forwarding rule has a condition based
on information that is not present—any HTTP conditions, such as:
• Request method
• Request URL
• Request headers
❐ In the case of tunnel on error with explicit proxy, HTTP must match a
forwarding host for the connection of a successful TCP tunnel to occur. If no
forwarding host matches, HTTP will not tunnel on error.
2. In the Tunnel on Protocol Error area, select TCP tunnel requests when a protocol error
is detected.
3. Click Apply.
152
Related Policy
The Visual Policy Manager (VPM) provides the Client Certificate Requested object in
the SSL Intercept Layer > Service column (the equivalent CPL is
client.certificate.requested={yes|no}).Use this policy in conjunction with an
SSL.Intercept(no) action, or a Do Not Intercept SSL action in the VPM, to minimize
traffic disruption when the SSL proxy intercepts secure traffic where the OCS
requests a client certificate.
When Tunnel on Error is enabled, the first detection of a client certificate request
from an OCS causes the connection to fail. The appliance adds the details for that
exchange to an internal list of connections for which SSL interception should be
negated. Subsequent requests function as expected.
You can globally enable the Reflect Client IP option for all services that will be
intercepted. To apply Reflect Client IP option to only a few services, first enable
this option globally and then create policy to disable the Reflect Client IP option
for the exceptions. Or, disable the option globally and create policy to enable it.
153
2. In the Reflect Client IP area, select Reflect client’s source IP when connecting to
servers.
3. Click Apply.
Important: If you enable Reflect Client IP and want the ProxySG appliance to
preserve persistent client connections, you must also add policy.
VPM object: Web Access Layer > Action > Support Persistent Client Requests (static)
CPL:
<proxy>
http.client.persistence(preserve)
154
Figure 7–1 No DNS lookup occurs; the transactions goes straight to the OCS.
Figure 7–2 The ProxySG appliance initiates a DNS lookup and initiates a new connection to the
server.
The ProxySG appliance cannot trust the client-provided destination IP address in
the following situations:
❐ The ProxySG appliance receives the client requests in an explicit proxy
deployment.
❐ The ProxySG appliance has a forwarding rule configured for the request.
❐ The ProxySG appliance has a SOCKS gateway rule configured for the request.
❐ The ProxySG appliance has policy that rewrites the server URL.
A transproxy deployment is one where a client is configured to contact a ProxySG
appliance explicitly, and a new ProxySG appliance is deployed between the client
and its explicit proxy. The new ProxySG appliance, now transparently intercepts
the traffic between the client and its explicit proxy. In a transproxy deployment,
the destination IP address used by the client does not match the host header in the
HTTP request, since the client is configured to use the explicit proxy. The path that
the client request takes in a transproxy deployment depends on whether or not
Trust Destination IP is enabled on the transparently deployed ProxySG appliance.
155
❐ When Trust Destination IP is enabled on the transparent ProxySG appliance, the
transparent proxy trusts the destination IP included in the request and
forwards the request to the explicit proxy which is serviced either from cache
or from the Origin Content Server (OCS).
❐ When Trust Destination IP is disabled on the transparent ProxySG appliance, the
transparent proxy performs a DNS resolution on the host header in the
request. The request is then completed based on the configured policy—
forwarding rules, SOCKS gateway policy, and server URL rewrite policy.
Note: If a client gives the destination address of a blocked site but the host name
of a non-blocked site, with Trust Destination IP enabled, the ProxySG appliance
connects to the destination address. This might allow clients to bypass the
configured security policy for your environment.
156
Configuring the ProxySG Appliance to Trust or Not Trust the
Destination IP Address
To change the current trust destination default setting:
1. Select the Configuration > Proxy Settings > General tab.
157
Section 3 Managing Licensed User Connection Limits (ProxySG to
Server)
This section describes ProxySG appliance how to enable license-enforced user
limits, describes how to monitor user numbers, and describes how to configure
the ProxySG appliance to behave when a limit is breached.
158
Table 7–4 Hardware Models and Licensed Users (Continued)
300-5 30 10
VA-5 10
VA-10 50
VA-15 125
VA-20 300
V-100 Up to 2500
159
❐ "Modifying User Limits Notifications" on page 160—Configure the
ProxySGAdvanced Secure Gateway appliance to monitor and alert you when
a user limit is near.
❐ "Determining Behavior When User Limits are Exceeded" on page 161—
Determine what happens when more user connections than allowed by the
license occurs.
Note: If your platform and license support unlimited user connections, you do
not have to configure user limit notifications because the thresholds cannot be
exceeded. Refer to Table 7–4, "Hardware Models and Licensed Users" on page 158
and Table 7–5, "Virtual Appliance Models and Licensed Users" on page 159 to
determine the limits for your hardware or virtual appliance model.
Note: You can access the Statistics > Health Monitoring > Licensing tab to view
licensing status, but you cannot make changes to the threshold values from that
tab.
160
4a
4b
4. (Optional) Modify the threshold and interval values to your satisfaction. The
thresholds represent the percentage of license use.
a. Modify the Critical and/or Warning Threshold settings. These values are
the percentages of maximums. For example, if the appliance is an
SG810-20 and ADN is enabled, the maximum number of unique users
connections is 1000. With a Warning Threshold value of 80 (percent) and
Critical Threshold value of 90, the notification triggers when user
connectivity reaches 800 and 900, respectively.
b. Modify the Critical and/or Warning Interval settings. These values are the
number of seconds that elapse between user limit checks. By default,
both critical and warning interval checks occur every 120 seconds.
5. Select the notification settings:
• Log adds an entry to the Event Log.
• Trap sends an SNMP trap to all configured management stations.
• Email sends an e-mail to the addresses listed in the Event Logging
properties (Maintenance > Event Logging > Mail).
6. Click OK to close the dialog.
7. Click Apply.
For information about licensing, see Chapter 3: "Licensing" on page 57.
161
❐ Queue connections: All connections exceeding the maximum are queued,
waiting for another connection to drop off.
❐ Do not enforce the licensed user limit: This is the default option for hardware
appliances. This allows for unlimited connections; however, exceeding the
license limit triggers a health monitoring event. This option is not available for
virtual appliances because the ProxySG VA always enforces the licensed user
limit.
2. In the User Overflow Action area, select an action that occurs when the licensed
user limits are exceeded:
• Do not enforce licensed user limit is the default. Unlimited user connections
are possible. If the limit is exceeded, the appliance health changes to
CRITICAL. This option is not available on the ProxySG VA because licensed
user limits are always enforced.
• Bypass connections from users over license limit—Any transaction from a user
whose connection exceeds the licensed limit is not susceptible to policy
checks or any other ProxySG benefit, such as acceleration. This option
provides the best user experience (with the caveat of potentially slower
performance), but presents a Web security risk. This is the default option
for the ProxySG VA.
• Queue connections from users over license limit—Any transaction from a user
whose connection exceeds the licensed limit must wait (in order) for an
available ProxySG connection. This option provides the lowest user
experience (and users might become frustrated and, perceiving a hang,
might attempt request refreshes), but preserves Web security policies.
3. Click Apply.
162
See Also
❐ "Global Options for Proxy Services"
❐ "Enabling Reflect Client Source IP"
❐ "About Trusting the Destination IP Address Provided by the Client"
❐ "Managing Licensed User Connection Limits (ProxySG to Server)"
163
Section F: Exempting Requests From Specific Clients
The bypass list contains IP addresses/subnet masks of client and server
workstations. Used only in a transparent proxy environment, the bypass list
allows the ProxySG appliance to skip processing requests sent from specific
clients to specific servers. The list allows traffic between protocol incompliant
clients and servers to pass through the ProxySG appliance without a disruption in
service.
Note: This prevents the appliance from enforcing any policy on these requests
and disables any caching of the corresponding responses. Because bypass entries
bypass Blue Coat policy, use bypass sparingly and only for specific situations.
164
Section 4 Adding Static Bypass Entries
You can add entries to prevent the ProxySG appliance from intercepting requests
from specified systems.
2. Click New to create a new list entry (or click Edit to modify a list entry). The
New Bypass List Entry dialog displays.
3. Create a Client Address or Server Address entry. The IP address can be IPv4 or
IPv6. If you enter an IPv4 address, you can specify a subnet mask. For IPv6
addresses, you can specify a prefix length.
4. (Optional) Add a Comment that indicates why you are creating the static
bypass rule for the specific source/destination combination. This is useful if
another administrator needs to tune the settings later.
5. Click OK to close the dialog.
6. Click Apply.
165
Note: Because bypass entries bypass Blue Coat policy, the feature should be used
sparingly and only for specific situations.
Notes
❐ Dynamic bypass entries are lost when the ProxySG appliance is restarted.
❐ No policy enforcement occurs on client requests that match entries in the
dynamic or static bypass list.
❐ If a site that requires forwarding policy to reach its destination is entered into
the bypass list, the site is inaccessible.
166
Note: This step is optional because the ProxySG appliance uses default
configurations if you do not specify them. Use the default values unless you have
specific reasons for changing them. Contact Blue Coat Technical Support for
detailed advice on customizing these settings.
167
#(config dynamic-bypass) {enable | disable}
#(config dynamic-bypass) max-entries number
#(config dynamic-bypass) server-threshold number
#(config dynamic-bypass) trigger {all | connect-error | non-http |
receive-error | 400 | 401 | 403 | 405 | 406 | 500 | 502 | 503 | 504}
#(config dynamic-bypass) timeout minutes
#(config dynamic-bypass) no trigger {all | connect-error | non
http | receive-error | 400 | 401 | 403 | 405 | 406 | 500 | 502 | 503 |
504}
#(config dynamic-bypass) clear
#(config dynamic-bypass) view
168
Section G: Trial or Troubleshooting: Restricting Interception From
Clients or To Servers
This section discusses Restricted Intercept topics. See "Restricted Intercept Topics"
for details.
169
Section 5 Restricted Intercept Topics
❐ "About Restricted Intercept Lists"
❐ "Creating a Restricted Intercept List" on page 170
Notes
❐ Restricted intercepts lists are only applicable to transparent connections.
❐ An entry can exist in both the Static Bypass List and the Restricted Intercept List.
However, the Static Bypass List overrides the entries in the Restricted Intercept
List.
3a
170
2. Select Restrict Interception to the servers and clients listed below-- all other
connections are bypassed.
171
Section H: Reference: Proxy Services, Proxy Configurations, and
Policy
This section provides reference material.
❐ "Reference: Proxy Types"
❐ "Reference: Service/Proxy Matrices" on page 174
❐ "Reference: Access Log Fields" on page 175
172
Table 7–6 Proxy Types (Continued)
173
Table 7–6 Proxy Types (Continued)
SSL Secure Socket Layer • Allows authentication, virus scanning and URL filtering
of encrypted HTTPS content.
• Accelerates performance of HTTPS content, using HTTP
caching.
• Validates server certificates presented by various secure
websites at the gateway.
TCP-Tunnel A tunnel for any TCP- Compresses and accelerates tunneled traffic.
based protocol for
which a more specific
proxy is not available
Yahoo-IM Yahoo Instant • Controls Yahoo instant messaging actions by allowing or
Messaging denying IM communications and file sharing based on
users, groups, file types and names, and other triggers.
• Logs all unencrypted IM communications for review.
174
Table 7–7 Proxy Name and Listeners (alphabetical order) (Continued)
Note: The x-service-name field replaces the s-sitename field. The s-sitename
field can still be used for backward compatibility with squid log formats, but it
has no CPL equivalent.
Note: See Chapter 31: "Creating Custom Access Log Formats" on page 717 and
Chapter 32: "Access Log Formats" on page 727 for detailed information about
creating and editing log formats.
175
176
Chapter 8: Intercepting and Optimizing HTTP Traffic
This chapter describes how to configure the HTTP proxy to manage traffic and
accelerate performance in your environment.
How Do I...?
To navigate this chapter, identify the task to perform and click the link:
Configure the HTTP Proxy for object "Allocating Bandwidth to Refresh Objects
freshness? in Cache" on page 211
Step 4 in "To set HTTP default object
caching policy:" on page 196
177
How do I...? See...
Cache content without having to use "Using a Caching Service" on page 207
policy?
Fine-tune the HTTP Proxy for "Using a Caching Service" on page 207
bandwidth gain? "Using Byte-Range Support" on page 212
178
Section A: About the HTTP Proxy
Before Reading Further
Before reading this section, Blue Coat recommends that you be familiar with the
concepts in these sections:
❐ "About Proxy Services" on page 130.
❐ Chapter 34: "Configuring an Application Delivery Network" on page 837
(optimize ADN performance on the HTTP Proxy).
The HTTP proxy is designed to manage Web traffic across the WAN or from the
Internet, providing:
❐ Security
❐ Authentication
❐ Virus Scanning and Patience Pages
❐ Performance, achieved through Object Caching and Object Pipelining
❐ Transition functionality between IPv4-only and IPv6-only networks
The proxy can serve requests without contacting the Origin Content Server (OCS)
by retrieving content saved from a previous request made by the same client or
another client. This is called caching. The HTTP proxy caches copies of frequently
requested resources on its local hard disk. This significantly reduces upstream
bandwidth usage and cost and significantly increases performance.
Proxy services define the ports and addresses where a ProxySG listens for
incoming requests. The ProxySG has three default HTTP proxy services: External
HTTP, Explicit HTTP, and Internal HTTP. Explicit HTTP and External HTTP use the HTTP
proxy, while Internal HTTP uses TCP tunnel.
❐ The Explicit HTTP proxy service listens on ports 80 and 8080 for explicit
connections.
❐ The Internal HTTP proxy service listens on port 80 and transparently intercepts
HTTP traffic from clients to internal network hosts.
❐ The External HTTP proxy service listens on port 80 for all other transparent
connections to the ProxySG. Typically, these requests are for access to Internet
resources.
Although you can intercept SSL traffic on either port, to enable the ProxySG to
detect the presence of SSL traffic you must enable Detect Protocol on the explicit
HTTP service so that the SSL traffic is handed off to the SSL Proxy. Default is set to
OFF. For more information on SSL proxy functionality, see Chapter 9: "Managing
the SSL Proxy" on page 243.
Furthermore, you can create a bypass list on the ProxySG to exclude the
interception of requests sent from specific clients to specific servers and disable
caching of the corresponding responses. The static bypass list also turns off all
policy control and acceleration for each matching request. For example, for all
clients visiting www.bluecoat.com you might exclude interception and caching of
179
all requests, the corresponding responses, acceleration and policy control. To
create a static bypass list, used only in a transparent proxy environment, see
"Adding Static Bypass Entries" on page 165.
When accessing internal IP addresses, Blue Coat recommends using the TCP
tunnel proxy instead of the HTTP proxy. Some applications deployed within
enterprise networks are not always fully compatible with HTTP specs or are
poorly designed. Use of these applications can cause connection disruptions
when using HTTP proxy. As a result internal sites and servers use the Internal HTTP
service, which employs the TCP tunnel proxy.
Important: The TCP tunnel does not support HTTP proxy service functionality.
That is, only the TCP header of a request, (containing source and destination port
and IP) will be visible to the ProxySG for policy evaluation. To ensure you get the
most from the appliance, you must edit the External (transparent) HTTP service
to use the HTTP proxy instead of the default TCP tunnel.
IPv6 Support
The HTTP proxy is able to communicate using either IPv4 or IPv6, either
explicitly or transparently.
In addition, for any service that uses the HTTP proxy, you can create listeners that
bypass or intercept connections for IPv6 sources or destinations.
180
Section B: Changing the External HTTP (Transparent) Proxy Service
to Intercept All IP Addresses on Port 80
By default, the External HTTP service includes an HTTP proxy service listener
configured on port 80. During the initial ProxySG configuration, if it hasn’t
already been set, you can set External HTTP to Intercept.
The following procedure describes how to set the service to Intercept mode.
2a
2b
181
Section C: Managing the HTTP Proxy Performance
This section describes the methods you can use to configure the HTTP proxy to
optimize performance in your network.
❐ "HTTP Optimization"
❐ "Customizing the HTTP Object Caching Policy"
❐ "About the HTTP Object Caching Policy Global Defaults" on page 192
❐ "About Clientless Requests Limits" on page 193
❐ "Preventing Exception Pages From Upstream Connection Errors" on page 195
❐ "Setting the HTTP Default Object Caching Policy" on page 196
HTTP Optimization
The HTTP proxy alleviates the latency in data retrieval and optimizes the delivery
of HTTP traffic through object caching and object pipelining. Caching minimizes
the transmission of data over the Internet and over the distributed enterprise,
thereby improving bandwidth use. Pipelining allows the ProxySG to open several
connections to a server, speeding up the delivery of content into the cache. Pre-
fetching is another method the ProxySG uses to improve the user experience.
Content on a requested web page several levels deep is requested and cached for
fast delivery to users.
For objects in cache, an intelligent caching mechanism in the ProxySG maintains
object freshness. This is achieved by periodically refreshing the contents of the
cache, while maintaining the performance within your network.
The method of storing objects on disk is critical for performance and scalability.
SGOS, the operating system on the ProxySG, uses an object store system which
hashes object lookups based on the entire URL. This hashing allows access to
objects with far fewer lookups, as compared to a directory-based file system
found in traditional operating systems. While other file systems run poorly when
they are full, the ProxySG’s cache system achieves its highest performance when
it is full.
182
In case of a reverse proxy, object caching reduces the load on the OCS and
improves scalability of the OCS.
183
❐ The Object Pipelining algorithm allows the ProxySG to open as many
simultaneous TCP connections as the origin server allows, and retrieves
objects in parallel. The proxy also pre-fetches objects based on pipelined
requests. For example, if a pipelined HTML object has other embedded
objects, the HTTP proxy will pre-fetch those embedded objects from the Web
server without a request from the client. The objects are then ready to be
delivered from the cache straight to the user, as fast as the client can request
them.
While object pipelining enhances the user experience by minimizing latency and
improving response times for first-time Web page requests, it could increase
bandwidth utilization. Therefore by default, to avoid an increase in bandwidth
utilization, object pipelining is disabled for the reverse proxy and bandwidth gain
profiles. It is enabled, by default, only on the forward proxy — Normal profile,
where enhancing the response time for clients is vital.
184
About Meta Tags
A meta tag is a hidden tag that placed in the <head> of an HTML document. It
provides descriptions and keywords for search engines and can contain the
attributes — content, http-equiv, and name. Meta tags with an http-equiv
attribute are equivalent to HTTP headers.
The ProxySG does not parse HTTP meta tag headers if:
❐ The meta tag does not appear within the first 256 bytes of the HTTP object
body. To be parsed, relevant HTTP meta tags must appear within the first 256
bytes of the HTTP object body.
❐ The Blue Coat AV that is connected to your ProxySG, adds or modifies the
meta tags in its response to the ProxySG. The response body modified by the
Blue Coat AV is not parsed.
Planning Considerations
You can use CPL properties in the <Cache> layer to control meta tag processing.
The CPL commands can be used in lieu of the check boxes for parsing meta tags
through the Management Console. For details on the meta-tags, see Step 7 in "To
set HTTP default object caching policy:" on page 196.
The following CPL commands are applicable for HTTP proxy, HTTP refresh, and
HTTP pipeline transactions:
http.response.parse_meta_tag.Cache-Control(yes|no)
http.response.parse_meta_tag.Expires(yes|no)
http.response.parse_meta_tag.Pragma.no-cache(yes|no)
VPM support to control the processing of meta tags is not available.
185
When the tolerant HTTP request parsing flag is either not set or is disabled, if the
header name and required details are missing, the ProxySG blocks malformed
HTTP requests and returns a 400 Invalid Request error.
With tolerant request parsing enabled, a request header name is allowed to
contain <Tab> or space characters, and if the request header line does not contain
a colon, then the entire line is taken as the header name.
A header containing only one or more <Tab> or space characters is considered
ambiguous. The ProxySG cannot discern if this is a blank continuation line or if it
is a blank line that signals the end of the header section. By default, an ambiguous
blank line is illegal, and an error is reported. With tolerant request parsing
enabled, an ambiguous blank line is treated as the blank line that ends the header
section.
From the (config) prompt, enter the following command to enable tolerant HTTP
request parsing (the default is disabled):
#(config) http tolerant-request-parsing
To disable HTTP tolerant request parsing:
#(config) http no tolerant-request-parsing
186
content to client whenever possible. This allows the ProxySG appliance to send the
response as is when the server sends compressed data, including non-cacheable
responses. Any unsolicited encoded response is forwarded to the client as is.
Note: If compression is not enabled, the ProxySG appliance does not compress the
content if the server sends uncompressed content. However, the appliance continues to
uncompress content if necessary to apply transformations.
Any unsolicited encoded response is forwarded to the client as is.
For cache-hit compression behavior, see Table 8-1 below. For cache-miss compression
behavior, see Table 8-2.
.
187
Table 8-2. Cache-Miss Compression Behavior
Compression Exceptions
❐ The ProxySG appliance issues a transformation_error exception (HTTP response
code 403), when the server sends an unknown encoding and the appliance is
configured to do content transformation.
❐ The ProxySG appliance issues an unsupported_encoding exception (HTTP response
code 415 - Unsupported Media Type) when the appliance is unable to deliver content
due to configured policy.
The messages in the exception pages can be customized. For information on using
exception pages, refer to “Advanced Policy Tasks” in the Visual Policy Manager Reference.
Configuring Compression
Compression behavior can only be configured through policy—VPM or CPL.
188
Using Policy to Configure Compression Behavior
Compression and decompression are allowed if compression is enabled. If compression is
not enabled, neither compression nor decompression are allowed.
Policy controls the compression or decompression of content on the ProxySG appliance. If
compression is turned off, uncompressed content is served to the client if a compressed
variant is not available. If decompression is disabled, an uncompressed version is fetched
from the OCS if the variant does not exist and the client requested uncompressed content.
You can use server-side or client-side controls to manage compression through policy, as
described in the following table.
189
Table 8-3. Compression Properties (Continued)
Default Behavior
By default, Blue Coat sends the client’s list of the accept encoding algorithms, except for
unknown encodings. If compression is not enabled, the default overrides any configured
CPL policy.
If Accept-Encoding request header modification is used, it is overridden by the
compression related policy settings shown in Table 8-3. The Accept-Encoding header
modification can continue to be used if no compression policies are applied, or if
compression is not enabled. Otherwise, the compression-related policies override any
Accept-Encoding header modification, even if the Accept-Encoding header
modification appears later in the policy file.
Adding encoding settings with client-side controls depend on if the client originally listed
that encoding in its Accept-Encoding header. If so, these encodings are added to the list
of candidates to be delivered to the client. The first cache object with an Accept-Encoding
match to the client-side list is the one that is delivered.
190
Notes
❐ Policy-based content transformations are not stored as variant objects. If content
transformation is configured, it is applied on all cache-hits, and objects might be
compressed all the time at the end of such transformation if they are so configured.
❐ The variant that is available in the cache is served, even if the client requests a
compression choice with a higher qvalue. For example, if a client requests Accept-
encoding: gzip;q=1, deflate;q=0.1, and only a deflate-compressed object is
available in the cache, the deflate compressed object is served.
❐ The HTTP proxy ignores Cache-Control: no-transform directive of the OCS. To
change this, write policy to disallow compression or decompression if Cache-
Control: no-transform response header is present.
❐ The ProxySG appliance treats multiple content encoding (gzip, deflate or gzip, gzip)
as an unknown encoding. (These strings indicate the content has been compressed
twice.)
❐ The gzip and deflate formats are treated as completely separate and are not converted
from one to the other.
❐ Blue Coat recommends using gzip encoding (or allowing both gzip and deflate)
when using the HTTP compression feature.
❐ If the ProxySG appliance receives unknown content encoding and if content
transformation is configured (such as popup blocking), an error results.
❐ If the origin server provides compressed content with a different compression level
then that specified in policy, the content is not re-compressed.
❐ If the ProxySG appliance compressed and cached content at a different compression
level than the level specified in a later transaction, the content is not re-compressed.
❐ Parsing of container HTML pages occurs on the server side, so pipelining
(prefetching) does not work when the server provides compressed content.
❐ Compressing a zip file breaks some browser versions, and compressing images does
not provide added performance.
❐ All responses from the server can be compressed, but requests to the server, such as
POST requests, cannot.
❐ Only 200 OK responses can be compressed.
191
Section 1 About the HTTP Object Caching Policy Global Defaults
The ProxySG offers multiple configuration options that allow you to treat cached
objects in a way that best suits your business model.
The following table lists the options that you can configure.
Table 8–1 Settings for Configuring the Object Caching Policy
Setting the maximum The default is 10000 MB for new installations of version 6.6.4.3 and later. If
object cache size you are using a version prior to 6.6.4.3 or have upgraded to 6.6.4.3 or later,
the default is 4096 MB.
Setting the TTL for Determines the number of minutes the SGOS stores negative responses
negative responses in for requests that could not be served to the client.
cache The OCS might send a client error code (4xx response) or a server error
code (5xx response) as a response to some requests. If you configure the
ProxySG to cache negative responses for a specified number of minutes, it
returns the negative response in subsequent requests for the same page or
image for the specified length of time. The ProxySG will not attempt to
fetch the request from the OCS. Therefore, while server-side bandwidth is
saved, you could receive negative responses to requests that might
otherwise have been served by accessing the OCS.
By default, the ProxySG does not cache negative responses. It always
attempts to retrieve the object from the OCS, if it is not already in cache.
Default: 0 minutes
Forcing freshness Verifies that each object is fresh upon access. Enabling this setting has a
validation before serving significant impact on performance because the HTTP proxy revalidates
an object from cache requested cached objects with the OCS before serving them to the client.
This results in a negative impact on bandwidth gain. Therefore, do not
enable this configuration unless absolutely required.
For enabling, select the Always check with source before serving object
check box.
Default: Disabled
192
Settings to Configure Notes
Object Caching
Parsing HTTP meta tag Determines how HTTP meta tag headers are parsed in the HTML
headers documents. The meta tags that can be enabled for parsing are:
• Cache-control meta tag
The sub-headers that are parsed when this check box is selected are:
private, no-store, no-cache, max-age, s-maxage, must-re-
validate, proxy-revalidate
• Expires meta tag
This directive parses for the date and time after which the document
should be considered expired.
• Pragma-no-cache meta tag
This directive indicates that cached information should not be used
and instead requests should be forwarded to the OCS.
Default: Disabled
Allocating bandwidth on Allows you to specify a limit to the amount of bandwidth the ProxySG
the HTTP proxy for uses to achieve the desired freshness. For more information see,
maintaining freshness of "Allocating Bandwidth to Refresh Objects in Cache" on page 211.
the objects in cache Default: Disable refreshing
The above settings serve as defaults on the proxy. If you want a more granular
caching policy, for example— setting the TTL for an object, use Blue Coat Content
Policy Language (CPL). You can also use the VPM or CPL to bypass the cache or
to prohibit caching for a specific domain or server. Refer to the Content Policy
Language Guide for more information.
193
Symptom: The OCS becomes overwhelmed.
Caching/Optimization (Pipelining)
Configuration: Blue Coat ProxySG pipelining options enabled (Configuration >
Proxy Settings > HTTP Proxy > Acceleration Profile).
Symptom: The OCS becomes overwhelmed; users report slow access times in
their Web browsers.
Bandwidth Gain
Configuration: Blue Coat ProxySG Enable Bandwidth Gain Mode option enabled
(Configuration > Proxy Settings > HTTP Proxy > Acceleration Profile).
Symptom: The OCS becomes overwhelmed.
194
The ProxySG determines that objects in the cache require refreshing. This
operation itself is not costly, but the additional requests to the OCS adds load to
the WAN link. A global and per-server limit prevents the problem.
For new installations (or following a restoration to factory defaults), clientless
limits are enforced by default; the ProxySG capacity per model determines the
upper default limit. For systems upgraded to SGOS 6.x from versions previous to
5.x, clientless limits are not enforced and you must manually configure the
Continue with "Setting the HTTP Default Object Caching Policy" on page 196.
195
Section 2 Setting the HTTP Default Object Caching Policy
This section describes how to set the HTTP default object caching policy. For more
information, see "HTTP Optimization" on page 182.
2. From the Management Console, select Configuration > Proxy Settings > HTTP
Proxy > Policies.
3. Configure default proxy policies (HTTP Proxy Policy area; see "About the HTTP
Object Caching Policy Global Defaults" on page 192):
a. In the Do not cache objects larger than field, enter the maximum object
size to cache. The default is 10000 MB for new installations of version
6.6.4.3 and later. If you are using a version prior to 6.6.4.3 or have
upgraded to 6.6.4.3 or later, the default is 4096 MB.
b. In the Cache negative responses for field, enter the number of minutes
that SGOS stores negative responses. The default is 0.
c. Force freshness validation. To always verify that each object is fresh
upon access, select the Always check with source before serving object
option. Enabling this setting has a significant impact on performance,
do not enable this configuration unless absolutely required.
d. Disable meta-tag parsing. The default is to parse HTTP meta tag
headers in HTML documents if the MIME type of the object is text/
html.
To disable meta-tag parsing, clear the option for:
• Parse cache-control meta tag
The following sub-headers are parsed when this check box is selected:
private, no-store, no-cache, max-age, s-maxage, must-
revalidate, proxy-revalidate.
196
• Parse expires meta tag
This directive parses for the date and time after which the document
should be considered expired.
• Parse pragma-no-cache meta tag
This directive indicates that cached information should not be used
and instead requests should be forwarded to the OCS.
4. Configure Clientless Request Limits (see "About Clientless Requests Limits" on
page 193):
a. Global Limit—Limits the number of concurrent clientless connections
from the ProxySG to any OCS. Strongly recommended if Pipeline
options or the Enable Bandwidth Gain Mode option is enabled on the
Configuration > Proxy Settings > HTTP Proxy > Acceleration Profile tab.
See Also
❐ "Customizing the HTTP Object Caching Policy" on page 182.
❐ "Clearing the Object Cache" on page 1592
❐ "Selecting an HTTP Proxy Acceleration Profile" on page 198.
197
Section D: Selecting an HTTP Proxy Acceleration Profile
This section discusses caching, pipelining behavior, and bandwidth gain.
Topic Links
❐ "About the Normal Profile"
❐ "About the Portal Profile"
❐ "About the Bandwidth Gain Profile" on page 199
❐ "About HTTP Proxy Profile Configuration Components" on page 199
198
About the Bandwidth Gain Profile
The Bandwidth Gain profile is useful wherever server-side bandwidth is an
important resource. This profile is typically used in Internet Service Provider (ISP)
deployments. In such deployments, minimizing server-side bandwidth is most
important. Therefore, maintaining the freshness of an object in cache is less
important than controlling the use of server-side bandwidth. The Bandwidth-
Gain profile enables various HTTP configurations that can increase page response
times and the likelihood that stale objects are served, but it reduces the amount of
server-side bandwidth required.
199
Table 8–2 Description of Profile Configuration Components (Continued)
200
Table 8–2 Description of Profile Configuration Components (Continued)
Substitute Get for PNC http [no] Typically, if a client sends an HTTP GET request
substitute pragma- with a Pragma: no-cache or Cache-Control:
no-cache no-cache header (for convenience, both are
hereby referred to as PNC), a cache must
consult the OCS before serving the content. This
means that HTTP proxy always re-fetches the
entire object from the OCS, even if the cached
copy of the object is fresh. Because of this, PNC
requests can degrade proxy performance and
increase server-side bandwidth utilization.
However, if the Substitute Get for PNC setting
is enabled, then the PNC header from the client
request is ignored (HTTP proxy treats the
request as if the PNC header is not present at
all).
Substitute Get for IE reload http [no] Some versions of Internet Explorer issue the
substitute ie- Accept: */* header instead of the Pragma:
reload no-cache header when you click Refresh. When
an Accept header has only the */* value, HTTP
proxy treats it as a PNC header if it is a type-N
object. You can control this behavior of HTTP
proxy with the Substitute GET for IE Reload
setting. When this setting is enabled, the HTTP
proxy ignores the PNC interpretation of the
Accept: */* header.
201
Table 8–2 Description of Profile Configuration Components (Continued)
202
Table 8–2 Description of Profile Configuration Components (Continued)
203
Table 8–3 Normal, Portal, and Bandwidth Gain Profiles (Continued)
204
Section 3 Configuring the HTTP Proxy Profile
Configure the profile by selecting any of the components discussed in "About
HTTP Proxy Profile Configuration Components" on page 199.
Text displays at the bottom of this tab indicating which profile is selected.
Normal is the default profile. If you have a customized profile, this text does
not display.
Important: If you have a customized profile and you click one of the Use
Profile buttons, no record of your customized settings remains. However,
after the ProxySG is set to a specific profile, the profile is maintained in the
event the ProxySG is upgraded.
Also, if you select any Pipeline option or the Enable Bandwidth Gain Mode
option, Blue Coat strongly recommends limiting clientless requests. See
"About Clientless Requests Limits" on page 193.
3. To select a profile, click one of the three profile buttons (Use Normal Profile, Use
Bandwidth Gain Profile, or Use Portal Profile).
The text at the bottom of the Acceleration Profile tab changes to reflect the new
profile.
Note: You can customize the settings, no matter which profile button you
select.
4. (Optional) To customize the profile settings, select or clear any of the check
boxes (see Table 8–2, "Description of Profile Configuration Components" on
page 199 for information about each setting).
205
5. Click OK; click Apply.
See Also
❐ "Selecting an HTTP Proxy Acceleration Profile" on page 198.
❐ "About HTTP Proxy Profile Configuration Components" on page 199.
❐ "About HTTP Object Freshness" on page 184.
❐ "Using a Caching Service" on page 207.
206
Section E: Using a Caching Service
CachePulse is a caching service that provides you with optimal bandwidth gains
for popular or high-bandwidth websites. Utilizing highly effective Web caching
technology, CachePulse saves bandwidth on expensive international links and
backhaul traffic, thereby improving Web experience for users.
CachePulse accelerates the delivery of rich Web 2.0 content, video, and large files
such as:
• YouTube videos
• Netflix streaming media
• Microsoft Windows updates
Subscribing to the CachePulse service eliminates the need to maintain caching
policy; when you first enable the service, it downloads the latest version of the
caching policy database. CachePulse periodically updates the database as long as
the service is enabled and an Internet connection exists.
207
Section 4 Enabling CachePulse
To enable CachePulse:
1. In the Management Console, select Configuration > Proxy Settings > General.
2. In the CachePulse section, select Enable.
3. Click Apply.
The appliance attempts to download the database.
See Also
❐ "Downloading the CachePulse Database"
❐ "Notifications for Status Metrics" on page 1531
208
The License and Download Status field shows statistics about the previous
successful and unsuccessful downloads. If the last download was
unsuccessful, the field contains an error.
If you receive a download error, check your network configuration and make
sure that the appliance can connect to the Internet.
209
Section F: Fine-Tuning Bandwidth Gain
In addition to the components related to top-level profiles, other configurable
items affect bandwidth gain. You can set the top-level profile (see "Selecting an
HTTP Proxy Acceleration Profile" on page 198) and adjust the following
configuration items to fine tune the ProxySG for your environment:
❐ Allocating bandwidth to refresh objects in cache
❐ Using Byte-range support
❐ Enabling the Revalidate pragma-no-cache (PNC)
210
Section 5 Allocating Bandwidth to Refresh Objects in Cache
The Refresh bandwidth options control the server-side bandwidth used for all forms
of asynchronous adaptive refresh activity. On systems with increased object store
capacity, the value of asynchronous adaptive refresh has diminished markedly,
and can in many instances actually increase latency due to system load. Therefore,
this feature is disabled by default. You can select from the following options:
❐ Disable refreshing—Disables adaptive refresh. This setting is recommended on
systems that use an increased object capacity disk model. This is the default
setting for fresh installations of SGOS 6.2.6 and later.
❐ Let the SG appliance manage refresh bandwidth—The appliance will automatically
use whatever bandwidth is available in its efforts to maintain 99.9% estimated
freshness of the next access. You can also enable this from the CLI using the
#(config caching) refresh bandwidth automatic command. This setting is
recommended only on systems that are not using the increased object capacity
disk model (that is, systems that were manufactured with an SGOS version
prior to 6.2).
❐ Limit refresh bandwidth to x kilobits/sec—If you want to use adaptive refresh but
you want to limit the amount of bandwidth used, select this option and
specify a limit to the amount of bandwidth the ProxySG uses to achieve the
desired freshness. Before making adjustments, review the logged statistics and
examine the current bandwidth used as displayed in the Refresh bandwidth
field. It is not unusual for bandwidth usage to spike occasionally, depending
on access patterns at the time. Entering a value of zero disables adaptive
refresh.
211
To set refresh bandwidth:
1. From the Management Console, select Configuration > Proxy Settings > HTTP
Proxy > Freshness.
The Refresh bandwidth field displays the refresh bandwidth options. The
default setting is to Disable refreshing.
Important: Blue Coat strongly recommends that you not change the setting
from the default if you have a system with an increased object store capacity.
212
If the object is not in cache, the ProxySG always attempts to minimize delay for
the client.
❐ If the byte-range requested is near the beginning of the object, that is the start
byte of the request is within 0 to 14336 bytes, then the ProxySG fetches the
entire object from the OCS and caches it. However, the client is served the
requested byte-range only.
❐ If the byte-range requested is not near the beginning of the object, that is the
start byte of the request is greater than 14336 bytes, then the ProxySG fetches
only the requested byte-range from the OCS, and serves it to the client. The
response is not cached.
Note: The HTTP proxy never caches partial objects, even if byte-range
support is enabled.
Since the ProxySG never caches partial objects, bandwidth gain is significantly
affected when byte-range requests are used heavily. If, for example, several clients
request an object where the start byte offset is greater than 14336 bytes, the object
is never cached. The ProxySG fetches the same object from the OCS for each
client, thereby causing negative bandwidth gain.
Further, download managers like NetAnts® typically use byte-range requests
with PNC headers. To improve bandwidth gain by serving such requests from
cache, enable the revalidate pragma-no-cache option along with byte-range support.
See "Enabling Revalidate Pragma-No-Cache" on page 214.
213
To configure byte-range support:
To enable or disable the revalidate PNC setting, enter one of the following
commands at the (config) command prompt:
#(config) http revalidate-pragma-no-cache
-or-
#(config) http no revalidate-pragma-no-cache
214
client-side cumulative bytes of traffic is lower than the server-side cumulative
bytes of traffic for a given period of time. It is represented as a unit-less
multiplication factor and is computed by the ratio:
client bytes / server bytes
Some factors that contribute to negative bandwidth gain are:
❐ Abandoned downloads (delete_on_abandonment (no))
When a client cancels a download, the ProxySG continues to download the
requested file to cache it for future requests. Since the client has cancelled the
download, server-side traffic persists while the client-side traffic is halted.
This continued flow of traffic on the server-side causes negative bandwidth
gain.
Further with (delete_on_abandonment (yes)), when a client cancels a
download, the ProxySG terminates the connection and stops sending traffic to
the client. However, the server may have sent additional traffic to the ProxySG
before it received the TCP RESET from the ProxySG. This surplus also causes
negative bandwidth gain.
❐ Refreshing of the cache
Bandwidth used to refresh contents in the cache contributes to server-side
traffic. Since this traffic is not sent to the client until requested, it might cause
negative bandwidth gain.
❐ Byte-range downloads
When download managers use an open-ended byte-range, such as Range:
bytes 10000-, and reset the connection after downloading the requested byte-
range. The packets received by the ProxySG from the server are greater than
those served to the client, causing negative bandwidth gain.
❐ Download of uncompressed content
If the ProxySG downloads uncompressed content, but compresses it before
serving the content to the client, server-side traffic will be greater than client-
side traffic. This scenario is typical in a reverse proxy deployment, where the
server offloads the task of gzipping the content to the ProxySG.
❐ Reduced client-side throughput
In the short term, you will notice negative bandwidth gain if the client-side
throughput is lower than the server-side throughput. If, for example, the
ProxySG takes five minutes to download a 100 Mb file and takes 10 minutes to
serve the file to the client. The ProxySG reflects negative bandwidth gain for
the first five minutes.
To view bandwidth usage and bandwidth gain statistics on the HTTP proxy, click
Statistics > Traffic History tab. Select the HTTP proxy service to view statistics over
the last hour, day, week, month, and year. See Chapter 33: "Statistics" on page 789
for information on the graphs.
215
Compression
Compression is disabled by default. If compression is enabled, the HTTP proxy
forwards the supported compression algorithm (either deflate or gzip) from the
client’s request (Accept-Encoding: request header) to the server as is, and
attempts to send compressed content to client whenever possible. This allows
SGOS to send the response as is when the server sends compressed data,
including non-cacheable responses. Any unsolicited encoded response is
forwarded as is to the client.
For more information on compression, see "Understanding HTTP Compression"
on page 220.
216
#(config) http upload-with-pasv disable
#(config) http upload-with-pasv enable
#(config) http version {1.0 | 1.1}
#(config) http [no] www-redirect
#(config) http [no] xp-rewrite-redirect
Note: For detailed information about using these commands, refer to the
Command Line Interface Reference.
217
Section G: Caching Authenticated Data (CAD) and
Caching Proxy Authenticated Data (CPAD)
This section describes how the ProxySG caches authenticated content over HTTP.
Authentication over HTTP allows a user to prove their identity to a server or an
upstream proxy to gain access to a resource.
The ProxySG uses CAD and CPAD to facilitate object caching at the edge and to
help validate user credentials. Object caching in the ProxySG allows for lesser
bandwidth usage and faster response times between the client and the server or
proxy.
The deployment of the ProxySG determines whether it performs CAD or CPAD:
❐ When the Origin Content Server (OCS) performs authentication, the ProxySG
performs CAD.
❐ When the upstream HTTP Proxy performs authentication, the downstream
HTTP proxy or ProxySG executes CPAD.
Figure 8–5 CAD: 200 response from the Origin Content Server.
The OCS then sends back one of the following responses:
❐ HTTP 200 response status, authentication is accepted. The user receives the
requested resource.
❐ HTTP 403 response status, user is not allowed to view the requested resource.
The user is authenticated but is not authorized to receive the content, hence
the user receives an error message.
218
When another user accesses the same URL, the ProxySG authenticates the user
with the OCS and verifies the freshness of the content using the Get If Modified
Since request. If the user is authorized and the content has not been modified, the
OCS returns an HTTP 304 response message to the ProxySG. The ProxySG then
serves the content from cache.
If the content has been modified, the OCS returns the HTTP 200 response along
with the modified content.
Figure 8–6 CAD: 403 and 304 response codes from the OCS
Note: CAD is applicable only for pure HTTP authentication — the ProxySG
caches authenticated data only when the OCS includes the www-Authenticate
response code in the 401 response header. If, for example, the client accesses an
OCS that uses forms-based authentication, the ProxySG does not perform CAD.
219
Figure 8–7 CPAD: 200 response from ProxySG 2
In Figure 8–8, ProxySG1 caches proxy authenticated data and ProxySG2 performs
authentication (instead of the OCS).
220
in your environment than CPU, always request compressed content from the
origin content server (OCS). However, if CPU is comparatively expensive, the
ProxySG appliance should instead be configured to ask the OCS for the same
compressions that the client asked for and to forward whatever the server returns.
The default configuration assumes that CPU is costlier than bandwidth. If this is
not the case, you can change the ProxySG appliance behavior.
Note: If compression is not enabled, the ProxySG appliance does not compress
the content if the server sends uncompressed content. However, the appliance
continues to uncompress content if necessary to apply transformations.
Any unsolicited encoded response is forwarded to the client as is.
For cache-hit compression behavior, see Table 8-3 below. For cache-miss
compression behavior, see Table 8-4.
221
.
222
Compression Exceptions
❐ The ProxySG appliance issues a transformation_error exception (HTTP
response code 403), when the server sends an unknown encoding and the
appliance is configured to do content transformation.
❐ The ProxySG appliance issues an unsupported_encoding exception (HTTP
response code 415 - Unsupported Media Type) when the appliance is unable
to deliver content due to configured policy.
The messages in the exception pages can be customized. For information on using
exception pages, The messages in the exception pages can be customized. For
information on using exception pages, refer to the Advanced Policy Tasks chapter, Section
E, of the Visual Policy Manager Reference.
Configuring Compression
Compression behavior can only be configured through policy—VPM or CPL.
b. Select Policy > Add Web Access Layer from the menu of the Blue Coat
VPM window that appears.
c. Type a layer name into the dialog that appears and click OK.
2. Add an Action object:
a. Right click on the item in the Action column; select Set.
b. Click New in the Set Action Object dialog that appears; select Set Client
HTTP Compression.
223
2c
2d
b. Select Policy > Add Web Access Layer from the menu of the Blue Coat
VPM window that appears.
c. Type a layer name into the dialog that appears and click OK.
2. Add an Action object:
a. Right click on the item in the Action column; select Set.
b. Click New in the Set Action Object dialog that appears; select Set Server
HTTP Compression.
224
• Select Policy > Add Web Access Layer from the menu of the Blue Coat VPM
window that appears.
• Type a layer name into the dialog that appears and click OK.
2. Add an Action object:
• Right click on the item in the Action column; select Set.
• Click New in the Set Action Object dialog that appears; select Set HTTP
Compression Level.
225
Table 8–6 Compression Properties (Continued)
Default Behavior
By default, Blue Coat sends the client’s list of the accept encoding algorithms,
except for unknown encodings. If compression is not enabled, the default
overrides any configured CPL policy.
If Accept-Encoding request header modification is used, it is overridden by the
compression related policy settings shown in Table 8-5. The Accept-Encoding
header modification can continue to be used if no compression policies are
applied, or if compression is not enabled. Otherwise, the compression-related
policies override any Accept-Encoding header modification, even if the Accept-
Encoding header modification appears later in the policy file.
Adding encoding settings with client-side controls depend on if the client
originally listed that encoding in its Accept-Encoding header. If so, these
encodings are added to the list of candidates to be delivered to the client. The first
cache object with an Accept-Encoding match to the client-side list is the one that is
delivered.
226
❐ If server-side bandwidth is expensive in your environment, compared to
client-side bandwidth and CPU:
http.server.accept_encoding(all)
http.server.accept_encoding.allow_unknown(no); default
http.allow_compression(yes)
http.allow_decompression(yes)
Notes
❐ Policy-based content transformations are not stored as variant objects. If
content transformation is configured, it is applied on all cache-hits, and
objects might be compressed all the time at the end of such transformation if
they are so configured.
❐ The variant that is available in the cache is served, even if the client requests a
compression choice with a higher qvalue. For example, if a client requests
Accept-encoding: gzip;q=1, deflate;q=0.1, and only a deflate-compressed
object is available in the cache, the deflate compressed object is served.
❐ The HTTP proxy ignores Cache-Control: no-transform directive of the OCS.
To change this, write policy to disallow compression or decompression if
Cache-Control: no-transform response header is present.
❐ The ProxySG appliance treats multiple content encoding (gzip, deflate or gzip,
gzip) as an unknown encoding. (These strings indicate the content has been
compressed twice.)
❐ The gzip and deflate formats are treated as completely separate and are not
converted from one to the other.
❐ Blue Coat recommends using gzip encoding (or allowing both gzip and
deflate) when using the HTTP compression feature.
227
❐ Compressing a zip file breaks some browser versions, and compressing
images does not provide added performance. For a current list of content
types that are not compressed, refer to the Release Notes.
❐ All responses from the server can be compressed, but requests to the server,
such as POST requests, cannot.
❐ Only 200 OK responses can be compressed.
228
Section H: Viewing HTTP/FTP Statistics
This section discusses the following topics:
❐ "HTTP/FTP History Statistics"
❐ "Viewing the Number of HTTP/HTTPS/FTP Objects Served"
❐ "Viewing the Number of HTTP/HTTPS/FTP Bytes Served" on page 231
❐ "Viewing Active Client Connections" on page 232
❐ "Viewing HTTP/HTTPS/FTP Client and Server Compression Gain Statistics"
on page 233
❐ "Disabling the Proxy-Support Header" on page 235
Note: You can view current HTTP statistics through the CLI using the show http-
stats command.
229
Section 1 Viewing the Number of HTTP/HTTPS/FTP Objects Served
The HTTP/HTTPS/FTP Objects tab illustrates the device activity over the last 60
minutes, 24 hours, and 30 days. These charts illustrate the total number of objects
served from either the cache or from the Web.
The maximum number of objects that can be stored on a ProxySG is affected by a
number of factors, including the SGOS version it is running and the hardware
platform series.
3. (Optional) To set the graph scale to a different value, select a value from the
Graph scale should drop-down list.
230
Section 2 Viewing the Number of HTTP/HTTPS/FTP Bytes Served
The HTTP/HTTPS/FTP Bytes tab shows the sum total of the number of bytes served
from the device over the last 60 minutes, 24 hours, and 30 days. The chart shows
the total number of bytes for objects served by the device, including both cache
hits and cache misses.
3. (Optional) To set the graph scale to a different value, select a value from the
Graph scale should drop-down list.
231
Section 3 Viewing Active Client Connections
The HTTP/HTTPS/FTP Clients tab shows the maximum number of clients with
requests processed over the last 60 minutes, 24 hours, and 30 days. This does not
include idle client connections (connections that are open but that have not made
a request). These charts allow you to monitor the maximum number of active
clients accessing the ProxySG at any one time. In conjunction with the HTTP/
HTTPS/FTP Objects and HTTP/HTTPS/FTP Bytes tabs, you can determine the
number of clients supported based on load, or load requirements for your site
based on a specific number of clients.
3. (Optional) To set the graph scale to a different value, select a value from the
Graph scale should drop-down list.
232
Section 4 Viewing HTTP/HTTPS/FTP Client and Server Compression
Gain Statistics
Under HTTP/FTP History, you can view HTTP/FTP client and server
compression-gain statistics for the ProxySG over the last 60 minutes, 24 hours,
and 30 days in the Client Comp. Gain and the Server Comp. Gain tabs. Overall
client and server compression-gain statistics are displayed under System Usage.
These statistics are not available through the CLI.
The green display on the bar graph represents uncompressed data; the blue
display represents compressed data. Hover your cursor over the graph to see the
compressed gain data.
See one of the following sections for more information:
❐ "Viewing HTTP/FTP Client Compressed Gain Statistics"
❐ "Viewing HTTP/FTP Server Compressed Gain Statistics" on page 234
3. (Optional) To set the graph scale to a different value, select a value from the
Graph scale should drop-down list.
See Also
"Viewing HTTP/HTTPS/FTP Client and Server Compression Gain Statistics" on
page 233
233
Viewing HTTP/FTP Server Compressed Gain Statistics
To view HTTP/FTP server compressed gain statistics:
1. From the Management Console, select Statistics > Protocol Details > HTTP/FTP
History > Server Comp. Gain.
3. (Optional) To set the graph scale to a different value, select a value from the
Graph scale should drop-down list.
See Also
"Viewing HTTP/HTTPS/FTP Client and Server Compression Gain Statistics" on
page 233
234
Section I: Supporting IWA Authentication in an Explicit HTTP Proxy
Internet Explorer does not allow IWA authentication through a ProxySG when
explicitly proxied. To facilitate this authentication, Blue Coat added a Proxy-
Support: Session-based-authentication header. By default, when the ProxySG
receives a 401 authentication challenge from upstream, it sends the Proxy-
Support: Session-based-authentication header in response.
The Proxy-Support header is not supported if:
❐ you are using an older browser (Refer to the SGOS Release Notes for supported
browser versions).
❐ both the ProxySG and the OCS perform IWA authentication.
In either case, Blue Coat recommends that you disable the header and enable
Force IWA for Server Authentication. The Force IWA for Server Authentication action
converts the 401-type server authentication challenge to a 407-type proxy
authentication challenge that Internet Explorer supports. The ProxySG also
converts the resulting Proxy-Authentication headers in client requests to standard
server authorization headers, which allows an IWA authentication challenge to
pass through when Internet Explorer is explicitly proxied through the appliance.
Note: To suppress the Proxy-Support header globally, use the http force-ntlm
command to change the option. To suppress the header only in certain situations,
continue with the procedures below.
235
3a
3b
3c
3d
236
Section J: Supporting Authentication on an Upstream Explicit Proxy
Proxy chaining may cause issues in HTTPS configurations. When an upstream
proxy requires Proxy-Authentication, a timeout may occur because by the time
the proxy authentication challenge occurs in the HTTP CONNECT request, the
client has already established a non-authorized connection to the downstream
proxy (which may or may not be a ProxySG).
To avoid this issue, use (command) (am I in the interface too?) when
protocol_detect is enabled. The HTTP proxy will challenge the client on any
CONNECT request for Proxy-Authentication. When the upstream proxy returns
the 200 OK message on receiving the Proxy-Authentication header to authorize
the request, but sends the credentials request on to the server.
Encrypted tap ( linky) works with this gesture...
Deployment Scenarios
Use this configuration when the ProxySG is inserted between a client and an
explicit proxy configured to use authentication. It can also be helpful in
transparent deployments.
• Explicit downstream: The ProxySG supports authentication to the client
for SSL/HTTPS traffic, with an upstream proxy performing the
authentication. The upstream proxy is not in your (control)
• Transparent downstream: The ProxySG, deployed transparently, supports
authentication to the client for SSL/HTTPS traffic, with an upstream
proxy performing the authentication. For example, in a chain where two
proxies are configured transparently as accelerators and a third further
upstream functions explicitly, authentication requests may not reach their
destinations.
237
Section K: Detect and Handle WebSocket Traffic
The Internet Engineering Task Force (IETF) standardized the WebSocket protocol
in 2011. WebSocket provides simultaneous two-way communications channels
over a single TCP connection by detecting the presence of a proxy server and
tunneling communications through the proxy.
To upgrade an HTTP connection to a newer HTTP version or use another protocol
such as WebSocket, a client sends a request with Upgrade, Connection, and other
relevant headers. Previous versions of SGOS did not allow WebSocket
handshakes to complete, but supported versions allow the handshake to complete
successfully. This version also detects WebSocket traffic and allows you to
perform specific policy actions.
When the appliance detects a WebSocket request in the HTTP/S request, the
Active Sessions tab in the Management Console indicates that the traffic is
WebSocket. Use the filter Protocol > WebSocket.
To differentiate WebSocket traffic in the access-log, use the TCP_WEBSOCKET value in
the s-action field. You can determine if the traffic was plain WebSocket or secure
WebSocket by looking at the scheme (HTTP or HTTPS).
238
Section 5 How the ProxySG Appliance Handles an Upgrade Request
Refer to the following overviews of how the ProxySG appliance handles a
WebSocket upgrade request in transparent proxy and in explicit proxy. For more
information on the policy condition mentioned in the following overviews, refer
to the Content Policy Language Reference and the Visual Policy Manager Reference.
239
c. If Detect Protocol is enabled on the HTTP proxy, the request is
forwarded to the HTTP proxy.
If Detect Protocol is disabled on the HTTP proxy and policy does not allow
HTTP CONNECT requests, the appliance treats the request as
if force_protocol(http) were set in policy.
The request is thus forwarded to the HTTP proxy, allowing the appliance
to evaluate policy on (and possibly allow) tunneled HTTP traffic, such as
WebSocket requests, while blocking non-HTTP protocols sent over HTTP
CONNECT.
If Detect Protocol is disabled on the HTTP proxy and HTTP CONNECT is
allowed in policy, the request is TCP-tunneled.
d. (If the protocol is secure WebSocket) If Detect Protocol for SSL is
disabled, the request is TCP-tunneled. If Detect Protocol for SSL is
enabled, the request is forwarded to the SSL proxy.
(On the SSL proxy) If HTTPS interception is disabled, the request is SSL-
tunneled. If HTTPS interception is enabled, the request is forwarded to the
HTTPS proxy.
The proxy detects the Upgrade: websocket header and begins a WebSocket
handshake. The tunneled=yes and http.websocket=yes conditions
evaluate to true.policy that applies to a transaction during the initial
upgrade request.
240
Section 6 Feature Limitations
❐ The appliance does not perform ICAP scanning (either REQMOD or
RESPMOD) on transactions using the WebSocket protocol.
❐ You must import the appliance’s signing certificate authority (CA) certificate
into the browser to prevent a trust error from occurring when the appliance
intercepts HTTPS and detects WebSocket over HTTPS.
241
242
Chapter 9: Managing the SSL Proxy
243
❐ Cache HTTPS content.
❐ Apply HTTP-based authentication mechanism.
❐ Send decrypted data to a configured ICAP Antivirus appliance for virus
scanning and URL filtering.
❐ Apply granular policy (such as validating mime type and filename extension).
IPv6 Support
The SSL proxy is able to communicate using either IPv4 or IPv6, either explicitly
or transparently.
In addition, for any service that uses the SSL proxy, you can create listeners that
bypass or intercept connections for IPv6 sources or destinations.
Checking CRLs
An additional check on the server certificate is done through Certificate
Revocations Lists (CRLs). CRLs show which certificates are no longer valid; the
CRLs are created and maintained by Certificate Signing Authorities that issued
the original certificates.
Only CRLs that are issued by a trusted issuer can be used by the ProxySG
appliance. The CRL issuer certificate must exist as CA certificate on the ProxySG
appliance before the CRL can be imported.
The ProxySG appliance allows:
❐ One local CRL per certificate issuing authority.
244
❐ An import of a CRL that is expired; a warning is displayed in the log.
❐ An import of a CRL that is effective in the future; a warning is displayed in the
log.
245
HTTPS applications that require browsers to present client certificates to secure
Web servers do not work if you are intercepting traffic. To address this, you can
create a policy rule to prevent the interception of such applications, or add client
certificates to the ProxySG appliance, and write policy to present the correct
certificate.
If you configure the ProxySG appliance to intercept HTTPS traffic, be aware that
local privacy laws might require you to notify the user about interception or
obtain consent prior to interception. You can option to use the HTML Notify User
object to notify users after interception or you can use consent certificates to
obtain consent before interception. The HTML Notify User is the easiest option;
however, the ProxySG appliance must decrypt the first request from the user
before it can issue an HTML notification page.
246
Section A: Intercepting HTTPS Traffic
Intercepting HTTPS traffic (by decrypting SSL connections at the ProxySG
appliance) allows you to apply security measures like virus scanning and URL
filtering. See “Configuring STunnel” on page 264 to intercept HTTPS using
STunnel.
Configuration to intercept HTTPS traffic requires the following tasks:
❐ A ProxySG SSL license is required before you can make use of the SSL proxy
for interception. This can be verified in the maintenance tab > licensing page.
❐ Determine whether you are using transparent or explicit mode. For
information on explicit versus transparent proxies, see Chapter 6: "Explicit
and Transparent Proxy" on page 119.
❐ Create an SSL service or HTTP/SOCKS services with protocol detection
enabled, depending on whether you are using transparent or explicit mode.
The Detect Protocol setting is disabled by default. For more information on
creating an SSL service, skip to "Configuring the SSL Proxy in Transparent
Proxy Mode" on page 248.
❐ Create or import an issuer keyring, which is used to sign emulated server
certificates to clients on the fly, allowing the SSL proxy to examine SSL
content. For more information on creating an issuer keyring, see "Specifying
an Issuer Keyring and CCL Lists for SSL Interception" on page 250.
❐ (Optional) Use the Notify User object or client consent certificates to notify users
that their requests are being intercepted and monitored. Whether this is
required depends on local privacy laws. The ProxySG appliance has to
decrypt the first request from the user to issue an HTML notification page. If
this is not desirable, use client consent certificates instead. For more
information on configuring the Notify User policy, refer to the Visual Policy
Manager Reference. For information on managing client consent certificates, see
"Using Client Consent Certificates" on page 251.
❐ Download CA certificates to desktops to avoid a security warning from the
client browsers when the ProxySG appliance is intercepting HTTPS traffic. For
information, see "Downloading an Issuer Certificate" on page 251.
❐ Using policy (VPM or CPL), create rules to intercept SSL traffic and to control
validation of server certificates. By default, such traffic is tunneled and not
intercepted. You must create suitable policy before intercepting SSL traffic. For
more information on using policy to intercept SSL traffic, see Section B:
"Configuring SSL Rules through Policy" on page 256.
❐ Configure the Blue Coat AV or other third-party ICAP vendor, if you have not
already done this. For more information on ICAP-based virus scanning, see
Chapter 23: "Configuring Threat Protection" on page 505 (Blue Coat AV) and
Chapter 24: "Malicious Content Scanning Services" on page 517.
❐ Configure the Blue Coat Web Filter (BCWF) or a third-party URL-filtering
vendor, if you have not already done this. For more information on
configuring BCWF, see Chapter 20: "Filtering Web Content" on page 409.
247
❐ Configure Access Logging. For more information on configuring access
logging, see "Configuring Access Logging" on page 607.
❐ Customize Exception Pages: To customize exception pages (in case of server
certificate verification failure), refer to the Advanced Policy Tasks chapter, Section
E, of the Visual Policy Manager Reference.
3. In the Name field, enter a meaningful name for this SSL proxy service.
4. From the Service Group drop-down list, select to which service this
configuration applies. By default, Other is selected.
248
5. Select SSL from the Proxy settings drop-down list.
6. TCP/IP Settings option: The Early Intercept option cannot be changed for the SSL
proxy service.
7. Select ADN options:
• Enable ADN. Select this option to configure this service to use ADN.
Enabling ADN does not guarantee the connections are accelerated by
ADN. The actual enable decision is determined by ADN routing (for
explicit deployment) or network setup (for transparent deployment).
• The Optimize Bandwidth option is selected by default if you enabled WAN
optimization during initial configuration. Clear the option if you are not
configuring WAN optimization.
8. Create a new listener:
a. Click New; if you edit an existing listener, click Edit.
b. In the Source address area, the most common selection is All, which
means the service applies to requests from any client (IPv4 or IPv6).
You can, however, restrict this listener to a specific IPv4/IPv6 address
or user subnet/prefix length.
c. Select a Destination address from the options. The correct selection
might depend on network configuration. For overviews of the options,
see "About Proxy Services" on page 130.
d. In the Port Range field, enter a single port number or a port range on
which this application protocol broadcasts. For a port ranges, enter a
dash between the start and end ports. For example: 8080-8085
e. In the Action area, select the default action for the service: Bypass tells
the service to ignore any traffic matching this listener. Intercept
configures the service to intercept and proxy the associated traffic.
f. Click OK to close the dialog. The new listener displays in the Listeners
area.
9. Click OK to close the Edit Service dialog.
10. Click Apply.
Continue with "Specifying an Issuer Keyring and CCL Lists for SSL Interception"
on page 250.
249
Continue with "Specifying an Issuer Keyring and CCL Lists for SSL Interception"
on page 250.
Note: Only keyrings with both a certificate and a keypair can be used as issuer
keyrings.
You can also change the CA Certificate Lists (CCLs) that contain the CAs to be
trusted during client and server certificate validation. The defaults are adequate
for the majority of situations. For more information about CCLs, see Chapter 73:
"Authenticating a ProxySG Appliance" on page 1473.
2. Issuer Keyring: From the drop-down menu, select the keyring to use as the
issuer keyring. Any keyring with both a certificate and a keypair in the drop-
down menu can be used.
3. CCL for Client Certificates: Choose which CAs are trusted when the SSL proxy
validates client certificates. The default is <All CA Certificates>.
4. CCL for Server Certificates: Choose which CAs are trusted when the SSL proxy
validates server certificates. The CCL for server certificates is relevant even
when SSL proxy is tunneling SSL traffic. The default is browser-trusted.
5. Click Apply.
To configure policy, see "Configuring SSL Rules through Policy" on page 256.
250
Using Client Consent Certificates
The SSL proxy, in forward proxy deployments, can specify whether a client
(typically a browser) certificate is required. These certificates are used for user
consent, not for user authentication. Whether they are needed depends upon local
privacy laws.
With client consent certificates, each user is issued a pair of certificates with the
corresponding private keys. Both certificates have a meaningful user-readable
string in the common name field. One certificate has a string that indicates grant of
consent something like: “Yes, I agree to SSL interception”. The other certificate has
a common name indicating denial of consent, something like: “No, I do not agree
to SSL interception”.
Policy is installed on the ProxySG appliance to look for these common names and
to allow or deny actions. For example, when the string “Yes, I agree to SSL
interception” is seen in the client certificate common name, the connection is
allowed; otherwise, it is denied.
Note: You can e-mail the console URL corresponding to the issuer certificate to
end users so that the he or she can install the issuer certificate as a trusted CA.
251
3. Click Download a Certificate as a CA Certificate; the list of certificates on the system
display.
4. Click a certificate (it need not be associated with a keyring); the File Download
Security Warning displays asking what you want to do with the file.
5. Click Save. When the Save As dialog displays, click Save; the file downloads.
6. Click Open to view the Certificate properties; the Certificate window displays.
7. Click the Install Certificate button to launch the Certificate Import Wizard.
8. Ensure the Automatically select the certificate store based on the type of certificate
radio button is enabled before completing the wizard
9. Click Finish. the wizard announces when the certificate is imported.
10. (Optional) To view the installed certificate, go to Internet Explorer, Select Tools
> Internet Options > Contents > Certificates, and open either the Intermediate
Certification Authorities tab or the Trusted Root Certification Authorities tab,
depending on the certificate you downloaded.
252
To download a certificate through Firefox:
Note: You can e-mail the console URL corresponding to the issuer certificate
to end users so that the end-user can install the issuer certificate as a trusted
CA.
5. Enable the options needed. View the certificate before trusting it for any
purpose.
6. Click OK; close the Advanced Statistics dialog.
253
Warn Users When Accessing Websites with Untrusted Certificates
Preserve Untrusted Certificate Issuer allows the ProxySG appliance to present the
browser with a certificate that is signed by its untrusted issuer keyring. The
browser displays certificate information to the user, and lets the user accept the
security risk of an untrusted certificate and proceed to the website.
The default-untrusted keyring has been added to the ProxySG appliance to use
with the Preserve Untrusted Certificate Issuer feature. The default-untrusted
keyring should not be added to any trusted CA lists.
Note: This only applies to SSL forward proxy transactions with HTTPS
interception enabled.
Task # Reference
1. From the Management Console, select Configuration > Proxy Settings > SSL Proxy.
2. To have the ProxySG appliance act as a Certificate Authority (CA) and present
the browser with an untrusted certificate, select Preserve untrusted certificate
issuer.
3. From the Untrusted Issuer Keyring drop-down, select the desired keyring from
the list of eligible keyrings which will be used to sign untrusted server
certificates presented by the ProxySG appliance.
4. Click Apply.
254
If an OCS presents a certificate to the ProxySG appliance that is not signed by
a trusted Certificate Authority (CA), the ProxySG appliance either sends an
error message to the browser, or ignores the error and processes the request,
based on the configuration of the Server Certificate Validation object.
❐ Preserve Untrusted Issuer
255
Section B: Configuring SSL Rules through Policy
SSL interception and access rules, including server certificate validation, are
configured through policy—either the VPM or CPL. Use the SSL Intercept Layer to
configure SSL interception; use the SSL Access Layer to control other aspects of SSL
communication such as server certificate validation and SSL versions. To
configure SSL rules using CPL, refer to the Content Policy Language Reference. This
section covers the following topics:
❐ "Using the SSL Intercept Layer" on page 256.
❐ "Using the SSL Access Layer" on page 258
❐ "Using Client Consent Certificates" on page 251
The policy examples in this section are for in-path deployments of ProxySG
appliances.
Note: For detailed instructions on using VPM, refer to the Visual Policy Manager
Reference.
256
d. Splash URL: The splash URL is added to the emulated certificate as a
certificate extension.
The STunnel options control various aspects of SSL interception.
a. Enable STunnel Interception: Establish a policy where configured STunnel
services (such as POP3S and SMTPS) are terminated and accelerated.
b. Enable SSL interception with automatic protocol detection: In addition to
STunnel interception as described above, discovered HTTPS is handed
off to the HTTPS proxy. Otherwise, SSL traffic continues in STunnel
mode.
5. Click OK to save the changes.
You can use the Disable SSL Intercept object to disable HTTPS Intercept.
5a
5b
5. Fill in the fields as described below. You can only select one field:
a. Hostname: This is the host name of the server whose traffic you want to
intercept. After entering the host name, use the drop-down menu to
specify Exact Match, Contains, At Beginning, At End, Domain, or Regex.
b. Subject: This is the subject field in the server's certificate. After you
enter the subject, use the drop-down menu to specify Exact Match,
Contains, At Beginning, At End, Domain, or Regex.
6. Click Add, then Close; click OK to add the object to the rule.
2. Click New and select the Server Certificate Category object. The Add Server
Certificate Category Object displays. You can change the name in the top field if
needed.
257
3. Select the categories. The categories you selected display in the right-hand
column.
4. Click OK.
Note: For detailed instructions on using VPM, refer to the Visual Policy Manager
Reference.
1. Select the Configuration > Policy > Visual Policy Manager tab and launch the VPM.
2. From the Policy drop-down menu, select Add SSL Access Layer.
3. In the Action column, right-click Set; the Set Action object displays.
4. Click New and select Set Server Certificate Validation object.
258
5. By default, server certificate validation is enabled; to disable it, select Disable
server certificate validation at the bottom of the dialog.
Notes
❐ If the ProxySG appliance and the origin content server cannot agree on a
common cipher suite for intercepted connections, the connection is aborted.
259
❐ Server-Gated Cryptography and step-up certificates are treated just as regular
certificates; special extensions present in these certificates are not be copied
into the emulated certificate. Clients relying on SGC/step-up certificates
continue using weaker ciphers between the client and the ProxySG appliance
when the SSL proxy intercepts the traffic.
260
Section C: Viewing SSL Statistics
The following sections discuss how to analyze various statistics generated by SSL
transactions.
Note: Some SSL statistics (SSL client connections and total bytes sent and
received over a period of time) can only be viewed through the Management
Console (see "Unintercepted SSL Data" on page 261 and "Unintercepted SSL
Clients" on page 262).
Status Description
Current unintercepted SSL The current number of unintercepted SSL client
connections connections.
Total unintercepted SSL connections The cumulative number of unintercepted SSL
client connections since the ProxySG appliance
was last rebooted.
Total bytes sent The total number of unintercepted bytes sent.
Total bytes received The total number of unintercepted bytes received.
261
Unintercepted SSL Clients
The SSL Clients tab displays dynamic graphical statistics for connections received
in the last 60-minute, 24-hour, or 30-day period.
3. Select a time period for the graph from the Duration: drop-down list. The
default is Last Hour.
4. (Optional) To set the graph scale to a different value, select a value from the
Graph scale should drop-down list.
262
3. Select the Duration: for the graph from the drop-down list. The default is Last
Hour.
4. (Optional) To set the graph scale to a different value, select a value from the
Graph scale should drop-down list.
263
Section D: Using STunnel
Stunnel intercepts SSL traffic regardless of the application protocol over it. HTTPS
traffic may be identified and handed off to that proxy, and you may create
services to inspect and accelerate other SSL protocols, such as SMTPS. The
decrypted data may be tapped; see "Tapping Decrypted Data with Encrypted
Tap" on page 270.
STunnel integrates with secure ADN. When secure ADN is enabled, SSL traffic is
accelerated using byte-caching and/or compression. An STunnel service will
intercept traffic based on the configuration and policy. For intercepted SSL-
sessions, the STunnel proxy acts as man-in-the-middle.
The STunnel sub-proxy can perform the following actions:
❐ Intercept SSL traffic and hand off HTTPS content to the HTTPS proxy when it
is detected.
❐ Intercept non-HTTPS traffic.
❐ With ADN, accelerate intercepted SSL traffic.
If you are familiar with configuring an inline or explicit HTTPS proxy, STunnel
works the same way. STunnel is configured with the following policy rule:
ssl.forward_proxy(yes)
or
ssl.forward_proxy(stunnel)
Traffic is handled by STunnel, and tunneled through or processed as appropriate.
STunnel supports SSLv2, SSLv3, TLS 1.0, TLS 1.1 and TLS 1.2.
Configuring STunnel
You can configure STunnel using the Visual Policy Manager (VPM) or the
Management Console.
264
• Enable SSL interception with automatic protocol detection:
In addition to
STunnel interception as described above, discovered HTTPS is handed off
to the HTTPS proxy. Otherwise, SSL traffic continues in STunnel mode.
Note: If an unsuccessful SSL interception occurs (the SSL handshake fails), the
traffic is tunneled.
265
2. On the branch peer, edit or create POP3S or SMTPS services (create a new
service at Configuration > Services > Proxy Services > New Service).
3. Click Apply on the Configuration tab.
For an SMTPS setup, follow the same configuration, except choose the
appropriate port and enter SMTPS as the Name.
Make sure your SSL policy is configured correctly for STunnel. See the next
section.
266
Traffic Mix
On the Traffic Mix > Service tab, view traffic distribution and bandwidth statistics
for SSL service traffic running through the ProxySG appliance.
Traffic History
STunnel sessions are listed under Traffic Mix and Traffic History:
1. Select the Statistics > Traffic Details> Traffic Mix/Traffic History.
2. On the Traffic Mix tab, select Proxy.
• The BW Usage and BW Gain tabs are available.
• The pie chart visually represents the bandwidth percentage for each proxy,
including STunnel.
• Scroll down in the table to view the STunnel (and HTTPS) information.
3. On the Traffic History tab, select Proxy.
• View STunnel on the BW Usage, BW Gain, Client Bytes and Server Bytes tabs.
267
Application Mix
The ProxySG appliance can classify SSL-tunneled traffic without full HTTPS
interception. The Statistics > Application Details > Application Mix and Statistics >
Application Details > Application History reports display the applications detected in
SSL-tunneled traffic. In the Proxy Type column in Application Mix report, look for
STunnel.
268
See "Active Sessions—Viewing Per-Connection Statistics" on page 815 for details
on using these windows.
Access Logging
View the SSL log to see the STunnel sessions; the cs-protocol value is set to stunnel.
269
Section E: Tapping Decrypted Data with Encrypted Tap
Encrypted tap streams decrypted data from intercepted HTTPS or STunnel SSL
transactions on client connections. The tap is performed simultaneously and on
the same ProxySG appliance which is performing the Secure Web Gateway
function. The data is presented in a format that can be understood by common
network traffic analysis tools like Wireshark, common network intrusion
detection systems such as Snort, and so on.
• Encrypted Tap does not support VLAN.
• MTU is fixed at 1500 bytes.
• SSL protocol headers/records/details are not preserved.
• Encrypted Tap is supported for forward proxy for STunnel and HTTPS,
and for reverse proxy for HTTPS.
• Encrypted tap also taps WebSocket.
b. On the Proxy Services tab, select Predefined Service Group >Standard >
HTTPS, and press Edit Service.
270
a. From the Management Console, on the Configuration tab, select Policy >
Visual Policy Manager > Launch. The Visual Policy Manager window pops
up.
b. On the VPM, from Policy, select Add SSL Access Layer, and provide a
name as required.
c. Highlight the added row, right click on Action, and choose Set.
d. On the Set Action Object window, click New..., and choose Enable
encrypted tap.
e. On the Add Encrypted Tap Object window, set the name, verify Enable
encrypted tap is selected, and choose the tap Interface to use from the
drop down.
f. Click Ok. The window closes.
g. Click Ok. The Set Action Object window closes.
5. Install the Encrypted Tap policy.
a. Click Install Policy. You will see a confirmation when the new policy has
been installed.
Note: Make sure the tapped interface is not the same as any client/server/
management interface in use, in order to avoid dumping tapped or decrypted
traffic onto real servers. Furthermore, to avoid dropping traffic at the L2
device (resultant of how L2 forwarding works), ensure there are no Layer 2
bridging devices between the ProxySG appliance and the sniffer tools used on
the tapped interface.
271
On another computer:
1. Connect the PC to the selected Ethernet interface.
2. Open the third-party application (such as Wireshark), and configure it to
monitor the network traffic on the selected Ethernet interface. The intercepted
HTTPS traffic should now be viewable by this application.
Troubleshooting
This section describes troubleshooting tips and solutions for Encrypted Tap.
❐ View access logs for Encrypted Tap. See ‘Viewing Access-Log Statistics.’
❐ View the Encrypted Tap debug log and statistics.
❐ Perform a packet capture at the hardware interface on the ProxySG appliance.
Go to Maintenance > Service Information > Packet Captures to access packet
captures. The capture provides details on the data transmitted by the ProxySG
appliance; compare this to the received tap data.
❐ Perform policy tracing; refer to the Blue Coat Knowledge Base for articles on
how to perform an SSL policy trace.
272
Section F: Working with an HSM Appliance
A Hardware Security Module (HSM) provides additional security for storing
cryptographic keys and certificates, which is required in some highly regulated
industries. The ProxySG appliance is able to use a network-attached HSM
appliance to store resigning CA keys, and to perform digital signature operations.
The ProxySG appliance exchanges signing requests and responses with the
attached HSM appliance, over mutually authenticated HTTPS requests. The
ProxySG appliance sends certificate data to the HSM.
The ProxySG appliance can work with multiple HSM appliances, and multiple
appliances can work with the same HSM. In the event that a policy rule using an
HSM to sign cannot work due to lack of response from the HSM, the attempt is
logged, and the applicable policy action configured for HSM failure (cut through,
drop, reject) occurs. In addition to the resigning certificates, a mutually
authenticated connection (communication pipeline) must be set up by verified
certificates. Configure the ProxySG appliance with CLI, CPL, or the VPM.
273
An HSM requires a linked Device Profile (go to SSL > Device Profiles). Click New,
and create a FIPS compliant or non-compliant profile as required, then enter the
HSM credentials into the Create SSL Device Profile window. For more information,
see "Specifying an Issuer Keyring and CCL Lists for SSL Interception" for more
information.
Add an HSM
HSM appears in the Configuration > SSL menu. The new page contains three tabs.
Click Create on the HSM tab to set up an HSM connection.
1. On the Configuration > SSL > HSM tab, select Create. The Create HSM window pops up.
2. Enter the HSM credentials. For the Device Profile, select the HSM profile created
earlier. Click OK to save the information and close the window.
3. Click Apply on the HSM window. The new HSM appears in the list. Referenced
will show “No” until you use the new HSM in policy.
1. On the Configuration > SSL > HSM Keyrings tab, select Create. The Create HSM
Keyring window pops up.
2. Enter the HSM credentials. Use the Paste From Clipboard button to enter the
Certificate PEM file; the Key Label is the name associated with the private key
created on the SafeNet Java HSM. Click OK to save the information and close
the window..
3. Click Apply on the HSM Keyrings window. The new HSM keyring appears in the
list. Referenced will show “No” until you use the new keyring in policy.
274
Note: A keyring which is referenced by policy can’t be deleted.
Once a keyring has been created, you can click View Certificate to see the certificate
details and PEM file data. Click Preview to see a list of actions which will occur
when the keyring is implemented.
Note: HSM keyrings also appear in the Proxy Settings > SSL Proxy list of Issuer
Keyrings.
2. Create the new group. Move keyrings from the Available HSM Keyrings list to the
Included HSM Keyrings list with the Add>> and Remove>> buttons, to have them
included in the new group.
3. Click OK. The window closes.
4. Click Apply on the HSM Keygroups window.
275
Write HSM Policy
Use policy to direct the SSL proxy to use an HSM keyring or keygroup to sign an
emulated certificate from an intercepted authenticated SSL connection. See the
following graphic.
1. Launch the VPM (Policy > Visual Policy Manager > Launch).
2. On the Blue Coat Visual Policy Manager window, select Policy > Add SSL Intercept
Layer.
3. Rename the layer on the Add New Layer window if required, then click OK (not
shown in the graphic).
4. Highlight the new layer, and right click at Action; select Set. The Set Action
Object window displays.
5. On the Set Action Object window, select New. > Enable SSL Interception.
6. On the Add SSL Interception Object window, select the Issuer Keyring to use for
HSM signatures. Configured HSM keyrings and keygroups appear on the
drop down list.
7. Click OK. The window closes.
8. Click Install Policy. You will see a “Policy installation was successful” message
on completion.
9. Close the VPM and click Apply.
276
277
Section G: Advanced Topics
If you use OpenSSL or Active Directory, you can follow the procedures below to
manage your certificates.
For OpenSSL, see "Creating an Intermediate CA using OpenSSL" on page 278; if
using Active Directory, see "Creating an Intermediate CA using Microsoft Server
2012 (Active Directory)" on page 281.
Installing OpenSSL
After OpenSSL is installed, you must edit the openssl.cnf file and ensure the
path names are correct. By default root certificates are located under ./PEM/DemoCA;
generated certificates are located under /certs.
278
Generating a 1024 bit RSA private key
.....................................+++++
................................................+++++
writing new private key to
'c:\resources\ssl\openssl\bin\PEM\demoCA\private\cakey.pem'
Enter PEM pass phrase:
2. Type any string more than four characters for the PEM pass phrase.
3. Enter the certificate parameters, such as country name, common name that are
required for a Certificate Signing Request (CSR).
The private key and root CA are now located under the directory ./PEM/
DemoCA/private
4. Create a keyring.
a. From the Management Console, select Configuration > SSL > Keyrings.
b. Click Create; fill in the fields as appropriate.
c. Click OK.
5. Create a CSR on the ProxySG appliance.
a. From the Management Console, select Configuration > SSL > Keyrings.
b. Highlight the keyring you just created; click Edit/View.
c. In the Certificate Signing Request pane, click Create and fill in the fields
as appropriate.
6. Paste the contents of the CSR into a text file called new.pem located in the ./bin
directory.
279
Using configuration from C:\Resources\SSL\OpenSSL\bin\openssl.cnf
Enter PEM pass phrase:
Check that the request matches the signature
Signature ok
The Subjects Distinguished Name is as follows
countryName :PRINTABLE:'FR'
stateOrProvinceName :PRINTABLE:'Paris'
localityName :PRINTABLE:'Paris'
organizationName :PRINTABLE:'BlueCoat'
organizationalUnitName:PRINTABLE:'Security Team'
commonName :PRINTABLE:'Proxy.bluecoat.com'
emailAddress :IA5STRING:'[email protected]'
Certificate is to be certified until Sep 27 13:29:09 2006 GMT (365
days)
Sign the certificate? [y/n]:y
1 out of 1 certificate requests certified, commit? [y/n]y
Write out database with 1 new entries
Data Base Updated
This signs the certificate; it can then be imported into the ProxySG appliance.
b. Click Import; enter the certificate name in the CA Cert Name field.
c. Paste the certificate, being sure to include the -----BEGIN
CERTIFICATE---- and the ----END CERTIFICATE----- statements in
the ./bin/PEM/demoCA/private/CAcert file.
d. Click OK.
280
Creating an Intermediate CA using Microsoft Server 2012 (Active Directory)
This section describes certificate management when creating an intermediate CA
using Active Directory.
Before you begin:
❐ Verify the Windows 2012 system is an Active Directory server.
❐ Make sure IIS is installed on the server.
❐ Install the "Certificate Services" through the Server Manager. Enable Active
Directory Certificate Services and select the Certificate Authority mode
as Enterprise
root CA on the AD CS (Active Directory Certificate Services).
All certificate management is done through the browser using the following URL:
http://@ip_server/CertSrv
For information on the following tasks, see:
❐ "Install the root CA onto the browser:" on page 281
❐ "Create an appliance keyring and certificate signing request:" on page 281
❐ "Sign the appliance CSR:" on page 281
❐ "Import the subordinate CA certificate onto the appliance:" on page 282
❐ "Test the configuration:" on page 282
281
4. On the next screen (Submit a Certificate Request or Renewal Request) paste the
contents of the CSR into the Base-64-encoded certificate request field.
5. Select the Certificate Template Subordinate Certification Authority.
If this template does not exist, connect to the certificate manager tool on the
Active Directory server and add the template.
6. Click Submit.
7. Download the certificate (not the chain) as Base 64 encoded.
8. Save this file on the workstation as newcert.pem.
Note: Ensure this keyring is used as the issuer keyring for emulated
certificates. Use policy or the SSL intercept setting in the Management
Console or the CLI.
4. Click Import to paste the contents of the newcert.pem file. This imported the
appliance’s subordinate CA certificate into the keyring.
5. To ensure the appliance trusts the newly -added certificate, import the
contents of the newcert.pem file into the CA Certificates list.
a. From the Management Console, select Configuration > SSL > CA
Certificates.
b. Click Import; enter the certificate name in the CA Cert Name field.
c. Paste the certificate, being sure to include the -----BEGIN
CERTIFICATE---- and the ----END CERTIFICATE----- statements in
the ./bin/PEM/demoCA/private/CAcert file.
d. Click OK.
e. Click Apply.
282
Chapter 10: Managing the WebEx Proxy
This chapter describes how to use the Advanced Secure Gateway appliance
WebEx proxy to control WebEx sessions.
IPv6 Support
The Webex proxy is able to communicate using either IPv4 or IPv6, either
explicitly or transparently.
283
Advanced Secure Gateway Administration Guide
284
Section 2 Enable HTTP Handoff
Enable HTTP handoff so that WebEx connections are handed to the WebEx Proxy,
where it can be inspected and subject to policy actions.
1. Go to Configuration > Proxy Settings > WebEx Proxy.
2. Verify Enable HTTP handoff has been checked; it is checked by default.
285
Advanced Secure Gateway Administration Guide
6. Name the WebEx Site Object, then enter the site name in the detail you select at
the drop down. For example, enter “company1“ for an Exact Match, then click
OK. The Add WebEx Site Object window closes. The Site Name may only contain
alphanumeric characters.
286
9. Install the policy.
287
Advanced Secure Gateway Administration Guide
Note: Before proceeding, make sure that you meet the requirements described in
"Before You Begin" on page 284.
7. Name the object (for example, “WebExApplication”), select WebEx from the
left side list, and click OK.
288
8. Click New on the Add Combined Destination Object window, and select the Request
URL Operation. The system displays the Add Request Web Operation Control
window.
a. Name the object (for example, “WebExOperation-UploadFiles”).
b. Select Upload Files from the left side list, and click OK.
Note: Other WebEx operations include Host Meeting, Join Meeting, and Login.
9. To set up policy where both objects are required for the action to occur, set up
an AND situation.
a. Highlight the first new object (“WebExApplication”), and click Add to
move it to the top right object field.
b. Highlight the second new object (“WebExOperation-UploadFiles”),
and click Add to move it to the lower object field.
c. Click OK. The window closes.
d. Click OK on the Set Destination Object window.
289
Advanced Secure Gateway Administration Guide
10. On the VPM window, right click Action on the current layer, and choose Allow or
Deny.
290
Section 5 Control Desktop Sharing with Policy
Use a combined object to deny local desktop sharing through WebEx. Desktop
sharing is controlled by the Share Application function; the process is otherwise
the same as "Control File Uploads with Policy" .
Note: Before proceeding, make sure that you meet the requirements described in
"Before You Begin" on page 284.
7. Name the object (for example, “WebExApplication”), select WebEx from the
left side list, and click OK.
291
Advanced Secure Gateway Administration Guide
8. Click New on the Add Combined Destination Object window, and select the Request
URL Operation. The system displays the Add Request Web Operation Control
window.
• Name the object (for example, “WebExOperation-ShareApplication”).
• Select Share Application from the left side list, and click OK.
9. To set up policy where both objects are required for the action to occur, set up
an AND situation.
292
a. Highlight the first new object (“WebExApplication”), and click Add to
move it to the top right object field.
b. Highlight the second new object (“WebExOperation-
ShareApplication”), and click Add to move it to the lower object field.
c. Click OK. The window closes.
d. Click OK on the Set Destination Object window.
10. On the VPM window, right click Action on the current layer, and choose Deny or
Allow.
293
Advanced Secure Gateway Administration Guide
c-ip Client IP
294
The following table provides the log decode.
295
Advanced Secure Gateway Administration Guide
296
Chapter 11: Accelerating File Sharing
This chapter discusses file sharing optimization. File sharing uses the Common
Internet File System (CIFS) protocol.
297
SGOS Administration Guide
LEGEND:
A: Branch client
B: Branch peer
C: Concentrator peer
D: File server containing objects requested by branch users
DATA FLOW:
1: A branch client requests a file from a server at the data center.
2: If the Branch peer has the object or part of the object cached, it is served back to the client; otherwise,
the request for uncached objects is sent to the data center. For SMBv1 connections, the ProxySG
attempts to read ahead—anticipate what part(s) of a specific object might be requested next.
3: If enabled for the CIFS service, byte caching and compression techniques are applied to the data
over the TCP connection.
4: The Concentrator performs decompression and authentication tasks, accesses the content server,
and returns the content back to the branch.
5. The client receives the requested content. In addition, the anticipated content is cached (if permitted
by the server and policy) so that future requests for it can be served without requesting it from the data
center.
6. Another client requests access to a file on the core server, but wants to write to the file. With write
back enabled, the branch ProxySG continuously informs the client that it is okay to write the next block.
Simultaneously, the ProxySG sends the data over the WAN to the file server, thus maximizing the data
pipeline.
Figure 11–1 CIFS Proxy Traffic and Flow Diagram
298
Caching Behavior
The CIFS proxy caches the regions of files that are read or written by the client
(partial caching) and applies to both read and write file activities. Also, the
caching process respects file locking.
SMBv1 and SMBv2 share the same object cache, allowing a client using SMBv2
protocol to use objects cached by another client using SMBv1 (and vice versa).
When SMBv2 protocol acceleration is disabled or the connection requires
messages to be signed, the connection is placed into passthrough and object
caching is not performed. However, the connection can still take advantage of
byte caching and compression.
Note: Caching behavior can also be controlled with policy. See the Content Policy
Language Reference Guide or the Visual Policy Manager Reference Guide.
Authentication
The CIFS proxy supports both server and proxy authentication in the following
contexts.
Server Authentication
Permissions set by the origin content server (OCS) are always honored. Requests
to open a file are forwarded to the OCS; if the OCS rejects the client access request,
no content is served from the cache.
Note: NTLM/IWA authentication requires that the client knows what origin
server it is connecting to so it can obtain the proper credentials from the domain
controller.
Proxy Authentication
The ProxySG cannot issue a challenge to the user over CIFS, but it is able to make
use of credentials acquired by other protocols if IP surrogates are enabled.
Policy Support
The CIFS proxy supports the proxy, cache, and exception policy layers. However,
the SMB protocol can only return error numbers. Exception definitions in the
forms of strings cannot be seen by an end user. Refer to the Content Policy
Language Reference for supported CPL triggers and actions.
299
SGOS Administration Guide
Access Logging
By default, the ProxySG uses a Blue Coat-derived CIFS access log format.
date time c-ip c-port r-ip r-port s-action s-ip cs-auth-group
cs-username x-client-connection-bytes x-server-connection-bytes
x-server-adn-connection-bytes x-cifs-method
x-cifs-client-read-operations x-cifs-client-write-operations
x-cifs-client-other-operations x-cifs-server-operations
x-cifs-error-code x-cifs-server x-cifs-share x-cifs-path
x-cifs-orig-path x-cifs-client-bytes-read x-cifs-server-bytes-read
x-cifs-bytes-written x-cifs-uid x-cifs-tid x-cifs-fid x-cifs-file-size
x-cifs-file-type x-cifs-fid-persistent
WCCP Support
If WCCP is deployed for transparency, you must configure WCCP to intercept
TCP ports 139 and 445.
300
Section 1 Configuring the ProxySG CIFS Proxy
This section contains the following sub-sections:
❐ "About Windows Security Signatures" on page 301
❐ "Intercepting CIFS Services" on page 304
❐ "Configuring SMBv1 Options" on page 305
❐ "Configuring SMBv2 Options" on page 310
❐ "Reviewing CIFS Protocol Statistics" on page 311
See Also
"About the CIFS Protocol" on page 297
SMBv1
In order for the CIFS proxy to fully optimize SMBv1 traffic, the Windows clients
cannot be configured with a requirement that security signatures always be used.
The instructions for verifying this setting are detailed below.
In addition, if signing is required on the server, you must enable and configure
SMB signing on the ADN concentrator. (See "Enabling SMB Signing Support for
SMBv1 Connections" on page 307.)
SMBv2
For SMBv2, if security signatures are always required on the client or the server,
the CIFS proxy cannot fully optimize SMBv2 traffic. The proxy can perform byte
caching and compression on this traffic, but it cannot perform object caching or
protocol acceleration. If you want to fully optimize SMBv2 traffic, you must
disable the setting that controls whether digital signing must always be used; this
must be configured on clients and servers. If either side requires signing always
be used, the SMBv2 connections will be passed through the proxy without full
optimization.
If your clients are running Windows 8, you can optionally disable Secure Dialect
Negotiation on clients for better performance; see "Disable Secure Dialect
Negotiation" on page 304.
301
SGOS Administration Guide
Note: This procedure follows the Control Panel Classic View format. The
screen shots represent Microsoft Windows XP.
1. In each Windows client, select Start > Control Panel > Administrative Tools > Local
Security Policy. The Local Security Settings dialog appears.
Note: In Windows 2000, this option is called Digitally sign client communications
(always).
302
4. Select Disabled. Click Apply and OK.
5. Close all Control Panel dialogs.
8. SMBv1 only: If the server requires signing, enable and configure SMB signing
on the ADN concentrator. See "Enabling SMB Signing Support for SMBv1
Connections" on page 307.
303
SGOS Administration Guide
3. Select the key, and then add a new DWORD value with the name
RequireSecureNegotiate and value data 0.
304
2a
2b
b. Notice the Action for each default service (ports 139 and 445) is Bypass.
Select Intercept from the drop-down list(s).
3. Click Apply.
Now that the ProxySG is intercepting CIFS traffic, configure the CIFS proxy
options for SMBv1 ("Configuring SMBv1 Options" on page 305) or SMBv2
("Configuring SMBv2 Options" on page 310).
2. To accelerate SMBv1 connections, make sure the Enable protocol acceleration for
SMBv1 connections check box is selected.
305
SGOS Administration Guide
306
e. Never Serve Directories After Expiration: When this option is enabled and
Directory Cache Time is past its expiration, directori