WAFaaS with SSL Orchestrator


Note: This article applies to SSL Orchestrator versions prior to 11.0. If using version 11.0 refer to the article HERE

This use case allows you to insert F5 WAF functionality as a Service in the SSL Orchestrator inspection zone.


WAFaaS is the ability to insert ASM profiles into the SSL Orchestrator Service Chain for Inbound Topologies. This configuration is specific to a WAF policy running on the SSL Orchestrator device. WAF and SSL Orchestrator consume significant CPU cycles so care should be given when deploying both together. It is also possible to deploy WAF as a service on a separate BIG-IP device, in which case you’d simply configure an inline transparent proxy service. The ability to insert F5’s WAF into the Service Chain presents a significant customer benefit.


This guide assumes you already have WAF/ASM profile(s) configured, licensed and provisioned on BIG-IP and wish to add this functionality to an Inbound Topology. In order to run WAF and SSL Orchestrator on the same device you will need an LTM license with SSL Orchestrator as an add-on option. You cannot add a WAF license to an SSL Orchestrator stand-alone license.


SSL Orchestrator does not directly support inserting F5 WAF policies into the Service Chain. However, the F5 platform is flexible enough to handle many custom use cases. In this case, the ICAP service configuration exposes a framework that is useful for any number of specialized patterns, including adding a WAF policy to an SSLO service chain. We will configure an ICAP Service and attach the WAF policy to it.




  1. Create ICAP Service
  2. Disable Strictness on the Service
  3. Disable TCP monitor for the ICAP Pool
  4. ICAP Adapt profiles removed from the Virtual Server
  5. Application Security Policy enabled and a Policy assigned under Security


Step #1: Create ICAP Service


Note: These instructions assume an SSL Orchestrator Topology and Service Chain are already deployed and working properly. These instructions simply add WAFaaS to the existing Service Chain. It is entirely possible to create the WAFaaS during the initial Topology creation, in which case you would create the service during the workflow, then make the necessary changes after the topology has been created.


From the SSL Orchestrator Guided Configuration click Services then Add





Scroll to the bottom, select Generic ICAP Service and click Add





Give it a name, WAFaaS in this example



For ICAP Devices click Add on the right



Enter an IP Address, in this example and click Done.



Note: the IP address you use does not have to be the one above. It’s just a local, non-routable address used as a placeholder in the service definition. This IP address will not be used.


IP addresses to are owned by network benchmark tests and located in private networks. 


Scroll to the bottom and click Save & Next.



The next screen is the Services Chain List. Click the name of the Service Chain you wish to add WAF functionality to, ssloSC_ServiceChain in this example.



Note: The order of the Services in the Selected column is the order in which SSL Orchestrator will pass decrypted data to the device. This can be an important consideration if you want some devices to see, or not see, the actions taken by the WAF Service. 


Select the WAFaaS Service and click the right arrow to move it to Selected. Click Save.



Click Save & Next



Click Deploy



You should receive a Success message



Step #2: Disable Strictness on the Service


From the SSL Orchestrator Configuration screen select Services. Click the padlock to Unprotect Configuration.



Note: Disabling Strictness on the ICAP Service is needed to modify it and attach the WAFaaS policy. Strictness must remain disabled on this service and disabling strictness on the service has no effect on any other part of the SSL Orchestrator configuration.


Click OK to Unprotect the Configuration


Step #3: Disable tcp monitor for the ICAP Pool


From Local Traffic select Pools > Pool List



Select the WAFaaS Pool



Under Active Health Monitors select tcp and click >> to move it to Available. This removes the Pool’s Monitor because otherwise it would be marked as down or unavailable.


Click Update



Note: The Health Monitor needs to be removed because there is no actual ICAP service to monitor.


Step #4: ICAP Adapt profiles removed from the Virtual Server


From Local Traffic select Virtual Servers > Virtual Server List



Locate the WAFaaS ICAP service that ends in “-t-4” virtual server and select it



Set the Request Adapt Profile and Response Adapt Profile to None to disable the default ICAP Profiles



Click Update


Step #5: Application Security Policy enabled and a Policy assigned under Security


For the WAFaaS-t-4 Virtual Server click the Security tab



Set Application Security Policy to Enabled



Select the Security Policy you wish to use. Click Update when done



Note: In specific versions of SSL Orchestrator there is one extra configuration item that needs to be modified. This is NOT required in other versions. If this change is made, when performing an upgrade it is not necessarily required to back out this change.

Required versions:

SSLO version 5.9.15 available on TMOS 14.1.4

SSLO versions 6.0-6.5 available on TMOX 15.0.x

Navigate to “Local Traffic ›› Profiles : Other : Service”

Select the Service profile named “ssloS_WAFaaS-service”

Change the “Type” from “ICAP” to “F5 Module”


The configuration is now complete. Using the WAFaaS this way is functionally the same as using it by itself. There are no known limitations to this configuration.

Updated Apr 21, 2023
Version 2.0

Was this article helpful?


  • If you were to configure WAF on a separate box, how would you configure the WAF f5 to "transparently" receive the traffic that SSLO decrypted and then sent to the WAF F5? 

  • Thanks to  for the helpful information regarding SSL Orchestrator with TMOS 14.1.4 and 15.0.x


  • Hi mbean, the SSL Orchestrator could easily be deployed as a forward proxy, either transparent or explicit.

  • This looks cool. Is there anyone that has done this in a forward proxy SSLO setup yet?

    (as a way to implement filetype filtering?)

  • Hi,

    Great article!

    Just wonder if iRule by default attached to ssloS_WAFaaS-t-4 can be left as is or it should be removed or modified?