application delivery
43339 TopicsF5OS rSeries Radius with Cisco ISE
We are going through a hardware refresh and starting to deploy fSeries appliances. I am having issues with Radius authentication with our Cisco ISE deployment. Our current LTM's authenticates to the same ISE deployment and has the AV attributes for LTM applied. I have created the following new dictionary entries and assigned them the authorization policy: F5-F5OS-GID = 9000 F5-F5OS-HOMEDIR = /tmp F5-F5OS-UID = 1001 If I login to the F5 via the admin creds I can see that my radius authentication was successful and I can see the at the AV Pair is being presented via ISE logs. When trying to login via a browser and a radius user I get a Permission denied response. Any assistance would be appreciated: Thanks, JoeSolved105Views0likes3Commentsinsert HTTP header according to a value received in Radius accounting
Hi, I'd like to know if the following is somehow achievable: I want that from Every Radius Accounting message (UDP 1813) the BIGIP will look for 3 attributes: Calling-Station-Id, Framed-IP-Address & Acct-Status-Type In case the Radius attribute Acct-Status-Type=1 (Start) the BIGIP will insert an entry to a table in which the key will be the Framed-IP-Address and the value will be the Calling-Station-Id. In case the Radius attribute Acct-Status-Type=2 (Stop) the BIGIP will remove the value of an entry in the same table (remove the value which is the calling-station-id assigned to the framed-ip-address) Then when HTTP transaction arrive from a client IP which appears as a key in the table, the BIGIP will insert the value assigned to that key in the table (i.e. the corresponding Calling-Station-Id) to an HTTP header called "MSISDN". Example: Radius accounting arrives with following attributes: Acct-Status-Type=1 Calling-Station-Id=123456789 Framed-IP-Address=1.1.1.1 An entry is inserted to a table 1.1.1.1 (key) -> 123456789 (value) HTTP request arrives from source IP 1.1.1.1 The F5 will insert a header "MSISDN: 123456789" to the HTTP request before forwarding. Radius accounting arrives with following attributes: Acct-Status-Type=2 Calling-Station-Id=123456789 Framed-IP-Address=1.1.1.1 The value is removed 1.1.1.1 (key) -> (empty) HTTP request arrives from source IP 1.1.1.1 The F5 will not insert a header (not "MSISDN: 123456789" and not "MSISDN: ") Hope it's clear. Thanks in advance, Yaniv792Views0likes11CommentsAn Irule for Client Ssl Profile that Allows Unassigned TLS Extension Values (17516)
Hello Community, I have a requirement to allow enriched https header enrichment. The SSL negotiation (I'm doing ssl termination on F5) fails because the enriched header from client contains reserved tls extension values. (https://www.iana.org/assignments/tls-extensiontype-values/tls-extensiontype-values.xhtmltls-extensiontype-values-1). The Client Hello request in the SSL Handshake was captured and contained an Extensions list, which included a reserved TLS Extension value (17156), which the F5 isn't presenting in Server Hello. I need an irule that can allow that Extension to be added on the client ssl profile so the ssl handshake doesn't fail.3.4KViews0likes28CommentsADC03: Incomplete Observability – A Critical Application Delivery Challenge
Observability is the backbone of modern application delivery, enabling the detection of performance issues, analyzing system usage, and monitoring overall health. However, Incomplete Observability, characterized by insufficient logging, inadequate monitoring tools, and inconsistent data collection, introduces significant business risks. These risks range from limited visibility into performance bottlenecks and prolonged service disruptions to flawed scaling decisions and inefficient operations. To address these challenges effectively, it is crucial to understand the core issues at hand and implement robust strategies and tools, such as F5 BIG-IP and OpenTelemetry, that enhance observability across the infrastructure. Let's explore the impacts of Incomplete Observability and practical solutions, incorporating lessons from a real-world use case. AI Reference Architecture In an AI-powered application ecosystem, observability plays a pivotal role in coordinating and monitoring interactions between end users, frontend applications, and inference services. The following AI Reference Architecture diagram illustrates a typical flow: Diagram Overview: End Users initiate requests through frontend applications. These applications connect with backend Large Language Models (LLMs) based on user-specific needs. Inference Services operate at the core, processing data to deliver accurate and efficient results. Monitoring critical pipelines ensures reliability and scalability while maintaining secure data flows. By aligning observability with such an architecture, AI systems can handle complex pipelines effectively, optimizing performance, security, and governance. Consequences of Incomplete Observability Impact on Performance The absence of complete observability limits an organization’s ability to proactively detect and resolve performance bottlenecks. Without detailed insights into key metrics like latency, response times, and resource utilization, it becomes nearly impossible to identify root causes or improve application responsiveness. For example, undetected spikes in CPU or memory usage can lead to degraded user experiences and even system crashes. Impact on Availability Incomplete observability hampers availability—an essential component of application delivery. Downtime and overlooked critical failures are costly, with 32% of organizations reporting an average outage cost exceeding $500,000 per hour (New Relic). For distributed systems, limited visibility can cause cascading failures, with a minor issue in one system component triggering widespread service interruptions before being detected. Impact on Scalability Dynamic and scalable infrastructure is essential for supporting modern applications with variable workloads. Incomplete observability creates significant obstacles in tracking traffic trends and resource utilization accurately, leading to resource under-provisioning or over-provisioning that wastes budgetary resources or results in outages. Impact on Operational Efficiency Operational inefficiencies arise when IT teams are forced to sift through fragmented, inconsistent data sets to identify issues. Logs spread across incompatible formats or disconnected tools lead to delays in troubleshooting and limited optimization opportunities. This reduces teams' ability to respond to incidents promptly and improve overall system performance. Best Practices for Overcoming Observability Gaps F5's BIG-IP and OpenTelemetry address these challenges by delivering end-to-end observability capabilities requiring real-time insights into application health, performance bottlenecks, and operational metrics. These tools facilitate timely root cause analysis and enable proactive management of distributed systems. Enhanced Observability Framework: Use Case Overview The following diagram illustrates a practical implementation of comprehensive observability using tools like F5 BIG-IP and OpenTelemetry: Use Case Breakdown Consolidate Traffic via F5 BIG-IP LT BIG-IP LTM acts as a centralized point for SSL termination, iRules, and high-speed logging, capturing critical metrics like latency, VIP health, and trace IDs. Traffic is centrally analyzed to provide real-time visibility into application flow dynamics. Capture and Export Logs & Metrics Key metrics, logs, traces, and request IDs are captured and exported for downstream analysis. Logs are standardized across systems, ensuring that valuable data isn't lost in noise. Standardize Observability with OpenTelemetry OpenTelemetry normalizes diverse observability patterns into a unified data model. This enables cross-system compatibility and real-time trend comparisons in distributed environments. Implement Dynamic Alerts & Automated Responses Configure dynamic alerting systems to notify teams when anomalies are detected and integrate automated responses for tasks such as scaling resources or rerouting traffic. Create Unified Dashboards & Analytics Observability platforms like ELK, Prometheus, and Datadog aggregate logs and metrics into a central dashboard, delivering actionable intelligence to IT teams. Establish Feedback Loops for Continuous Improvement Feedback loops using historical performance data enable ongoing improvements in application delivery processes. Insights refine operational decisions and better align infrastructure with real-time demand. Key Benefits Enhanced visibility into application flows, including API interactions, access patterns, and system utilization. Rapid issue detection and mitigation using real-time analytics and automated responses. Resource optimization ensures cost-effective scaling aligned with workload demands. Improved governance and security through dynamic control of inter-application communications. Conclusion Incomplete observability disrupts critical aspects of performance, availability, scalability, and operational efficiency. By leveraging solutions like F5 BIG-IP and OpenTelemetry, alongside enhanced observability frameworks, organizations can address visibility gaps effectively. Dynamic alerting systems, unified dashboards, and standardization tools enable real-time insights, fostering a culture of data-driven decisions and continuous service improvement. Observability is no longer just a supporting feature. It has become the strategic foundation for reliable, high-performing, and secure digital ecosystems. Start improving your observability practices today to achieve long-term success in application delivery. Reference Articles Enhancing BIG-IP with F5 Distributed Cloud: Automated Service Discovery for Scalable Application Delivery and Security Adopting SRE practices with F5: Observability and beyond with ELK Stack Monitor Application Availability with F5 BIG-IP LTM Why Application Observability and Insights Matter Gain insights into the performance of your F5 BIG-IP LTM and DNS solutions ADSP Platform overview The Application Delivery Top 10 AI reference architecture43Views1like0CommentsAutomatic Certificate Management with ACMEv2 in F5 BIG-IP
One of the most anticipated features of F5 BIG-IP is integration with ACMEv2. With the General Availability of BIG-IP 21.1.0 on May/26, this feature came into being. In this tutorial, we are going to configure it, using Let's Encrypt as the CA. The domain for which we are generating/renewing certificates is carlosf5lab.lat. The official docs for this feature are located in SSL Certificate Management | BIG-IP Documentation. Pre-requisite 1: DNS Resolver that can reach the internet (at least the CA endpoints). In this case, we are using the native DNS Resolver that comes with BIG-IP. Pre-requisite 2: The internal proxy that will make the connection with the CA. Pre-requisite 3: a self signed SSL certificate that the ACMEv2 protocol uses as the identifier for a device account. You don't have to fill the Subject Alternative Name. For the Common Name, an e-mail contact is advised. Now, we are going to create the ACME Provider object. Give it a name, and select the internal proxy previously created. For the CA Certificate to enable the secure connection with the Directory URL, you can use the default ca-bundle.crt. The Directory URL is the endpoint for the ACMEv2 protocol. In Let's Encrypt case, it is https://acme-v02.api.letsencrypt.org/directory For the Account Key, choose the previously created self-signed certificate. For the trickier part of all, the field "Contacts" is mandatory, and it must be an URL. That’s why you must use the format mailto:email_address. Check the Terms and Conditions, and the Create Account boxes. After a while, the Account Status must read as "Valid". To prove you own the domain whose certificate Let's Encrypt is going to create/renew, it must be pointing to an IP (A Record) where you must have your Virtual Server listening on Port 80 configured to respond to the ACMEv2 Challenge. (In this specific lab, the domain carlosf5lab.lat points to a Public IP mapped to an internal IP). Now you can order your first certificate via ACMEv2 on BIG-IP: After a while, the Key tab should read something like: Which means your certificate was generated: To track the ACME Provider, you can check its statistics: That's it, my friend! If it helped you, give a thumbs up to this post!1.4KViews6likes9CommentsIIS X-Forward-For ISAPI Filter
A recent customer issue came up where they were load balancing servers but we unable to get the true client address logged in their IIS logs. They had their servers fronted by a BIG-IP and when clients would make requests the address passed to the server was the internal address and not that of the client. This is a common issue with proxies and fortunately there is a standard for forwarding client information. It is the HTTP X-Forwarded-For header which is handled by most proxies. So, I set out to find an existing ISAPI filter to replace the c-ip (client ip) log value in IIS with the contents of the X-Forwarded-For header (if it exists). I was amazed to find that I couldn't find a single instance of any open source (or even commercial) filter that would do this. So, I dug out Visual Studio and whipped up a filter that does just that. It's very basic and contains no user configuration so all you need to do is plug it into your Web Applications list of ISAPI Filters within the IIS Administration and you're set to go. We've released the source under the iControl End User License Agreement (available in any iControl SDK download). You can download it here. If you find a way to optimize this filter, please let me know and I'll update the sources here. After 24-hours of posting, a customer already returned some performance testing on the filter indicating that it only effected the traffic by less than 1 percent. I'm sure there are ways to optimize the memory allocation in the filter to speed this up a bit more, but I'll leave that for the community to work on. Oh, and it should be noted that the X-Forwarded-For header isn't supported the same way across all proxy products so you'll want to make sure you test this out before using it. It is expecting the header to only contain an IP Address as it does a straight substitution on the value in the c-ip section of the log entry. Enjoy! -Joe8.3KViews0likes36CommentsServiceNow discovery and service mapping
Our organization is switching to ServiceNow, as part of the implementation of it the project team wants to be able to discover the F5 BIG-IPs and service mappings. We were able to get the devices discovered after some trial and error with the device certificates. We are now getting stuck on service mapping portion. My understanding is that they are using F5 Rest pattern. Documentation that we were provided is the following: https://www.servicenow.com/docs/r/it-operations-management/itom-visibility/c_LoadBalancerF5BIGIP.html When they try to perform the service mapping discovery portion they get a 401 authentication error on the SNOW discovery tool. We are running BIG-IP 17.1.3.4. Curious if anyone has struggled with the Service mapping portion and if so if you can share your experience/workarounds so we can at least get going in the right direction.37Views0likes0CommentsADC08 – Lack of Security & Regulatory Compliance
As data-driven applications become integral to the digital economy, industries such as Finance, Healthcare, Insurance, Telecommunications, Hi-Tech, Energy, Government, Retail & E-commerce, Automotive, and Manufacturing face increasing pressure to comply with strict data security and regulatory compliance frameworks. Global regulations regarding data sovereignty, privacy, and security are intensifying, requiring organizations to design their systems to adhere to these mandates while maintaining performance, scalability, and operational efficiency. F5 provides critical infrastructure for secure and compliant application delivery through solutions like Web Application Firewall (WAF) and Management Control Protocol (MCP). By leveraging these technologies, applications across industries can effectively mitigate risks while enhancing performance, availability, and scalability amidst continuously evolving compliance challenges. Although this article uses a Finance example to illustrate these concepts, the principles discussed are broadly applicable to all industries. AI Reference Architecture Use Case example: Financial App Security via F5 WAF and MCP The diagram (above) outlines the process flow of a financial application employing F5 WAF and MCP to bolster security and meet compliance requirements. Here's a breakdown of the use case flow: Client/AI Agent Initiates Request A user or an AI system generates a request to the financial application. F5 BIG-IP ADC Layer: The traffic flows through the F5 Application Delivery Controller (ADC), where critical security and compliance measures are applied: SSL/TLS Encryption & Offloading: Protects sensitive data during transmission by encrypting it using industry-standard protocols. SSL/TLS offloading reduces server overhead and ensures seamless performance. Web Application Firewall (WAF): Detects and blocks malicious traffic, including threats like injection attacks, cross-site scripting (XSS), and other OWASP Top 10 vulnerabilities. FIPS Compliance Checkpoint: Enforces adherence to Federal Information Processing Standards (FIPS) for applications handling sensitive financial and government data. Central Logging & Automated Compliance Enforcement All activities are captured through centralized logging and monitored for compliance violations. Automated tools ensure real-time enforcement of regulatory policies. F5 BIG-IP LTM Load Balancing Optimizes traffic distribution across backend servers, ensuring performance and high availability. MCP Server Processing Data is processed and stored within the MCP server infrastructure, maintaining data sovereignty by adhering to local jurisdiction and privacy laws. Observability & Regulatory Reporting Continuous monitoring enhances visibility into application performance and security. Comprehensive reporting ensures regulatory compliance is documented at every layer. How Compliance Impacts Financial Applications Performance: Regulations like data localization laws introduce performance challenges by requiring data to be stored and processed within specific regions. Encryption processes, such as SSL/TLS, add to computational overhead, and inefficient encryption management can create bottlenecks, particularly in latency sensitive AI driven financial applications. Availability: Lack of compliance with security regulations leads to greater exposure to breaches and downtime. For example, noncompliance with GDPR in the European Union can result in forced system outages and expensive remedial actions to meet regional requirements. Scalability: Data sovereignty regulations limit scalability by requiring organizations to duplicate infrastructure in multiple regions. This can lead to higher operational costs and hinder AI financial applications from leveraging centralized data for model training and transactions. Operational Efficiency: Addressing compliance failures often demands significant manual intervention, diverting IT resources away from strategic projects. Moreover, regulatory violations expose organizations to costly fines, legal penalties, and reputational harm, further affecting profitability and trustworthiness. Best Practices for Ensuring Security and Compliance Financial institutions can enhance application delivery by implementing a suite of measures targeted at addressing compliance and security risks: Encryption with FIPS-Compliant Devices: Utilize advanced encryption protocols to protect sensitive data in transit and at rest. Deploy FIPS-compliant devices to meet federal standards for handling regulated data, ensuring robust security and regulatory adherence. Web Application Firewall (WAF): Secure applications against common vulnerabilities and ensure compliance with industry standard frameworks like PCI DSS. This is critical for financial applications handling transaction data. Automated Compliance Checks and Centralized Logging: Automate compliance validation and real-time monitoring to streamline operations. Centralized logging aids in regulatory audits and ensures transparency while maintaining operational efficiency. Geolocation-Based Traffic Routing: Use application delivery infrastructure to enforce data residency requirements via geolocation based routing, ensuring compliance with regional data sovereignty laws. Scalable and Redundant Infrastructure: Design scalable architectures with redundant systems in compliance with specific jurisdictions, reducing downtime and ensuring reliability across regions. Conclusion The intersection of security, regulatory compliance, and application delivery is critical across all industries, as failure to meet these standards can have financial, operational, and reputational consequences. While this article focused on the financial services sector as an example, the principles and strategies discussed, such as leveraging F5 solutions like WAF and MCP to enhance security, ensure compliance, and optimize performance, are equally applicable to other industries including Healthcare, Retail, Telecommunications, and more. By prioritizing encryption, automation, and scalability, organizations across sectors can navigate regulatory challenges and deliver secure, scalable, and efficient services in today’s increasingly regulated and data driven landscape. Reference Articles Industry-leading application delivery and security services The Application Delivery Top 10 ADSP Platform overview AI reference architecture Mitigating OWASP API Security Risk: Mass Assignment using F5 BIG-IP F5 BIG-IP Zero Trust with BIG-IP SSL Orchestrator69Views1like0CommentsF5 Insight - SSLO Integration
Could you please advise how this section is supposed to be integrated? We have already integrated our SSLO device, but nothing is displayed in this section. If there is any documentation or knowledge base article describing the integration process, we would appreciate it if you could share it with us.74Views0likes1CommentWeblogic JSessionID Persistence
Problem this snippet solves: Contributed by: unRuleY, Summarized by: deb Note: The previous version of this iRule contained escaped newlines following the session command, which in versions 10.0 - 10.2.0 causes TMM to core as documented in CR135937 / SOL11427. This was fixed in 10.2.1. See this related Codeshare example for details on how to take advantage of session replication on the WebLogic servers with targeted node failover in an iRule. Provides persistence on the jsessionid value found in either the URI or a cookie. When a request is received, the iRule first looks for a "jsessionid" cookie, and if not found, for a "jsessionid" parameter in the requested URI. If either is found, a persistence record is created if it doesn't already exist, or followed if it does. If neither is found, the request is load balanced according to the load balancing method applied to the virtual server and persisted based on the client's IP address. In order to ensure the second and subsequent requests follow the first, LTM must create a persistence record indicating the pool member to which the first request was load balanced. If the server is setting the jsessionid in a cookie, the persistence key value may be extracted from the server response to create the persistence record. If the server is setting the jsessionid in the URLs, source address persistence with a short timeout is recommended to track the original destination until the jsessionid is sent. How to use this snippet: To ensure a new persistence record is followed when a request is re-load balanced in a client-side Keep-Alive connection, apply a OneConnect profile to the virtual server. The iRule assumes the jsessionid is in upper case when used as a cookie name. If this isn't the case, please update the example. To persist on jsessionid, create the iRule below and create a custom Universal persistence profile, with Match Across Services enabled, that uses the iRule. Then use this custom Universal persistence profile as the Default Persistence profile on your Virtual Server. Applying a Fallback Persistence profile of type Source Address Affinity with a host mask and a short timeout (the default source_addr persistence profile will do the trick) to your Virtual Server is also recommended. Attention, if you are running firmware 11.0 - 11.2.1 and enabled "Match Across Services"! There is a bug inside. SOL14061 This iRule requires LTM v10. or higher. Code : when HTTP_REQUEST { # Log details for the request set log_prefix "[IP::client_addr]:[TCP::client_port]" log local0. "$log_prefix: Request to [HTTP::uri] with cookie: [HTTP::cookie value JSESSIONID]" # Check if there is a JSESSIONID cookie if { [HTTP::cookie "JSESSIONID"] ne "" }{ # Persist off of the cookie value with a timeout of 1 hour (3600 seconds) persist uie [string tolower [HTTP::cookie "JSESSIONID"]] 3600 # Log that we're using the cookie value for persistence and the persistence key if it exists. log local0. "$log_prefix: Used persistence record from cookie. Existing key? [persist lookup uie [string tolower [HTTP::cookie "JSESSIONID"]]]" } else { # Parse the jsessionid from the path. The jsessionid, when included in the URI, is in the path, # not the query string: /path/to/file.ext;jsessionid=1234?param=value set jsess [findstr [string tolower [HTTP::path]] "jsessionid=" 11] # Use the jsessionid from the path for persisting with a timeout of 1 hour (3600 seconds) if { $jsess != "" } { persist uie $jsess 3600 # Log that we're using the path jessionid for persistence and the persistence key if it exists. log local0. "$log_prefix: Used persistence record from path: [persist lookup uie $jsess]" } } } when HTTP_RESPONSE { # Check if there is a jsessionid cookie in the response if { [HTTP::cookie "JSESSIONID"] ne "" }{ # Persist off of the cookie value with a timeout of 1 hour (3600 seconds) persist add uie [string tolower [HTTP::cookie "JSESSIONID"]] 3600 log local0. "$log_prefix: Added persistence record from cookie: [persist lookup uie [string tolower [HTTP::cookie "JSESSIONID"]]]" } }6.2KViews2likes9Comments