BIG-IP Data Center Firewall Configuration Guide
BIG-IP Data Center Firewall Configuration Guide
Version 11.1
Table of Contents
Table of Contents
Legal Notices.....................................................................................................................................5 Acknowledgments............................................................................................................................7
Chapter 4: Logging..............................................................................................21
Overview................................................................................................................................22 Logging server and profile setup............................................................................................22 Specifying Syslog servers...........................................................................................22 Creating a pool of servers for high-speed logging.......................................................22 Configuring a profile for high-speed logging................................................................23
Table of Contents
Creating a Services profile within LTM........................................................................34 Creating a load balancing pool....................................................................................35 Creating an iRule.........................................................................................................36 Host virtual servers......................................................................................................36 Network virtual servers................................................................................................38 Configuring a SNAT................................................................................................................39
Chapter 9: Additional Attack Prevention using BIG-IP PSM and BIG-IP ASM..............49
Overview................................................................................................................................50 What is BIG-IP Protocol Security Module?.............................................................................50 Applying protocol security to an LTM profile................................................................50 Advanced Layer 7 protection using BIG-IP Application Security Manager.............................51
Legal Notices
Publication Date This document was published on March 9, 2012. Publication Number MAN-0395-00 Copyright Copyright 2012, F5 Networks, Inc. All rights reserved. F5 Networks, Inc. (F5) believes the information it furnishes to be accurate and reliable. However, F5 assumes no responsibility for the use of this information, nor any infringement of patents or other rights of third parties which may result from its use. No license is granted by implication or otherwise under any patent, copyright, or other intellectual property right of F5 except as specically described by applicable user licenses. F5 reserves the right to change specications at any time without notice. Trademarks 3DNS, Access Policy Manager, Acopia, Acopia Networks, Advanced Client Authentication, Advanced Routing, APM, Application Security Manager, ARX, AskF5, ASM, BIG-IP, Cloud Extender, CloudFucious, CMP, Data Manager, DevCentral, DevCentral [DESIGN], DNS Express, DSC, DSI, Edge Client, Edge Gateway, Edge Portal, EM, Enterprise Manager, F5, F5 [DESIGN], F5 Management Pack, F5 Networks, F5 World, Fast Application Proxy, Fast Cache, FirePass, Global Trafc Manager, GTM, IBR, Intelligent Browser Referencing, Intelligent Compression, IPv6 Gateway, iApps, iControl, iHealth, iQuery, iRules, iRules OnDemand, iSession, IT agility. Your way., L7 Rate Shaping, LC, Link Controller, Local Trafc Manager, LTM, Message Security Module, MSM, Netcelera, OneConnect, Packet Velocity, Protocol Security Module, PSM, Real Trafc Policy Builder, ScaleN, SSL Acceleration, StrongBox, SuperVIP, SYN Check, TCP Express, TDR, TMOS, Trafc Management Operating System, TrafcShield, Transparent Data Reduction, VIPRION, vCMP, WA, WAN Optimization Manager, WANJet, WebAccelerator, WOM, and ZoneRunner, are trademarks or service marks of F5 Networks, Inc., in the U.S. and other countries, and may not be used without F5's express written consent. All other product and company names herein may be trademarks of their respective owners. Export Regulation Notice This product may include cryptographic software. Under the Export Administration Act, the United States government may consider it a criminal offense to export this product from the United States. RF Interference Warning This is a Class A product. In a domestic environment this product may cause radio interference, in which case the user may be required to take adequate measures. FCC Compliance This equipment has been tested and found to comply with the limits for a Class A digital device pursuant to Part 15 of FCC rules. These limits are designed to provide reasonable protection against harmful interference when the equipment is operated in a commercial environment. This unit generates, uses, and
Legal Notices
can radiate radio frequency energy and, if not installed and used in accordance with the instruction manual, may cause harmful interference to radio communications. Operation of this equipment in a residential area is likely to cause harmful interference, in which case the user, at his own expense, will be required to take whatever measures may be required to correct the interference. Any modications to this device, unless expressly approved by the manufacturer, can void the user's authority to operate this equipment under part 15 of the FCC rules. Canadian Regulatory Compliance This Class A digital apparatus complies with Canadian ICES-003. Standards Compliance This product conforms to the IEC, European Union, ANSI/UL and Canadian CSA standards applicable to Information Technology products at the time of manufacture.
Acknowledgments
This product includes software developed by Bill Paul. This product includes software developed by Jonathan Stone. This product includes software developed by Manuel Bouyer. This product includes software developed by Paul Richards. This product includes software developed by the NetBSD Foundation, Inc. and its contributors. This product includes software developed by the Politecnico di Torino, and its contributors. This product includes software developed by the Swedish Institute of Computer Science and its contributors. This product includes software developed by the University of California, Berkeley and its contributors. This product includes software developed by the Computer Systems Engineering Group at the Lawrence Berkeley Laboratory. This product includes software developed by Christopher G. Demetriou for the NetBSD Project. This product includes software developed by Adam Glass. This product includes software developed by Christian E. Hopps. This product includes software developed by Dean Huxley. This product includes software developed by John Kohl. This product includes software developed by Paul Kranenburg. This product includes software developed by Terrence R. Lambert. This product includes software developed by Philip A. Nelson. This product includes software developed by Herb Peyerl. This product includes software developed by Jochen Pohl for the NetBSD Project. This product includes software developed by Chris Provenzano. This product includes software developed by Theo de Raadt. This product includes software developed by David Muir Sharnoff. This product includes software developed by SigmaSoft, Th. Lockert. This product includes software developed for the NetBSD Project by Jason R. Thorpe. This product includes software developed by Jason R. Thorpe for And Communications, http://www.and.com. This product includes software developed for the NetBSD Project by Frank Van der Linden. This product includes software developed for the NetBSD Project by John M. Vinopal. This product includes software developed by Christos Zoulas. This product includes software developed by the University of Vermont and State Agricultural College and Garrett A. Wollman. This product includes software developed by Balazs Scheidler ([email protected]), which is protected under the GNU Public License.
Acknowledgments
This product includes software developed by Niels Mueller ([email protected]), which is protected under the GNU Public License. In the following statement, This software refers to the Mitsumi CD-ROM driver: This software was developed by Holger Veit and Brian Moore for use with 386BSD and similar operating systems. Similar operating systems includes mainly non-prot oriented systems for research and education, including but not restricted to NetBSD, FreeBSD, Mach (by CMU). This product includes software developed by the Apache Group for use in the Apache HTTP server project (http://www.apache.org/). This product includes software licensed from Richard H. Porter under the GNU Library General Public License ( 1998, Red Hat Software), www.gnu.org/copyleft/lgpl.html. This product includes the standard version of Perl software licensed under the Perl Artistic License ( 1997, 1998 Tom Christiansen and Nathan Torkington). All rights reserved. You may nd the most current standard version of Perl at http://www.perl.com. This product includes software developed by Jared Minch. This product includes software developed by the OpenSSL Project for use in the OpenSSL Toolkit (http://www.openssl.org/). This product includes cryptographic software written by Eric Young ([email protected]). This product contains software based on oprole, which is protected under the GNU Public License. This product includes RRDtool software developed by Tobi Oetiker (http://www.rrdtool.com/index.html) and licensed under the GNU General Public License. This product contains software licensed from Dr. Brian Gladman under the GNU General Public License (GPL). This product includes software developed by the Apache Software Foundation (http://www.apache.org/). This product includes Hypersonic SQL. This product contains software developed by the Regents of the University of California, Sun Microsystems, Inc., Scriptics Corporation, and others. This product includes software developed by the Internet Software Consortium. This product includes software developed by Nominum, Inc. (http://www.nominum.com). This product contains software developed by Broadcom Corporation, which is protected under the GNU Public License. This product contains software developed by MaxMind LLC, and is protected under the GNU Lesser General Public License, as published by the Free Software Foundation. This product includes software developed by the Computer Systems Engineering Group at Lawrence Berkeley Laboratory. Copyright 1990-1994 Regents of the University of California. All rights reserved. Redistribution and use in source and binary forms, with or without modication, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. All advertising materials mentioning features or use of this software must display the following acknowledgment: This product includes software developed by the Computer Systems Engineering Group at Lawrence Berkeley Laboratory.
4. Neither the name of the University nor of the Laboratory may be used to endorse or promote products derived from this software without specic prior written permission. THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. This product includes software developed by Sony Computer Science Laboratories Inc. Copyright 1997-2003 Sony Computer Science Laboratories Inc. All rights reserved. Redistribution and use in source and binary forms, with or without modication, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. THIS SOFTWARE IS PROVIDED BY SONY CSL AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL SONY CSL OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Acknowledgments
10
Chapter
1
Introduction to the BIG-IP Data Center Firewall
Topics: Overview Features and benefits BIG-IP data center firewall packet handling
Overview
The BIG-IP system offers native, high-performance rewall services to protect the entire network infrastructure, and operates as a purpose-built, high-performance application delivery controller (ADC) designed to protect data centers. In many cases, the BIG-IP system can replace an existing rewall while also offering scale, performance, and persistence. The BIG-IP system provides a unied view of Layer 3 through Layer 7, as well as integration with Security Incident and Event Manager (SIEM) vendors.
SSL termination
Dynamic threat mitigation iRules provide a exible way to enforce protocol functions on both standard, and emerging or custom protocols. With iRules, organizations can create a zero-day dynamic security context to react to vulnerabilities for which an associated patch has not yet been released. Resource cloaking and content security You can prevent leaks of error codes and sensitive content.
12
Figure 1: Basic packet flow through a BIG-IP data center firewall To effectively congure a BIG-IP system as a data center rewall, you must decide the way that you want the BIG-IP system to process any network trafc that the system receives. A BIG-IP system evaluates and acts on network trafc using the following order of operations. Packet Filters The BIG-IP system evaluates network trafc against any packet lters that you have congured, in the explicit order you dene. Once accepted, a packet is not evaluated against additional lters, but is processed by any SNATs, virtual servers or iRules that apply. If a packet is discarded or rejected, a BIG-IP system does not perform any further evaluation of that packet. Traffic listeners When you create local trafc objects (such as virtual servers, NATs, and SNATs) that process network trafc on the BIG-IP system, the BIG-IP system creates appropriate listeners for the objects that you dene. A local trafc object with a destination listener processes requests matching a destination host or network IP address dened on the BIG-IP system. A local trafc object with a source listener processes requests originating from a host or group of hosts dened on the BIG-IP system. For example, a virtual server with a destination address and a netmask of 192.0.0.0/8:any, takes precedence over a virtual server with a destination address and a netmask of 0.0.0.0/0:80. If the trafc does not match a virtual server and there is a SNAT in place, processing follows a specic order. For example, a SNAT with an origin address of 10.10.64.0/24 takes precedence over a SNAT with an origin of default. Additionally, a SNAT with an origin address of 10.10.64.2 takes precedence over a NAT with an origin address of 10.10.64.2. Virtual server-specific ACL using iRules Any iRules associated with the matched virtual server are processed. iRules are event-driven, so that the order of events ultimately controls the order in which code blocks are processed. Additionally, you can use priority statements within iRules to assign execution orders for like events. Lastly, for like events of identical priority, iRules are triggered in the order that they are assigned to the virtual server. For each of these BIG-IP features, consult the BIG-IP product documentation and other online resources, such as F5 Networks' DevCentral Wiki, for complete details.
13
14
Chapter
2
Prerequisites for System Configuration
Topics: List of prerequisite tasks
Also, if you intend to use BIG-IP Protocol Security Module and BIG-IP Application Security Manager on the BIG-IP data center rewall, verify that these modules are licensed and provisioned on the system. Once you have met these prerequisites, the BIG-IP system is ready to be congured as a data center rewall.
16
Chapter
3
Securing BIG-IP Administrative Access
Topics: Overview Configuring security settings for administrative login Configuring a password policy for administrative users Creating a BIG-IP system user account Configuring a security level for a self IP address
Overview
There are several tasks that you can perform to control BIG-IP administrative access to the BIG-IP Conguration utility or to tmsh. This access control includes not only settings such as the number of failed login attempts allowed per user and the maximum amount of allowed idle login time, but also settings to specify user roles, administrative partition access, and console access.
18
4. For the Minimum Length and Required Characters settings, congure the default values, according to your organization's internal security requirements. 5. In the Maximum Login Failures eld, specify a number. If the user fails to log in the specied number of times, the user is locked out of the system. Therefore, F5 Networks recommends that you specify a value that allows for a reasonable number of login failures before user lockout. 6. Click Update.
19
20
Chapter
4
Logging
Topics: Overview Logging server and profile setup
Logging
Overview
There are a number of logging features you can implement as part of a BIG-IP system rewall conguration.
22
5. From the Load Balancing Method list, select how the system distributes trafc to members of this pool. The default is Round Robin. 6. For the Priority Group Activation setting, select the way to handle priority groups: Retain the default option, Disabled to disable priority groups. Select Less than, and type the minimum number of members in the Available Members eld that must remain available in each priority group in order for trafc to remain conned to that group.
7. Using the New Members setting, add the IP address for each logging server that you want to include in the pool: a) Type an IP address in the Address eld, or select a node address from the Node List. b) Type a service number in the Service Port eld, or select a service name from the list. c) You may type a priority number in the Priority eld. d) Click Add. 8. Click Finished. The new pool containing the remote Syslog servers appears in the Pools list. After creating the pool, you must create a request logging prole and specify this pool name within the prole. This eliminates the need for you to assign this pool to a virtual server.
23
Logging
10. (Optional) You can also congure the logging request errors settings. a) From the Log Logging Errors list, select Enabled. b) In the Error Template eld, type the request logging parameters for the entries that you want to include in the log le. c) From the HSL Error Protocol list, select a high-speed logging error protocol. d) From the Error Pool Name list, select a pool that includes the node for the error logging server as a pool member. 11. Click Update. This congures a request logging prole to log specied data for HTTP requests. Request logging parameters This table lists all available parameters from which you can create a custom logging prole. These are used to specify entries for the Template and Error Template settings For each parameter, the system writes to the log the information described in the right column. Table 1: Request logging parameters Parameter
BIGIP_BLADE_ID BIGIP_CACHED
Log le entry description An entry for the slot number of the blade that handled the request. An entry of Cached status: true, if the response came from BIG-IP cache, or Cached status: false, if the response came from the server. An entry for the congured host name of the unit or chassis. An entry for the IP address of a client, for example, 192.168.74.164. An entry for the port of a client, for example, 80. A two-character entry for the day of the month, ranging from 1 (note the leading space) through 31. An entry that spells out the name of the day. A two-digit entry for the day of the month, ranging from 01 through 31. A three-letter entry for the day, for example, Mon. A date and time entry in an HTTP format, for example, Tue, 5 Apr 2011 02:15:31 GMT. A two-digit month entry, ranging from 01 through 12. A three-letter abbreviation for a month entry, for example, APR. An entry that spells out the name of the month. A date and time entry in an NCSA format, for example, dd/mm/yy:hh:mm:ss ZNE. A two-digit year entry, ranging from 00 through 99. A four-digit year entry. The name of the httpclass prole that matched the request, or an empty entry if a prole name is not associated with the request. A ag summarizing the HTTP1.1 keep-alive status for the request:: aY if the HTTP1.1 keep-alive header was sent, or an empty entry if not.
DATE_YY DATE_YYYY
HTTP_CLASS
HTTP_KEEPALIVE
24
Parameter
HTTP_METHOD
Log le entry description An entry that denes the HTTP method, for example, GET, PUT, HEAD, POST, DELETE, TRACE, or CONNECT. An entry that denes the HTTP path. The text following the rst ? in the URI. The complete text of the request, for example, $METHOD $URI $VERSION. The numerical response status code, that is, the status response code excluding subsequent text. The complete status response, that is, the number appended with any subsequent text. An entry for the URI of the request. An entry that denes the HTTP version. An NCSA Combined formatted log string, for example, $NCSA_COMMON $Referer ${User-agent} $Cookie. An NCSA Common formatted log string, for example, $CLIENT_IP - $DATE_NCSA $HTTP_REQUEST $HTTP_STATCODE $RESPONSE_SIZE. The elapsed time in milliseconds (ms) between receiving the request and sending the response. An entry for the size of response in bytes. The elapsed time in microseconds (s) between receiving the request and sending the response. An entry for the IP address of a server, for example, 10.10.0.1. An entry for the port of a server, for example, 80. An entry for the self IP address of the BIG-IP-originated connection to the server when SNAT is enabled, or an entry for the client IP address when SNAT is not enabled. An entry for the port of the BIG-IP-originated connection to the server when SNAT is enabled, or an entry for the client port when SNAT is not enabled. A twelve-hour request-time qualier, for example, AM or PM. A compact twelve-hour time entry for request-time hours, ranging from 1 through 12. A twelve-hour time entry for hours, for example, 12 AM. A twelve hour entry for request-time hours, ranging from 01 through 12. An entry for a compact request time of H:M:S, for example, 12:10:49. A twenty-four hour entry for request-time hours, ranging from 00 through 23. A two-digit entry for minutes, ranging from 00 through 59. An entry for the request-time fraction in milliseconds (ms).
HTTP_STATCODE
HTTP_STATUS
NCSA_COMMON
RESPONSE_MSECS
RESPONSE_SIZE RESPONSE_USECS
SNAT_PORT
TIME_AMPM TIME_H12
TIME_MM TIME_MSECS
25
Logging
Parameter
TIME_OFFSET TIME_SS TIME_UNIX
Log le entry description An entry for the time zone, offset in hours from GMT, for example, -11. A two-digit entry for seconds, ranging from 00 through 59. A UNIX time entry for the number of seconds since the UNIX epoch, for example, 00:00:00 UTC, January 1st, 1970. An entry for the request-time fraction in microseconds (s). An entry for the current Olson database or tz database three-character time zone, for example, PDT. An entry for the IP address of a virtual server, for example, 192.168.10.1. An entry for the name of a virtual server. An entry for the name of the pool containing the responding server. An entry for the port of a virtual server, for example, 80. the virtual server.
TIME_USECS TIME_ZONE
VIRTUAL_IP
VIRTUAL_SNATPOOL_NAME The name of the Secure Network Address Translation pool associated with NULL
Standard log formats Log headers appear in the lines at the top of a log le. You can use log headers to identify the type and order of the information written to each line in the log le. Some log analysis software also uses log headers to determine how to parse a log le. There are three common conventions for log headers shown here. Convention No header line Description Apache web servers use this option. By default, Apache web servers write access logs in a format that is identical to the NCSA Common format. Netscape servers, and their descendants (such as the iPlanet Enterprise Server) write a log header line that is unique to this family of servers. These servers generally use either the NCSA Common or Combined log format, and the log header lines are composed of keywords. For example: #format=%Ses->client.ip% %Req->vars.auth-user% [%SYSDATE%] .... W3C headers Most Microsoft Internet Information Services (IIS) web servers write log les in the extended log le format, which is dened by a W3C working draft.
The logging information that is commonly used by origin web servers consists of the following conventions: NCSA Common (no log header) NCSA Common (Netscape log header)
26
NCSA Combined (no log header) NCSA Combined (Netscape log header) W3C Extended
NCSA Common log format example This is the NCSA Common log format syntax: host rfc931 username [date:time UTC_offset] "method URI?query_parameters protocol" status bytes Here is an example that uses this syntax: 125.125.125.2 - - [03/Apr/2011:23:44:03 -0600] "GET /apps/example.jsp?sessionID=34h76 HTTP/1.1" 200 3045
27
Logging
28
Chapter
5
Access Control Lists
Topics: Overview Packet filter configuration Application-specific access control using iRules
Overview
You can implement two kinds of access control on the BIG-IP system -- Packet lters and iRules.
You specify the criteria for applying packet lter rules within an expression. When creating a packet lter rule, you can instruct the BIG-IP system to build an expression for you, in which case you need only choose the criteria from predened lists, or you can write your own expression text, using the syntax of the tcpdump utility. You can also congure global packet ltering that applies to all packet lter rules that you create, such as specifying a specic MAC address or IP address to accept or reject. Note: Packet lters generate additional log messages.
30
31
32
Chapter
6
Traffic Listeners
Topics: Overview Virtual server configuration Configuring a SNAT
Traffic Listeners
Overview
Part of conguring the BIG-IP system to be a data center rewall is to create virtual servers and SNATs. For some virtual servers, you can create iRules that lter trafc based on specic user-dened criteria.
34
example, if the BIG-IP data center rewall must handle HTTP trafc, you can create a custom HTTP prole and then assign that prole to a virtual server that listens for trafc on port 80 on the BIG-IP system. This particular procedure creates an HTTP prole. You can use a variation of this task to create other proles as well, such as an FTP or SMTP prole. Important: You can create as many proles as you need. 1. On the Main tab, click Local Trafc > Proles > Services > HTTP . The HTTP prole list screen opens. 2. Click Create. The New HTTP Prole screen opens. 3. In the Name eld, type a name for the prole. Names must begin with a letter, and can contain only letters, numbers, and the underscore (_) character. 4. From the Parent Prole list, retain http. 5. Select the Custom check box. The elds in the Settings area become available for revision. 6. Adjust all settings as required. You can use the default values or change them to suit your needs. 7. Click Finished. A custom BIG-IP LTM prole now appears in the relevant prole list in the BIG-IP Conguration utility. After creating this prole, you must assign the prole to a virtual server.
35
Traffic Listeners
7. Using the New Members setting, add each resource that you want to include in the pool: a) Either type an IP address in the Address eld, or select a node address from the Node List. b) Type a port number in the Service Port eld, or select a service name from the list. c) To specify a priority group, type a priority number in the Priority eld. d) Click Add. 8. Click Finished. The load balancing pool appears in the Pools list.
Creating an iRule
Use this procedure to create an iRule. 1. On the Main tab, click Local Trafc > iRules. 2. Click Create. The New iRule screen opens. 3. In the Name eld, type a 1- to 31-character name, such as virtual_acl_irule. 4. In the Denition eld, type the syntax for the iRule, using Tool Command Language (Tcl) syntax. For complete and detailed information on iRules syntax, see the F5 Networks DevCentral web site http://devcentral.f5.com. 5. Click Finished.
36
7. From the Conguration list, select Advanced. 8. From the Request Logging Prole list, select the custom request logging prole that you created earlier. 9. Locate the Resources area of the screen. 10. For the iRules setting, from the Available list, select the name of the iRule that you want to assign, and using the Move button, move the name into the Enabled list. This step is optional. 11. From the Default Pool list, select the name of the pool that you created previously. 12. Click Finished. The BIG-IP system now listens for trafc destined for the specied destination IP address and service, and applies all assigned proles and any load balancing pool. Also, all log messages pertaining to the application trafc are logged to the pool of remote logging servers specied in the assign Request Logging prole. Example 1: Host virtual server configurations This example shows the BIG-IP data center rewall also functioning as an application delivery controller (ADC). In the illustration shown, the BIG-IP system contains two host virtual servers (FTP VIP and App VIP) to perform application delivery controller (ADC) functions, while still providing security. Specically, the two virtual servers perform these functions: Load balancing trafc to FTP resources Load balancing trafc to internal ADCs that handle specic applications. (The illustration shows one internal ADC named App ADC.)
The benet of the rst function is that you do not need to position the BIG-IP data center rewall between two ADCs before sending trafc to the internal resources. This simplies the management of the environment. The second function illustrates the same benet but also shows that the BIG-IP system can load balance the request to an internal ADC that is handling the more specialized tasks required for an application, such as web acceleration, compression, caching, or web optimization.
37
Traffic Listeners
10. Click Finished. Now the BIG-IP system listens for trafc destined for the specied destination IP address and service, and applies all assigned proles and iRules. Example 2: Network virtual server configurations This example shows the BIG-IP data center rewall congured with a network virtual server. This conguration is generally used when you do not want the BIG-IP data center rewall to perform address translation on incoming requests; instead, the packets are simply forwarded to publicly-accessible resources while still providing security. As shown, an ADC provides traditional application delivery functionality along with possibly more specialized functionality behind the BIG-IP data center rewall. The illustration also shows a DNS server located behind the BIG-IP data center rewall, but with a publicly-accessible address. This could be a direct DNS server, or even a GTM system providing global DNS services to an infrastructure.
38
Adding a static route On the BIG-IP data center rewall, use this task to create a static route to a BIG-IP device on another network. 1. On the Main tab, click Network > Routes. 2. Click Add. The New Route screen opens. 3. In the Name eld, type a unique name for the route. 4. In the Destination eld, type the destination IP address in the route. This address can represent either a host or a network. Also, ifyou are using the route domains and the relevant route domain is the partition default route domain, you do not need to append a route domain ID to this address. 5. In the Netmask eld, type the network mask for the destination IP address. 6. From the Resource list, select Use Gateway. The gateway represents a next-hop or last-hop address in the route. 7. For the Gateway Address setting, select IP Address and type an IP address. 8. At the bottom of the screen, click Finished. Now, packets targeted for the destination address specied in the route can reach that destination.
Configuring a SNAT
To protect IP addresses on the private network from being exposed to nodes on a public network, you can dene a SNAT. A SNAT changes the source IP address on a packet to a SNAT external address located on the BIG-IP system. 1. On the Main tab, click Local Trafc > SNATs .
39
Traffic Listeners
2. 3. 4. 5. 6.
The SNAT List screen displays a list of existing SNATs. Click Create. Name the new SNAT. In the Translation eld, type the IP address that you want to use as a translation IP address. From the Origin list, select Address List. For each client to which you want to assign a translation address, do the following: a) Select Host. b) Type a client IP address in the Address eld. c) Click Add.
7. From the VLAN Trafc list, select Enabled on. 8. For the VLAN List setting, in the Available eld, select an external VLAN, and using the Move button, move the VLAN name to the Selected eld. 9. Click Finished.
40
Chapter
7
Advanced Security
Topics: Overview Distributed Denial of Service protection SYN flood protection ICMP packet handling IPsec protocol configuration
Advanced Security
Overview
You can protect network resources from snooping clients or various Denial of Service (DoS) attacks.
42
To prevent ooding on the BIG-IP system and to preserve memory, you can adjust the SYN Check threshold.
43
Advanced Security
The default value for the TM.MaxRejectRate bigdb key, in seconds, is 250. The minimum value allowed is 1 and the maximum value allowed is 1000. When the TM.MaxRejectRate threshold has been exceeded for ICMP, the BIG-IP system stops sending ICMP unreachable packets in response to unmatched packets, and logs a message to the /var/log/ltm le that appears similar to the following example: tmm tmm[1609]: 011e0001:4: Limiting icmp unreach response from 299 to 250 packets/sec
44
Description This allows you to type a preshared key for use as the authentication method.
9. For the Common Settings area, retain all default values. 10. Click Finished. The page refreshes and displays the new IKE peer in the list. You now have IKE peers dened for establishing a secure channel.
7. In the Tunnel Remote Address eld, type the IP address that is remote to the system you are conguring. Sample tunnel remote addresses for BIG-IP A and BIG-IP B are as follows: System Name BIG-IP A BIG-IP B Tunnel Remote Address 3.3.3.3 2.2.2.2
8. For the Authentication Algorithm setting, retain the default value, AES-GCM128. 9. For the Encryption Algorithm setting, retain the default value, AES-GCM128. 10. For the Perfect Forward Secrecy setting, retain the default value, MODP1024. 11. For the Lifetime setting, retain the default value, 1440. This is the length of time (in seconds) before the current security association expires. 12. Click Finished.
45
Advanced Security
The screen refreshes and displays the new IPsec policy in the list. You now have an IPsec policy for each IPsec trafc selector.
8. From the Source Port list, select a source port, or retain the default value *All Ports. 9. For the Destination IP Address setting, click Host, and in the Address eld, type an IP address. This IP address should be the nal host or network address to which the application trafc is destined. Sample destination IP addresses for BIG-IP A and BIG-IP B are as follows: System Name BIG-IP A BIG-IP B Destination IP Address 4.4.4.0/24 1.1.1.0/24
10. From the Destination Port list, select a source port, or retain the default value * All Ports. 11. From the Protocol list, select a protocol name. You can select * All Protocols, TCP, UDP, ICMP, or Other. If you select Other, you must type a protocol name. 12. From the Direction list, select Both. 13. From the Action list, select Protect. The IPsec Policy Name setting appears. 14. From the IPsec Policy Name list, select the name of the inbound IPsec policy that you previously created. 15. Click Finished. The screen refreshes and displays the new IPsec trafc selector in the list. You now have an IPsec trafc selector for each BIG-IP system.
46
Chapter
8
Dynamic Attack Mitigation
Topics: Overview Server resource cloaking Protection from Apache Killer attacks
Overview
The BIG-IP data center rewall can provide dynamic attack mitigation through the use of iRules. You can nd detailed examples on F5 Networks DevCentral web site, located at http://devcentral.f5.com.
48
Chapter
9
Additional Attack Prevention using BIG-IP PSM and BIG-IP ASM
Topics: Overview What is BIG-IP Protocol Security Module? Advanced Layer 7 protection using BIG-IP Application Security Manager
Overview
You can conguration additional features to prevent attacks, using the BIG-IP Protocol Security Module (PSM) and BIG-IP Application Security Manager (ASM) modules.
50
51
52
Index
Index
A
access control conguring 19 for BIG-IP users 19 on per-virtual server basis 32 with packet lters and virtual servers 12 access control types 30 access policies 30 ACLs examples 34 adaptive connection reaping conguring 42 admin account 16 administrative access controlling 18, 19 administrative partitions access to 19 Apache Killer attacks 48 application ngerprinting 48 attack mitigation and iRules 48 DNS servers 16
E
expressions for packet ltering 30
F
lter ordering 12 ngerprinting 48 rewall features 12 rewalls and logging 22 rewall services 12
H
health monitors assigning to pools 35 high-speed logging and rewalls 22 and server pools 22 high-water mark thresholds 42 host names 16 host virtual servers 34, 36 HTTP proles creating 34 HTTP requests and responses logging 23
B
BIG-IP ASM 50, 51 BIG-IP Conguration utility controlling access to 18 BIG-IP PSM 50 Brute Force attacks 51
C
certicates, See x509 certicates. clients hiding information from 48 cloaking 48 concurrent connections for BIG-IP Conguration utility 18 connection reaping conguring 42 connection thresholds 43
I
ICMP error responses limiting 43 ICMP packet handling 43 ICMP unreachable packets limiting 43 idle timeout for BIG-IP Conguration utility 18 IKE Phase 1 conguring 44 internet protocols compliance for 50 IPsec IKE peers creating 44 IPsec policies creating 45 IPsec protocol suite described 44 IPsec trafc selectors creating 46
D
data center protection 12 DDoS attacks preventing 42 Denial of Service attacks preventing 51 reducing effects of 42, 43, 48 destination IP addresses for trafc selectors 46
53
Index
iRules creating 36 for access control 32, 34 for Apache Killer attacks 48 for dynamic attack mitigation 48 for signature cleaning 48 for virtual servers 12
L
listeners for packet handling 12 log content determining 22 log data analyzing 23 logging and pools 22 login failures 18 log servers 22 low-water mark thresholds 42 LTM proles creating 50
password policies 18 passwords for root and admin 16 performance monitors assigning to pools 35 Phase 1 negotiation and IKE protocol 44 pools creating 35 for high-speed logging 22 port lockdown 19 proles and PSM 50 creating for HTTP 34 protocol security 50
R
redundancy settings 16 remote logging 22 remote servers for high-speed logging 22 request logging code elements 24 request logging prole and standard log formats 26 for NCSA Common 27 Request Logging proles 23 resource cloaking 48 root account 16
M
management IP addresses 16 memory utilization and connection thresholds 42 monitors assigning to pools 35
S N
network infrastructure protecting 12 network virtual servers 34, 38 NTP servers 16 secure channels establishing 44 security banner 18 security checks performing with PSM 50 security settings for BIG-IP users 18 self IP addresses and VLANs 19 as prerequisite 16 creating 19 sensitive data masking with PSM 50 server ngerprinting 48 server resource cloaking 48 servers for high-speed logging 22 SIEM vendors 12 SNAT precedence 12 SNATs conguring client 39 source ports and trafc selectors 46 spam blocking with PSM 50 SSL protocol alternative to 44
O
order of packet evaluation 12
P
packet evaluation 12 packet ltering enabling 30 packet lter rules about 30 creating 31 packet lters about 30 packet rejection 30 parameters for request logging 24 partitions access to 19
54
Index
static routes adding 39 SYN Check threshold activating 43 Syslog servers remote logging to 22 system prerequisites 16
V
virtual servers and access control 12 assigning iRules to 32 creating 36, 38 examples 37, 38 examples of 34 VLANs and self IP addresses 19 as prerequisite 16
T
trafc listeners for packet handling 12 trafc selectors creating 46
W
WAN traversal using IPsec 44 web sites and ngerprinting 48
U
user access controlling 19 user lockout 18 user roles for system access 19
X
x509 certicates and IKE peers 44
55
Index
56