F5 BIGIP 11.x APM Virtual Server Template

Last tested with 11.6.0 HF3 Includes necessary profiles for VPN, VDI and Application Tunnels.

cstubbs
March 14, 2015
Unique name

Useful description

IPv4 address, e.g. 127.0.0.1

IPv6 address, e.g. ::1

APM access policy name

ltm profile tcp /Common/CLIENT-TCP-%{VS_NAME}% {
    defaults-from /Common/tcp-wan-optimized
}
ltm profile tcp /Common/SERVER-TCP-%{VS_NAME}% {
    defaults-from /Common/tcp-lan-optimized
}
ltm profile client-ssl /Common/CLIENT-SSL-%{VS_NAME}% {
    defaults-from /Common/clientssl
}
ltm profile server-ssl /Common/SERVER-SSL-%{VS_NAME}% {
    defaults-from /Common/serverssl
}
ltm profile http /Common/HTTP-%{VS_NAME}% {
    defaults-from /Common/http
}
ltm profile rewrite /Common/REWRITE-%{VS_NAME}% {
    defaults-from /Common/rewrite-portal
}
net tunnels tunnel /Common/TUNNEL-CONNECTIVITY-%{VS_NAME}% {
    profile ppp
}
apm profile connectivity /Common/CONNECTIVITY-%{VS_NAME}% {
    defaults-from /Common/connectivity
    tunnel-name /Common/TUNNEL-CONNECTIVITY-%{VS_NAME}%
}
apm profile vdi /Common/VDI-%{VS_NAME}% {
    defaults-from /Common/vdi
}
ltm virtual /Common/VS-IPv4-%{VS_NAME}%-APM {
    description "IPv4 Virtual, %{DESCRIPTION}%"
    destination /Common/%{IPv4_ADDRESS}%:443
    ip-protocol tcp
    mask 255.255.255.255
    profiles {
        /Common/CLIENT-TCP-%{VS_NAME}% {
            context clientside
        }
        /Common/SERVER-TCP-%{VS_NAME}% {
            context serverside
        }
        /Common/CLIENT-SSL-%{VS_NAME}% {
            context clientside
        }
        /Common/SERVER-SSL-%{VS_NAME}% {
            context serverside
        }
        /Common/HTTP-%{VS_NAME}% { }
        /Common/REWRITE-%{VS_NAME}% { }
        /Common/%{ACCESS_POLICY}% { }
        /Common/CONNECTIVITY-%{VS_NAME}% {
            context clientside
        }
        /Common/ppp { }
        /Common/rba { }
        /Common/remotedesktop { }
        /Common/websso { }
        /Common/VDI-%{VS_NAME}% { }
    }
    source-address-translation {
        type automap
    }
}
ltm virtual /Common/VS-IPv6-%{VS_NAME}%-APM {
    description "IPv6 Virtual, %{DESCRIPTION}%"
    destination /Common/%{IPv6_ADDRESS}%.443
    ip-protocol tcp
    profiles {
        /Common/CLIENT-TCP-%{VS_NAME}% {
            context clientside
        }
        /Common/SERVER-TCP-%{VS_NAME}% {
            context serverside
        }
        /Common/CLIENT-SSL-%{VS_NAME}% {
            context clientside
        }
        /Common/SERVER-SSL-%{VS_NAME}% {
            context serverside
        }
        /Common/HTTP-%{VS_NAME}% { }
        /Common/REWRITE-%{VS_NAME}% { }
        /Common/%{ACCESS_POLICY}% { }
        /Common/CONNECTIVITY-%{VS_NAME}% {
            context clientside
        }
        /Common/ppp { }
        /Common/rba { }
        /Common/remotedesktop { }
        /Common/websso { }
        /Common/VDI-%{VS_NAME}% { }
    }
    source-address-translation {
        type automap
    }
}
ltm virtual /Common/VS-IPv4-%{VS_NAME}%-Redirect {
    description "IPv4 Virtual, %{DESCRIPTION}%, HTTP to HTTPS Redirection"
    destination /Common/%{IPv4_ADDRESS}%:80
    ip-protocol tcp
    mask 255.255.255.255
    profiles {
        /Common/http { }
        /Common/tcp { }
    }
    rules {
        /Common/_sys_https_redirect
    }
}
ltm virtual /Common/VS-IPv6-%{VS_NAME}%-Redirect {
    description "IPv6 Virtual, %{DESCRIPTION}%, HTTP to HTTPS Redirection"
    destination /Common/%{IPv6_ADDRESS}%.80
    ip-protocol tcp
    profiles {
        /Common/http { }
        /Common/tcp { }
    }
    rules {
        /Common/_sys_https_redirect
    }
}