diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md new file mode 100644 index 0000000..3cbdfe2 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -0,0 +1,33 @@ +--- +name: Bug report +about: Create a report to help us improve +title: "[BUG] " +labels: bug +assignees: '' + +--- + +**Describe the bug** +A clear and concise description of what the bug is. + +**To Reproduce** +Steps to reproduce the behavior: +1. Go to '...' +2. Click on '....' +3. Scroll down to '....' +4. See error + +**Expected behavior** +A clear and concise description of what you expected to happen. + +**Screenshots** +If applicable, add screenshots to help explain your problem. + +**Desktop (please complete the following information):** + - OS: [e.g. iOS] + - Browser [e.g. chrome, safari] + - Version [e.g. 22] + + +**Additional context** +Add any other context about the problem here. diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md new file mode 100644 index 0000000..5efd8a4 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature_request.md @@ -0,0 +1,20 @@ +--- +name: Feature request +about: Suggest an idea for this project +title: "[RFE] " +labels: enhancement +assignees: '' + +--- + +**Is your feature request related to a problem? Please describe.** +A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] + +**Describe the solution you'd like** +A clear and concise description of what you want to happen. + +**Describe alternatives you've considered** +A clear and concise description of any alternative solutions or features you've considered. + +**Additional context** +Add any other context or screenshots about the feature request here. diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 1174470..5ab4fe4 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -9,26 +9,26 @@ env: jobs: - # test: - # runs-on: ${{ matrix.os }} - # strategy: - # matrix: - # os: [windows-latest, ubuntu-latest, macos-latest] - # name: Test on ${{ matrix.os }} - # steps: - # - uses: actions/checkout@v3 - # - uses: actions/setup-node@v3 - # with: - # node-version: ${{ env.NODE_VERSION }} + test: + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [windows-latest, ubuntu-latest, macos-latest] + name: Test on ${{ matrix.os }} + steps: + - uses: actions/checkout@v3 + - uses: actions/setup-node@v3 + with: + node-version: ${{ env.NODE_VERSION }} - # - run: npm install + - run: npm install release-publish: runs-on: ubuntu-latest environment: publishing permissions: contents: write - # needs: test + needs: test name: Package-Release-Publish steps: diff --git a/.gitignore b/.gitignore index 3f6ba41..1aa6f7f 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,5 @@ # Node modules node_modules/ -# package-lock.jsons # Package build directory dist/ # Coverage directory @@ -24,7 +23,5 @@ settings.json *.xml.json # temp directory for testing files tmp/ -package-lock.json # exclude package files *.tgz -tests/artifacts/f5_corkscrew_test.tar.gz diff --git a/.vscode/launch.json b/.vscode/launch.json index e24656f..80a05e1 100644 --- a/.vscode/launch.json +++ b/.vscode/launch.json @@ -31,7 +31,7 @@ "--timeout", "999999", "--colors", - "${workspaceFolder}/tests/ALL.tests.ts", + "${workspaceFolder}/tests/*.tests.ts", ], "internalConsoleOptions": "neverOpen" } diff --git a/.vscode/settings.json b/.vscode/settings.json deleted file mode 100644 index be4e3c3..0000000 --- a/.vscode/settings.json +++ /dev/null @@ -1,35 +0,0 @@ -// Place your settings in this file to overwrite default and user settings. -{ - "files.exclude": { - "out": false // set this to true to hide the "out" folder with the compiled JS files - }, - "search.exclude": { - "out": true // set this to false to include "out" folder in search results - }, - // Turn off tsc task auto detection since we have the necessary tasks as npm scripts - "typescript.tsc.autoDetect": "off", - "peacock.color": "#614b46", - "workbench.colorCustomizations": { - "activityBar.activeBackground": "#026e5f", - "activityBar.activeBorder": "#e762fc", - "activityBar.background": "#026e5f", - "activityBar.foreground": "#e7e7e7", - "activityBar.inactiveForeground": "#e7e7e799", - "activityBarBadge.background": "#e762fc", - "activityBarBadge.foreground": "#15202b", - "statusBar.background": "#013c34", - "statusBar.foreground": "#e7e7e7", - "statusBarItem.hoverBackground": "#026e5f", - "titleBar.activeBackground": "#013c34", - "titleBar.activeForeground": "#e7e7e7", - "titleBar.inactiveBackground": "#013c3499", - "titleBar.inactiveForeground": "#e7e7e799", - "editorGroup.border": "#026e5f", - "panel.border": "#026e5f", - "sash.hoverBorder": "#026e5f", - "sideBar.border": "#026e5f", - "statusBarItem.remoteBackground": "#013c34", - "statusBarItem.remoteForeground": "#e7e7e7" - }, - "peacock.remoteColor": "#013c34" -} \ No newline at end of file diff --git a/CHANGELOG.md b/CHANGELOG.md index 87a1abd..dd1c654 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,42 @@ All notable changes to the corkscrew rpm will be documented in this file. Check [Keep a Changelog](http://keepachangelog.com/) for recommendations on how to structure this file. +## [Unreleased] + +### Added + +### Changed + +- [RFE] include xml stats in extraction #15 (pending-researching) +- main README.md/documentation updates + +### Fixed + +--- + +## [1.1.1] - (05.25.2023) + +### Added + +- [RFE] dns/gslb - provide all possible destinations as array #29 +- [RFE] better apm parsing #31 +- [RFE] deeper parsing of key ltm objects #30 + - full parsing of vs/pool/monitor/pool/node/snatpool + - vs with no destination + - pool with no members + - vs with missing prolicy +- [RFE] add bot/dos profiles to abstraction/visibility #33 +- github issue templates for BUGs and RFEs + +### Changed + +- updated deps + +### Fixed + +- [BUG] gslb no pool error #32 +- [BUG] no cli parse output in my environment #27 + --- ## [1.0.0] - (04.20.2023) @@ -86,7 +122,7 @@ Check [Keep a Changelog](http://keepachangelog.com/) for recommendations on how - certificate/key extraction -### Modified +### Changed - Core parsing/extraction process is now asyncronous - emits config and stats files during processing diff --git a/README.md b/README.md index 6c34745..b8d7a2b 100644 --- a/README.md +++ b/README.md @@ -223,9 +223,7 @@ The top of the main class also describes some of the different ways I have the t Everything is in a json tree for easy manipulation -Updated as of 10.26.2021 - -> latest test output file [output_example.json](./output_example.json) +Check out the .log and .json outputs in the ./tests/artifacts directory --- @@ -400,7 +398,7 @@ Please include some sort of tests for any new features or functionality. It's r ## Support -For support, please open a GitHub issue. Note, the code in this repository is community supported and is not supported by F5 Networks. For a complete list of supported projects please reference [SUPPORT.md](support.md). +For support, please open a GitHub issue. Note, the code in this repository is community supported and is not supported by F5 Networks. --- diff --git a/SUPPORT.md b/SUPPORT.md deleted file mode 100644 index 97eee8d..0000000 --- a/SUPPORT.md +++ /dev/null @@ -1,8 +0,0 @@ -## Support Information - -Maintenance and F5 Technical Support of this F5 code is provided only if the -software (i) is unmodified; and (ii) has been marked as F5 Supported in -SOL80012344, (https://support.f5.com/csp/article/K80012344). - -Support will only be provided to customers who have an existing BIG-IP support contract associated with a valid BIG-IP serial number. -For information about support policies, see http://www.f5.com/about/guidelines-policies/ and http://askf5.com. \ No newline at end of file diff --git a/dist/cli.d.ts b/dist/cli.d.ts deleted file mode 100644 index 81f04a5..0000000 --- a/dist/cli.d.ts +++ /dev/null @@ -1,25 +0,0 @@ -#!/usr/bin/env node -/** - * Copyright 2021 F5 Networks, Inc. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -import Logger from 'f5-conx-core/dist/logger'; -export declare const logger: Logger; -export declare type argsObj = { - no_sources: boolean; - no_file_store: boolean; - no_command_logs: boolean; - no_conversion_logs: boolean; - file: string; -}; diff --git a/dist/cli.js b/dist/cli.js deleted file mode 100755 index 8070f0e..0000000 --- a/dist/cli.js +++ /dev/null @@ -1,120 +0,0 @@ -#!/usr/bin/env node -/** - * Copyright 2021 F5 Networks, Inc. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -'use strict'; -var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { - function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } - return new (P || (P = Promise))(function (resolve, reject) { - function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } - function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } - function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); -}; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.logger = void 0; -const ltm_1 = __importDefault(require("./ltm")); -const yargs_1 = __importDefault(require("yargs")); -const logger_1 = __importDefault(require("f5-conx-core/dist/logger")); -exports.logger = new logger_1.default('F5_CORKSCREW_LOG_LEVEL'); -function explode(args) { - return __awaiter(this, void 0, void 0, function* () { - exports.logger.console = false; - const log = []; - let err; - let output; - exports.logger.debug(args); - const device = new ltm_1.default(); - device.on('parseFile', x => exports.logger.info('parseFile', x)); - device.on('parseObject', x => exports.logger.info('parseObject', x)); - // load and parse the archive - yield device.loadParseAsync(args.file) - .then(() => __awaiter(this, void 0, void 0, function* () { - // extract configs/apps - yield device.explode() - .then(expld => { - // return good output - output = expld; - }) - .catch(thisErr => { - // return error and extraction logs - err = thisErr; - log.push(device.logs()); - }); - })) - .catch(catchError => { - // return error and extraction logs - err = catchError; - log.push(device.logs()); - }); - // build response object - const respObj = {}; - if (!args.no_command_logs) { - // add logs from command execution - respObj['command_logs'] = exports.logger.journal; - } - if (output) { - if (args.no_sources) - delete output.config.sources; - if (args.no_file_store) - delete output.fileStore; - if (args.no_conversion_logs) - delete output.logs; - // add successful output if there - respObj['output'] = output; - } - if (err) { - // if any errors, add error and extraction logs - respObj['err'] = err; - respObj['log'] = log; - } - console.log(JSON.stringify(respObj)); - }); -} -yargs_1.default - .command('explode ', 'explode bigip config', (yargs) => { - yargs - .positional('file', { - describe: '.conf|ucs|kqview to explode', - demandOption: true - }) - .option('no_sources', { - describe: 'supress config file sources bigip.conf, bigip_base.conf output', - boolean: true - }) - .option('no_file_store', { - describe: 'supress filestore files output', - boolean: true - }) - .option('no_command_logs', { - describe: 'no cli output', - boolean: true - }) - .option('no_conversion_logs', { - describe: 'no extraction parsing logs', - boolean: true - }); -}, (argv) => { - explode(argv); -}) - .demandCommand(1, 'A command is required') - .wrap(120) - .strict() - .argv; -//# sourceMappingURL=cli.js.map \ No newline at end of file diff --git a/dist/cli.js.map b/dist/cli.js.map deleted file mode 100644 index a533d41..0000000 --- a/dist/cli.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/digCerts.d.ts b/dist/digCerts.d.ts deleted file mode 100644 index 4756fe3..0000000 --- a/dist/digCerts.d.ts +++ /dev/null @@ -1,15 +0,0 @@ -declare const x: { - sys: { - file: { - "ssl-cert": { - "/Common/Dev_Issuing_CA_02.crt": string; - "/Common/Dev_Root_CA.crt": string; - "/Common/DigiCert-Bundle.crt": string; - "/Common/Entrust-L1Kroot.crt": string; - }; - "ssl-key": { - "/Common/venafi_test_cert.key": string; - }; - }; - }; -}; diff --git a/dist/digCerts.js b/dist/digCerts.js deleted file mode 100644 index ace05fa..0000000 --- a/dist/digCerts.js +++ /dev/null @@ -1,18 +0,0 @@ -// https://stackoverflow.com/questions/58724396/parse-x509-certificate-string-in-node -// https://stackoverflow.com/questions/56771030/node-js-how-to-check-get-ssl-certificate-expiry-date -const x = { - "sys": { - "file": { - "ssl-cert": { - "/Common/Dev_Issuing_CA_02.crt": "\n cache-path /config/filestore/files_d/Common_d/certificate_d/:Common:Dev_Issuing_CA_02.crt_69195_1\n revision 1\n", - "/Common/Dev_Root_CA.crt": "\n cache-path /config/filestore/files_d/Common_d/certificate_d/:Common:Dev_Root_CA.crt_69188_1\n revision 1\n", - "/Common/DigiCert-Bundle.crt": "\n cache-path /config/filestore/files_d/Common_d/certificate_d/:Common:DigiCert-Bundle.crt_39149_1\n revision 1\n", - "/Common/Entrust-L1Kroot.crt": "\n cache-path /config/filestore/files_d/Common_d/certificate_d/:Common:Entrust-L1Kroot.crt_159905_1\n revision 1\n", - }, - "ssl-key": { - "/Common/venafi_test_cert.key": "\n cache-path /config/filestore/files_d/Common_d/certificate_key_d/:Common:venafi_test_cert.key_39141_1\n revision 1\n", - } - } - } -}; -//# sourceMappingURL=digCerts.js.map \ No newline at end of file diff --git a/dist/digCerts.js.map b/dist/digCerts.js.map deleted file mode 100644 index 0918b26..0000000 --- a/dist/digCerts.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"digCerts.js","sourceRoot":"","sources":["../src/digCerts.ts"],"names":[],"mappings":"AAEA,qFAAqF;AACrF,oGAAoG;AAGpG,MAAM,CAAC,GACP;IACI,KAAK,EAAE;QACH,MAAM,EAAE;YACJ,UAAU,EAAE;gBACR,+BAA+B,EAAE,2HAA2H;gBAC5J,yBAAyB,EAAE,qHAAqH;gBAChJ,6BAA6B,EAAE,yHAAyH;gBACxJ,6BAA6B,EAAE,0HAA0H;aAC5J;YACD,SAAS,EAAE;gBACP,8BAA8B,EAAE,8HAA8H;aACjK;SACJ;KACJ;CACJ,CAAA"} \ No newline at end of file diff --git a/dist/digConfigs.d.ts b/dist/digConfigs.d.ts deleted file mode 100644 index a3771c9..0000000 --- a/dist/digConfigs.d.ts +++ /dev/null @@ -1,22 +0,0 @@ -import { AppMap, BigipConfObj } from './models'; -import { TmosRegExTree } from './regex'; -/** - * scans vs config, and discovers child configs - * @param vsName virtual server name - * @param vsConfig virtual server tmos config body - */ -export declare function digVsConfig(vsName: string, vsConfig: string, configTree: BigipConfObj, rx: TmosRegExTree): Promise<{ - config: any[]; - map: AppMap; -}>; -/** - * removes duplicates - * @param x list of strings - * @return list of unique strings - */ -export declare function uniqueList(x: string[]): string[]; -/** - * get hostname from json config tree (if present) - * @param configObject to search for hostname - */ -export declare function getHostname(configObject: BigipConfObj): string; diff --git a/dist/digConfigs.js b/dist/digConfigs.js deleted file mode 100644 index 5bf3111..0000000 --- a/dist/digConfigs.js +++ /dev/null @@ -1,406 +0,0 @@ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* - * Copyright 2020. F5 Networks, Inc. See End User License Agreement ("EULA") for - * license terms. Notwithstanding anything to the contrary in the EULA, Licensee - * may copy and modify this software product for its internal business purposes. - * Further, Licensee may upload, publish and distribute the modified version of - * the software product on devcentral.f5.com. - */ -'use strict'; -var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { - function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } - return new (P || (P = Promise))(function (resolve, reject) { - function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } - function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } - function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); -}; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.getHostname = exports.uniqueList = exports.digVsConfig = void 0; -const logger_1 = __importDefault(require("./logger")); -const objects_1 = require("./utils/objects"); -const pools_1 = require("./pools"); -const digiRules_1 = require("./digiRules"); -/** - * scans vs config, and discovers child configs - * @param vsName virtual server name - * @param vsConfig virtual server tmos config body - */ -function digVsConfig(vsName, vsConfig, configTree, rx) { - return __awaiter(this, void 0, void 0, function* () { - /** - * - * What do we need to map on next on the virtual servers?: - * - oneConnect? - * - expand the discovery of all profiles (apm and supporting) - * - * Or do we expand the irule references like pools/policies? - * - */ - logger_1.default.info(`digging vs config for ${vsName}`); - const pool = vsConfig.match(rx.vs.pool.obj); - const profiles = vsConfig.match(rx.vs.profiles.obj); - const rules = vsConfig.match(rx.vs.rules.obj); - const snat = vsConfig.match(rx.vs.snat.obj); - const policies = vsConfig.match(rx.vs.ltPolicies.obj); - const persistence = vsConfig.match(rx.vs.persist.obj); - const fallBackPersist = vsConfig.match(rx.vs.fbPersist); - const destination = vsConfig.match(rx.vs.destination); - // base vsMap config object - const map = { - // vsName, - vsDest: '' - }; - // add destination to vsMap object - if (destination && destination[1]) { - map.vsDest = destination[1]; - } - let config = []; - config.push(`ltm virtual ${vsName} {${vsConfig}}`); - if (pool && pool[1]) { - const x = digPoolConfig(pool[1], configTree, rx); - config.push(...x.config); - map.pool = x.map; - logger_1.default.debug(`[${vsName}] found the following pool`, pool[1]); - } - if (profiles && profiles[1]) { - const x = digProfileConfigs(profiles[1], configTree, rx); - config.push(...x.config); - logger_1.default.debug(`[${vsName}] found the following profiles`, profiles[1]); - } - if (rules && rules[1]) { - // add irule connection destination mapping - yield digRuleConfigs(rules[1], configTree, rx) - .then(x => { - config.push(...x.config); - if (x.map) { - map.irule = x.map; - } - logger_1.default.debug(`[${vsName}] found the following rules`, rules[1]); - }); - } - if (snat && snat[1]) { - const x = digSnatConfig(snat[1], configTree, rx); - config.push(...x.config); - logger_1.default.debug(`[${vsName}] found snat configuration`, snat[1]); - } - if (policies && policies[1]) { - // add ltp destination mapping - const x = digPolicyConfig(policies[1], configTree, rx); - config.push(...x.config); - logger_1.default.debug(`[${vsName}] found the following policies`, policies[1]); - } - if (persistence && persistence[1]) { - const x = digPersistConfig(persistence[1], configTree, rx); - config.push(...x.config); - logger_1.default.debug(`[${vsName}] found the following persistence`, persistence[1]); - } - if (fallBackPersist && fallBackPersist[1]) { - const x = digFbPersistConfig(fallBackPersist[1], configTree); - config.push(...x.config); - logger_1.default.debug(`[${vsName}] found the following persistence`, fallBackPersist[1]); - } - // remove any duplicate entries - config = uniqueList(config); - // removed empty values and objects - (0, objects_1.cleanObject)(config); - (0, objects_1.cleanObject)(map); - return { config, map }; - }); -} -exports.digVsConfig = digVsConfig; -/** - * get full pool config and supporting node/monitor configs - * @param poolName - */ -function digPoolConfig(poolName, configObject, rx) { - logger_1.default.debug(`digging pool config for ${poolName}`); - // const rx = this.rx.vs.pool; // get needed rx sub-tree - const config = []; - const map = []; - const poolConfig = (0, objects_1.pathValueFromKey)(configObject.ltm.pool, poolName); - if (poolConfig) { - config.push(`ltm pool ${poolName} {${poolConfig.value}}`); - const members = poolConfig.value.match(rx.vs.pool.members); - const monitors = poolConfig.value.match(rx.vs.pool.monitors); - if (members && members[1]) { - // TODO: move all these regex's to the rx tree - // dig node information from members - const nodeNames = members[1].match(rx.vs.pool.nodesFromMembers); - // const nodeAddresses = members[1].match(rx.n) - // regular pool member definition regex - const memberDef = members[1].match(/(\/[\w\-\/.]+:\d+) {\s+address(.+?)\s+}/g); - // fqdn pool member definition regex - const memberFqdnDef = members[1].match(/(\/[\w\-\/.]+:\d+) {\s+fqdn {\s+([\s\S]+?)\s+}\s+}/g); - logger_1.default.debug(`Pool ${poolName} members found:`, nodeNames); - if (memberDef) { - memberDef.forEach((el) => { - const name = el.match(/(\/[\w\-\/.]+)/); - const port = el.match(/(?<=:)\d+(?= )/); - const addr = el.match(/(?<=address )[\d.]+/); - const x = (0, objects_1.pathValueFromKey)(configObject.ltm.node, name[0]); - config.push(`ltm node ${x.key} {${x.value}}`); - map.push(`${addr}:${port}`); - }); - } - if (memberFqdnDef) { - memberFqdnDef.forEach((el) => { - // const memberFqdnNames = el.match(/([\s\S]+?)\n/g); - const name = el.match(/(\/[\w\-\/.]+)/); - const port = el.match(/(?<=:)\d+(?= )/); - const a = (0, objects_1.pathValueFromKey)(configObject.ltm.node, name[0]); - config.push(`ltm node ${a.key} {${a.value}}`); - map.push(`${name}:${port}`); - }); - } - } - if (monitors && monitors[1]) { - //dig monitor configs like pool members above - const monitorNames = monitors[1].split(/ and /); - logger_1.default.debug('pool monitor references found:', monitorNames); - // eslint-disable-next-line prefer-const - const monitorNameConfigs = []; - monitorNames.forEach(name => { - // new way look for key in .ltm.monitor - const x = (0, objects_1.pathValueFromKey)(configObject.ltm.monitor, name); - if (x) { - // rebuild tmos object - monitorNameConfigs.push(`ltm monitor ${x.path} ${x.key} {${x.value}}`); - } - }); - logger_1.default.debug('pool monitor configs found:', monitorNameConfigs); - const defaultMonitors = monitorNames.length - monitorNameConfigs.length; - if (defaultMonitors) { - logger_1.default.debug(`[${poolName}] references ${defaultMonitors} system default monitors, compare previous arrays for details`); - } - if (monitorNameConfigs) { - // monitorNameConfigs.join('\n'); - config.push(...monitorNameConfigs); - } - } - } - return { config, map }; -} -function digProfileConfigs(profilesList, configObject, rx) { - // regex profiles list to individual profiles - const profileNames = profilesList.match(rx.vs.profiles.names); - logger_1.default.debug(`profile references found: `, profileNames); - const config = []; - const map = []; - profileNames.forEach(name => { - // check the ltm profiles - const x = (0, objects_1.pathValueFromKey)(configObject.ltm.profile, name); - if (x) { - config.push(`ltm profile ${x.path} ${x.key} {${x.value}}`); - } - // check apm profiles - const y = (0, objects_1.pathValueFromKey)(configObject.apm.profile, name); - if (y) { - config.push(`apm profile access ${y.path} ${y.key} {${y.value}}`); - } - }); - const defaultProfiles = profileNames.length - config.length; - if (defaultProfiles) { - logger_1.default.debug(`Found ${defaultProfiles} system default profiles, compare previous arrays for details`); - } - // return config.join('\n'); - return { config, map }; -} -/** - * - * @param rulesList raw irules regex from vs dig - */ -function digRuleConfigs(rulesList, configObject, rx) { - return __awaiter(this, void 0, void 0, function* () { - const ruleNames = rulesList.match(rx.vs.rules.names); - logger_1.default.debug(`rule references found: `, ruleNames); - // list of rules on the vs - const iRuleConfigs = []; - // config list to return (includes irules and other objects referenced by irules) - const config = []; - // final config object - const obj = { - config: [] - }; - const map = {}; - yield ruleNames.forEach((name) => __awaiter(this, void 0, void 0, function* () { - var _a; - // search config, return matches - const x = (0, objects_1.pathValueFromKey)(configObject.ltm.rule, name); - if (x) { - iRuleConfigs.push(`ltm rule ${x.key} {${x.value}}`); - const iRulePools = (0, pools_1.poolsInRule)(x.value); - if (iRulePools) { - // for each pool reference found, get config - iRulePools.forEach(el => { - // if no "/", this is a "/Common/" partition rule - if (/\//.test(el[0])) { - // found slash, so has parition prefix - const poolC = digPoolConfig(el[0], configObject, rx); - if (poolC) { - // obj.config.push(poolC.config[0]); - config.push(poolC.config[0]); - // deepMergeObj(obj, { map: { pools: poolC.map }}) - map.pools = poolC.map; - } - } - else { - // no slash, so adding commond partition prefix - const poolC = digPoolConfig(`/Common/${el[0]}`, configObject, rx); - if (poolC) { - // obj.config.push(poolC.config[0]); - config.push(poolC.config[0]); - // deepMergeObj(obj, { map: { pools: poolC.map }}) - map.pools = poolC.map; - } - } - }); - // add pools to map - map.pools = iRulePools; - } - // if we have any internal data-groups, find data groups in irule - if ((_a = configObject.ltm['data-group']) === null || _a === void 0 ? void 0 : _a.internal) { - const dataGroups = Object.keys(configObject.ltm['data-group'].internal); - if (dataGroups.length > 0) { - yield (0, digiRules_1.digDataGroupsiniRule)(x.value, dataGroups) - .then((dgNamesInRule) => __awaiter(this, void 0, void 0, function* () { - yield dgNamesInRule.forEach((dg) => __awaiter(this, void 0, void 0, function* () { - const dgBody = configObject.ltm['data-group'].internal[dg]; - const fullDgConfig = `ltm data-group internal ${dg} { ${dgBody} }`; - config.push(fullDgConfig); - })); - })); - } - } - } - })); - const defaultRules = ruleNames.length - iRuleConfigs.length; - if (defaultRules) { - logger_1.default.debug(`Found ${defaultRules} system default iRules, compare previous arrays for details`); - } - // add the irules to the beginning of the config array to be returned - config.unshift(...iRuleConfigs); - return { config, map }; - }); -} -/** - * analyzes vs snat config, returns full snat configuration if pool reference - * @param snat vs snat reference as string - */ -function digSnatConfig(snat, configObject, rx) { - const config = []; - const map = []; - if (snat.includes('pool')) { - const snatName = snat.match(rx.vs.snat.name); - if (snatName) { - const x = (0, objects_1.pathValueFromKey)(configObject.ltm.snatpool, snatName[1]); - config.push(`ltm snatpool ${x.key} {${x.value}}`); - } - else { - logger_1.default.error(`Detected following snat pool configuration, but did not find in config [${snat}]`); - } - } - else { - logger_1.default.debug(`snat configuration detected, but no pool reference found, presume -> automap`); - } - return { config, map }; -} -/** - * loops through vs ltp list and returns full ltp configs - * @param ltPolicys vs ltp config - */ -function digPolicyConfig(policys, configObject, rx) { - // regex local traffic list to individual profiles - const policyNames = policys.match(rx.vs.ltPolicies.names); - logger_1.default.debug(`policy references found: `, policyNames); - const config = []; - const map = []; - // get policy references from vs - policyNames.forEach(name => { - const x = (0, objects_1.pathValueFromKey)(configObject.ltm.policy, name); - if (x) { - logger_1.default.debug(`policy found [${x.key}]`); - config.push(`ltm policy ${x.key} {${x.value}}`); - // got through each policy and dig references (like pools) - const pools = (0, pools_1.poolsInPolicy)(x.value); - if (pools) { - pools.forEach(pool => { - const cfg = (0, objects_1.pathValueFromKey)(configObject.ltm.pool, pool); - // if we got here there should be a pool for the reference, - // but just in case, we confirm with (if) statement - if (cfg) { - // push pool config to list - logger_1.default.debug(`policy [${x.key}], pool found [${cfg.key}]`); - config.push(`ltm pool ${cfg.key} {${cfg.value}}`); - } - }); - } - } - else { - logger_1.default.error(`Could not find ltPolicy named: ${name}`); - } - }); - // removde duplicates - // const unique = uniqueList(config); - // join list with line returns to return a single config string - // return unique.join('\n'); - return { config, map }; -} -/** - * removes duplicates - * @param x list of strings - * @return list of unique strings - */ -function uniqueList(x) { - return Array.from(new Set(x)); -} -exports.uniqueList = uniqueList; -/** - * get persistence config - * @param persistence vs persistence referecne - */ -function digPersistConfig(persist, configObject, rx) { - const config = []; - const map = []; - const persistName = persist.match(rx.vs.persist.name); - if (persistName) { - const x = (0, objects_1.pathValueFromKey)(configObject.ltm.persistence, persistName[1]); - if (x) { - config.push(`ltm persistence ${x.path} ${x.key} {${x.value}}`); - } - } - return { config, map }; -} -/** - * get fall back persistence config - * @param fbPersist vs fallback-persistence - */ -function digFbPersistConfig(fbPersist, configObject) { - const config = []; - const map = []; - const x = (0, objects_1.pathValueFromKey)(configObject.ltm.persistence, fbPersist); - if (x) { - config.push(`ltm persistence ${x.path} ${x.key} {${x.value}}`); - } - return { config, map }; -} -/** - * get hostname from json config tree (if present) - * @param configObject to search for hostname - */ -function getHostname(configObject) { - var _a; - if ((_a = configObject === null || configObject === void 0 ? void 0 : configObject.sys) === null || _a === void 0 ? void 0 : _a['global-settings']) { - const hostname = configObject.sys["global-settings"].match(/hostname ([\w-.]+)\s/); - if (hostname && hostname[1]) { - // return just capture group - return hostname[1]; - } - } -} -exports.getHostname = getHostname; -//# sourceMappingURL=digConfigs.js.map \ No newline at end of file diff --git a/dist/digConfigs.js.map b/dist/digConfigs.js.map deleted file mode 100644 index c8832e8..0000000 --- a/dist/digConfigs.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"digConfigs.js","sourceRoot":"","sources":["../src/digConfigs.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/digDoClassesAuto.d.ts b/dist/digDoClassesAuto.d.ts deleted file mode 100644 index d933a7e..0000000 --- a/dist/digDoClassesAuto.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { BigipConfObj } from './models'; -/** - * dig DO config information like vlans/SelfIPs/system-settings/... - * @param configTree bigip config as json tree - * @returns raw config objects - */ -export declare function digDoConfig(configTree: BigipConfObj): string[]; diff --git a/dist/digDoClassesAuto.js b/dist/digDoClassesAuto.js deleted file mode 100644 index ad0ae61..0000000 --- a/dist/digDoClassesAuto.js +++ /dev/null @@ -1,58 +0,0 @@ -'use-strict'; -"use strict"; -var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { - function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } - return new (P || (P = Promise))(function (resolve, reject) { - function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } - function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } - function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); -}; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.digDoConfig = void 0; -const do_classes_json_1 = __importDefault(require("./do_classes.json")); -const logger_1 = __importDefault(require("./logger")); -const object_path_1 = __importDefault(require("object-path")); -/** - * dig DO config information like vlans/SelfIPs/system-settings/... - * @param configTree bigip config as json tree - * @returns raw config objects - */ -function digDoConfig(configTree) { - const confs = []; - logger_1.default.info('digging DO classes for base config info'); - do_classes_json_1.default.forEach((el) => __awaiter(this, void 0, void 0, function* () { - // split the path and drop the initial '/tm' - const path = el.path.split('/').slice(2); - // search tree for config - const val = object_path_1.default.get(configTree, path); - if (val) { - if (typeof val == 'object') { - // const objectProperties = [] - // if config is object, loop through object and expand it - for (const [key, value] of Object.entries(val)) { - // objectProperties.push(`${key} ${value}`); - confs.push(`${path.join(' ')} ${key} { ${value} }`); - } - } - else if (typeof val == 'string') { - // if config is string, return it - confs.push(`${path.join(' ')} { ${val} }`); - } - else { - logger_1.default.info(`dig DO class path found, but not a string or object; path=${path.join(' ')} value=${val} }`); - } - } - else { - // no config found for this path - logger_1.default.debug(`no path "${path.join(' ')}" in object`); - } - })); - return confs; -} -exports.digDoConfig = digDoConfig; -//# sourceMappingURL=digDoClassesAuto.js.map \ No newline at end of file diff --git a/dist/digDoClassesAuto.js.map b/dist/digDoClassesAuto.js.map deleted file mode 100644 index d6ad5be..0000000 --- a/dist/digDoClassesAuto.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"digDoClassesAuto.js","sourceRoot":"","sources":["../src/digDoClassesAuto.ts"],"names":[],"mappings":"AAAA,YAAY,CAAA;;;;;;;;;;;;;;;;AAIZ,wEAAyC;AACzC,sDAA8B;AAC9B,8DAAoC;AAGpC;;;;GAIG;AACH,SAAgB,WAAW,CAAE,UAAwB;IAEjD,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,gBAAM,CAAC,IAAI,CAAC,yCAAyC,CAAC,CAAA;IAEtD,yBAAS,CAAC,OAAO,CAAE,CAAO,EAAE,EAAE,EAAE;QAE5B,4CAA4C;QAC5C,MAAM,IAAI,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAEzC,yBAAyB;QACzB,MAAM,GAAG,GAAG,qBAAU,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,CAAC,CAAA;QAE5C,IAAI,GAAG,EAAE;YAEL,IAAI,OAAO,GAAG,IAAI,QAAQ,EAAE;gBAExB,8BAA8B;gBAC9B,yDAAyD;gBACzD,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;oBAC5C,4CAA4C;oBAC5C,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,MAAM,KAAK,IAAI,CAAC,CAAA;iBACtD;aAGJ;iBAAM,IAAG,OAAO,GAAG,IAAI,QAAQ,EAAE;gBAE9B,iCAAiC;gBACjC,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;aAC9C;iBAAM;gBACH,gBAAM,CAAC,IAAI,CAAC,6DAA6D,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,GAAG,IAAI,CAAC,CAAA;aAC5G;SACJ;aAAM;YACH,gCAAgC;YAChC,gBAAM,CAAC,KAAK,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;SACzD;IAEL,CAAC,CAAA,CAAC,CAAA;IAEF,OAAO,KAAK,CAAC;AACjB,CAAC;AAzCD,kCAyCC"} \ No newline at end of file diff --git a/dist/digiRules.d.ts b/dist/digiRules.d.ts deleted file mode 100644 index 0049a21..0000000 --- a/dist/digiRules.d.ts +++ /dev/null @@ -1 +0,0 @@ -export declare function digDataGroupsiniRule(rule: string, dgNames: string[]): Promise; diff --git a/dist/digiRules.js b/dist/digiRules.js deleted file mode 100644 index 0ca14e8..0000000 --- a/dist/digiRules.js +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Copyright 2020. F5 Networks, Inc. See End User License Agreement ("EULA") for - * license terms. Notwithstanding anything to the contrary in the EULA, Licensee - * may copy and modify this software product for its internal business purposes. - * Further, Licensee may upload, publish and distribute the modified version of - * the software product on devcentral.f5.com. - */ -'use strict'; -var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { - function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } - return new (P || (P = Promise))(function (resolve, reject) { - function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } - function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } - function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.digDataGroupsiniRule = void 0; -function digDataGroupsiniRule(rule, dgNames) { - return __awaiter(this, void 0, void 0, function* () { - // !!! great example of filtering an array with another array !!! - // https://stackoverflow.com/questions/34901593/how-to-filter-an-array-from-all-elements-of-another-array - const excludeRx = [ - /\/____appsvcs_declaration-/, - /\/__appsvcs_update/, - /\/appsvcs\//, - /\/atgTeem/, - /\/f5-appsvcs-templates\// - ]; - // filter out data-groups for other internal services - dgNames = dgNames.filter(el => !excludeRx.some(rx => rx.test(el))); - return dgNames.filter(dg => { - // turn data-group name into an rx - const dgRx = new RegExp(dg); - // does the irule contain the full dg name? - if (dgRx.test(rule)) { - // true => return the dg name - return true; - } - else { - // string the object name from the partition - const shortDgName = dg.split('/').pop(); - // turn the short name into a rx - const shortDgNameRx = new RegExp(shortDgName); - // does the irule have the short name rx? - if (shortDgNameRx.test(rule)) { - // true => return the dg name - return true; - } - } - }); - }); -} -exports.digDataGroupsiniRule = digDataGroupsiniRule; -//# sourceMappingURL=digiRules.js.map \ No newline at end of file diff --git a/dist/digiRules.js.map b/dist/digiRules.js.map deleted file mode 100644 index 107dfa4..0000000 --- a/dist/digiRules.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"digiRules.js","sourceRoot":"","sources":["../src/digiRules.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,YAAY,CAAC;;;;;;;;;;;;AAGb,SAAsB,oBAAoB,CAAC,IAAY,EAAE,OAAiB;;QACtE,iEAAiE;QACjE,yGAAyG;QAEzG,MAAM,SAAS,GAAa;YACxB,4BAA4B;YAC5B,oBAAoB;YACpB,aAAa;YACb,WAAW;YACX,0BAA0B;SAC7B,CAAA;QAED,qDAAqD;QACrD,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAEnE,OAAO,OAAO,CAAC,MAAM,CAAE,EAAE,CAAC,EAAE;YACxB,kCAAkC;YAClC,MAAM,IAAI,GAAG,IAAI,MAAM,CAAC,EAAE,CAAC,CAAC;YAE5B,2CAA2C;YAC3C,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;gBAEjB,6BAA6B;gBAC7B,OAAO,IAAI,CAAC;aAEf;iBAAM;gBAEH,4CAA4C;gBAC5C,MAAM,WAAW,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;gBACxC,gCAAgC;gBAChC,MAAM,aAAa,GAAG,IAAI,MAAM,CAAC,WAAW,CAAC,CAAC;gBAC9C,yCAAyC;gBACzC,IAAI,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;oBAC1B,6BAA6B;oBAC7B,OAAO,IAAI,CAAC;iBACf;aAEJ;QACL,CAAC,CAAC,CAAA;IACN,CAAC;CAAA;AAvCD,oDAuCC"} \ No newline at end of file diff --git a/dist/do_classes.json b/dist/do_classes.json deleted file mode 100644 index f21422b..0000000 --- a/dist/do_classes.json +++ /dev/null @@ -1,1104 +0,0 @@ -[ - { - "path": "/tm/sys/global-settings", - "schemaClass": "System", - "properties": [ - { "id": "hostname" }, - { "id": "consoleInactivityTimeout" }, - { "id": "guiAudit", "newId": "guiAuditLog", "truth": "enabled", "falsehood": "disabled", "skipWhenOmitted": true }, - { "id": "mgmtDhcp" } - ], - "nameless": true, - "declaration": { - "properties": [ - { - "$comment": "We need to know this value for rollback but it is not in the schema", - "id": "mgmtDhcp", - "remove": true - } - ] - } - }, - { - "path": "/tm/cli/global-settings", - "schemaClass": "System", - "schemaMerge": { - "action": "add" - }, - "properties": [ - { "id": "idleTimeout", "newId": "cliInactivityTimeout" }, - { "id": "audit", "newId": "tmshAuditLog", "truth": "enabled", "falsehood": "disabled", "skipWhenOmitted": true } - ], - "nameless": true - }, - { - "path": "/tm/sys/software/update", - "schemaClass": "System", - "schemaMerge": { - "action": "add" - }, - "properties": [ - { "id": "autoCheck", "truth": "enabled", "falsehood": "disabled", "skipWhenOmitted": true }, - { "id": "autoPhonehome", "truth": "enabled", "falsehood": "disabled", "skipWhenOmitted": true } - ], - "nameless": true - }, - { - "path": "/tm/sys/db", - "schemaClass": "DbVariables", - "properties": [ - { "id": "value" } - ], - "singleValue": true, - "silent": true, - "declaration": false - }, - { - "path": "/tm/sys/management-ip", - "schemaClass": "ManagementIp", - "properties": [ - { "id": "name", "newId": "address" }, - { "id": "description", "newId": "remark" } - ], - "declaration": { - "customFunctions": [ - { "id": "remapManagementIp" } - ] - } - }, - { - "path": "/tm/sys/provision", - "schemaClass": "Provision", - "properties": [ - { "id": "level" } - ], - "singleValue": true, - "declaration": { - "properties": [ - { - "$comment": "SSLO is not supported yet", - "id": "sslo", - "remove": true - } - ] - } - }, - { - "path": "/tm/sys/ntp", - "schemaClass": "NTP", - "properties": [ - { "id": "servers" }, - { "id": "timezone" } - ] - }, - { - "path": "/tm/sys/dns", - "schemaClass": "DNS", - "properties": [ - { "id": "nameServers" }, - { "id": "search" } - ] - }, - { - "path": "/tm/net/dns-resolver", - "schemaClass": "DNS_Resolver", - "enforceArray": true, - "properties": [ - { "id": "answerDefaultZones", "truth": "yes", "falsehood": "no", "skipWhenOmitted": true }, - { "id": "cacheSize" }, - { "id": "forwardZones", "defaultWhenOmitted": "none" }, - { "id": "randomizeQueryNameCase", "truth": "yes", "falsehood": "no", "skipWhenOmitted": true }, - { "id": "routeDomain" }, - { "id": "useIpv4", "truth": "yes", "falsehood": "no", "skipWhenOmitted": true }, - { "id": "useIpv6", "truth": "yes", "falsehood": "no", "skipWhenOmitted": true }, - { "id": "useTcp", "truth": "yes", "falsehood": "no", "skipWhenOmitted": true }, - { "id": "useUdp", "truth": "yes", "falsehood": "no", "skipWhenOmitted": true } - ], - "declaration": { - "customFunctions": [ - { "id": "remapNameservers" } - ] - } - }, - { - "path": "/tm/net/trunk", - "schemaClass": "Trunk", - "properties": [ - { "id": "distributionHash" }, - { "id": "interfaces" }, - { "id": "lacp", "newId": "lacpEnabled", "truth": "enabled", "falsehood": "disabled", "skipWhenOmitted": true }, - { "id": "lacpMode" }, - { "id": "lacpTimeout" }, - { "id": "linkSelectPolicy" }, - { "id": "qinqEthertype" }, - { "id": "stp", "newId": "spanningTreeEnabled", "truth": "enabled", "falsehood": "disabled", "skipWhenOmitted": true } - ] - }, - { - "path": "/tm/net/vlan", - "schemaClass": "VLAN", - "properties": [ - { "id": "mtu" }, - { "id": "tag" }, - { "id": "interfacesReference", "dereferenceId": "interfaces" }, - { "id": "autoLasthop", "newId": "autoLastHop" }, - { "id": "cmpHash" }, - { "id": "failsafe", "newId": "failsafeEnabled", "truth": "enabled", "falsehood": "disabled", "skipWhenOmitted": true }, - { "id": "failsafeAction" }, - { "id": "failsafeTimeout" } - ], - "references": { - "interfacesReference": [ - { "id": "tagged", "truth": true, "falsehood": false } - ] - } - }, - { - "path": "/tm/net/self", - "schemaClass": "SelfIp", - "properties": [ - { "id": "address" }, - { "id": "vlan", "isRef": true }, - { "id": "trafficGroup" }, - { "id": "allowService" }, - { "id": "fwEnforcedPolicy", "newId": "enforcedFirewallPolicy" }, - { "id": "fwStagedPolicy", "newId": "stagedFirewallPolicy" } - ] - }, - { - "path": "/tm/net/route", - "schemaClass": "Route", - "properties": [ - { "id": "gw" }, - { "id": "network" }, - { "id": "mtu" }, - { "id": "tmInterface", "newId": "target" } - ], - "partitions": ["Common", "LOCAL_ONLY"] - }, - { - "path": "/tm/net/routing/access-list", - "schemaClass": "RoutingAccessList", - "enforceArray": true, - "properties": [ - { "id": "name" }, - { "id": "description", "newId": "remark", "defaultWhenOmitted": "none" }, - { "id": "entriesReference", "dereferenceId": "entries" } - ], - "references": { - "entriesReference": [ - { "id": "name", "stringToInt": true }, - { "id": "action" }, - { "id": "destination" }, - { "id": "exactMatch", "newId": "exactMatchEnabled", "truth": "enabled", "falsehood": "disabled" }, - { "id": "source" } - ] - } - }, - { - "path": "/tm/net/routing/as-path", - "schemaClass": "RoutingAsPath", - "properties": [ - { "id": "name" }, - { "id": "entriesReference", "dereferenceId": "entries" } - ], - "references": { - "entriesReference": [ - { "id": "name", "stringToInt": true }, - { "id": "regex" } - ] - } - }, - { - "path": "/tm/net/routing/prefix-list", - "schemaClass": "RoutingPrefixList", - "properties": [ - { "id": "name" }, - { "id": "entriesReference", "dereferenceId": "entries" } - ], - "references": { - "entriesReference": [ - { "id": "name", "stringToInt": true }, - { "id": "action" }, - { "id": "prefix" }, - { "id": "prefixLenRange", "newId": "prefixLengthRange" } - ] - } - }, - { - "path": "/tm/net/routing/route-map", - "schemaClass": "RouteMap", - "properties": [ - { "id": "name" }, - { "id": "entriesReference", "dereferenceId": "entries" } - ], - "references": { - "entriesReference": [ - { "id": "name", "stringToInt": true }, - { "id": "action" }, - { "id": "match", - "transform": [ - { "id": "asPath" }, - { "id": "ipv4", "removeKeys": ["peer"] }, - { "id": "ipv6", "removeKeys": ["peer"] } - ] - } - ] - } - }, - { - "path": "/tm/net/routing/bgp", - "schemaClass": "RoutingBGP", - "properties": [ - { "id": "name" }, - { "id": "addressFamily", "newId": "addressFamilies", - "transform": [ - { "id": "name", "newId": "internetProtocol" }, - { "id": "redistribute", "newId": "redistributionList" } - ] - }, - { "id": "localAs", "newId": "localAS" }, - { "id": "routerId" }, - { "id": "gracefulRestart", - "transform": [ - { "id": "gracefulReset", "newId": "gracefulResetEnabled", "truth": "enabled", "falsehood": "disabled" }, - { "id": "restartTime" }, - { "id": "stalepathTime", "newId": "stalePathTime" } - ] - }, - { "id": "keepAlive" }, - { "id": "holdTime" }, - { "id": "peerGroupReference", "dereferenceId": "peerGroups" }, - { "id": "neighborReference", "dereferenceId": "neighbors" } - ], - "references": { - "peerGroupReference": [ - { "id": "name" }, - { "id": "remoteAs", "newId": "remoteAS" }, - { "id": "addressFamily", "newId": "addressFamilies", - "transform": [ - { "id": "name", "newId": "internetProtocol" }, - { "id": "routeMap", "defaultWhenOmitted": "none" }, - { "id": "softReconfigurationInbound", "newId": "softReconfigurationInboundEnabled", "truth": "enabled", "falsehood": "disabled" } - ] - } - ], - "neighborReference": [ - { "id": "name", "newId": "address" }, - { "id": "ebgpMultihop" }, - { "id": "peerGroup" } - ] - } - }, - { - "path": "/tm/cm/device/~Common~{{deviceName}}", - "schemaClass": "ConfigSync", - "properties": [ - { "id": "configsyncIp", "defaultWhenOmitted": "none" } - ], - "nameless": true - }, - { - "path": "/tm/cm/device/~Common~{{deviceName}}", - "schemaClass": "FailoverUnicast", - "properties": [ - { - "id": "unicastAddress", - "newId": "addressPorts", - "defaultWhenOmitted": "none", - "transform": [ - { "id": "ip", "newId": "address" }, - { "id": "port" } - ] - } - ], - "nameless": true, - "declaration": { - "$comment": "Should remove entire object if unicastAddress is 'none' (not configured)", - "customFunctions": [ - { "id": "formatFailoverUnicast" } - ] - } - }, - { - "path": "/tm/cm/device/~Common~{{deviceName}}", - "schemaClass": "FailoverMulticast", - "properties": [ - { "id": "multicastInterface", "newId": "interface", "defaultWhenOmitted": "none" }, - { "id": "multicastIp", "newId": "address", "defaultWhenOmitted": "any6" }, - { "id": "multicastPort", "newId": "port", "defaultWhenOmitted": 0 } - ], - "nameless": true - }, - { - "path": "/tm/cm/device/~Common~{{deviceName}}", - "schemaClass": "MirrorIp", - "properties": [ - { "id": "mirrorIp", "newId": "primaryIp" }, - { "id": "mirrorSecondaryIp", "newId": "secondaryIp" } - ], - "nameless": true - }, - { - "path": "/tm/cm/device-group", - "schemaClass": "DeviceGroup", - "properties": [ - { "id": "class" }, - { "id": "type" }, - { "id": "members" }, - { "id": "autoSync" }, - { "id": "saveOnAutoSync" }, - { "id": "networkFailover" }, - { "id": "fullLoadOnSync" }, - { "id": "asmSync" } - ], - "ignore": [ - { "name": "^datasync-.+-dg$" }, - { "name": "^device_trust_group$" }, - { "name": "^dos-global-dg$" }, - { "name": "^gtm$" } - ], - "declaration": false - }, - { - "path": "/tm/cm/traffic-group", - "schemaClass": "TrafficGroup", - "properties": [ - { "id": "class" }, - { "id": "autoFailbackEnabled" }, - { "id": "autoFailbackTime" }, - { "id": "failoverMethod" }, - { "id": "haLoadFactor" }, - { "id": "haOrder" } - ], - "declaration": false - }, - { - "path": "/tm/cm/traffic-group", - "schemaClass": "MAC_Masquerade", - "properties": [ - { "id": "mac" } - ], - "declaration": false, - "nameless": true - }, - { - "path": "/tm/analytics/global-settings", - "schemaClass": "Analytics", - "requiredModules": [{ "module": "avr" }], - "properties": [ - { "id": "avrdDebugMode", "newId": "debugEnabled", "truth": "enabled", "falsehood": "disabled" }, - { "id": "avrdInterval", "newId": "interval" }, - { "id": "offboxProtocol", "defaultWhenOmitted": "none" }, - { "id": "offboxTcpAddresses", "defaultWhenOmitted": [] }, - { "id": "offboxTcpPort", "defaultWhenOmitted": 0 }, - { "id": "useOffbox", "newId": "offboxEnabled", "truth": "enabled", "falsehood": "disabled" }, - { "id": "sourceId", "defaultWhenOmitted": "none" }, - { "id": "tenantId", "defaultWhenOmitted": "default" } - ], - "declaration": { - "properties": [ - { "id": "offboxProtocol", "removeIfValue": "none" } - ] - } - }, - { - "path": "/tm/sys/management-route", - "schemaClass": "ManagementRoute", - "properties": [ - { "id": "description", "newId": "remark", "defaultWhenOmitted": "none" }, - { "id": "gateway", "newId": "gw" }, - { "id": "network" }, - { "id": "mtu" }, - { "id": "type" } - ] - }, - { - "path": "/tm/sys/syslog", - "schemaClass": "SyslogRemoteServer", - "properties": [ - { "id": "remoteServers" } - ], - "declaration": { - "properties": [ - { "id": "localIp", "removeIfValue": "none" } - ] - } - }, - { - "path": "/tm/auth/source", - "schemaClass": "Authentication", - "properties": [ - { "id": "type" }, - { "id": "fallback", "truth": "true", "falsehood": "false" } - ], - "nameless": true, - "declaration": { - "$comment": "Kind like parent object because all auth config will be under 'Authentication' key", - "customFunctions": [ - { "id": "removeIncompleteAuthMethods" }, - { "id": "removeLdapCertAndKey" } - ] - } - }, - { - "path": "/tm/auth/remote-user", - "schemaClass": "Authentication", - "schemaMerge": { - "path": ["remoteUsersDefaults"] - }, - "properties": [ - { "id": "defaultRole", "newId": "role" }, - { "id": "defaultPartition", "newId": "partitionAccess" }, - { "id": "remoteConsoleAccess", "newId": "terminalAccess" } - ], - "nameless": true - }, - { - "path": "/tm/auth/radius", - "schemaClass": "Authentication", - "schemaMerge": { - "path": ["radius"], - "skipWhenOmitted": true - }, - "properties": [ - { "id": "serviceType" } - ], - "nameless": true - }, - { - "path": "/tm/auth/radius-server", - "schemaClass": "Authentication", - "schemaMerge": { - "path": ["radius", "servers"], - "action": "add", - "skipWhenOmitted": true - }, - "properties": [ - { "id": "server" }, - { "id": "port" }, - { "id": "secret" } - ] - }, - { - "path": "/tm/auth/tacacs", - "schemaClass": "Authentication", - "schemaMerge": { - "path": ["tacacs"], - "skipWhenOmitted": true - }, - "properties": [ - { "id": "accounting", "defaultWhenOmitted": "send-to-first-server" }, - { "id": "authentication", "defaultWhenOmitted": "use-first-server" }, - { "id": "debug", "truth": "enabled", "falsehood": "disabled", "skipWhenOmitted": true }, - { "id": "encryption", "truth": "enabled", "falsehood": "disabled", "skipWhenOmitted": true }, - { "id": "protocol" }, - { "id": "secret" }, - { "id": "servers" }, - { "id": "service" } - ], - "nameless": true - }, - { - "path": "/tm/net/route-domain", - "schemaClass": "RouteDomain", - "properties": [ - { "id": "id" }, - { "id": "parent", "defaultWhenOmitted": "none" }, - { "id": "bwcPolicy", "newId": "bandWidthControllerPolicy" }, - { "id": "connectionLimit" }, - { "id": "flowEvictionPolicy" }, - { "id": "fwEnforcedPolicy", "newId": "enforcedFirewallPolicy" }, - { "id": "fwStagedPolicy", "newId": "stagedFirewallPolicy" }, - { "id": "ipIntelligencePolicy" }, - { "id": "securityNatPolicy" }, - { "id": "servicePolicy" }, - { "id": "strict", "truth": "enabled", "falsehood": "disabled" }, - { "id": "routingProtocol", "newId": "routingProtocols" }, - { "id": "vlans" } - ], - "declaration": { - "customFunctions": [ - { "id": "renameDefaultRouteDomain" } - ] - } - }, - { - "path": "/tm/auth/remote-role/role-info", - "schemaClass": "RemoteAuthRole", - "properties": [ - { "id": "deny", "newId": "remoteAccess", "truth": "disabled", "falsehood": "enabled" }, - { "id": "attribute" }, - { "id": "console" }, - { "id": "lineOrder" }, - { "id": "role" }, - { "id": "userPartition" } - ], - "declaration": { - "properties": [ - { "id": "userPartition", "replaceIfValue": "All", "newValue": "all" } - ] - } - }, - { - "path": "/tm/auth/ldap", - "schemaClass": "Authentication", - "schemaMerge": { - "path": ["ldap"], - "skipWhenOmitted": true - }, - "properties": [ - { "id": "bindDn", "defaultWhenOmitted": "none" }, - { "id": "bindPw", "newId": "bindPassword", "defaultWhenOmitted": "none" }, - { "id": "bindTimeout" }, - { "id": "checkHostAttr", "newId": "checkBindPassword", "truth": "enabled", "falsehood": "disabled", "skipWhenOmitted": true }, - { "id": "checkRolesGroup", "newId": "checkRemoteRole", "truth": "enabled", "falsehood": "disabled", "skipWhenOmitted": true }, - { "id": "filter", "defaultWhenOmitted": "none" }, - { "id": "groupDn", "defaultWhenOmitted": "none" }, - { "id": "groupMemberAttribute", "defaultWhenOmitted": "none" }, - { "id": "idleTimeout" }, - { "id": "ignoreAuthInfoUnavail", "newId": "ignoreAuthInfoUnavailable", "truth": "yes", "falsehood": "no", "skipWhenOmitted": true }, - { "id": "ignoreUnknownUser", "truth": "enabled", "falsehood": "disabled", "skipWhenOmitted": true }, - { "id": "loginAttribute", "defaultWhenOmitted": "none" }, - { "id": "port" }, - { "id": "referrals", "truth": "yes", "falsehood": "no", "minVersion": "15.1" }, - { "id": "scope", "newId": "searchScope" }, - { "id": "searchBaseDn", "defaultWhenOmitted": "none" }, - { "id": "searchTimeout" }, - { "id": "servers" }, - { "id": "ssl" }, - { "id": "sslCaCertFile", "newId": "sslCaCert", "defaultWhenOmitted": "none" }, - { "id": "sslCheckPeer", "truth": "enabled", "falsehood": "disabled" }, - { "id": "sslCiphers" }, - { "id": "sslClientCert", "defaultWhenOmitted": "none" }, - { "id": "sslClientKey", "defaultWhenOmitted": "none" }, - { "id": "userTemplate", "defaultWhenOmitted": "none" }, - { "id": "version" } - ], - "references": { - "sslCaCertFileReference": [ - { "id": "checksum" }, - { "id": "partition" } - ], - "sslClientCertReference": [ - { "id": "checksum" }, - { "id": "partition" } - ], - "sslClientKeyReference": [ - { "id": "checksum" }, - { "id": "partition" } - ] - }, - "nameless": true - }, - { - "path": "/tm/sys/snmp", - "schemaClass": "SnmpTrapEvents", - "properties": [ - { "id": "bigipTraps", "newId": "device", "truth": "enabled", "falsehood": "disabled" }, - { "id": "authTrap", "newId": "authentication", "truth": "enabled", "falsehood": "disabled" }, - { "id": "agentTrap", "newId": "agentStartStop", "truth": "enabled", "falsehood": "disabled" } - ], - "nameless": true - }, - { - "path": "/tm/sys/snmp/traps", - "schemaClass": "SnmpTrapDestination", - "properties": [ - { "id": "community", "defaultWhenOmitted": "none" }, - { "id": "host", "newId": "destination" }, - { "id": "network" }, - { "id": "port" }, - { "id": "version" }, - { "id": "authPassword", "newId": "authentication.password" }, - { "id": "authProtocol", "newId": "authentication.protocol", "defaultWhenOmitted": "none" }, - { "id": "privacyPassword", "newId": "privacy.password" }, - { "id": "privacyProtocol", "newId": "privacy.protocol", "defaultWhenOmitted": "none" }, - { "id": "engineId", "defaultWhenOmitted": "none" }, - { "id": "securityName", "defaultWhenOmitted": "none" } - ], - "declaration": { - "properties": [ - { "id": "network", "replaceIfValue": "mgmt", "newValue": "management" } - ] - } - }, - { - "path": "/tm/sys/snmp", - "schemaClass": "SnmpAgent", - "properties": [ - { "id": "sysContact", "newId": "contact", "defaultWhenOmitted": "" }, - { "id": "sysLocation", "newId": "location", "defaultWhenOmitted": "" }, - { "id": "allowedAddresses", "newId": "allowList", "defaultWhenOmitted": [] } - ], - "nameless": true - }, - { - "path": "/tm/sys/snmp/users", - "schemaClass": "SnmpUser", - "properties": [ - { "id": "username", "newId": "name" }, - { "id": "access" }, - { "id": "authPassword", "newId": "authentication.password" }, - { "id": "authProtocol", "newId": "authentication.protocol", "defaultWhenOmitted": "none" }, - { "id": "privacyPassword", "newId": "privacy.password" }, - { "id": "privacyProtocol", "newId": "privacy.protocol", "defaultWhenOmitted": "none" }, - { "id": "oidSubset", "newId": "oid", "defaultWhenOmitted": "none" } - ] - }, - { - "path": "/tm/sys/snmp/communities", - "schemaClass": "SnmpCommunity", - "properties": [ - { "id": "communityName", "newId": "name" }, - { "id": "access" }, - { "id": "ipv6", "truth": "enabled", "falsehood": "disabled" }, - { "id": "source", "defaultWhenOmitted": "none" }, - { "id": "oidSubset", "newId": "oid", "defaultWhenOmitted": "none" } - ] - }, - { - "path": "/tm/net/dag-globals", - "schemaClass": "DagGlobals", - "properties": [ - { "id": "dagIpv6PrefixLen", "newId": "ipv6PrefixLength" }, - { "id": "icmpHash" }, - { "id": "roundRobinMode" } - ], - "nameless": true - }, - { - "path": "/tm/sys/httpd", - "schemaClass": "HTTPD", - "properties": [ - { "id": "allow" }, - { "id": "maxClients" }, - { "id": "authPamIdleTimeout" }, - { "id": "sslCiphersuite" }, - { "id": "sslProtocol" } - ], - "declaration": { - "properties": [ - { "id": "allow", "replaceIfValue": "All", "newValue": "all" } - ] - }, - "nameless": true - }, - { - "path": "/tm/ltm/global-settings/traffic-control", - "schemaClass": "TrafficControl", - "properties": [ - { "id": "acceptIpOptions", "truth": "enabled", "falsehood": "disabled" }, - { "id": "acceptIpSourceRoute", "truth": "enabled", "falsehood": "disabled" }, - { "id": "allowIpSourceRoute", "truth": "enabled", "falsehood": "disabled" }, - { "id": "continueMatching", "truth": "enabled", "falsehood": "disabled" }, - { "id": "maxIcmpRate" }, - { "id": "maxRejectRate" }, - { "id": "maxRejectRateTimeout" }, - { "id": "minPathMtu" }, - { "id": "pathMtuDiscovery", "truth": "enabled", "falsehood": "disabled" }, - { "id": "portFindLinear", "newId": "maxPortFindLinear" }, - { "id": "portFindRandom", "newId": "maxPortFindRandom" }, - { "id": "portFindThresholdWarning", "truth": "enabled", "falsehood": "disabled" }, - { "id": "portFindThresholdTrigger" }, - { "id": "portFindThresholdTimeout" }, - { "id": "rejectUnmatched", "truth": "enabled", "falsehood": "disabled" } - ], - "nameless": true - }, - { - "path": "/tm/sys/sshd", - "schemaClass": "SSHD", - "properties": [ - { "id": "allow" }, - { "id": "bannerText", "newId": "banner" }, - { "id": "include" }, - { "id": "inactivityTimeout" } - ], - "nameless": true - }, - { - "path": "/tm/net/tunnels/tunnel", - "schemaClass": "Tunnel", - "properties": [ - { "id": "description", "newId": "remark", "defaultWhenOmitted": "none" }, - { "id": "autoLasthop", "newId": "autoLastHop" }, - { "id": "mtu" }, - { "id": "profile", "newId": "tunnelType" }, - { "id": "tos", "newId": "typeOfService" }, - { "id": "usePmtu", "truth": "enabled", "falsehood": "disabled" }, - { "id": "localAddress" }, - { "id": "remoteAddress" }, - { "id": "secondaryAddress" }, - { "id": "key" }, - { "id": "mode" }, - { "id": "transparent", "truth": "enabled", "falsehood": "disabled" }, - { "id": "trafficGroup", "defaultWhenOmitted": "none" } - ] - }, - { - "path": "/tm/net/tunnels/vxlan", - "schemaClass": "Tunnel", - "schemaMerge": { - "action": "add" - }, - "properties": [ - { "id": "defaultsFrom" }, - { "id": "port" }, - { "id": "floodingType" }, - { "id": "encapsulationType" } - ] - }, - { - "path": "/tm/sys/disk/directory", - "schemaClass": "Disk", - "properties": [ - { - "id": "apiRawValues", - "transform": [ - { - "id": "applicationData", - "capture": "appdata\\s+([0-9]+)", - "captureProperty": "apiAnonymous" - } - ], - "required": true - } - ], - "nameless": true - }, - { - "path": "/tm/gtm/global-settings/general", - "schemaClass": "GSLBGlobals", - "requiredModules": [{ "module": "gtm" }], - "schemaMerge": { - "path": ["general"] - }, - "properties": [ - { "id": "synchronization", "truth": "yes", "falsehood": "no", "newId": "synchronizationEnabled" }, - { "id": "synchronizationGroupName" }, - { "id": "synchronizationTimeTolerance" }, - { "id": "synchronizationTimeout" } - ], - "nameless": true, - "declaration": { - "customFunctions": [ - { "id": "remapGSLBGlobals" } - ] - } - }, - { - "path": "/tm/gtm/datacenter", - "schemaClass": "GSLBDataCenter", - "enforceArray": true, - "requiredModules": [{ "module": "gtm" }], - "properties": [ - { "id": "contact" }, - { "id": "enabled" }, - { "id": "location" }, - { "id": "proberFallback" }, - { "id": "proberPool" }, - { "id": "proberPreference", "newId": "proberPreferred" } - ] - }, - { - "path": "/tm/gtm/server", - "schemaClass": "GSLBServer", - "requiredModules": [{ "module": "gtm" }], - "enforceArray": true, - "properties": [ - { "id": "description", "newId": "remark", "defaultWhenOmitted": "none" }, - { "id": "enabled" }, - { "id": "disabled" }, - { "id": "product", "newId": "serverType" }, - { "id": "proberPreference", "newId": "proberPreferred" }, - { "id": "proberFallback" }, - { "id": "proberPool", "defaultWhenOmitted": "none" }, - { "id": "limitMaxBps", "newId": "bpsLimit" }, - { "id": "limitMaxBpsStatus", "newId": "bpsLimitEnabled", "truth": "enabled", "falsehood": "disabled" }, - { "id": "limitMaxPps", "newId": "ppsLimit" }, - { "id": "limitMaxPpsStatus", "newId": "ppsLimitEnabled", "truth": "enabled", "falsehood": "disabled" }, - { "id": "limitMaxConnections", "newId": "connectionsLimit" }, - { "id": "limitMaxConnectionsStatus", "newId": "connectionsLimitEnabled", "truth": "enabled", "falsehood": "disabled" }, - { "id": "limitCpuUsage", "newId": "cpuUsageLimit" }, - { "id": "limitCpuUsageStatus", "newId": "cpuUsageLimitEnabled", "truth": "enabled", "falsehood": "disabled" }, - { "id": "limitMemAvail", "newId": "memoryLimit" }, - { "id": "limitMemAvailStatus", "newId": "memoryLimitEnabled", "truth": "enabled", "falsehood": "disabled" }, - { "id": "iqAllowServiceCheck", "newId": "serviceCheckProbeEnabled", "truth": "yes", "falsehood": "no" }, - { "id": "iqAllowPath", "newId": "pathProbeEnabled", "truth": "yes", "falsehood": "no" }, - { "id": "iqAllowSnmp", "newId": "snmpProbeEnabled", "truth": "yes", "falsehood": "no" }, - { "id": "datacenter", "newId": "dataCenter" }, - { "id": "devicesReference", "dereferenceId": "devices" }, - { "id": "exposeRouteDomains", "newId": "exposeRouteDomainsEnabled", "truth": "yes", "falsehood": "no" }, - { "id": "virtualServersReference", "dereferenceId": "virtualServers" }, - { "id": "virtualServerDiscovery", "newId": "virtualServerDiscoveryMode" }, - { "id": "monitor", "newId": "monitors", "retainCommon": true } - ], - "references": { - "devicesReference": [ - { "id": "name" }, - { - "id": "addresses", - "transform": [ - { "id": "name", "newId": "address" }, - { "id": "translation", "newId": "addressTranslation", "defaultWhenOmitted": "none" } - ], - "upLevel": 1 - }, - { "id": "description", "newId": "remark", "defaultWhenOmitted": "none" } - ], - "virtualServersReference": [ - { "id": "name" }, - { "id": "description", "newId": "remark", "defaultWhenOmitted": "none" }, - { "id": "destination" }, - { "id": "enabled" }, - { "id": "disabled" }, - { "id": "translationAddress", "newId": "addressTranslation", "defaultWhenOmitted": "none" }, - { "id": "translationPort", "newId": "addressTranslationPort" }, - { "id": "monitor", "newId": "monitors", "retainCommon": true } - ] - } - }, - { - "path": "/tm/gtm/monitor/http", - "schemaClass": "GSLBMonitor", - "enforceArray": true, - "requiredModules": [{ "module": "gtm" }], - "properties": [ - { "id": "kind" }, - { "id": "description", "newId": "remark", "defaultWhenOmitted": "none" }, - { "id": "destination", "newId": "target" }, - { "id": "interval" }, - { "id": "timeout" }, - { "id": "probeTimeout" }, - { "id": "ignoreDownResponse", "newId": "ignoreDownResponseEnabled", "truth": "enabled", "falsehood": "disabled" }, - { "id": "transparent", "truth": "enabled", "falsehood": "disabled" }, - { "id": "reverse", "newId": "reverseEnabled", "truth": "enabled", "falsehood": "disabled" }, - { "id": "send", "defaultWhenOmitted": "none" }, - { "id": "recv", "newId": "receive", "defaultWhenOmitted": "none" } - ] - }, - { - "path": "/tm/gtm/monitor/https", - "schemaClass": "GSLBMonitor", - "enforceArray": true, - "schemaMerge": { - "action": "add" - }, - "requiredModules": [{ "module": "gtm" }], - "properties": [ - { "id": "kind" }, - { "id": "description", "newId": "remark", "defaultWhenOmitted": "none" }, - { "id": "destination", "newId": "target" }, - { "id": "interval" }, - { "id": "timeout" }, - { "id": "probeTimeout" }, - { "id": "ignoreDownResponse", "newId": "ignoreDownResponseEnabled", "truth": "enabled", "falsehood": "disabled" }, - { "id": "transparent", "truth": "enabled", "falsehood": "disabled" }, - { "id": "reverse", "newId": "reverseEnabled", "truth": "enabled", "falsehood": "disabled" }, - { "id": "send", "defaultWhenOmitted": "none" }, - { "id": "recv", "newId": "receive", "defaultWhenOmitted": "none" }, - { "id": "cipherlist", "newId": "ciphers" }, - { "id": "cert", "newId": "clientCertificate" } - ] - }, - { - "path": "/tm/gtm/monitor/gateway-icmp", - "schemaClass": "GSLBMonitor", - "enforceArray": true, - "schemaMerge": { - "action": "add" - }, - "requiredModules": [{ "module": "gtm" }], - "properties": [ - { "id": "kind" }, - { "id": "description", "newId": "remark", "defaultWhenOmitted": "none" }, - { "id": "destination", "newId": "target" }, - { "id": "interval" }, - { "id": "timeout" }, - { "id": "probeTimeout" }, - { "id": "ignoreDownResponse", "newId": "ignoreDownResponseEnabled", "truth": "enabled", "falsehood": "disabled" }, - { "id": "transparent", "truth": "enabled", "falsehood": "disabled" }, - { "id": "probeInterval" }, - { "id": "probeAttempts" } - ] - }, - { - "path": "/tm/gtm/monitor/tcp", - "schemaClass": "GSLBMonitor", - "enforceArray": true, - "schemaMerge": { - "action": "add" - }, - "requiredModules": [{ "module": "gtm" }], - "properties": [ - { "id": "kind" }, - { "id": "description", "newId": "remark", "defaultWhenOmitted": "none" }, - { "id": "destination", "newId": "target" }, - { "id": "interval" }, - { "id": "timeout" }, - { "id": "probeTimeout" }, - { "id": "ignoreDownResponse", "newId": "ignoreDownResponseEnabled", "truth": "enabled", "falsehood": "disabled" }, - { "id": "transparent", "truth": "enabled", "falsehood": "disabled" }, - { "id": "reverse", "newId": "reverseEnabled", "truth": "enabled", "falsehood": "disabled" }, - { "id": "send" }, - { "id": "recv", "newId": "receive" } - ] - }, - { - "path": "/tm/gtm/monitor/udp", - "schemaClass": "GSLBMonitor", - "enforceArray": true, - "schemaMerge": { - "action": "add" - }, - "requiredModules": [{ "module": "gtm" }], - "properties": [ - { "id": "kind" }, - { "id": "description", "newId": "remark", "defaultWhenOmitted": "none" }, - { "id": "destination", "newId": "target" }, - { "id": "interval" }, - { "id": "timeout" }, - { "id": "probeTimeout" }, - { "id": "ignoreDownResponse", "newId": "ignoreDownResponseEnabled", "truth": "enabled", "falsehood": "disabled" }, - { "id": "transparent", "truth": "enabled", "falsehood": "disabled" }, - { "id": "reverse", "newId": "reverseEnabled", "truth": "enabled", "falsehood": "disabled" }, - { "id": "send" }, - { "id": "recv", "newId": "receive" }, - { "id": "probeInterval" }, - { "id": "probeAttempts" }, - { "id": "debug", "newId": "debugEnabled", "truth": "yes", "falsehood": "no" } - ] - }, - { - "path": "/tm/gtm/prober-pool", - "schemaClass": "GSLBProberPool", - "enforceArray": true, - "requiredModules": [{ "module": "gtm" }], - "properties": [ - { "id": "description", "newId": "remark", "defaultWhenOmitted": "none" }, - { "id": "enabled" }, - { "id": "disabled" }, - { "id": "loadBalancingMode", "newId": "lbMode" }, - { "id": "membersReference", "dereferenceId": "members" } - ], - "references": { - "membersReference": [ - { "id": "name", "newId": "server" }, - { "id": "description", "newId": "remark", "defaultWhenOmitted": "none" }, - { "id": "enabled" }, - { "id": "disabled" }, - { "id": "order" } - ] - }, - "declaration": { - "customFunctions": [ - { "id": "formatGSLBProberPool" } - ] - } - }, - { - "path": "/tm/security/firewall/policy", - "schemaClass": "FirewallPolicy", - "requiredModules": [{ "module": "afm" }], - "properties": [ - { "id": "description", "newId": "remark", "defaultWhenOmitted": "none" }, - { "id": "fullPath" }, - { "id": "rulesReference", "dereferenceId": "rules" } - ], - "ignore": [ - { "fullPath": "^/Common/Shared/" } - ], - "references": { - "rulesReference": [ - { "id": "name" }, - { "id": "description", "newId": "remark", "defaultWhenOmitted": "none" }, - { "id": "action" }, - { "id": "ipProtocol", "newId": "protocol" }, - { "id": "log", "newId": "loggingEnabled", "truth": "yes", "falsehood": "no" }, - { "id": "source" }, - { "id": "destination" } - ] - } - }, - { - "path": "/tm/security/firewall/address-list", - "schemaClass": "FirewallAddressList", - "requiredModules": [{ "module": "afm" }], - "properties": [ - { "id": "description", "newId": "remark", "defaultWhenOmitted": "none" }, - { "id": "fullPath" }, - { - "id": "addresses", - "transformAsArray": true, - "transform": [ - { "id": "addresses", "extract": "name" } - ] - }, - { - "id": "fqdns", - "transformAsArray": true, - "transform": [ - { "id": "fqdns", "extract": "name" } - ] - }, - { - "id": "geo", - "transformAsArray": true, - "transform": [ - { "id": "geo", "extract": "name" } - ] - } - ], - "ignore": [ - { "fullPath": "^/Common/Shared/" } - ] - }, - { - "path": "/tm/security/firewall/port-list", - "schemaClass": "FirewallPortList", - "requiredModules": [{ "module": "afm" }], - "properties": [ - { "id": "description", "newId": "remark", "defaultWhenOmitted": "none" }, - { "id": "fullPath" }, - { - "id": "ports", - "transformAsArray": true, - "transform": [ - { "id": "ports", "extract": "name" } - ] - } - ], - "ignore": [ - { "name": "^_sys_self_allow_tcp_defaults$" }, - { "name": "^_sys_self_allow_udp_defaults$" }, - { "fullPath": "^/Common/Shared/" } - ] - }, - { - "path": "/tm/security/firewall/management-ip-rules", - "schemaClass": "ManagementIpFirewall", - "requiredModules": [ - { - "module": "afm", - "maxVersion": "13.1" - } - ], - "properties": [ - { "id": "description", "newId": "remark", "defaultWhenOmitted": "none" }, - { "id": "rulesReference", "dereferenceId": "rules" } - ], - "references": { - "rulesReference": [ - { "id": "name" }, - { "id": "description", "newId": "remark", "defaultWhenOmitted": "none" }, - { "id": "action" }, - { "id": "ipProtocol", "newId": "protocol" }, - { "id": "log", "newId": "loggingEnabled", "truth": "yes", "falsehood": "no" }, - { "id": "source" }, - { "id": "destination" } - ] - }, - "nameless": true - } -] diff --git a/dist/index.d.ts b/dist/index.d.ts deleted file mode 100644 index 43a0738..0000000 --- a/dist/index.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -export * from './ltm'; -export * from './models'; -export { ConfigFiles } from './unPacker'; -export { TmosRegExTree } from './regex'; -export default BigipConfig; -import BigipConfig from './ltm'; diff --git a/dist/index.js b/dist/index.js deleted file mode 100644 index b65f792..0000000 --- a/dist/index.js +++ /dev/null @@ -1,33 +0,0 @@ -'use strict'; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __exportStar = (this && this.__exportStar) || function(m, exports) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); -}; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -__exportStar(require("./ltm"), exports); -// import { -// BigipConfObj, -// Stats, -// Explosion, -// AppMap, -// TmosApp, -// } from './models' -__exportStar(require("./models"), exports); -// export { BigipConfig } from './ltm' -// export default bigipConfig = _BigipConfig; -exports.default = ltm_1.default; -const ltm_1 = __importDefault(require("./ltm")); -//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/dist/index.js.map b/dist/index.js.map deleted file mode 100644 index c5bf0ab..0000000 --- a/dist/index.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;;;;;;;;;;;;;;;;;AAGb,wCAAsB;AAEtB,YAAY;AACZ,oBAAoB;AACpB,aAAa;AACb,iBAAiB;AACjB,cAAc;AACd,eAAe;AACf,oBAAoB;AAEpB,2CAAyB;AAIzB,sCAAsC;AAItC,6CAA6C;AAC7C,kBAAe,aAAW,CAAC;AAI3B,gDAAgC"} \ No newline at end of file diff --git a/dist/logger.d.ts b/dist/logger.d.ts deleted file mode 100644 index 582ec05..0000000 --- a/dist/logger.d.ts +++ /dev/null @@ -1,39 +0,0 @@ -/** - * logger class to log information to OUTPUT console of vscode window - * prefer to use logger.debug, but feel free to explore others - * example: logger.debug('chuck-joke->resp.data', resp.data); - */ -declare class Log { - private _journal; - private readonly _logLevel; - constructor(level?: LogLevel); - /** - * Log collector - * @param msg debug message to log - */ - debug(...msg: [unknown, ...unknown[]]): void; - /** - * Log collector - * @param msg info message to log - */ - info(...msg: [unknown, ...unknown[]]): void; - /** - * Log collector - * @param msg error message to log - */ - error(...msg: [unknown, ...unknown[]]): void; - write(label: string, ...messageParts: unknown[]): void; - /** - * returns logs as string - */ - getLogs(): string[]; - private init; - private stringify; -} -declare enum LogLevel { - Debug = 0, - Info = 1, - Error = 2 -} -declare const logger: Log; -export default logger; diff --git a/dist/logger.js b/dist/logger.js deleted file mode 100644 index cb148cf..0000000 --- a/dist/logger.js +++ /dev/null @@ -1,103 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -/* eslint-disable @typescript-eslint/no-explicit-any */ -const util_1 = require("util"); -/** - * logger class to log information to OUTPUT console of vscode window - * prefer to use logger.debug, but feel free to explore others - * example: logger.debug('chuck-joke->resp.data', resp.data); - */ -class Log { - constructor(level) { - this._journal = []; - this._logLevel = level | LogLevel.Debug; - this.init(); // used to make it do stuff at initilization for testing - } - // /** - // * verbose logging to OUTPUT - // * @param message message string - // * @param data - // */ - // public verbose(message: string, data?: any): void { - // this.log(LogLevel.Verbose, message, data); - // } - // // public info(message: string, data?: any): void { - // // this.log(LogLevel.Info, message, data); - // // } - // // public warn(message: string, data?: any): void { - // // this.log(LogLevel.Warn, message, data); - // // } - // // public error(message: string, data?: any): void { - // // this.log(LogLevel.Error, message, data); - // // } - // public log(level: LogLevel, message: string, data?: any): void { - // if (level >= this._logLevel) { - // const date = (new Date().toLocaleTimeString()); - // this._journal.push(`[${date} - ${LogLevel[level]}] ${message}`); - // if (data) { - // this._journal.push(this.data2String(data)); - // } - // } - // } - /** - * Log collector - * @param msg debug message to log - */ - debug(...msg) { - this.write('DEBUG', ...msg); - } - /** - * Log collector - * @param msg info message to log - */ - info(...msg) { - this.write('INFO', ...msg); - } - /** - * Log collector - * @param msg error message to log - */ - error(...msg) { - this.write('ERROR', ...msg); - } - write(label, ...messageParts) { - const message = messageParts.map(this.stringify).join(' '); - const dateTime = new Date().toISOString(); - this._journal.push(`[${dateTime}] [${label}]: ${message}`); - } - /** - * returns logs as string - */ - getLogs() { - return this._journal; - } - init() { - const label = 'DeBuG'; - // const message = 'very special log message'; - const dateTime = new Date(); - const dateT1 = dateTime.toISOString(); - const dateT2 = dateTime.toLocaleString(); - const dateT3 = dateTime.toUTCString(); - this._journal.push(`[${dateT1}] ${label}: 'regular date log message'`); - this._journal.push(`[${dateT2}] ${label}: 'toLocalString date log message'`); - this._journal.push(`[${dateT3}] ${label}: 'to UTC date log message'`); - } - stringify(val) { - if (typeof val === 'string') { - return val; - } - return (0, util_1.inspect)(val, { - colors: false, - depth: 6, // heuristic - }); - } -} -var LogLevel; -(function (LogLevel) { - LogLevel[LogLevel["Debug"] = 0] = "Debug"; - LogLevel[LogLevel["Info"] = 1] = "Info"; - LogLevel[LogLevel["Error"] = 2] = "Error"; -})(LogLevel || (LogLevel = {})); -const logger = new Log(); -exports.default = logger; -//# sourceMappingURL=logger.js.map \ No newline at end of file diff --git a/dist/logger.js.map b/dist/logger.js.map deleted file mode 100644 index 7fcc64f..0000000 --- a/dist/logger.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"logger.js","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/ltm.d.ts b/dist/ltm.d.ts deleted file mode 100644 index c748da5..0000000 --- a/dist/ltm.d.ts +++ /dev/null @@ -1,117 +0,0 @@ -/// -import { EventEmitter } from 'events'; -import { BigipConfObj, ConfigFile, Explosion, xmlStats } from './models'; -import { ConfigFiles } from './unPacker'; -/** - * Class to consume bigip configs -> parse apps - * - */ -export default class BigipConfig extends EventEmitter { - /** - * incoming config files array - * ex. [{filename:'config/bigip.conf',size:12345,content:'...'},{...}] - */ - configFiles: ConfigFiles; - /** - * tmos config as nested json objects - * - consolidated parant object keys like ltm/apm/sys/... - */ - configObject: BigipConfObj; - /** - * placeholder for future fully jsonified tmos config - */ - configFullObject: BigipConfObj; - /** - * tmos version of the config file - */ - tmosVersion: string | undefined; - /** - * hostname of the source device - */ - hostname: string | undefined; - /** - * input file type (.conf/.ucs/.qkview/.tar.gz) - */ - inputFileType: string; - /** - * tmos version specific regex tree for abstracting applications - */ - private rx; - /** - * corkscrew processing stats object - */ - private stats; - /** - * stats information extracted from qkview xml files - */ - deviceXmlStats: xmlStats; - /** - * default profile settings - */ - defaultProfileBase: ConfigFile; - /** - * bigip license file - */ - license: ConfigFile; - /** - * tmos file store files, which include certs/keys/external_monitors/... - */ - fileStore: ConfigFile[]; - constructor(); - /** - * - * @param file bigip .conf/ucs/qkview/mini_ucs.tar.gz - */ - loadParseAsync(file: string): Promise; - /** - * async parsing of config files - */ - parseConf(conf: ConfigFile): Promise; - parseXmlStats(file: ConfigFile): Promise; - parseExtras(files: ConfigFile[]): Promise; - parentTmosObjects(conf: ConfigFile): Promise; - /** - * parses config file for tmos version, sets tmos version specific regex tree used to parse applications - * @param x config-file object - */ - setTmosVersion(x: ConfigFile): Promise; - /** - * load .conf file or files from ucs/qkview - * - * @param config array of configs as strings - */ - load(file: string): Promise; - /** - * new parsing fuction to work on list of files from unPacker - */ - parse(): Promise; - /** - * return list of applications - * - * @return array of app names - * @example ['/Common/app1_80t_vs', '/tenant1/app4_t443_vs'] - */ - appList(): Promise; - /** - * returns all details from processing - * - * - - */ - explode(): Promise; - /** - * Get processing logs - */ - logs(): Promise; - /** - * extracts app(s) - * @param app single app string - * @return [{ name: , config: , map: }] - */ - apps(app?: string): Promise; - /** - * extract tmos config version from first line - * ex. #TMSH-VERSION: 15.1.0.4 - * @param config bigip.conf config file as string - */ - private getTMOSversion; -} diff --git a/dist/ltm.js b/dist/ltm.js deleted file mode 100644 index dd3ced0..0000000 --- a/dist/ltm.js +++ /dev/null @@ -1,496 +0,0 @@ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -/* - * Copyright 2020. F5 Networks, Inc. See End User License Agreement ("EULA") for - * license terms. Notwithstanding anything to the contrary in the EULA, Licensee - * may copy and modify this software product for its internal business purposes. - * Further, Licensee may upload, publish and distribute the modified version of - * the software product on devcentral.f5.com. - */ -'use strict'; -/* - * Copyright 2020. F5 Networks, Inc. See End User License Agreement ("EULA") for - * license terms. Notwithstanding anything to the contrary in the EULA, Licensee - * may copy and modify this software product for its internal business purposes. - * Further, Licensee may upload, publish and distribute the modified version of - * the software product on devcentral.f5.com. - */ -'use strict'; -var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { - function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } - return new (P || (P = Promise))(function (resolve, reject) { - function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } - function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } - function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); -}; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -const events_1 = require("events"); -const regex_1 = require("./regex"); -const logger_1 = __importDefault(require("./logger")); -const objects_1 = require("./utils/objects"); -const objects_2 = require("./utils/objects"); -const uuid_1 = require("uuid"); -const objCounter_1 = require("./objCounter"); -const unPacker_1 = require("./unPacker"); -const digConfigs_1 = require("./digConfigs"); -const path_1 = __importDefault(require("path")); -const unPackerStream_1 = require("./unPackerStream"); -const xml2js_1 = require("xml2js"); -const digDoClassesAuto_1 = require("./digDoClassesAuto"); -/** - * Class to consume bigip configs -> parse apps - * - */ -class BigipConfig extends events_1.EventEmitter { - constructor() { - super(); - /** - * incoming config files array - * ex. [{filename:'config/bigip.conf',size:12345,content:'...'},{...}] - */ - this.configFiles = []; - /** - * tmos config as nested json objects - * - consolidated parant object keys like ltm/apm/sys/... - */ - this.configObject = {}; - /** - * placeholder for future fully jsonified tmos config - */ - this.configFullObject = {}; - /** - * corkscrew processing stats object - */ - this.stats = { - objectCount: 0, - }; - /** - * stats information extracted from qkview xml files - */ - this.deviceXmlStats = {}; - /** - * tmos file store files, which include certs/keys/external_monitors/... - */ - this.fileStore = []; - } - /** - * - * @param file bigip .conf/ucs/qkview/mini_ucs.tar.gz - */ - loadParseAsync(file) { - return __awaiter(this, void 0, void 0, function* () { - const startTime = process.hrtime.bigint(); - // capture incoming file type - this.inputFileType = path_1.default.parse(file).ext; - const parseConfPromises = []; - const parseStatPromises = []; - const unPacker = new unPackerStream_1.UnPacker(); - unPacker.on('conf', conf => { - // parse .conf files, capture promises - parseConfPromises.push(this.parseConf(conf)); - }); - unPacker.on('stat', conf => { - // parse stats files async since they are going to thier own tree - parseStatPromises.push(this.parseXmlStats(conf)); - }); - yield unPacker.stream(file) - .then(({ files, size }) => __awaiter(this, void 0, void 0, function* () { - this.stats.sourceSize = size; - // wait for all the parse config promises to finish - yield Promise.all(parseConfPromises); - // then parse all the other non-conf files - this.parseExtras(files); - })); - // wait for all the stats files processing promises to finish - yield Promise.all(parseStatPromises); - // get ltm object counts - this.stats.objects = (0, objCounter_1.countObjects)(this.configObject); - // assign souceTmosVersion to stats object also - this.stats.sourceTmosVersion = this.tmosVersion; - // get hostname to show in vscode extension view - this.hostname = (0, digConfigs_1.getHostname)(this.configObject); - // end processing time, convert microseconds to miliseconds - this.stats.parseTime = Number(process.hrtime.bigint() - startTime) / 1000000; - return; - }); - } - /** - * async parsing of config files - */ - parseConf(conf) { - return __awaiter(this, void 0, void 0, function* () { - // add config file to tree - if (conf.fileName === 'config/profile_base.conf') { - // if default profile base, pass on parsing - logger_1.default.info(`${conf.fileName}: default profile base file, stashing for later`); - this.defaultProfileBase = conf; - return; - } - this.emit('parseFile', conf.fileName); - conf.content = conf.content.replace(/\r\n/g, '\n'); - this.configFiles.push(conf); - if (this.rx) { - // have an RX tree already so asyncronously test the file version matches - this.setTmosVersion(conf); - } - else { - // no RX tree set yet, so wait for this to finish - yield this.setTmosVersion(conf); - } - yield this.parentTmosObjects(conf) - .then(configArry => { - // add object count to stats - this.stats.objectCount = this.stats.objectCount + configArry.length; - configArry.forEach((el, index) => { - // create parsing details obj for emitter - const parsingObj = { - parsing: conf.fileName, - num: index + 1, - of: configArry.length // total # of objs - }; - this.emit('parseObject', parsingObj); - // extract object name from body - const name = el.match(this.rx.parentNameValue); - if (name && name[2]) { - // split extracted name element by spaces - const names = name[1].split(' '); - // create new nested objects with each of the names, assigning value on inner-most - const newObj = (0, objects_1.nestedObjValue)(names, name[2]); - this.configObject = (0, objects_2.deepMergeObj)(this.configObject, newObj); - } - else { - logger_1.default.error('Detected parent object, but does not have all necessary regex elements to get processed ->', el); - } - }); - }); - }); - } - parseXmlStats(file) { - return __awaiter(this, void 0, void 0, function* () { - this.emit('parseFile', file.fileName); - // was parsing all files for ALL stats, but it ends up being 100sMb of data - // so, just getting some interesting stuff for now - if (file.fileName === 'mcp_module.xml') { - yield (0, xml2js_1.parseStringPromise)(file.content) - .then(out => { - this.deviceXmlStats[file.fileName] = out; - }); - } - }); - } - parseExtras(files) { - return __awaiter(this, void 0, void 0, function* () { - // take in list of files (non-conf) - files.map(file => { - this.emit('parseFile', file.fileName); - if (file.fileName.includes('license')) { - this.license = file; - } - if (file.fileName.includes('/filestore')) { - this.fileStore.push(file); - // todo: figure out what kind of file this is and put the contents into the main config tree - } - }); - return; - }); - } - parentTmosObjects(conf) { - return __awaiter(this, void 0, void 0, function* () { - const x = []; - try { - // try to parse the config into an array - x.push(...conf.content.match(this.rx.parentObjects)); - } - catch (e) { - logger_1.default.error(`failed to extract any parent tmos matches from ${conf.fileName} - might be a scripts file...`); - return []; - } - return x; - }); - } - /** - * parses config file for tmos version, sets tmos version specific regex tree used to parse applications - * @param x config-file object - */ - setTmosVersion(x) { - return __awaiter(this, void 0, void 0, function* () { - if (this.rx) { - // rex tree already assigned, lets confirm subsequent file tmos version match - if (this.tmosVersion === this.getTMOSversion(x.content, this.rx.tmosVersion)) { - // do nothing, current file version matches existing files tmos verion - } - else { - const err = `Parsing [${x.fileName}], tmos version of this file does not match previous file [${this.tmosVersion}]`; - logger_1.default.error(err); - // throw new Error(err); - } - } - else { - // first time through - build everything - const rex = new regex_1.RegExTree(); // instantiate regex tree - this.tmosVersion = this.getTMOSversion(x.content, rex.tmosVersionReg); // get tmos version - logger_1.default.info(`Recieved .conf file of version: ${this.tmosVersion}`); - // assign regex tree for particular version - this.rx = rex.get(this.tmosVersion); - } - }); - } - /** - * load .conf file or files from ucs/qkview - * - * @param config array of configs as strings - */ - load(file) { - return __awaiter(this, void 0, void 0, function* () { - const startTime = process.hrtime.bigint(); - // capture incoming file type - this.inputFileType = path_1.default.parse(file).ext; - return yield (0, unPacker_1.unPacker)(file) - .then(files => { - this.configFiles = files; - // run through files and add up file size - this.stats.configBytes = this.configFiles.map(item => item.size).reduce((total, each) => { - return total += each; - }); - this.stats.loadTime = Number(process.hrtime.bigint() - startTime) / 1000000; - // unPacker returned something so respond with processing time - return this.stats.loadTime; - }); - }); - } - /** - * new parsing fuction to work on list of files from unPacker - */ - parse() { - return __awaiter(this, void 0, void 0, function* () { - const startTime = process.hrtime.bigint(); - logger_1.default.debug('Begining to parse configs'); - this.configFiles.forEach((el, index) => { - /** - * for each file - * 1. get tmos version - * 2. extract parent objects to array - * 3. convert array to main obj - */ - // create parsing details obj for emitter - const parsingFile = { - parsing: el.fileName, - num: index + 1, - of: this.configFiles.length // total # of files - }; - this.emit('parseFile', parsingFile); - if (/\r\n/.test(el.content)) { - el.content = el.content.replace(/\r\n/g, '\n'); - } - if (this.rx) { - // rex tree already assigned, lets confirm subsequent file tmos version match - if (this.tmosVersion === this.getTMOSversion(el.content, this.rx.tmosVersion)) { - // do nothing, current file version matches existing files tmos verion - } - else { - const err = `Parsing [${el.fileName}], tmos version of this file does not match previous file [${this.tmosVersion}]`; - logger_1.default.error(err); - // throw new Error(err); - } - } - else { - // first time through - build everything - const rex = new regex_1.RegExTree(); // instantiate regex tree - this.tmosVersion = this.getTMOSversion(el.content, rex.tmosVersionReg); // get tmos version - logger_1.default.info(`Recieved .conf file of version: ${this.tmosVersion}`); - // assign regex tree for particular version - this.rx = rex.get(this.tmosVersion); - } - let configArray = []; - try { - // try to parse the config into an array - // this is probably the heaviest processing line in the entire app - // - aside from unpacking/searching the ucs/qkviews, which can be done in other ways - // I have ideas on how we can create a better parser that would stream in the config, line by line, detect object chunks, pull them off and push them to an array - configArray = [...el.content.match(this.rx.parentObjects)]; - } - catch (e) { - logger_1.default.error('failed to extract any parent matches from file - might be a scripts file...'); - } - if (configArray) { - // get number of lines in config - // this seems to be fairly accurate when compareing config lines from other tools - // const objectCount = configArray.length; - // logger.debug(`detected ${this.stats.objectCount} parent objects in this file`) - // add object count to main stats - this.stats.objectCount += configArray.length; - logger_1.default.debug(`creating more detailed arrays/objects for deeper inspection`); - configArray.forEach((el, index) => { - // extract object name from body - const name = el.match(this.rx.parentNameValue); - if (name && name[2]) { - // create parsing details obj for emitter - const parsingObj = { - parsing: name[1], - num: index + 1, - of: configArray.length // total # of objs - }; - this.emit('parseObject', parsingObj); - // split extracted name element by spaces - const names = name[1].split(' '); - // create new nested objects with each of the names, assigning value on inner-most - const newObj = (0, objects_1.nestedObjValue)(names, name[2]); - this.configObject = (0, objects_2.deepMergeObj)(this.configObject, newObj); - } - else { - logger_1.default.error('Detected parent object, but does not have all necessary regex elements to get processed ->', el); - } - }); - } - }); - // get ltm object counts - this.stats.objects = (0, objCounter_1.countObjects)(this.configObject); - // assign souceTmosVersion to stats object also - this.stats.sourceTmosVersion = this.tmosVersion; - // get hostname to show in vscode extension view - this.hostname = (0, digConfigs_1.getHostname)(this.configObject); - // end processing time, convert microseconds to miliseconds - this.stats.parseTime = Number(process.hrtime.bigint() - startTime) / 1000000; - return this.stats.parseTime; - }); - } - /** - * return list of applications - * - * @return array of app names - * @example ['/Common/app1_80t_vs', '/tenant1/app4_t443_vs'] - */ - appList() { - var _a; - return __awaiter(this, void 0, void 0, function* () { - return Object.keys((_a = this.configObject.ltm) === null || _a === void 0 ? void 0 : _a.virtual); - }); - } - /** - * returns all details from processing - * - * - - */ - // todo: type the return object for explode and remove the followin disable line - // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types - explode() { - var _a; - return __awaiter(this, void 0, void 0, function* () { - // if config has not been parsed yet... - if (!((_a = this.configObject.ltm) === null || _a === void 0 ? void 0 : _a.virtual)) { - yield this.parse(); // parse config files - } - const apps = yield this.apps(); // extract apps before parse timer... - const startTime = process.hrtime.bigint(); // start pack timer - // extract DO classes (base information expanded) - const doClasses = yield (0, digDoClassesAuto_1.digDoConfig)(this.configObject); - // build return object - const retObj = { - id: (0, uuid_1.v4)(), - dateTime: new Date(), - hostname: this.hostname, - inputFileType: this.inputFileType, - config: { - sources: this.configFiles, - doClasses - }, - stats: this.stats, - logs: yield this.logs() // get all the processing logs - }; - if (apps.length > 0) { - // add virtual servers (apps), if found - retObj.config['apps'] = apps; - } - if (this.fileStore.length > 0) { - // add files from file store - retObj['fileStore'] = this.fileStore; - } - // capture pack time - this.stats.packTime = Number(process.hrtime.bigint() - startTime) / 1000000; - return retObj; - }); - } - /** - * Get processing logs - */ - logs() { - return __awaiter(this, void 0, void 0, function* () { - return logger_1.default.getLogs(); - }); - } - /** - * extracts app(s) - * @param app single app string - * @return [{ name: , config: , map: }] - */ - apps(app) { - return __awaiter(this, void 0, void 0, function* () { - /** - * todo: add support for app array to return multiple specific apps at same time. - */ - const startTime = process.hrtime.bigint(); - if (app) { - // extract single app config - const value = this.configObject.ltm.virtual[app]; - this.emit('extractApp', { - app, - time: Number(process.hrtime.bigint() - startTime) / 1000000 - }); - if (value) { - // dig config, then stop timmer, then return config... - const x = [yield (0, digConfigs_1.digVsConfig)(app, value, this.configObject, this.rx)]; - this.stats.appTime = Number(process.hrtime.bigint() - startTime) / 1000000; - return x; - } - } - else if (this.configObject.ltm.virtual && Object.keys(this.configObject.ltm.virtual).length > 0) { - // means we didn't get an app name, so try to dig all apps... - const apps = []; - for (const [key, value] of Object.entries(this.configObject.ltm.virtual)) { - // event about extracted app - this.emit('extractApp', { - app: key, - time: Number(process.hrtime.bigint() - startTime) / 1000000 - }); - // dig config, but catch errors - yield (0, digConfigs_1.digVsConfig)(key, value, this.configObject, this.rx) - .then(vsConfig => { - apps.push({ name: key, configs: vsConfig.config, map: vsConfig.map }); - }) - .catch(err => { - apps.push({ name: key, configs: err, map: '' }); - }); - } - this.stats.appTime = Number(process.hrtime.bigint() - startTime) / 1000000; - return apps; - } - else { - logger_1.default.info('no ltm virtual servers found - excluding apps information'); - return []; - } - }); - } - /** - * extract tmos config version from first line - * ex. #TMSH-VERSION: 15.1.0.4 - * @param config bigip.conf config file as string - */ - getTMOSversion(config, regex) { - const version = config.match(regex); - if (version) { - //found tmos version - return version[1]; - } - else { - const msg = 'tmos version not detected -> meaning this probably is not a bigip.conf'; - logger_1.default.error(msg); - // throw new Error(msg) - } - } -} -exports.default = BigipConfig; -//# sourceMappingURL=ltm.js.map \ No newline at end of file diff --git a/dist/ltm.js.map b/dist/ltm.js.map deleted file mode 100644 index 7c9bdb2..0000000 --- a/dist/ltm.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ltm.js","sourceRoot":"","sources":["../src/ltm.ts"],"names":[],"mappings":"AAAA,sEAAsE;AAEtE;;;;;;GAMG;AAEH,YAAY,CAAC;AAEb;;;;;;GAMG;AAEH,YAAY,CAAC;;;;;;;;;;;;;;AAEb,mCAAsC;AACtC,mCAAkD;AAClD,sDAA8B;AAC9B,6CAAgD;AAEhD,6CAA8C;AAC9C,+BAAoC;AACpC,6CAA4C;AAC5C,yCAAkD;AAClD,6CAAwD;AACxD,gDAAwB;AACxB,qDAA4C;AAC5C,mCAAwD;AACxD,yDAAiD;AAIjD;;;GAGG;AACH,MAAqB,WAAY,SAAQ,qBAAY;IAsDjD;QACI,KAAK,EAAE,CAAC;QAtDZ;;;WAGG;QACI,gBAAW,GAAgB,EAAE,CAAC;QACrC;;;WAGG;QACI,iBAAY,GAAiB,EAAE,CAAC;QACvC;;WAEG;QACI,qBAAgB,GAAiB,EAAE,CAAC;QAiB3C;;WAEG;QACK,UAAK,GAAU;YACnB,WAAW,EAAE,CAAC;SACjB,CAAC;QACF;;WAEG;QACH,mBAAc,GAAa,EAAE,CAAC;QAS9B;;WAEG;QACH,cAAS,GAAiB,EAAE,CAAC;IAI7B,CAAC;IAED;;;OAGG;IACG,cAAc,CAAC,IAAY;;YAC7B,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YAC1C,6BAA6B;YAC7B,IAAI,CAAC,aAAa,GAAG,cAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC;YAE1C,MAAM,iBAAiB,GAAG,EAAE,CAAC;YAC7B,MAAM,iBAAiB,GAAG,EAAE,CAAC;YAC7B,MAAM,QAAQ,GAAG,IAAI,yBAAQ,EAAE,CAAC;YAEhC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE;gBACvB,sCAAsC;gBACtC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAA;YAChD,CAAC,CAAC,CAAA;YACF,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE;gBACvB,iEAAiE;gBACjE,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAA;YACpD,CAAC,CAAC,CAAA;YAEF,MAAM,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC;iBACtB,IAAI,CAAC,CAAO,EAAC,KAAK,EAAE,IAAI,EAAC,EAAE,EAAE;gBAE1B,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,IAAI,CAAC;gBAE7B,mDAAmD;gBACnD,MAAM,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAA;gBAEpC,0CAA0C;gBAC1C,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAA;YAC3B,CAAC,CAAA,CAAC,CAAA;YAEN,6DAA6D;YAC7D,MAAM,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAA;YAEpC,wBAAwB;YACxB,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,IAAA,yBAAY,EAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAErD,+CAA+C;YAC/C,IAAI,CAAC,KAAK,CAAC,iBAAiB,GAAG,IAAI,CAAC,WAAW,CAAA;YAE/C,gDAAgD;YAChD,IAAI,CAAC,QAAQ,GAAG,IAAA,wBAAW,EAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAE/C,2DAA2D;YAC3D,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,SAAS,CAAC,GAAG,OAAO,CAAC;YAE7E,OAAO;QACX,CAAC;KAAA;IAGD;;OAEG;IACG,SAAS,CAAC,IAAgB;;YAE5B,0BAA0B;YAE1B,IAAI,IAAI,CAAC,QAAQ,KAAK,0BAA0B,EAAE;gBAC9C,2CAA2C;gBAC3C,gBAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,QAAQ,iDAAiD,CAAC,CAAA;gBAC9E,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;gBAC/B,OAAM;aACT;YAED,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAA;YAErC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;YAElD,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YAE3B,IAAI,IAAI,CAAC,EAAE,EAAE;gBACT,yEAAyE;gBACzE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAA;aAC5B;iBAAM;gBACH,iDAAiD;gBACjD,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAA;aAClC;YAID,MAAM,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC;iBAC7B,IAAI,CAAC,UAAU,CAAC,EAAE;gBAEf,4BAA4B;gBAC5B,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,UAAU,CAAC,MAAM,CAAA;gBAEnE,UAAU,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE;oBAE7B,yCAAyC;oBACzC,MAAM,UAAU,GAAG;wBACf,OAAO,EAAE,IAAI,CAAC,QAAQ;wBACtB,GAAG,EAAE,KAAK,GAAG,CAAC;wBACd,EAAE,EAAE,UAAU,CAAC,MAAM,CAAK,kBAAkB;qBAC/C,CAAA;oBAED,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,UAAU,CAAC,CAAA;oBAEpC,gCAAgC;oBAChC,MAAM,IAAI,GAAG,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,eAAe,CAAC,CAAC;oBAE/C,IAAI,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE;wBAEjB,yCAAyC;wBACzC,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;wBACjC,kFAAkF;wBAClF,MAAM,MAAM,GAAG,IAAA,wBAAc,EAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;wBAE9C,IAAI,CAAC,YAAY,GAAG,IAAA,sBAAY,EAAC,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;qBAC/D;yBAAM;wBACH,gBAAM,CAAC,KAAK,CAAC,4FAA4F,EAAE,EAAE,CAAC,CAAA;qBACjH;gBACL,CAAC,CAAC,CAAC;YACP,CAAC,CAAC,CAAA;QACV,CAAC;KAAA;IAGK,aAAa,CAAC,IAAgB;;YAEhC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAA;YAErC,2EAA2E;YAC3E,kDAAkD;YAClD,IAAI,IAAI,CAAC,QAAQ,KAAK,gBAAgB,EAAC;gBACnC,MAAM,IAAA,2BAAQ,EAAC,IAAI,CAAC,OAAO,CAAC;qBACvB,IAAI,CAAC,GAAG,CAAC,EAAE;oBACR,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,GAAG,CAAC;gBAC7C,CAAC,CAAC,CAAC;aACV;QAEL,CAAC;KAAA;IAEK,WAAW,CAAC,KAAmB;;YACjC,mCAAmC;YAEnC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;gBAEb,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAA;gBAErC,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE;oBACnC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;iBACvB;gBAED,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE;oBACtC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBAC1B,4FAA4F;iBAC/F;YACL,CAAC,CAAC,CAAA;YACF,OAAO;QAEX,CAAC;KAAA;IAEK,iBAAiB,CAAC,IAAgB;;YAGpC,MAAM,CAAC,GAAG,EAAE,CAAA;YACZ,IAAI;gBACA,wCAAwC;gBACxC,CAAC,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC;aACxD;YAAC,OAAO,CAAC,EAAE;gBACR,gBAAM,CAAC,KAAK,CAAC,kDAAkD,IAAI,CAAC,QAAQ,+BAA+B,CAAC,CAAC;gBAC7G,OAAO,EAAE,CAAA;aACZ;YAED,OAAO,CAAC,CAAC;QACb,CAAC;KAAA;IAED;;;OAGG;IACG,cAAc,CAAC,CAAa;;YAC9B,IAAI,IAAI,CAAC,EAAE,EAAE;gBACT,6EAA6E;gBAC7E,IAAI,IAAI,CAAC,WAAW,KAAK,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,EAAE;oBAC1E,sEAAsE;iBACzE;qBAAM;oBACH,MAAM,GAAG,GAAG,YAAY,CAAC,CAAC,QAAQ,8DAA8D,IAAI,CAAC,WAAW,GAAG,CAAC;oBACpH,gBAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;oBACjB,wBAAwB;iBAC3B;aACJ;iBAAM;gBAEH,wCAAwC;gBACxC,MAAM,GAAG,GAAG,IAAI,iBAAS,EAAE,CAAC,CAAE,yBAAyB;gBACvD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,OAAO,EAAE,GAAG,CAAC,cAAc,CAAC,CAAC,CAAE,mBAAmB;gBAC3F,gBAAM,CAAC,IAAI,CAAC,mCAAmC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAA;gBAElE,2CAA2C;gBAC3C,IAAI,CAAC,EAAE,GAAG,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;aACtC;QACL,CAAC;KAAA;IASD;;;;OAIG;IACG,IAAI,CAAC,IAAY;;YAEnB,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YAE1C,6BAA6B;YAC7B,IAAI,CAAC,aAAa,GAAG,cAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC;YAE1C,OAAO,MAAM,IAAA,mBAAQ,EAAC,IAAI,CAAC;iBACtB,IAAI,CAAC,KAAK,CAAC,EAAE;gBAEV,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;gBAEzB,yCAAyC;gBACzC,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;oBACpF,OAAO,KAAK,IAAI,IAAI,CAAC;gBACzB,CAAC,CAAC,CAAA;gBACF,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,SAAS,CAAC,GAAG,OAAO,CAAC;gBAE5E,8DAA8D;gBAC9D,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;YAC/B,CAAC,CAAC,CAAA;QACV,CAAC;KAAA;IAED;;OAEG;IACG,KAAK;;YACP,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YAC1C,gBAAM,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAA;YAEzC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE;gBACnC;;;;;mBAKG;gBAEH,yCAAyC;gBACzC,MAAM,WAAW,GAAG;oBAChB,OAAO,EAAE,EAAE,CAAC,QAAQ;oBACpB,GAAG,EAAE,KAAK,GAAG,CAAC;oBACd,EAAE,EAAE,IAAI,CAAC,WAAW,CAAC,MAAM,CAAQ,mBAAmB;iBACzD,CAAA;gBAED,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,CAAA;gBAEnC,IAAI,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE;oBACzB,EAAE,CAAC,OAAO,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;iBACjD;gBAED,IAAI,IAAI,CAAC,EAAE,EAAE;oBACT,6EAA6E;oBAC7E,IAAI,IAAI,CAAC,WAAW,KAAK,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,EAAE;wBAC3E,sEAAsE;qBACzE;yBAAM;wBACH,MAAM,GAAG,GAAG,YAAY,EAAE,CAAC,QAAQ,8DAA8D,IAAI,CAAC,WAAW,GAAG,CAAC;wBACrH,gBAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;wBACjB,wBAAwB;qBAC3B;iBACJ;qBAAM;oBAEH,wCAAwC;oBACxC,MAAM,GAAG,GAAG,IAAI,iBAAS,EAAE,CAAC,CAAE,yBAAyB;oBACvD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,CAAC,cAAc,CAAC,CAAC,CAAE,mBAAmB;oBAC5F,gBAAM,CAAC,IAAI,CAAC,mCAAmC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAA;oBAElE,2CAA2C;oBAC3C,IAAI,CAAC,EAAE,GAAG,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;iBACtC;gBAED,IAAI,WAAW,GAAG,EAAE,CAAC;gBACrB,IAAI;oBACA,wCAAwC;oBACxC,mEAAmE;oBACnE,wFAAwF;oBACxF,iKAAiK;oBACjK,WAAW,GAAG,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC;iBAC9D;gBAAC,OAAO,CAAC,EAAE;oBACR,gBAAM,CAAC,KAAK,CAAC,6EAA6E,CAAC,CAAC;iBAC/F;gBAGD,IAAI,WAAW,EAAE;oBAEb,gCAAgC;oBAChC,iFAAiF;oBACjF,0CAA0C;oBAC1C,iFAAiF;oBAEjF,iCAAiC;oBACjC,IAAI,CAAC,KAAK,CAAC,WAAW,IAAI,WAAW,CAAC,MAAM,CAAC;oBAE7C,gBAAM,CAAC,KAAK,CAAC,6DAA6D,CAAC,CAAA;oBAC3E,WAAW,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE;wBAE9B,gCAAgC;wBAChC,MAAM,IAAI,GAAG,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,eAAe,CAAC,CAAC;wBAE/C,IAAI,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE;4BAEjB,yCAAyC;4BACzC,MAAM,UAAU,GAAG;gCACf,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;gCAChB,GAAG,EAAE,KAAK,GAAG,CAAC;gCACd,EAAE,EAAE,WAAW,CAAC,MAAM,CAAM,kBAAkB;6BACjD,CAAA;4BAED,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,UAAU,CAAC,CAAA;4BAEpC,yCAAyC;4BACzC,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;4BACjC,kFAAkF;4BAClF,MAAM,MAAM,GAAG,IAAA,wBAAc,EAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;4BAE9C,IAAI,CAAC,YAAY,GAAG,IAAA,sBAAY,EAAC,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;yBAC/D;6BAAM;4BACH,gBAAM,CAAC,KAAK,CAAC,4FAA4F,EAAE,EAAE,CAAC,CAAA;yBACjH;oBACL,CAAC,CAAC,CAAC;iBAEN;YACL,CAAC,CAAC,CAAC;YAEH,wBAAwB;YACxB,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,IAAA,yBAAY,EAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAErD,+CAA+C;YAC/C,IAAI,CAAC,KAAK,CAAC,iBAAiB,GAAG,IAAI,CAAC,WAAW,CAAA;YAE/C,gDAAgD;YAChD,IAAI,CAAC,QAAQ,GAAG,IAAA,wBAAW,EAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAE/C,2DAA2D;YAC3D,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,SAAS,CAAC,GAAG,OAAO,CAAC;YAE7E,OAAO,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;QAChC,CAAC;KAAA;IAED;;;;;OAKG;IACG,OAAO;;;YACT,OAAO,MAAM,CAAC,IAAI,CAAC,MAAA,IAAI,CAAC,YAAY,CAAC,GAAG,0CAAE,OAAO,CAAC,CAAC;;KACtD;IAED;;;;OAIG;IACH,gFAAgF;IAChF,6EAA6E;IACvE,OAAO;;;YAET,uCAAuC;YACvC,IAAI,CAAC,CAAA,MAAA,IAAI,CAAC,YAAY,CAAC,GAAG,0CAAE,OAAO,CAAA,EAAE;gBACjC,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,qBAAqB;aAC5C;YAED,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC,CAAG,qCAAqC;YAEvE,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAE,mBAAmB;YAE/D,iDAAiD;YACjD,MAAM,SAAS,GAAG,MAAM,IAAA,8BAAW,EAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAEvD,sBAAsB;YACtB,MAAM,MAAM,GAAG;gBACX,EAAE,EAAE,IAAA,SAAM,GAAE;gBACZ,QAAQ,EAAE,IAAI,IAAI,EAAE;gBACpB,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,aAAa,EAAE,IAAI,CAAC,aAAa;gBACjC,MAAM,EAAE;oBACJ,OAAO,EAAE,IAAI,CAAC,WAAW;oBACzB,SAAS;iBACZ;gBACD,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,IAAI,EAAE,MAAM,IAAI,CAAC,IAAI,EAAE,CAAiB,8BAA8B;aACzE,CAAA;YAED,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE;gBACjB,uCAAuC;gBACvC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;aAChC;YAED,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC3B,4BAA4B;gBAC5B,MAAM,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC;aACxC;YAED,oBAAoB;YACpB,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,SAAS,CAAC,GAAG,OAAO,CAAC;YAE5E,OAAO,MAAM,CAAA;;KAChB;IAED;;OAEG;IACG,IAAI;;YACN,OAAO,gBAAM,CAAC,OAAO,EAAE,CAAC;QAC5B,CAAC;KAAA;IAGD;;;;OAIG;IACG,IAAI,CAAC,GAAY;;YAEnB;;eAEG;YAEH,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YAE1C,IAAI,GAAG,EAAE;gBACL,4BAA4B;gBAC5B,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;gBAEhD,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;oBACpB,GAAG;oBACH,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,SAAS,CAAC,GAAG,OAAO;iBAC9D,CAAC,CAAA;gBAEF,IAAI,KAAK,EAAE;oBACP,sDAAsD;oBACtD,MAAM,CAAC,GAAG,CAAC,MAAM,IAAA,wBAAW,EAAC,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;oBACtE,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,SAAS,CAAC,GAAG,OAAO,CAAA;oBAC1E,OAAO,CAAC,CAAC;iBACZ;aAEJ;iBAAM,IAAI,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;gBAE/F,6DAA6D;gBAC7D,MAAM,IAAI,GAAG,EAAE,CAAC;gBAEhB,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;oBACtE,4BAA4B;oBAC5B,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;wBACpB,GAAG,EAAE,GAAG;wBACR,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,SAAS,CAAC,GAAG,OAAO;qBAC9D,CAAC,CAAA;oBAEF,+BAA+B;oBAC/B,MAAM,IAAA,wBAAW,EAAC,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,EAAE,CAAC;yBACxD,IAAI,CAAC,QAAQ,CAAC,EAAE;wBACT,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,CAAC,MAAM,EAAE,GAAG,EAAE,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC;oBAC1E,CAAC,CAAC;yBACD,KAAK,CAAC,GAAG,CAAC,EAAE;wBACT,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC;oBACpD,CAAC,CAAC,CAAA;iBACT;gBAED,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,SAAS,CAAC,GAAG,OAAO,CAAC;gBAC3E,OAAO,IAAI,CAAC;aACf;iBAAM;gBACH,gBAAM,CAAC,IAAI,CAAC,2DAA2D,CAAC,CAAA;gBACxE,OAAO,EAAE,CAAC;aACb;QACL,CAAC;KAAA;IAID;;;;OAIG;IACK,cAAc,CAAC,MAAc,EAAE,KAAa;QAChD,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACpC,IAAI,OAAO,EAAE;YACT,oBAAoB;YACpB,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC;SACrB;aAAM;YACH,MAAM,GAAG,GAAG,wEAAwE,CAAA;YACpF,gBAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;YACjB,uBAAuB;SAC1B;IACL,CAAC;CAEJ;AAviBD,8BAuiBC"} \ No newline at end of file diff --git a/dist/models.d.ts b/dist/models.d.ts deleted file mode 100644 index a115fcc..0000000 --- a/dist/models.d.ts +++ /dev/null @@ -1,265 +0,0 @@ -/** - * object type that represends bigip.conf as multi-level json tree - */ -export declare type BigipConfObj = { - ltm?: { - virtual?: { - [key: string]: string; - }; - pool?: { - [key: string]: string; - }; - node?: { - [key: string]: string; - }; - monitor?: { - [key: string]: string; - }; - profile?: { - [key: string]: string; - }; - policy?: { - [key: string]: string; - }; - rule?: { - [key: string]: string; - }; - persistence?: { - [key: string]: string; - }; - snatpool?: { - [key: string]: string; - }; - "data-group"?: { - internal?: { - [key: string]: string; - }; - }; - ifile?: { - [key: string]: string; - }; - "virtual-address"?: { - [key: string]: string; - }; - "default-node-monitor"?: string; - }; - apm?: { - profile?: { - access?: { - [key: string]: string; - }; - }; - }; - auth?: { - partition?: unknown; - }; - net?: { - route?: unknown; - "port-list"?: unknown; - "route-domain": string; - self?: string; - "self-allow"?: string; - trunk?: string; - vlan?: string; - }; - sys?: { - "global-settings"?: string; - application?: { - service?: { - [key: string]: string; - }; - }; - "compatibility-level"?: string; - dns?: string; - file?: { - ifile?: { - [key: string]: string; - }; - "ssl-cert"?: { - [key: string]: string; - }; - "ssl-key"?: { - [key: string]: string; - }; - }; - folder?: { - [key: string]: string; - }; - httpd?: string; - icall?: { - handler?: { - periodic?: { - [key: string]: string; - }; - }; - }; - "management-dhcp"?: { - [key: string]: string; - }; - "management-route"?: { - [key: string]: string; - }; - ntp?: string; - provision?: { - [key: string]: string; - }; - snmp?: string; - software?: { - [key: string]: string; - }; - }; -}; -export declare type xmlStats = { - 'mcp_module.xml'?: { - "Qkproc": { - "admin_ip": unknown; - "system_information": unknown; - "cert_status_object": unknown; - "system_module": unknown; - "tmm_stat": unknown; - "traffic_group": unknown; - "virtual_address": unknown; - "virtual_address_stat": unknown; - "virtual_server": unknown; - "virtual_server_stat": unknown; - "interface": unknown; - "interface_stat": unknown; - "pool": unknown; - "pool_member": unknown; - "pool_member_metadata": unknown; - "pool_member_stat": unknown; - "pool_stat": unknown; - "profile_dns_stat": unknown; - "profile_http_stat": unknown; - "profile_tcp_stat": unknown; - "rule_stat": unknown; - }; - }; -}; -/** - * main explosion output - * - */ -export declare type Explosion = { - id: string; - dateTime: Date; - hostname?: string; - inputFileType: string; - config: { - sources: ConfigFile[]; - apps?: TmosApp[]; - base?: string[]; - doClasses?: string[]; - }; - stats: Stats; - fileStore?: ConfigFile[]; - logs: string[]; -}; -/** - * array item of returned "apps" - */ -export declare type TmosApp = { - name: string; - configs: string[]; - map?: AppMap; -}; -/** - * object type for each app map - * - child of explosion - */ -export declare type AppMap = { - vsDest?: string; - pool?: string[]; - irule?: { - pools?: string[] | string[][]; - virtuals?: string[]; - nodes?: string[]; - }; - policy?: { - pools?: string[]; - virtuals?: string[]; - nodes?: string[]; - }; -}; -/** - * stats object type for object counts - * - child of explosion - */ -export declare type Stats = { - configBytes?: number; - loadTime?: number; - parseTime?: number; - appTime?: number; - packTime?: number; - sourceTmosVersion?: string; - objectCount?: number; - objects?: ObjStats; - sourceSize?: number; -}; -/** - * ltm object stats - * - child of stats - child of explosion - */ -export declare type ObjStats = { - virtuals?: number; - profiles?: number; - policies?: number; - pools?: number; - irules?: number; - monitors?: number; - nodes?: number; - snatPools?: number; - apmProfiles?: number; - apmPolicies?: number; - asmPolicies?: number; -}; -export declare type TmosRegExTree = { - tmosVersion: RegExp; - parentObjects: RegExp; - parentNameValue: RegExp; - vs: { - pool: { - obj: RegExp; - members: RegExp; - nodesFromMembers: RegExp; - monitors: RegExp; - }; - profiles: { - obj: RegExp; - names: RegExp; - }; - rules: { - obj: RegExp; - names: RegExp; - }; - snat: { - obj: RegExp; - name: RegExp; - }; - ltPolicies: { - obj: RegExp; - names: RegExp; - }; - persist: { - obj: RegExp; - name: RegExp; - }; - fbPersist: RegExp; - destination: RegExp; - }; -}; -export declare type ParseResp = { - totalObjectCount: number; - ltmObjectCount: number; - lineCount: number; - parseTime: number; - fullObj: unknown; -}; -/** - * defines the structure of the archive file extraction or single bigip.conf - */ -export declare type ConfigFile = { - fileName: string; - size: number; - content: string; -}; diff --git a/dist/models.js b/dist/models.js deleted file mode 100644 index f608715..0000000 --- a/dist/models.js +++ /dev/null @@ -1,10 +0,0 @@ -/* - * Copyright 2020. F5 Networks, Inc. See End User License Agreement ("EULA") for - * license terms. Notwithstanding anything to the contrary in the EULA, Licensee - * may copy and modify this software product for its internal business purposes. - * Further, Licensee may upload, publish and distribute the modified version of - * the software product on devcentral.f5.com. - */ -'use strict'; -Object.defineProperty(exports, "__esModule", { value: true }); -//# sourceMappingURL=models.js.map \ No newline at end of file diff --git a/dist/models.js.map b/dist/models.js.map deleted file mode 100644 index 42101a7..0000000 --- a/dist/models.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"models.js","sourceRoot":"","sources":["../src/models.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,YAAY,CAAC"} \ No newline at end of file diff --git a/dist/objCounter.d.ts b/dist/objCounter.d.ts deleted file mode 100644 index a8ff266..0000000 --- a/dist/objCounter.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -import { BigipConfObj, ObjStats } from './models'; -/** - * counts up totals of the different LTM objects (vs, nodes, pools, ...) - * @param obj ltm branch of config tree - */ -export declare function countObjects(obj: BigipConfObj): ObjStats; diff --git a/dist/objCounter.js b/dist/objCounter.js deleted file mode 100644 index 7770329..0000000 --- a/dist/objCounter.js +++ /dev/null @@ -1,41 +0,0 @@ -"use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.countObjects = void 0; -/** - * counts up totals of the different LTM objects (vs, nodes, pools, ...) - * @param obj ltm branch of config tree - */ -function countObjects(obj) { - var _a, _b, _c, _d, _e, _f, _g, _h; - const stats = {}; - if ((_a = obj === null || obj === void 0 ? void 0 : obj.ltm) === null || _a === void 0 ? void 0 : _a.virtual) { - stats.virtuals = Object.keys(obj.ltm.virtual).length; - } - if ((_b = obj === null || obj === void 0 ? void 0 : obj.ltm) === null || _b === void 0 ? void 0 : _b.profile) { - // todo: dig deeper to get a better count of actaul profile numbers - // currently only returns number of parent objects which represents (tcp, ssl, http, ...), not all the keys within those objects - stats.profiles = Object.keys(obj.ltm.profile).length; - } - if ((_c = obj === null || obj === void 0 ? void 0 : obj.ltm) === null || _c === void 0 ? void 0 : _c.policy) { - stats.policies = Object.keys(obj.ltm.policy).length; - } - if ((_d = obj === null || obj === void 0 ? void 0 : obj.ltm) === null || _d === void 0 ? void 0 : _d.pool) { - stats.pools = Object.keys(obj.ltm.pool).length; - } - if ((_e = obj === null || obj === void 0 ? void 0 : obj.ltm) === null || _e === void 0 ? void 0 : _e.rule) { - stats.irules = Object.keys(obj.ltm.rule).length; - } - if ((_f = obj === null || obj === void 0 ? void 0 : obj.ltm) === null || _f === void 0 ? void 0 : _f.monitor) { - // todo: same as profiles above, dig deeper into each parent object for all the keys of the children - stats.monitors = Object.keys(obj.ltm.monitor).length; - } - if ((_g = obj === null || obj === void 0 ? void 0 : obj.ltm) === null || _g === void 0 ? void 0 : _g.node) { - stats.nodes = Object.keys(obj.ltm.node).length; - } - if ((_h = obj === null || obj === void 0 ? void 0 : obj.ltm) === null || _h === void 0 ? void 0 : _h.snatpool) { - stats.snatPools = Object.keys(obj.ltm.snatpool).length; - } - return stats; -} -exports.countObjects = countObjects; -//# sourceMappingURL=objCounter.js.map \ No newline at end of file diff --git a/dist/objCounter.js.map b/dist/objCounter.js.map deleted file mode 100644 index 80176fb..0000000 --- a/dist/objCounter.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"objCounter.js","sourceRoot":"","sources":["../src/objCounter.ts"],"names":[],"mappings":";;;AAMA;;;GAGG;AACH,SAAgB,YAAY,CAAE,GAAiB;;IAE3C,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,IAAG,MAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,GAAG,0CAAE,OAAO,EAAE;QAClB,KAAK,CAAC,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,MAAM,CAAA;KACvD;IAED,IAAG,MAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,GAAG,0CAAE,OAAO,EAAE;QAClB,mEAAmE;QACnE,gIAAgI;QAChI,KAAK,CAAC,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,MAAM,CAAA;KACvD;IAED,IAAG,MAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,GAAG,0CAAE,MAAM,EAAE;QACjB,KAAK,CAAC,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,MAAM,CAAA;KACtD;IAED,IAAG,MAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,GAAG,0CAAE,IAAI,EAAE;QACf,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,MAAM,CAAA;KACjD;IAED,IAAG,MAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,GAAG,0CAAE,IAAI,EAAE;QACf,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,MAAM,CAAA;KAClD;IAED,IAAG,MAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,GAAG,0CAAE,OAAO,EAAE;QAClB,oGAAoG;QACpG,KAAK,CAAC,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,MAAM,CAAA;KACvD;IAED,IAAG,MAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,GAAG,0CAAE,IAAI,EAAE;QACf,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,MAAM,CAAA;KACjD;IAED,IAAG,MAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,GAAG,0CAAE,QAAQ,EAAE;QACnB,KAAK,CAAC,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAA;KACzD;IAED,OAAO,KAAK,CAAC;AACjB,CAAC;AAxCD,oCAwCC"} \ No newline at end of file diff --git a/dist/pools.d.ts b/dist/pools.d.ts deleted file mode 100644 index 5307df6..0000000 --- a/dist/pools.d.ts +++ /dev/null @@ -1,26 +0,0 @@ -/** - * todo: - * - add support for virtual server destinations - * - add support for variables in brackets ${var} - */ -/** - * discovers ltm pools from irule - * - when a list of pools is provided, will only return discovered pool verified by list - * - * All pool definitions in irule need to be on thier own line!!! - * - * based off of: https://devcentral.f5.com/s/articles/irules-101-05-selecting-pools-pool-members-and-nodes - * - * @param rule irule - * @param pools (optional) list of pools on box to verify any matches - * @returns array of discovered pools in irule - */ -export declare function poolsInRule(rule: string, existingPools?: string[]): string[] | string[][]; -/** - * extracts destination pools from Local Traffic Policy - * - * No verification needed since LTPs won't reference a pool not already configured - * - * @param ltp tcl/tmos local traffic policy - */ -export declare function poolsInPolicy(ltp: string): string[]; diff --git a/dist/pools.js b/dist/pools.js deleted file mode 100644 index 224bdc1..0000000 --- a/dist/pools.js +++ /dev/null @@ -1,124 +0,0 @@ -"use strict"; -/** - * todo: - * - add support for virtual server destinations - * - add support for variables in brackets ${var} - */ -Object.defineProperty(exports, "__esModule", { value: true }); -exports.poolsInPolicy = exports.poolsInRule = void 0; -/** - * discovers ltm pools from irule - * - when a list of pools is provided, will only return discovered pool verified by list - * - * All pool definitions in irule need to be on thier own line!!! - * - * based off of: https://devcentral.f5.com/s/articles/irules-101-05-selecting-pools-pool-members-and-nodes - * - * @param rule irule - * @param pools (optional) list of pools on box to verify any matches - * @returns array of discovered pools in irule - */ -function poolsInRule(rule, existingPools) { - // const poolReg = /\n[\s]*[^#]pool\s([$/A-Za-z_][$/\w._-]+[\s\w\d.]+)/g; // regex with $var - /** - * breakdown: - * - new line - * - optional spaces - * - exclude match if # found - * - "pool " - * - object name starting with [/A-Za-z_] - * - rest of the object name (can now include numbers...): [/\w._-]+ - * - followed my any space/word/digit - */ - const poolReg = /\n[\s]*[^#]pool\s([/A-Za-z_][/\w._-]+[\s\w\d.]+)/g; - const rawPools = rule.match(poolReg); - // let newPools: string[][]; // array of strings or arrays with strings - // let newPools: ((string | undefined)[] | undefined)[]; // array of strings or arrays with strings - let newPools; // array of strings or arrays with strings - // let newPools: Array; // array of strings or arrays with strings - if (!rawPools) { - return; // no pools detected in iRule - } - // var something = ''; // = undefined | null? - newPools = rawPools.map(item => { - item = item.trim(); // trim leading and trailing space - item = item.replace('pool ', ''); // trim leading "pool " - if (/\s/.test(item)) { - /** - * If there is a space in the item, it means we have a - * detailed member specific pool destination - * takes this: "jpg.pool member 10.10.10.1 80" - * to this: ['jpg.pool', 'member', '10.10.10.1', '80'] - */ - return item.split(" "); - // newPools.push(item.split("")); - // } else if (item.includes("$")) { - // /** - // * this section was an attempt to discover if the pool reference was a variable, and if a variable, then try to find what that variable was assigned. This led to unpredictable results with big complicated irules, so for now, removing, will look into searching the irule for a list of known object names like pools/datagroups instead of using regex to identify them (search irule for every KNOWN pool name) - // */ - // item = item.replace('$', ''); // remove leading '$' - // /** - // * the mateched pool destination is a variable, so - // * search the irule again, looking for that variable definition - // * - will return last match after cleaning - // */ - // const regx = new RegExp("\\n[\\s]*[^#]set\\s" + item + "\\s(.+?)\\s", "g"); - // // look for item in orginal irule, if found, return last match - // // let poolVar = rule.match(regx); - // let poolVar = rule.match(regx)?.pop(); - // if(poolVar) { - // poolVar = poolVar.trim(); // trim leading/ending whitespace - // // poolVar = poolVar[0].replace(/^\s+|\s+$/g, ''); // regex method - // // split on spaces, return last element - // // "set html-pool web1Pool" -> web1Pool - // return [poolVar.split(" ").pop()]; - // } - } - else { - return [item]; - } - }); - /** - * if a list of pools was provided as input, return only items contained in pool list - * - * This may not be necessary since tmos won't let you associate an irule that reference - * a pool that doesn't exist. You can create it, but not assign it to a virtual - * - */ - if (existingPools && newPools) { - // existing pool list detected - newPools = newPools.filter(el => { - if (existingPools.includes(el[0])) { - return el; - } - }); - return newPools; - } - else { - // no verifcation list, so just return list - return newPools; - } -} -exports.poolsInRule = poolsInRule; -/** - * extracts destination pools from Local Traffic Policy - * - * No verification needed since LTPs won't reference a pool not already configured - * - * @param ltp tcl/tmos local traffic policy - */ -function poolsInPolicy(ltp) { - const poolReg = /\n[\s]*pool\s(.+?)\s/g; - const rawPools = ltp.match(poolReg); - if (!rawPools) { - return; - } - const newPools = rawPools.map(item => { - item = item.replace('pool ', ''); // trim leading "pool " - item = item.trim(); // trim leading/ending whitespace - return item; - }); - return newPools; -} -exports.poolsInPolicy = poolsInPolicy; -//# sourceMappingURL=pools.js.map \ No newline at end of file diff --git a/dist/pools.js.map b/dist/pools.js.map deleted file mode 100644 index a5011dc..0000000 --- a/dist/pools.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"pools.js","sourceRoot":"","sources":["../src/pools.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAIH;;;;;;;;;;;GAWG;AACH,SAAgB,WAAW,CAAE,IAAY,EAAE,aAAwB;IAC/D,6FAA6F;IAC7F;;;;;;;;;OASG;IACH,MAAM,OAAO,GAAG,mDAAmD,CAAC;IAEpE,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACrC,uEAAuE;IACvE,mGAAmG;IACnG,IAAI,QAA+B,CAAC,CAAC,0CAA0C;IAC/E,sFAAsF;IAEtF,IAAG,CAAC,QAAQ,EAAE;QACV,OAAO,CAAC,6BAA6B;KACxC;IAED,8CAA8C;IAE9C,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAE,IAAI,CAAC,EAAE;QAC5B,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,CAAK,kCAAkC;QAC1D,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAG,uBAAuB;QAE3D,IAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAC;YAEf;;;;;eAKG;YACH,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACvB,iCAAiC;YAErC,mCAAmC;YAEnC,MAAM;YACN,yZAAyZ;YACzZ,MAAM;YAEN,4DAA4D;YAE5D,UAAU;YACV,yDAAyD;YACzD,sEAAsE;YACtE,kDAAkD;YAClD,UAAU;YACV,kFAAkF;YAElF,qEAAqE;YACrE,yCAAyC;YACzC,6CAA6C;YAC7C,oBAAoB;YACpB,wEAAwE;YACxE,8EAA8E;YAE9E,kDAAkD;YAClD,kDAAkD;YAClD,6CAA6C;YAC7C,QAAQ;SACP;aAAM;YACH,OAAO,CAAC,IAAI,CAAC,CAAC;SACjB;IACL,CAAC,CAAC,CAAC;IAGH;;;;;;OAMG;IACH,IAAG,aAAa,IAAI,QAAQ,EAAE;QAC1B,8BAA8B;QAC9B,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAE,EAAE,CAAC,EAAE;YAC7B,IAAG,aAAa,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE;gBAC9B,OAAO,EAAE,CAAC;aACb;QACL,CAAC,CAAC,CAAA;QACF,OAAO,QAAQ,CAAC;KAEnB;SAAM;QACH,2CAA2C;QAC3C,OAAO,QAAQ,CAAC;KACnB;AACL,CAAC;AA7FD,kCA6FC;AAED;;;;;;GAMG;AACH,SAAgB,aAAa,CAAE,GAAW;IAEtC,MAAM,OAAO,GAAG,uBAAuB,CAAC;IAExC,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAEpC,IAAG,CAAC,QAAQ,EAAC;QACT,OAAO;KACV;IAED,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAE,IAAI,CAAC,EAAE;QAClC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAG,uBAAuB;QAC3D,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,CAAG,iCAAiC;QACvD,OAAO,IAAI,CAAC;IAChB,CAAC,CAAC,CAAC;IAEH,OAAO,QAAQ,CAAC;AACpB,CAAC;AAjBD,sCAiBC"} \ No newline at end of file diff --git a/dist/regex.d.ts b/dist/regex.d.ts deleted file mode 100644 index b50710a..0000000 --- a/dist/regex.d.ts +++ /dev/null @@ -1,101 +0,0 @@ -/** - * Regex Tree used for searching configs - */ -export declare class RegExTree { - /** - * extracts tmos version at beginning of bigip.conf - */ - tmosVersionReg: RegExp; - /** - * captures name and body from single tmos object - * if match, returns object name in [1] object value in [2] - * 1/23/2021 - now includes capture groups - * - name = tmos object name - * - body = tmos object body - */ - private parentNameValueRegex; - /** - * Parent tmos object regex - * Extracts each parent tmos object starting with - * (apm|ltm|security|net|pem|sys|wom|ilx|auth|analytics|wom), - * then "{" and ending "}" just before next partent object - */ - private parentObjectsRegex; - /** - * vs detail regexs - */ - private poolRegex; - private profilesRegex; - private rulesRegex; - private snatRegex; - private ltPoliciesRegex; - private persistRegex; - private fallBackPersistRegex; - private destination; - /** - * pool detail regexs - */ - private poolMembersRegex; - private poolNodesFromMembersRegex; - private poolMonitorsRegex; - /** - * profiles - */ - private profileNamesRegex; - private snatNameRegex; - private ruleNamesRegex; - private ltpNamesRegex; - private persistNameRegex; - /** - * base regex tree for extracting tmos config items - */ - private regexTree; - constructor(); - /** - * Return updated base regex tree depending on version config differences - * - * @param tmosVersion - */ - get(tmosVersion?: string): TmosRegExTree; -} -/** - * combines multi-line commented regex final regex - * @param regs regex pieces in array - * @param opts regex options (g/m/s/i/y/u/s) - */ -export declare function multilineRegExp(regs: RegExp[], opts: string): RegExp; -export declare type TmosRegExTree = { - tmosVersion: RegExp; - parentObjects: RegExp; - parentNameValue: RegExp; - vs: { - pool: { - obj: RegExp; - members: RegExp; - nodesFromMembers: RegExp; - monitors: RegExp; - }; - profiles: { - obj: RegExp; - names: RegExp; - }; - rules: { - obj: RegExp; - names: RegExp; - }; - snat: { - obj: RegExp; - name: RegExp; - }; - ltPolicies: { - obj: RegExp; - names: RegExp; - }; - persist: { - obj: RegExp; - name: RegExp; - }; - fbPersist: RegExp; - destination: RegExp; - }; -}; diff --git a/dist/regex.js b/dist/regex.js deleted file mode 100644 index 3e9536b..0000000 --- a/dist/regex.js +++ /dev/null @@ -1,167 +0,0 @@ -"use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.multilineRegExp = exports.RegExTree = void 0; -const logger_1 = __importDefault(require("./logger")); -// /** -// * This file servers as the central place for all regex's, we'll call it a regex tree -// * -// * The idea here is to create a base regex object tree, based on v14/v15 code -// * if/when any changes in config structure that require tweaks to the regex tree -// * only those changes will need to be configured in a tree for each respective -// * configuration deviatione (ex v16), then merged with the default/base regex tree -// * -// * Need to find a better way to do regex's across the package. The regular "match", -// * on string function works, but also returns the entire full match in [0], then -// * capture groups as nested array on [1]. -// * - I know there is plenty of improvements to be made by only returning the match capture group [1] -// * - and defining better capture groups (probably include lookarounds) -// * -// * Need to also look into if .matchAll will help. Seems to be available in NodeJS, -// * only in ECMA2020 TypeScript -// */ -/** - * Regex Tree used for searching configs - */ -class RegExTree { - constructor() { - /** - * extracts tmos version at beginning of bigip.conf - */ - this.tmosVersionReg = /#TMSH-VERSION: (\d.+)/; - /** - * captures name and body from single tmos object - * if match, returns object name in [1] object value in [2] - * 1/23/2021 - now includes capture groups - * - name = tmos object name - * - body = tmos object body - */ - this.parentNameValueRegex = /^(?[ \w\-\/.]+) {(?([\s\S]+| ))}(\n)$/; - /** - * Parent tmos object regex - * Extracts each parent tmos object starting with - * (apm|ltm|security|net|pem|sys|wom|ilx|auth|analytics|wom), - * then "{" and ending "}" just before next partent object - */ - this.parentObjectsRegex = multilineRegExp([ - // parent level object beginnings with trailing space - /(apm|ltm|security|net|pem|sys|wom|ilx|auth|analytics|wom) /, - // include any child object definitions and object name - /[ \w\-\/.]+/, - // capture single line data or everything till "\n}\n" - /({.*}\n|{[\s\S]+?\n}\n)/, - // look forward to capture the last "}" before the next parent item name - /(?=(apm|ltm|security|net|pem|sys|wom|ilx|auth|analytics|wom))/ - ], 'g'); - /** - * vs detail regexs - */ - //following regex will get pool, but not snat pool from vs config - this.poolRegex = /(? 19000) { - logger_1.default.error('>v19.0.0.0 tmos detected - this should never happen!!!'); - this.regexTree.vs.fbPersist = /new-fallBackPersist-regex/; - this.regexTree.vs.pool.obj = /new-pool-regex/; - } - if (x < 12000) { - logger_1.default.error(' reg.source).join(''), opts); -} -exports.multilineRegExp = multilineRegExp; -/** - * returns full number without decimals so it can be compared - * @param ver tmos version in full x.x.x.x format - */ -function removeVersionDecimals(ver) { - return parseInt(ver.replace(/\./g, '')); -} -// const regexTree = new RegExTree(); -// export default regexTree; -//# sourceMappingURL=regex.js.map \ No newline at end of file diff --git a/dist/regex.js.map b/dist/regex.js.map deleted file mode 100644 index 0cb53ef..0000000 --- a/dist/regex.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"regex.js","sourceRoot":"","sources":["../src/regex.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/tmos2json.d.ts b/dist/tmos2json.d.ts deleted file mode 100644 index 689f11b..0000000 --- a/dist/tmos2json.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -/** - * - * @param cfg child config to parse - * @param obj used to iterate - */ -export declare function tmosChildToObj(cfg: string, obj?: unknown): unknown; diff --git a/dist/tmos2json.js b/dist/tmos2json.js deleted file mode 100644 index b0cdbf0..0000000 --- a/dist/tmos2json.js +++ /dev/null @@ -1,161 +0,0 @@ -"use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.tmosChildToObj = void 0; -const balanced_match_1 = __importDefault(require("balanced-match")); -const logger_1 = __importDefault(require("./logger")); -// /** -// * search object for nested value, return path to value -// * -// * Initial goal for this is to find all the final children -// * values that have not been coverted to json -// * if they include a line return "\n", crawl them till they -// * are converted to json -// * -// * Other than irules/datagroups, everything shouldn't have a LR -// * -// * @param obj -// * @param val -// */ -// export function getPathFromValue(obj: any, val: string) { -// // asdf -// } -/** - * - * @param cfg child config to parse - * @param obj used to iterate - */ -function tmosChildToObj(cfg, obj) { - /** - * input tmos parent object body - * (ex. ltm virtual { <...everything_here...> }) - * - * 1. capture single line 'key': 'value' pairs - * (ex 'destination /Common/192.168.1.51:8443') - * 2. capture lists - * (ex ) - * - */ - // used for iteration in the future - obj = obj ? obj : {}; - const startingCfg = cfg; - /** - * loop through each of the objects - * remove the match, check if "{}" in match - * If bracket, re-iterate tmosChildtoObj to convert to child object - * if no brackets, split each new line - * split each new line - * if two elements in array, set key/value pair - * if >2 el in array, set value as array - */ - // while this part of the config has brackets... - while (/{/.test(cfg)) { - const blncd = (0, balanced_match_1.default)('{', '}', cfg); - if (blncd) { - // get line up to first '{' - const name = blncd.pre; - const name2 = name.split(/\n/).pop().trim(); - const body = blncd.body; - /** - * does body include: - * if {} = means it's another object - * - */ - const xx = body.trim().includes('\n'); - if (body.includes('{') || body === ' ') { - // it's a nested object, put in body for next round - const rebuiltObj = `${name2} {${body}}`; - cfg = cfg.replace(rebuiltObj, ''); - obj[name2] = body; - } - else if (body.trim().includes('\n')) { - //regex single-line key-value pairs - const singleLineKVpairsRegex = /([\w-]+) (.+)/g; - const childKVpair = cfg.match(singleLineKVpairsRegex); - if (childKVpair) { - childKVpair.forEach(el2 => { - // remove items as we convert them - cfg = cfg.replace(el2, ''); - const [key, val] = el2.split(' '); - obj[key] = val; - }); - } - // // split on line returns - // const body2 = body.split('\n'); - // // check each line for spaces - // body2.forEach(el => { - // const line = el.split(' '); - // if (line.length > 1) { - // } - // }); - } - else if (body.trim().includes(' ')) { - const keyVal = body.split(' '); - obj[keyVal[0]] = keyVal[1]; - cfg = cfg.replace(body, ''); - } - else { - // no line returns, split on spaces return array - const arr1 = body.trim().split(' '); - obj[name2] = arr1; - const rebuiltObj = `${name2} {${body}}`; - cfg = cfg.replace(rebuiltObj, ''); - } - // const cfg2 = cfg; - } - } - // const childObjectsRegex = /([\w\-.]+) {\n([\s\S]+?)\n }/ - // const childObjects = cfg.match(childObjectsRegex); - // // parsing child objects and removing - // if (childObjects && childObjects.length === 3) { - // childObjects.forEach(el => { - // // if(el.includes('{')) { - // // // const objName = el.match(/\s([\w\-.]+) {/)[1] - // // // const objBody = el.match(/\s([ \w\-.]+) {\n([\s\S]+?)\n }/) - // // if (objName) { - // // obj[objName] = objBody; - // // } - // // } - // cfg = cfg.replace(el, ''); - // obj[childObjects[1]] = childObjects[2] - // }); - // } - // const childObjectsSLRegex = /[\/ \w\-.]+ {(.+?)}/g - // const childObjectsSL = cfg.match(childObjectsSLRegex); - // if(childObjectsSL) { - // childObjectsSL.forEach(el => { - // cfg = cfg.replace(el, ''); - // const objName = el.match(/([\w\-.]+) {/)[1] - // obj[objName] = '' - // }) - // } - const singleLineKVpairsRegex = /([\w-]+) (.+)/g; - const childKVpair = cfg.match(singleLineKVpairsRegex); - if (childKVpair) { - childKVpair.forEach(el2 => { - // remove items as we convert them - cfg = cfg.replace(el2, ''); - const [key, val] = el2.split(' '); - obj[key] = val; - }); - } - // /** - // * down here, we didn't detect any objects "{}", - // * nor single line key: value pair (namevalue) - // * it must be a list, so lets see what kind of list it is - // */ - // if (cfg.trim().includes('\n')) { - // // - // } - // split on lines - const regex = new RegExp(/\S/); // any non-white space characters - if (regex.test(cfg)) { - logger_1.default.error('parsing child object has leftover config:', cfg); - logger_1.default.error('parsing child object original config:', startingCfg); - } - return obj; -} -exports.tmosChildToObj = tmosChildToObj; -//# sourceMappingURL=tmos2json.js.map \ No newline at end of file diff --git a/dist/tmos2json.js.map b/dist/tmos2json.js.map deleted file mode 100644 index 6dbc35b..0000000 --- a/dist/tmos2json.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"tmos2json.js","sourceRoot":"","sources":["../src/tmos2json.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/tmosParse2.d.ts b/dist/tmosParse2.d.ts deleted file mode 100644 index 81fd71d..0000000 --- a/dist/tmosParse2.d.ts +++ /dev/null @@ -1,23 +0,0 @@ -/// -import { EventEmitter } from 'events'; -import { ConfigFiles } from './unPacker'; -export declare class Parser extends EventEmitter { - objectCount: number; - tmosVersion: string; - rx: any; - configObject: unknown; - parseTime: number; - constructor(); - loadParse(files: ConfigFiles): { - parseTime: number; - objectCount: number; - objects: import("./models").ObjStats; - configObject: unknown; - }; - /** - * new parsing function to extract from main ltm class and add events for progress - * - * This is the latest work as of 10.11.2020 - */ - private parse; -} diff --git a/dist/tmosParse2.js b/dist/tmosParse2.js deleted file mode 100644 index 9765786..0000000 --- a/dist/tmosParse2.js +++ /dev/null @@ -1,121 +0,0 @@ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -'use strict'; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.Parser = void 0; -const events_1 = require("events"); -const logger_1 = __importDefault(require("./logger")); -const objCounter_1 = require("./objCounter"); -const regex_1 = require("./regex"); -const objects_1 = require("./utils/objects"); -class Parser extends events_1.EventEmitter { - constructor() { - super(); - } - loadParse(files) { - return this.parse(files); - } - /** - * new parsing function to extract from main ltm class and add events for progress - * - * This is the latest work as of 10.11.2020 - */ - parse(files) { - const startTime = process.hrtime.bigint(); - logger_1.default.debug('Begining to parse configs'); - let objectCount = 0; - this.emit('parseStart', 'starting to parse stuff'); - files.forEach((el, index) => { - // for each file - // 1. get tmos version - // 2. extract parent objects to array - // 3. convert array to main obj - // create parsing details obj for emitter - const parsing = { - parsing: el.fileName, - num: index + 1, - of: files.length // total # of files - }; - this.emit('parseFile', parsing); - if (this.rx) { - // rex tree already assigned, lets confirm subsequent file tmos version match - if (this.tmosVersion === getTMOSversion(el.content, this.rx.tmosVersion)) { - // do nothing, current file version matches existing files tmos verion - } - else { - logger_1.default.error(`Parsing [${el.fileName}], tmos version of this file does not match previous file [${this.tmosVersion}]`); - return; - } - } - else { - // first time through - get initial rex tree - const rex = new regex_1.RegExTree(); // instantiate regex tree - this.tmosVersion = getTMOSversion(el.content, rex.tmosVersionReg); // get tmos version - logger_1.default.info(`Recieved .conf file of version: ${this.tmosVersion}`); - // assign regex tree for particular version - this.rx = rex.get(this.tmosVersion); - } - let configArray = []; - try { - // try to parse the config into an array - configArray = [...el.content.match(this.rx.parentObjects)]; - } - catch (e) { - logger_1.default.error('failed to extract any parent matches from file - might be a scripts/iapps file...'); - } - // if we parsed a config file that produced parent objects - if (configArray) { - // get number of config objects - const lines = configArray.length; - logger_1.default.debug(`detected ${lines} parent objects in this file`); - // add to main stats - objectCount += lines; - logger_1.default.debug(`creating more detailed arrays/objects for deeper inspection`); - configArray.forEach(el => { - // emit events about each object being parsed - // extract object name from body - const name = el.match(this.rx.parentNameValue); - if (name && name.length === 3) { - // split extracted name element by spaces - const names = name[1].split(' '); - // create new nested objects with each of the names, assigning value on inner-most - const newObj = (0, objects_1.nestedObjValue)(names, name[2]); - this.configObject = (0, objects_1.deepMergeObj)(this.configObject, newObj); - } - }); - } - }); - // get ltm object counts - const objects = (0, objCounter_1.countObjects)(this.configObject); - // end processing time, convert microseconds to miliseconds - const parseTime = Number(process.hrtime.bigint() - startTime) / 1000000; - this.emit('parseEnd', `we done finished, took ${this.parseTime}ms`); - return { - parseTime, - objectCount, - objects, - configObject: this.configObject - }; - } -} -exports.Parser = Parser; -/** - * extract tmos config version from first line - * ex. #TMSH-VERSION: 15.1.0.4 - * @param config bigip.conf config file as string - */ -function getTMOSversion(config, regex) { - const version = config.match(regex); - if (version) { - //found tmos version - return version[1]; - } - else { - const msg = 'tmos version not detected -> meaning this probably is not a bigip.conf'; - logger_1.default.error(msg); - throw new Error(msg); - } -} -//# sourceMappingURL=tmosParse2.js.map \ No newline at end of file diff --git a/dist/tmosParse2.js.map b/dist/tmosParse2.js.map deleted file mode 100644 index 007ac7d..0000000 --- a/dist/tmosParse2.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"tmosParse2.js","sourceRoot":"","sources":["../src/tmosParse2.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/tmosParser.d.ts b/dist/tmosParser.d.ts deleted file mode 100644 index d4fbdcf..0000000 --- a/dist/tmosParser.d.ts +++ /dev/null @@ -1,20 +0,0 @@ -import { ParseResp } from './models'; -/** - * turns tmos config file parent objects to json tree - * *** the original parse function in the main ltm config - * is still better than this*** - * Not only is it about 20% faster, but it is also able - * to convert all parent objects - * - * I presume this is becuase the objects get staged in an array - * before conversion and merging into the tree - * - * @param config tmos config as a string - */ -export declare function parseTmosConfig(config: string): ParseResp; -/** - * approximate number of lines in config - * - not sure how it handles line returns in health monitors and irules - * @param config tmos config file - */ -export declare function countLines(config: string): number; diff --git a/dist/tmosParser.js b/dist/tmosParser.js deleted file mode 100644 index fc9d398..0000000 --- a/dist/tmosParser.js +++ /dev/null @@ -1,101 +0,0 @@ -"use strict"; -// import { } from './utils/objects' -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.countLines = exports.parseTmosConfig = void 0; -const balanced_match_1 = __importDefault(require("balanced-match")); -const objects_1 = require("./utils/objects"); -/** - * turns tmos config file parent objects to json tree - * *** the original parse function in the main ltm config - * is still better than this*** - * Not only is it about 20% faster, but it is also able - * to convert all parent objects - * - * I presume this is becuase the objects get staged in an array - * before conversion and merging into the tree - * - * @param config tmos config as a string - */ -function parseTmosConfig(config) { - const startTime = process.hrtime.bigint(); - let totalObjectCount = 0; - let ltmObjectCount = 0; - const lineCount = countLines(config); - let parsingCfg = config; - let fullObj = {}; - // remove first line for tmos config version - parsingCfg = parsingCfg.replace(/#TMSH-VERSION: (\d.+)/, ''); - // just picked a number, should be adjusted as we go - if (lineCount > 10000) { - /** - * find the index of the first '\nltm ' object, then rip out - * everything up to that so we don't have to keep searching - * through it - */ - const firstLtm = parsingCfg.match(/\nltm /); - parsingCfg = parsingCfg.slice(firstLtm.index); - while (/\nltm .+?{/.test(parsingCfg)) { - const blncd = (0, balanced_match_1.default)('{', '}', parsingCfg); - if (blncd) { - // extract object name from bracket match pre-text - const parentObjName = blncd.pre.trim().split(' '); - // create new nested object with name/paths and body - const newObj = (0, objects_1.nestedObjValue)(parentObjName, blncd.body); - // merge new object back into main objects tree - fullObj = (0, objects_1.deepMergeObj)(fullObj, newObj); - // fullObj = simpleMergeDeep(fullObj, newObj); - // rebuild object we are extracting from config file - const rebuiltObj = `${parentObjName.join(' ')} {${blncd.body}}`; - // remove object from config file - parsingCfg = parsingCfg.replace(rebuiltObj, ''); - // trim leading and trailing white space - parsingCfg = parsingCfg.trim(); - ltmObjectCount++; - } - } - } - else { - while (/{/.test(parsingCfg)) { - const blncd = (0, balanced_match_1.default)('{', '}', parsingCfg); - if (blncd) { - // extract object name from bracket match pre-text - const parentObjName = blncd.pre.trim().split(' '); - // create new nested object with name/paths and body - const newObj = (0, objects_1.nestedObjValue)(parentObjName, blncd.body); - // merge new object back into main objects tree - fullObj = (0, objects_1.deepMergeObj)(fullObj, newObj); - // fullObj = simpleMergeDeep(fullObj, newObj); - // rebuild object we are extracting from config file - const rebuiltObj = `${parentObjName.join(' ')} {${blncd.body}}`; - // remove object from config file - parsingCfg = parsingCfg.replace(rebuiltObj, ''); - // trim leading and trailing white space - parsingCfg = parsingCfg.trim(); - // increment object counter - totalObjectCount++; - } - } - } - const parseTime = Number(process.hrtime.bigint() - startTime) / 1000000; - return { - totalObjectCount, - ltmObjectCount, - lineCount, - parseTime, - fullObj - }; -} -exports.parseTmosConfig = parseTmosConfig; -/** - * approximate number of lines in config - * - not sure how it handles line returns in health monitors and irules - * @param config tmos config file - */ -function countLines(config) { - return config.split(/\r\n|\n/).length; -} -exports.countLines = countLines; -//# sourceMappingURL=tmosParser.js.map \ No newline at end of file diff --git a/dist/tmosParser.js.map b/dist/tmosParser.js.map deleted file mode 100644 index 8241d5e..0000000 --- a/dist/tmosParser.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"tmosParser.js","sourceRoot":"","sources":["../src/tmosParser.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/unPacker.d.ts b/dist/unPacker.d.ts deleted file mode 100644 index 3b8e51b..0000000 --- a/dist/unPacker.d.ts +++ /dev/null @@ -1,13 +0,0 @@ -/** - * defines the structure of the archive file extraction or single bigip.conf - */ -export declare type ConfigFiles = { - fileName: string; - size: number; - content: string; -}[]; -/** - * extracts needed config files from archive - * @param input path/file to .conf|.ucs|.qkview|.gz - */ -export declare function unPacker(input: string): Promise; diff --git a/dist/unPacker.js b/dist/unPacker.js deleted file mode 100644 index 9cda5ee..0000000 --- a/dist/unPacker.js +++ /dev/null @@ -1,135 +0,0 @@ -/* - * Copyright 2020. F5 Networks, Inc. See End User License Agreement ("EULA") for - * license terms. Notwithstanding anything to the contrary in the EULA, Licensee - * may copy and modify this software product for its internal business purposes. - * Further, Licensee may upload, publish and distribute the modified version of - * the software product on devcentral.f5.com. - */ -'use strict'; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { - function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } - return new (P || (P = Promise))(function (resolve, reject) { - function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } - function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } - function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); -}; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.unPacker = void 0; -const path_1 = __importDefault(require("path")); -const fs = __importStar(require("fs")); -const logger_1 = __importDefault(require("./logger")); -const decompress_1 = __importDefault(require("decompress")); -/** - * extracts needed config files from archive - * @param input path/file to .conf|.ucs|.qkview|.gz - */ -function unPacker(input) { - return __awaiter(this, void 0, void 0, function* () { - /** - * look at streaming specific files from the archive without having to load the entire thing into memory - * - * https://github.com/mafintosh/tar-fs - * https://github.com/mafintosh/gunzip-maybe - * https://github.com/mafintosh/tar-stream - * https://github.com/npm/node-tar#readme - * - * https://stackoverflow.com/questions/19978452/how-to-extract-single-file-from-tar-gz-archive-using-node-js - * - */ - // parse input to usable pieces - const filePath = path_1.default.parse(input); - /** - * what kind of file we workin with? - */ - if (filePath.ext === '.conf') { - try { - // get file size - const size = fs.statSync(path_1.default.join(filePath.dir, filePath.base)).size; - // try to read file contents - const content = fs.readFileSync(path_1.default.join(filePath.dir, filePath.base), 'utf-8'); - logger_1.default.debug(`got .conf file [${input}], size [${size}]`); - return [{ fileName: filePath.base, size, content }]; - } - catch (e) { - logger_1.default.error('not able to read file', e.message); - throw new Error(`not able to read file => ${e.message}`); - } - } - else if (filePath.ext === '.gz' || filePath.ext === '.ucs' || filePath.ext === '.qkview') { - const size = fs.statSync(path_1.default.join(filePath.dir, filePath.base)).size; - logger_1.default.debug(`detected file: [${input}], size: [${size}]`); - return yield (0, decompress_1.default)(input, { - filter: file => archiveFileFilter(file) - // filter: file => (fileFilter(file.path) && file.type === 'file') - }) - .then(extracted => { - return extracted.map(x => { - return { fileName: x.path, size: x.data.byteLength, content: x.data.toString() }; - }); - }); - } - else { - const msg = `file type of "${filePath.ext}", not supported, try (.conf|.ucs|.kqview|.gz)`; - logger_1.default.error(msg); - throw new Error(`not able to read file => ${msg}`); - } - }); -} -exports.unPacker = unPacker; -/** - * filter for decompress function that filters files we want - * @param file decompress file output - * @param boolean if file match -> return (pass filter) - */ -function archiveFileFilter(file) { - /** - * I'm sure this could be done waaay cleaner, but I figured this was a nice way - * to spell it out for others - * - * When these return true for the item passed in, it means the filter will return it - * - */ - if (/^config\/bigip.conf$/.test(file.path) && file.type === 'file') { - return true; - } - if (/^config\/bigip_base.conf$/.test(file.path) && file.type === 'file') { - return true; - } - if (/^config\/partitions\/.+?$/.test(file.path) && file.type === 'file') { - return true; - } - // added these with the unPackerStream creation, but then realized that down stream functions of this flow will not be able to handle the new files - // if (/^config\/bigip_gtm.conf$/.test(file.path) && file.type === 'file') { return true } - // if (/^config\/bigip.license$/.test(file.path) && file.type === 'file') { return true } - // if (/^config\/profile_base.conf$/.test(file.path) && file.type === 'file') { return true } - // if (/^var\/tmp\/filestore_temp\/files_d\/.+?$/.test(file.path) && file.type === 'file') { return true } -} -//# sourceMappingURL=unPacker.js.map \ No newline at end of file diff --git a/dist/unPacker.js.map b/dist/unPacker.js.map deleted file mode 100644 index 131e8ad..0000000 --- a/dist/unPacker.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"unPacker.js","sourceRoot":"","sources":["../src/unPacker.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/unPackerStream.d.ts b/dist/unPackerStream.d.ts deleted file mode 100644 index b19fa48..0000000 --- a/dist/unPackerStream.d.ts +++ /dev/null @@ -1,28 +0,0 @@ -/// -import { EventEmitter } from "events"; -import { ConfigFile } from "./models"; -/** - * async method for extracting config files from archives - * - .conf files are emited as "conf" events - * - all other config files are return at promise resolution - * - */ -export declare class UnPacker extends EventEmitter { - constructor(); - /** - * extracts needed config files from archive - * - .conf files are emited as events during extraction so they can be parsed asyncronously - * - all other files returned at end in promise completion to be added to the conf tree - * @param input path/file to .conf|.ucs|.qkview|.gz - */ - stream(input: string): Promise<{ - files: ConfigFile[]; - size: number; - }>; -} -/** - * filters files we want - * @param file name as string - * @param boolean if file match -> return (pass filter) - */ -export declare function fileFilter(name: string): boolean; diff --git a/dist/unPackerStream.js b/dist/unPackerStream.js deleted file mode 100644 index ad7f152..0000000 --- a/dist/unPackerStream.js +++ /dev/null @@ -1,241 +0,0 @@ -/* - * Copyright 2020. F5 Networks, Inc. See End User License Agreement ("EULA") for - * license terms. Notwithstanding anything to the contrary in the EULA, Licensee - * may copy and modify this software product for its internal business purposes. - * Further, Licensee may upload, publish and distribute the modified version of - * the software product on devcentral.f5.com. - */ -'use strict'; -var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { return m[k]; } }; - } - Object.defineProperty(o, k2, desc); -}) : (function(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -})); -var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); -}) : function(o, v) { - o["default"] = v; -}); -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); - __setModuleDefault(result, mod); - return result; -}; -var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { - function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } - return new (P || (P = Promise))(function (resolve, reject) { - function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } - function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } - function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); -}; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.fileFilter = exports.UnPacker = void 0; -const path_1 = __importDefault(require("path")); -const fs = __importStar(require("fs")); -const logger_1 = __importDefault(require("./logger")); -const zlib_1 = __importDefault(require("zlib")); -const tar_stream_1 = __importDefault(require("tar-stream")); -const events_1 = require("events"); -const regex_1 = require("./regex"); -/** - * async method for extracting config files from archives - * - .conf files are emited as "conf" events - * - all other config files are return at promise resolution - * - */ -class UnPacker extends events_1.EventEmitter { - constructor() { - super(); - } - /** - * extracts needed config files from archive - * - .conf files are emited as events during extraction so they can be parsed asyncronously - * - all other files returned at end in promise completion to be added to the conf tree - * @param input path/file to .conf|.ucs|.qkview|.gz - */ - stream(input) { - return __awaiter(this, void 0, void 0, function* () { - /** - * look at streaming specific files from the archive without having to load the entire thing into memory - * - * https://github.com/mafintosh/tar-fs - * https://github.com/mafintosh/gunzip-maybe - * https://github.com/mafintosh/tar-stream - * https://github.com/npm/node-tar#readme - * - * https://stackoverflow.com/questions/19978452/how-to-extract-single-file-from-tar-gz-archive-using-node-js - * - */ - // parse input to usable pieces - const filePath = path_1.default.parse(input); - /** - * what kind of file we workin with? - */ - if (filePath.ext === '.conf') { - try { - // get file size - const size = fs.statSync(path_1.default.join(filePath.dir, filePath.base)).size; - // try to read file contents - const content = fs.readFileSync(path_1.default.join(filePath.dir, filePath.base), 'utf-8'); - logger_1.default.debug(`got .conf file [${input}], size [${size}]`); - this.emit('conf', { fileName: filePath.base, size, content }); - // return [{ fileName: filePath.base, size, content }]; - return; - } - catch (e) { - logger_1.default.error('not able to read file', e.message); - throw new Error(`not able to read file => ${e.message}`); - } - } - else if (filePath.ext === '.gz' || filePath.ext === '.ucs' || filePath.ext === '.qkview') { - const size = fs.statSync(path_1.default.join(filePath.dir, filePath.base)).size; - logger_1.default.debug(`detected file: [${input}], size: [${size}]`); - const extract = tar_stream_1.default.extract(); - const files = []; - return new Promise((resolve, reject) => { - extract.on('entry', (header, stream, next) => { - let captureFile = false; - const contentBuffer = []; - // detect the files we want and set capture flag - if (fileFilter(header.name) && header.type === 'file') { - captureFile = true; - } - else { - // not the file we want, so call the next entry - next(); - } - stream.on('data', (chunk) => { - // if this is a file we want, buffer it's content - if (captureFile) { - contentBuffer.push(chunk); - } - }); - stream.on('end', () => { - if (captureFile) { - if (header.name.endsWith('.conf')) { - // emit conf files - this.emit('conf', { - fileName: header.name, - size: header.size, - content: contentBuffer.join('') - }); - } - else if (header.name.endsWith('.xml')) { - // emit .xml stats files - this.emit('stat', { - fileName: header.name, - size: header.size, - content: contentBuffer.join('') - }); - } - else { - // buffer all other files to be returned when complete - files.push({ - fileName: header.name, - size: header.size, - content: contentBuffer.join('') - }); - } - } - next(); - }); - stream.resume(); - }); - extract.on('finish', () => { - // we finished processing, .conf file should have been emited as events, so now resolve the promise with all the other config files - return resolve({ - files, - size - }); - }); - extract.on('error', err => { - return reject(err); - }); - fs.createReadStream(input) - .pipe(zlib_1.default.createGunzip()) - .pipe(extract); - }); - } - else { - const msg = `file type of "${filePath.ext}", not supported, try (.conf|.ucs|.kqview|.gz)`; - logger_1.default.error(msg); - throw new Error(`not able to read file => ${msg}`); - } - }); - } -} -exports.UnPacker = UnPacker; -/** - * filters files we want - * @param file name as string - * @param boolean if file match -> return (pass filter) - */ -function fileFilter(name) { - /** - * breakind down this bigger regex for explaination - * added to list of regex's below - */ - const allConfs = (0, regex_1.multilineRegExp)([ - // base /config directory - /^config/, - // optional /partitions directory including /partition name directory - /(?:\/partitions\/[\w-]+?)?/, - // any bigip*.conf file - /\/bigip(?:[\w-]*).conf$/ - ], undefined); - /** - * qkviews do NOT includes private keys - */ - const fileStoreFilesQkview = (0, regex_1.multilineRegExp)([ - // base directory - /^config\/filestore\/files_d/, - // /partition folder - /\/[\w]+?/, - // all directories excluding "epsec_pacakage_d" or "datasync_update_file_d" - /\/(?!epsec_package_d|datasync_update_file_d)[\w]+?/, - // any file/suffix - /\/.+?$/ - ], undefined); - /** - * UCS private keys unless excluded at generation - */ - const fileStoreFilesUcs = (0, regex_1.multilineRegExp)([ - // base directory - /^var\/tmp\/filestore_temp\/files_d/, - // /partition folder - /\/[\w]+?/, - // all directories excluding "epsec_pacakage_d" or "datasync_update_file_d" - /\/(?!epsec_package_d|datasync_update_file_d)[\w]+?/, - // any file/suffix - /\/.+?$/ - ], undefined); - /** - * list of RegEx's to find the files we need - * - * only one has to pass to return true - */ - const fileRegexs = [ - allConfs, - /^config\/bigip.license$/, - /^config\/profile_base.conf$/, - fileStoreFilesUcs, - fileStoreFilesQkview, - /^\w+.xml$/ // qkview stats files - ]; - return fileRegexs.some(rx => rx.test(name)); -} -exports.fileFilter = fileFilter; -//# sourceMappingURL=unPackerStream.js.map \ No newline at end of file diff --git a/dist/unPackerStream.js.map b/dist/unPackerStream.js.map deleted file mode 100644 index 4c8ff88..0000000 --- a/dist/unPackerStream.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"unPackerStream.js","sourceRoot":"","sources":["../src/unPackerStream.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,YAAY,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEb,gDAAwB;AACxB,uCAAyB;AACzB,sDAA8B;AAC9B,gDAAwB;AACxB,4DAA4B;AAC5B,mCAAsC;AACtC,mCAA0C;AAI1C;;;;;GAKG;AACH,MAAa,QAAS,SAAQ,qBAAY;IACtC;QACI,KAAK,EAAE,CAAC;IACZ,CAAC;IAED;;;;;OAKG;IACG,MAAM,CAAC,KAAa;;YAKtB;;;;;;;;;;eAUG;YAEH,+BAA+B;YAC/B,MAAM,QAAQ,GAAG,cAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAEnC;;eAEG;YACH,IAAI,QAAQ,CAAC,GAAG,KAAK,OAAO,EAAE;gBAE1B,IAAI;oBAEA,gBAAgB;oBAChB,MAAM,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,cAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;oBACtE,4BAA4B;oBAC5B,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,cAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC;oBAEjF,gBAAM,CAAC,KAAK,CAAC,mBAAmB,KAAK,YAAY,IAAI,GAAG,CAAC,CAAA;oBAEzD,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAA;oBAE7D,uDAAuD;oBACvD,OAAM;iBAET;gBAAC,OAAO,CAAC,EAAE;oBACR,gBAAM,CAAC,KAAK,CAAC,uBAAuB,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;oBACjD,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;iBAC5D;aAGJ;iBAAM,IAAI,QAAQ,CAAC,GAAG,KAAK,KAAK,IAAI,QAAQ,CAAC,GAAG,KAAK,MAAM,IAAI,QAAQ,CAAC,GAAG,KAAK,SAAS,EAAE;gBAExF,MAAM,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,cAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;gBACtE,gBAAM,CAAC,KAAK,CAAC,mBAAmB,KAAK,aAAa,IAAI,GAAG,CAAC,CAAA;gBAE1D,MAAM,OAAO,GAAG,oBAAG,CAAC,OAAO,EAAE,CAAC;gBAC9B,MAAM,KAAK,GAAiB,EAAE,CAAA;gBAE9B,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;oBACnC,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE;wBACzC,IAAI,WAAW,GAAG,KAAK,CAAC;wBACxB,MAAM,aAAa,GAAG,EAAE,CAAA;wBACxB,gDAAgD;wBAChD,IAAI,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,IAAI,KAAK,MAAM,EAAE;4BACnD,WAAW,GAAG,IAAI,CAAC;yBACtB;6BAAM;4BACH,+CAA+C;4BAC/C,IAAI,EAAE,CAAA;yBACT;wBACD,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE;4BACxB,iDAAiD;4BACjD,IAAI,WAAW,EAAE;gCACb,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;6BAC7B;wBACL,CAAC,CAAC,CAAC;wBACH,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE;4BAClB,IAAI,WAAW,EAAE;gCACb,IAAI,MAAM,CAAC,IAAe,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;oCAE1C,kBAAkB;oCAClB,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;wCACd,QAAQ,EAAE,MAAM,CAAC,IAAI;wCACrB,IAAI,EAAE,MAAM,CAAC,IAAI;wCACjB,OAAO,EAAE,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC;qCAClC,CAAC,CAAA;iCAEL;qCAAM,IAAK,MAAM,CAAC,IAAe,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;oCAEjD,wBAAwB;oCACxB,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;wCACd,QAAQ,EAAE,MAAM,CAAC,IAAI;wCACrB,IAAI,EAAE,MAAM,CAAC,IAAI;wCACjB,OAAO,EAAE,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC;qCAClC,CAAC,CAAA;iCAEL;qCAAM;oCAEH,sDAAsD;oCACtD,KAAK,CAAC,IAAI,CAAC;wCACP,QAAQ,EAAE,MAAM,CAAC,IAAI;wCACrB,IAAI,EAAE,MAAM,CAAC,IAAI;wCACjB,OAAO,EAAE,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC;qCAClC,CAAC,CAAA;iCAEL;6BACJ;4BACD,IAAI,EAAE,CAAC;wBACX,CAAC,CAAC,CAAC;wBACH,MAAM,CAAC,MAAM,EAAE,CAAC;oBACpB,CAAC,CAAC,CAAC;oBAEH,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE;wBACtB,mIAAmI;wBACnI,OAAO,OAAO,CAAC;4BACX,KAAK;4BACL,IAAI;yBACP,CAAC,CAAC;oBACP,CAAC,CAAC,CAAC;oBACH,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,CAAC,EAAE;wBACtB,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC;oBACvB,CAAC,CAAC,CAAC;oBAEH,EAAE,CAAC,gBAAgB,CAAC,KAAK,CAAC;yBACrB,IAAI,CAAC,cAAI,CAAC,YAAY,EAAE,CAAC;yBACzB,IAAI,CAAC,OAAO,CAAC,CAAC;gBACvB,CAAC,CAAC,CAAA;aAEL;iBAAM;gBACH,MAAM,GAAG,GAAG,iBAAiB,QAAQ,CAAC,GAAG,gDAAgD,CAAA;gBACzF,gBAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBAClB,MAAM,IAAI,KAAK,CAAC,4BAA4B,GAAG,EAAE,CAAC,CAAC;aACtD;QAEL,CAAC;KAAA;CACJ;AA5ID,4BA4IC;AAED;;;;GAIG;AACH,SAAgB,UAAU,CAAC,IAAY;IAGnC;;;OAGG;IACH,MAAM,QAAQ,GAAG,IAAA,uBAAe,EAAC;QAC7B,yBAAyB;QACzB,SAAS;QACT,qEAAqE;QACrE,4BAA4B;QAC5B,uBAAuB;QACvB,yBAAyB;KAC5B,EAAE,SAAS,CAAC,CAAA;IAGb;;OAEG;IACH,MAAM,oBAAoB,GAAG,IAAA,uBAAe,EAAC;QACzC,iBAAiB;QACjB,6BAA6B;QAC7B,oBAAoB;QACpB,UAAU;QACV,2EAA2E;QAC3E,oDAAoD;QACpD,kBAAkB;QAClB,QAAQ;KACX,EAAE,SAAS,CAAC,CAAC;IAEd;;OAEG;IACH,MAAM,iBAAiB,GAAG,IAAA,uBAAe,EAAC;QACtC,iBAAiB;QACjB,oCAAoC;QACpC,oBAAoB;QACpB,UAAU;QACV,2EAA2E;QAC3E,oDAAoD;QACpD,kBAAkB;QAClB,QAAQ;KACX,EAAE,SAAS,CAAC,CAAC;IAEd;;;;OAIG;IACH,MAAM,UAAU,GAAa;QACzB,QAAQ;QACR,yBAAyB;QACzB,6BAA6B;QAC7B,iBAAiB;QACjB,oBAAoB;QACpB,WAAW,CAAyB,qBAAqB;KAC5D,CAAA;IAED,OAAO,UAAU,CAAC,IAAI,CAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;AAEjD,CAAC;AA7DD,gCA6DC"} \ No newline at end of file diff --git a/dist/utils/objects.d.ts b/dist/utils/objects.d.ts deleted file mode 100644 index 6bddd8f..0000000 --- a/dist/utils/objects.d.ts +++ /dev/null @@ -1,66 +0,0 @@ -/** - * recursively removes empty value/objects/arrays - * @param obj - */ -export declare function cleanObject(obj: any): void; -declare type RetObj = { - path?: string; - key?: string; - value?: string; -}; -/** - * builds multi-level nested objects with data - * https://stackoverflow.com/questions/5484673/javascript-how-to-dynamically-create-nested-objects-using-object-names-given-by - * @param fields array of nested object params - * @param value value of the inner most object param value - */ -export declare function nestedObjValue(fields: string[], value: string): unknown; -/** -* provides deep merge of multi-level objects -* subsequent items in list overwrite conflicting entries -* @param objs list of objects to merge - */ -export declare function deepMergeObj(target: unknown, source: unknown): unknown; -/** - * Deep merge two objects. - * https://stackoverflow.com/questions/27936772/how-to-deep-merge-instead-of-shallow-merge - * @param target - * @param ...sources - */ -export declare function simpleMergeDeep(target: unknown, ...sources: any): unknown; -/** - * this will overwrite existing data - * @param obj - * @param path - * @param value - */ -export declare function setNestedKey(obj: unknown, path: string[], value: unknown): unknown; -/** - * deep search object for value using regex - * @param vtf value to find (regex capable) - * @param obj to search - * @param return array of path steps - */ -export declare function getPathOfValue(vtf: string | RegExp, obj: unknown): unknown; -/** - * gets value by deep path in array form - * (ex. ['ltm','monitor','http']) - * - * *** paths have to be in array form since names can have '.' in them *** - * - * @param path to fetch value - * @param obj containing path/value to get - */ -export declare function deepGet(path: string[], obj: unknown): unknown; -/** - * searches object for key - * - * *** todo: update path to be array, not dot(.) notation - * - pretty sure this is complete... - * - * @param obj to search - * @param key to find - * @param return [{ path: string, key: string, value: string }] - */ -export declare function pathValueFromKey(obj: unknown, key: string): RetObj; -export {}; diff --git a/dist/utils/objects.js b/dist/utils/objects.js deleted file mode 100644 index 6d81d35..0000000 --- a/dist/utils/objects.js +++ /dev/null @@ -1,249 +0,0 @@ -"use strict"; -/* eslint-disable @typescript-eslint/no-explicit-any */ -/* eslint-disable @typescript-eslint/no-unused-vars */ -/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -exports.pathValueFromKey = exports.deepGet = exports.getPathOfValue = exports.setNestedKey = exports.simpleMergeDeep = exports.deepMergeObj = exports.nestedObjValue = exports.cleanObject = void 0; -const deepmerge_1 = __importDefault(require("deepmerge")); -const logger_1 = __importDefault(require("../logger")); -/** - * recursively removes empty value/objects/arrays - * @param obj - */ -function cleanObject(obj) { - // This needs to be fully tested to confirm full functionality, - // but this helped accmoplish what I needed at this time - cleanEmpty(obj); - clearEmpties(obj); - // following is also a way to remove empty values from stuff - // but can be process intensive - function removeUndefined(json) { - return JSON.parse(JSON.stringify(json)); - } -} -exports.cleanObject = cleanObject; -/** - * recursively removes empty values from objects/arrays - * @param obj - */ -function cleanEmpty(obj) { - if (Array.isArray(obj)) { - return obj - .map(v => (v && typeof v === 'object') ? cleanEmpty(v) : v) - .filter(v => !(v == null)); - } - else { - return Object.entries(obj) - .map(([k, v]) => [k, v && typeof v === 'object' ? cleanEmpty(v) : v]) - .reduce((a, [k, v]) => (v == null ? a : (a[k] = v, a)), {}); - } -} -/** - * recursively removes empty objects - * @param obj - */ -function clearEmpties(obj) { - for (const k in obj) { - if (!obj[k] || typeof obj[k] !== "object") { - continue; // If null or not an object, skip to the next iteration - } - // The property is an object - clearEmpties(obj[k]); // <-- Make a recursive call on the nested object - if (Object.keys(obj[k]).length === 0) { - delete obj[k]; // The object had no properties, so delete that property - } - } -} -/** - * builds multi-level nested objects with data - * https://stackoverflow.com/questions/5484673/javascript-how-to-dynamically-create-nested-objects-using-object-names-given-by - * @param fields array of nested object params - * @param value value of the inner most object param value - */ -function nestedObjValue(fields, value) { - const reducer = (acc, item, index, arr) => ({ [item]: index + 1 < arr.length ? acc : value }); - return fields.reduceRight(reducer, {}); -} -exports.nestedObjValue = nestedObjValue; -/** -* provides deep merge of multi-level objects -* subsequent items in list overwrite conflicting entries -* @param objs list of objects to merge - */ -function deepMergeObj(target, source) { - return (0, deepmerge_1.default)(target, source, { clone: false }); -} -exports.deepMergeObj = deepMergeObj; -/** - * Simple object check. - * @param item - * @returns {boolean} - */ -function isObject(item) { - return (item && typeof item === 'object' && !Array.isArray(item)); -} -/** - * Deep merge two objects. - * https://stackoverflow.com/questions/27936772/how-to-deep-merge-instead-of-shallow-merge - * @param target - * @param ...sources - */ -function simpleMergeDeep(target, ...sources) { - if (!sources.length) - return target; - const source = sources.shift(); - if (isObject(target) && isObject(source)) { - for (const key in source) { - if (isObject(source[key])) { - if (!target[key]) - Object.assign(target, { [key]: {} }); - simpleMergeDeep(target[key], source[key]); - } - else { - Object.assign(target, { [key]: source[key] }); - } - } - } - return simpleMergeDeep(target, ...sources); -} -exports.simpleMergeDeep = simpleMergeDeep; -/** - * this will overwrite existing data - * @param obj - * @param path - * @param value - */ -function setNestedKey(obj, path, value) { - /** - * https://stackoverflow.com/questions/18936915/dynamically-set-property-of-nested-object - */ - if (path.length === 1) { - obj[path[0]] = value; - return; - } - return setNestedKey(obj[path[0]], path.slice(1), value); -} -exports.setNestedKey = setNestedKey; -/** - * deep search object for value using regex - * @param vtf value to find (regex capable) - * @param obj to search - * @param return array of path steps - */ -function getPathOfValue(vtf, obj) { - /** - * https://stackoverflow.com/questions/53543303/find-a-full-object-path-to-a-given-value-with-javascript - */ - // function maybeMatch(reg, str) { - // var m = str.match(reg); - // return m ? m[0] : null; - // } - // if (vtf instanceof RegExp) vtf = maybeMatch(vtf, str); - const regex = new RegExp(vtf); - return find(obj); - function find(obj, item) { - for (const key in obj) { - if (obj[key] && typeof obj[key] === "object") { - const result = find(obj[key], item); - if (result) { - result.unshift(key); - return result; - } - } - else if (regex.test(obj[key])) { - return [key]; - } - } - } -} -exports.getPathOfValue = getPathOfValue; -/** - * gets value by deep path in array form - * (ex. ['ltm','monitor','http']) - * - * *** paths have to be in array form since names can have '.' in them *** - * - * @param path to fetch value - * @param obj containing path/value to get - */ -function deepGet(path, obj) { - /** - * this seems to be the best way to GET a value (by far) - * - * https://stackoverflow.com/questions/6393943/convert-javascript-string-in-dot-notation-into-an-object-reference - */ - const xxx = index(obj, path); - return xxx; - function index(obj, is, value) { - if (typeof is == 'string') - return index(obj, is.split('.'), value); - else if (is.length == 1 && value !== undefined) - return obj[is[0]] = value; - else if (is.length == 0) - return obj; - else - return index(obj[is[0]], is.slice(1), value); - } -} -exports.deepGet = deepGet; -/** - * searches object for key - * - * *** todo: update path to be array, not dot(.) notation - * - pretty sure this is complete... - * - * @param obj to search - * @param key to find - * @param return [{ path: string, key: string, value: string }] - */ -function pathValueFromKey(obj, key) { - const results = []; - const objType = typeof obj; - if (objType !== "object") { - logger_1.default.error(`findValueFromKey function expected object, got: ${objType}`); - return; - } - /** - * iterate through json tree looking for key match - */ - function findKey(obj, key, path) { - /** - * if the current object we are on has the key we are looking for, - * push result details - * - */ - if (obj.hasOwnProperty(key)) { - results.push({ - path, - key, - value: obj[key] - }); - } - /** - * append path as we iterate - */ - path = `${path ? path + "." : ""}`; - for (const k in obj) { - if (obj.hasOwnProperty(k)) { - if (obj[k] && typeof obj[k] === "object") { - findKey(obj[k], key, `${path}${k}`); - } - } - } - } - // call functoin to start iteration - findKey(obj, key); - if (results.length = 1) { - // return array of results - return results[0]; - } - else { - logger_1.default.error(`pathValueFromKey found more than one match, returning first, full list: ${results}`); - return results[0]; - } -} -exports.pathValueFromKey = pathValueFromKey; -//# sourceMappingURL=objects.js.map \ No newline at end of file diff --git a/dist/utils/objects.js.map b/dist/utils/objects.js.map deleted file mode 100644 index f9bf3de..0000000 --- a/dist/utils/objects.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"objects.js","sourceRoot":"","sources":["../../src/utils/objects.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/xml2Json.d.ts b/dist/xml2Json.d.ts deleted file mode 100644 index e69de29..0000000 diff --git a/dist/xml2Json.js b/dist/xml2Json.js deleted file mode 100644 index aeca597..0000000 --- a/dist/xml2Json.js +++ /dev/null @@ -1,51 +0,0 @@ -// /* -// * Copyright 2020. F5 Networks, Inc. See End User License Agreement ("EULA") for -// * license terms. Notwithstanding anything to the contrary in the EULA, Licensee -// * may copy and modify this software product for its internal business purposes. -// * Further, Licensee may upload, publish and distribute the modified version of -// * the software product on devcentral.f5.com. -// */ -// 'use strict'; -// // https://stackoverflow.com/questions/52281389/convert-xml-to-json-with-nodejs/57724779 -// import { parseStringPromise } from 'xml2js' -// import { ConfigFile } from './unPackerStream'; -// export async function xmlTojsTest(): Promise { -// const xml = ''; -// // With parser -// // const parser = new xml2js.Parser(/* options */); -// // parser.parseStringPromise(xml).then(function (result) { -// // console.dir(result); -// // console.log('Done1'); -// // }) -// // .catch(function (err) { -// // // Failed -// // const x = err; -// // debugger; -// // }); -// // Without parser -// parseStringPromise(xml) -// .then(function (result) { -// console.dir(result); -// console.log('Done2'); -// }) -// .catch(function (err) { -// // Failed -// const x = err; -// debugger; -// }); -// } -// export async function xmlTojs(files: ConfigFile[]): Promise { -// // loop through each file and convert it from xml to json -// // const retObj = {} -// // const promises = []; -// // files.map(xml => { -// // promises.push(xml2js.parseConfPromises(xml.content) -// // .then(function (out) { -// // retObj[xml.fileName] = out; -// // })) -// // }) -// // await Promise.all(promises) -// // // add each file converstion to an object, return object -// return; -// } -//# sourceMappingURL=xml2Json.js.map \ No newline at end of file diff --git a/dist/xml2Json.js.map b/dist/xml2Json.js.map deleted file mode 100644 index a60bbcf..0000000 --- a/dist/xml2Json.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"xml2Json.js","sourceRoot":"","sources":["../src/xml2Json.ts"],"names":[],"mappings":"AAAA,KAAK;AACL,mFAAmF;AACnF,mFAAmF;AACnF,mFAAmF;AACnF,kFAAkF;AAClF,gDAAgD;AAChD,MAAM;AAEN,gBAAgB;AAGhB,2FAA2F;AAE3F,8CAA8C;AAC9C,iDAAiD;AAGjD,uDAAuD;AACvD,4CAA4C;AAE5C,qBAAqB;AACrB,0DAA0D;AAC1D,iEAAiE;AACjE,kCAAkC;AAClC,mCAAmC;AACnC,YAAY;AACZ,qCAAqC;AACrC,2BAA2B;AAC3B,gCAAgC;AAChC,2BAA2B;AAC3B,iBAAiB;AAEjB,wBAAwB;AACxB,8BAA8B;AAC9B,gCAAgC;AAChC,+BAA+B;AAC/B,gCAAgC;AAChC,SAAS;AACT,kCAAkC;AAClC,wBAAwB;AACxB,6BAA6B;AAC7B,wBAAwB;AACxB,cAAc;AACd,IAAI;AAEJ,yEAAyE;AAEzE,gEAAgE;AAEhE,2BAA2B;AAC3B,8BAA8B;AAE9B,4BAA4B;AAE5B,iEAAiE;AACjE,wCAAwC;AACxC,iDAAiD;AACjD,qBAAqB;AACrB,YAAY;AAEZ,qCAAqC;AAErC,kEAAkE;AAClE,cAAc;AACd,IAAI"} \ No newline at end of file diff --git a/output_example.json b/output_example.json deleted file mode 100644 index 0aa0cfa..0000000 --- a/output_example.json +++ /dev/null @@ -1,678 +0,0 @@ -{ - "command_logs": [ - "[2021-10-26T12:37:04.484Z] [INFO]: parseFile config/bigip.conf", - "[2021-10-26T12:37:04.491Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 1, of: 153 }", - "[2021-10-26T12:37:04.493Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 2, of: 153 }", - "[2021-10-26T12:37:04.493Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 3, of: 153 }", - "[2021-10-26T12:37:04.494Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 4, of: 153 }", - "[2021-10-26T12:37:04.494Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 5, of: 153 }", - "[2021-10-26T12:37:04.494Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 6, of: 153 }", - "[2021-10-26T12:37:04.495Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 7, of: 153 }", - "[2021-10-26T12:37:04.495Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 8, of: 153 }", - "[2021-10-26T12:37:04.495Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 9, of: 153 }", - "[2021-10-26T12:37:04.496Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 10, of: 153 }", - "[2021-10-26T12:37:04.496Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 11, of: 153 }", - "[2021-10-26T12:37:04.496Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 12, of: 153 }", - "[2021-10-26T12:37:04.496Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 13, of: 153 }", - "[2021-10-26T12:37:04.496Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 14, of: 153 }", - "[2021-10-26T12:37:04.497Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 15, of: 153 }", - "[2021-10-26T12:37:04.497Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 16, of: 153 }", - "[2021-10-26T12:37:04.497Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 17, of: 153 }", - "[2021-10-26T12:37:04.497Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 18, of: 153 }", - "[2021-10-26T12:37:04.498Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 19, of: 153 }", - "[2021-10-26T12:37:04.498Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 20, of: 153 }", - "[2021-10-26T12:37:04.498Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 21, of: 153 }", - "[2021-10-26T12:37:04.498Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 22, of: 153 }", - "[2021-10-26T12:37:04.499Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 23, of: 153 }", - "[2021-10-26T12:37:04.499Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 24, of: 153 }", - "[2021-10-26T12:37:04.499Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 25, of: 153 }", - "[2021-10-26T12:37:04.499Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 26, of: 153 }", - "[2021-10-26T12:37:04.499Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 27, of: 153 }", - "[2021-10-26T12:37:04.500Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 28, of: 153 }", - "[2021-10-26T12:37:04.500Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 29, of: 153 }", - "[2021-10-26T12:37:04.500Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 30, of: 153 }", - "[2021-10-26T12:37:04.500Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 31, of: 153 }", - "[2021-10-26T12:37:04.500Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 32, of: 153 }", - "[2021-10-26T12:37:04.500Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 33, of: 153 }", - "[2021-10-26T12:37:04.501Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 34, of: 153 }", - "[2021-10-26T12:37:04.501Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 35, of: 153 }", - "[2021-10-26T12:37:04.501Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 36, of: 153 }", - "[2021-10-26T12:37:04.501Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 37, of: 153 }", - "[2021-10-26T12:37:04.502Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 38, of: 153 }", - "[2021-10-26T12:37:04.502Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 39, of: 153 }", - "[2021-10-26T12:37:04.502Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 40, of: 153 }", - "[2021-10-26T12:37:04.502Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 41, of: 153 }", - "[2021-10-26T12:37:04.502Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 42, of: 153 }", - "[2021-10-26T12:37:04.502Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 43, of: 153 }", - "[2021-10-26T12:37:04.503Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 44, of: 153 }", - "[2021-10-26T12:37:04.503Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 45, of: 153 }", - "[2021-10-26T12:37:04.503Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 46, of: 153 }", - "[2021-10-26T12:37:04.503Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 47, of: 153 }", - "[2021-10-26T12:37:04.503Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 48, of: 153 }", - "[2021-10-26T12:37:04.504Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 49, of: 153 }", - "[2021-10-26T12:37:04.504Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 50, of: 153 }", - "[2021-10-26T12:37:04.504Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 51, of: 153 }", - "[2021-10-26T12:37:04.504Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 52, of: 153 }", - "[2021-10-26T12:37:04.504Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 53, of: 153 }", - "[2021-10-26T12:37:04.505Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 54, of: 153 }", - "[2021-10-26T12:37:04.505Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 55, of: 153 }", - "[2021-10-26T12:37:04.505Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 56, of: 153 }", - "[2021-10-26T12:37:04.505Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 57, of: 153 }", - "[2021-10-26T12:37:04.505Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 58, of: 153 }", - "[2021-10-26T12:37:04.506Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 59, of: 153 }", - "[2021-10-26T12:37:04.506Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 60, of: 153 }", - "[2021-10-26T12:37:04.506Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 61, of: 153 }", - "[2021-10-26T12:37:04.506Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 62, of: 153 }", - "[2021-10-26T12:37:04.506Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 63, of: 153 }", - "[2021-10-26T12:37:04.506Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 64, of: 153 }", - "[2021-10-26T12:37:04.507Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 65, of: 153 }", - "[2021-10-26T12:37:04.507Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 66, of: 153 }", - "[2021-10-26T12:37:04.507Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 67, of: 153 }", - "[2021-10-26T12:37:04.507Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 68, of: 153 }", - "[2021-10-26T12:37:04.507Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 69, of: 153 }", - "[2021-10-26T12:37:04.508Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 70, of: 153 }", - "[2021-10-26T12:37:04.508Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 71, of: 153 }", - "[2021-10-26T12:37:04.508Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 72, of: 153 }", - "[2021-10-26T12:37:04.508Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 73, of: 153 }", - "[2021-10-26T12:37:04.508Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 74, of: 153 }", - "[2021-10-26T12:37:04.509Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 75, of: 153 }", - "[2021-10-26T12:37:04.509Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 76, of: 153 }", - "[2021-10-26T12:37:04.509Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 77, of: 153 }", - "[2021-10-26T12:37:04.509Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 78, of: 153 }", - "[2021-10-26T12:37:04.509Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 79, of: 153 }", - "[2021-10-26T12:37:04.510Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 80, of: 153 }", - "[2021-10-26T12:37:04.510Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 81, of: 153 }", - "[2021-10-26T12:37:04.510Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 82, of: 153 }", - "[2021-10-26T12:37:04.510Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 83, of: 153 }", - "[2021-10-26T12:37:04.511Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 84, of: 153 }", - "[2021-10-26T12:37:04.511Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 85, of: 153 }", - "[2021-10-26T12:37:04.511Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 86, of: 153 }", - "[2021-10-26T12:37:04.511Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 87, of: 153 }", - "[2021-10-26T12:37:04.511Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 88, of: 153 }", - "[2021-10-26T12:37:04.512Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 89, of: 153 }", - "[2021-10-26T12:37:04.512Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 90, of: 153 }", - "[2021-10-26T12:37:04.512Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 91, of: 153 }", - "[2021-10-26T12:37:04.512Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 92, of: 153 }", - "[2021-10-26T12:37:04.512Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 93, of: 153 }", - "[2021-10-26T12:37:04.513Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 94, of: 153 }", - "[2021-10-26T12:37:04.513Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 95, of: 153 }", - "[2021-10-26T12:37:04.513Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 96, of: 153 }", - "[2021-10-26T12:37:04.513Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 97, of: 153 }", - "[2021-10-26T12:37:04.514Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 98, of: 153 }", - "[2021-10-26T12:37:04.514Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 99, of: 153 }", - "[2021-10-26T12:37:04.514Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 100, of: 153 }", - "[2021-10-26T12:37:04.514Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 101, of: 153 }", - "[2021-10-26T12:37:04.514Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 102, of: 153 }", - "[2021-10-26T12:37:04.514Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 103, of: 153 }", - "[2021-10-26T12:37:04.515Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 104, of: 153 }", - "[2021-10-26T12:37:04.515Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 105, of: 153 }", - "[2021-10-26T12:37:04.515Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 106, of: 153 }", - "[2021-10-26T12:37:04.515Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 107, of: 153 }", - "[2021-10-26T12:37:04.515Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 108, of: 153 }", - "[2021-10-26T12:37:04.516Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 109, of: 153 }", - "[2021-10-26T12:37:04.516Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 110, of: 153 }", - "[2021-10-26T12:37:04.516Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 111, of: 153 }", - "[2021-10-26T12:37:04.516Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 112, of: 153 }", - "[2021-10-26T12:37:04.516Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 113, of: 153 }", - "[2021-10-26T12:37:04.516Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 114, of: 153 }", - "[2021-10-26T12:37:04.517Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 115, of: 153 }", - "[2021-10-26T12:37:04.517Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 116, of: 153 }", - "[2021-10-26T12:37:04.517Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 117, of: 153 }", - "[2021-10-26T12:37:04.517Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 118, of: 153 }", - "[2021-10-26T12:37:04.517Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 119, of: 153 }", - "[2021-10-26T12:37:04.518Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 120, of: 153 }", - "[2021-10-26T12:37:04.518Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 121, of: 153 }", - "[2021-10-26T12:37:04.518Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 122, of: 153 }", - "[2021-10-26T12:37:04.518Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 123, of: 153 }", - "[2021-10-26T12:37:04.518Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 124, of: 153 }", - "[2021-10-26T12:37:04.519Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 125, of: 153 }", - "[2021-10-26T12:37:04.519Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 126, of: 153 }", - "[2021-10-26T12:37:04.519Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 127, of: 153 }", - "[2021-10-26T12:37:04.519Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 128, of: 153 }", - "[2021-10-26T12:37:04.519Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 129, of: 153 }", - "[2021-10-26T12:37:04.520Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 130, of: 153 }", - "[2021-10-26T12:37:04.520Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 131, of: 153 }", - "[2021-10-26T12:37:04.520Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 132, of: 153 }", - "[2021-10-26T12:37:04.520Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 133, of: 153 }", - "[2021-10-26T12:37:04.520Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 134, of: 153 }", - "[2021-10-26T12:37:04.520Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 135, of: 153 }", - "[2021-10-26T12:37:04.521Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 136, of: 153 }", - "[2021-10-26T12:37:04.521Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 137, of: 153 }", - "[2021-10-26T12:37:04.521Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 138, of: 153 }", - "[2021-10-26T12:37:04.521Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 139, of: 153 }", - "[2021-10-26T12:37:04.521Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 140, of: 153 }", - "[2021-10-26T12:37:04.522Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 141, of: 153 }", - "[2021-10-26T12:37:04.522Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 142, of: 153 }", - "[2021-10-26T12:37:04.522Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 143, of: 153 }", - "[2021-10-26T12:37:04.522Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 144, of: 153 }", - "[2021-10-26T12:37:04.523Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 145, of: 153 }", - "[2021-10-26T12:37:04.523Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 146, of: 153 }", - "[2021-10-26T12:37:04.523Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 147, of: 153 }", - "[2021-10-26T12:37:04.523Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 148, of: 153 }", - "[2021-10-26T12:37:04.523Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 149, of: 153 }", - "[2021-10-26T12:37:04.523Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 150, of: 153 }", - "[2021-10-26T12:37:04.524Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 151, of: 153 }", - "[2021-10-26T12:37:04.524Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 152, of: 153 }", - "[2021-10-26T12:37:04.524Z] [INFO]: parseObject { parsing: 'config/bigip.conf', num: 153, of: 153 }", - "[2021-10-26T12:37:04.526Z] [INFO]: parseFile config/bigip_base.conf", - "[2021-10-26T12:37:04.526Z] [INFO]: parseFile config/partitions/test/bigip.conf", - "[2021-10-26T12:37:04.527Z] [INFO]: parseFile config/partitions/test/bigip_script.conf", - "[2021-10-26T12:37:04.528Z] [INFO]: parseFile config/partitions/foo/bigip.conf", - "[2021-10-26T12:37:04.528Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 1, of: 90 }", - "[2021-10-26T12:37:04.528Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 2, of: 90 }", - "[2021-10-26T12:37:04.528Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 3, of: 90 }", - "[2021-10-26T12:37:04.529Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 4, of: 90 }", - "[2021-10-26T12:37:04.529Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 5, of: 90 }", - "[2021-10-26T12:37:04.529Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 6, of: 90 }", - "[2021-10-26T12:37:04.529Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 7, of: 90 }", - "[2021-10-26T12:37:04.529Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 8, of: 90 }", - "[2021-10-26T12:37:04.530Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 9, of: 90 }", - "[2021-10-26T12:37:04.530Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 10, of: 90 }", - "[2021-10-26T12:37:04.530Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 11, of: 90 }", - "[2021-10-26T12:37:04.530Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 12, of: 90 }", - "[2021-10-26T12:37:04.530Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 13, of: 90 }", - "[2021-10-26T12:37:04.531Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 14, of: 90 }", - "[2021-10-26T12:37:04.531Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 15, of: 90 }", - "[2021-10-26T12:37:04.531Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 16, of: 90 }", - "[2021-10-26T12:37:04.531Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 17, of: 90 }", - "[2021-10-26T12:37:04.531Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 18, of: 90 }", - "[2021-10-26T12:37:04.532Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 19, of: 90 }", - "[2021-10-26T12:37:04.532Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 20, of: 90 }", - "[2021-10-26T12:37:04.532Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 21, of: 90 }", - "[2021-10-26T12:37:04.532Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 22, of: 90 }", - "[2021-10-26T12:37:04.533Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 23, of: 90 }", - "[2021-10-26T12:37:04.533Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 24, of: 90 }", - "[2021-10-26T12:37:04.533Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 25, of: 90 }", - "[2021-10-26T12:37:04.533Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 26, of: 90 }", - "[2021-10-26T12:37:04.533Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 27, of: 90 }", - "[2021-10-26T12:37:04.534Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 28, of: 90 }", - "[2021-10-26T12:37:04.534Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 29, of: 90 }", - "[2021-10-26T12:37:04.534Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 30, of: 90 }", - "[2021-10-26T12:37:04.534Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 31, of: 90 }", - "[2021-10-26T12:37:04.534Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 32, of: 90 }", - "[2021-10-26T12:37:04.535Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 33, of: 90 }", - "[2021-10-26T12:37:04.535Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 34, of: 90 }", - "[2021-10-26T12:37:04.535Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 35, of: 90 }", - "[2021-10-26T12:37:04.535Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 36, of: 90 }", - "[2021-10-26T12:37:04.536Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 37, of: 90 }", - "[2021-10-26T12:37:04.536Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 38, of: 90 }", - "[2021-10-26T12:37:04.536Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 39, of: 90 }", - "[2021-10-26T12:37:04.536Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 40, of: 90 }", - "[2021-10-26T12:37:04.536Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 41, of: 90 }", - "[2021-10-26T12:37:04.537Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 42, of: 90 }", - "[2021-10-26T12:37:04.537Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 43, of: 90 }", - "[2021-10-26T12:37:04.537Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 44, of: 90 }", - "[2021-10-26T12:37:04.537Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 45, of: 90 }", - "[2021-10-26T12:37:04.538Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 46, of: 90 }", - "[2021-10-26T12:37:04.538Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 47, of: 90 }", - "[2021-10-26T12:37:04.538Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 48, of: 90 }", - "[2021-10-26T12:37:04.538Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 49, of: 90 }", - "[2021-10-26T12:37:04.539Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 50, of: 90 }", - "[2021-10-26T12:37:04.539Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 51, of: 90 }", - "[2021-10-26T12:37:04.539Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 52, of: 90 }", - "[2021-10-26T12:37:04.539Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 53, of: 90 }", - "[2021-10-26T12:37:04.539Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 54, of: 90 }", - "[2021-10-26T12:37:04.540Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 55, of: 90 }", - "[2021-10-26T12:37:04.540Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 56, of: 90 }", - "[2021-10-26T12:37:04.540Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 57, of: 90 }", - "[2021-10-26T12:37:04.540Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 58, of: 90 }", - "[2021-10-26T12:37:04.541Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 59, of: 90 }", - "[2021-10-26T12:37:04.541Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 60, of: 90 }", - "[2021-10-26T12:37:04.541Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 61, of: 90 }", - "[2021-10-26T12:37:04.541Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 62, of: 90 }", - "[2021-10-26T12:37:04.541Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 63, of: 90 }", - "[2021-10-26T12:37:04.542Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 64, of: 90 }", - "[2021-10-26T12:37:04.542Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 65, of: 90 }", - "[2021-10-26T12:37:04.542Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 66, of: 90 }", - "[2021-10-26T12:37:04.543Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 67, of: 90 }", - "[2021-10-26T12:37:04.543Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 68, of: 90 }", - "[2021-10-26T12:37:04.543Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 69, of: 90 }", - "[2021-10-26T12:37:04.543Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 70, of: 90 }", - "[2021-10-26T12:37:04.544Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 71, of: 90 }", - "[2021-10-26T12:37:04.544Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 72, of: 90 }", - "[2021-10-26T12:37:04.544Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 73, of: 90 }", - "[2021-10-26T12:37:04.544Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 74, of: 90 }", - "[2021-10-26T12:37:04.544Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 75, of: 90 }", - "[2021-10-26T12:37:04.544Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 76, of: 90 }", - "[2021-10-26T12:37:04.545Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 77, of: 90 }", - "[2021-10-26T12:37:04.545Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 78, of: 90 }", - "[2021-10-26T12:37:04.545Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 79, of: 90 }", - "[2021-10-26T12:37:04.545Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 80, of: 90 }", - "[2021-10-26T12:37:04.545Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 81, of: 90 }", - "[2021-10-26T12:37:04.546Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 82, of: 90 }", - "[2021-10-26T12:37:04.546Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 83, of: 90 }", - "[2021-10-26T12:37:04.546Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 84, of: 90 }", - "[2021-10-26T12:37:04.546Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 85, of: 90 }", - "[2021-10-26T12:37:04.546Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 86, of: 90 }", - "[2021-10-26T12:37:04.546Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 87, of: 90 }", - "[2021-10-26T12:37:04.547Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 88, of: 90 }", - "[2021-10-26T12:37:04.547Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 89, of: 90 }", - "[2021-10-26T12:37:04.547Z] [INFO]: parseObject { parsing: 'config/bigip_base.conf', num: 90, of: 90 }", - "[2021-10-26T12:37:04.547Z] [INFO]: parseObject { parsing: 'config/partitions/test/bigip.conf', num: 1, of: 2 }", - "[2021-10-26T12:37:04.547Z] [INFO]: parseObject { parsing: 'config/partitions/test/bigip.conf', num: 2, of: 2 }", - "[2021-10-26T12:37:04.548Z] [INFO]: parseObject { parsing: 'config/partitions/foo/bigip.conf', num: 1, of: 6 }", - "[2021-10-26T12:37:04.548Z] [INFO]: parseObject { parsing: 'config/partitions/foo/bigip.conf', num: 2, of: 6 }", - "[2021-10-26T12:37:04.548Z] [INFO]: parseObject { parsing: 'config/partitions/foo/bigip.conf', num: 3, of: 6 }", - "[2021-10-26T12:37:04.548Z] [INFO]: parseObject { parsing: 'config/partitions/foo/bigip.conf', num: 4, of: 6 }", - "[2021-10-26T12:37:04.548Z] [INFO]: parseObject { parsing: 'config/partitions/foo/bigip.conf', num: 5, of: 6 }", - "[2021-10-26T12:37:04.549Z] [INFO]: parseObject { parsing: 'config/partitions/foo/bigip.conf', num: 6, of: 6 }", - "[2021-10-26T12:37:04.551Z] [INFO]: parseFile config/bigip_script.conf", - "[2021-10-26T12:37:04.552Z] [INFO]: parseFile config/bigip_user.conf", - "[2021-10-26T12:37:04.552Z] [INFO]: parseObject { parsing: 'config/bigip_script.conf', num: 1, of: 2 }", - "[2021-10-26T12:37:04.552Z] [INFO]: parseObject { parsing: 'config/bigip_script.conf', num: 2, of: 2 }", - "[2021-10-26T12:37:04.552Z] [INFO]: parseObject { parsing: 'config/bigip_user.conf', num: 1, of: 3 }", - "[2021-10-26T12:37:04.552Z] [INFO]: parseObject { parsing: 'config/bigip_user.conf', num: 2, of: 3 }", - "[2021-10-26T12:37:04.552Z] [INFO]: parseObject { parsing: 'config/bigip_user.conf', num: 3, of: 3 }", - "[2021-10-26T12:37:06.399Z] [INFO]: parseFile config/bigip.license", - "[2021-10-26T12:37:06.399Z] [INFO]: parseFile var/tmp/filestore_temp/files_d/Common_d/trust_certificate_key_d/:Common:dtca.key_113512_1", - "[2021-10-26T12:37:06.399Z] [INFO]: parseFile var/tmp/filestore_temp/files_d/Common_d/trust_certificate_key_d/:Common:dtdi.key_62976_1", - "[2021-10-26T12:37:06.399Z] [INFO]: parseFile var/tmp/filestore_temp/files_d/Common_d/trust_certificate_key_d/:Common:dtca.key_62980_1", - "[2021-10-26T12:37:06.399Z] [INFO]: parseFile var/tmp/filestore_temp/files_d/Common_d/trust_certificate_key_d/:Common:dtdi.key_113508_1", - "[2021-10-26T12:37:06.399Z] [INFO]: parseFile var/tmp/filestore_temp/files_d/Common_d/trust_certificate_d/:Common:dtca.crt_62978_1", - "[2021-10-26T12:37:06.399Z] [INFO]: parseFile var/tmp/filestore_temp/files_d/Common_d/trust_certificate_d/:Common:dtca.crt_113510_1", - "[2021-10-26T12:37:06.399Z] [INFO]: parseFile var/tmp/filestore_temp/files_d/Common_d/trust_certificate_d/:Common:dtdi.crt_62974_1", - "[2021-10-26T12:37:06.399Z] [INFO]: parseFile var/tmp/filestore_temp/files_d/Common_d/trust_certificate_d/:Common:dtca-bundle.crt_62982_2", - "[2021-10-26T12:37:06.399Z] [INFO]: parseFile var/tmp/filestore_temp/files_d/Common_d/trust_certificate_d/:Common:dtdi.crt_113506_1", - "[2021-10-26T12:37:06.399Z] [INFO]: parseFile var/tmp/filestore_temp/files_d/Common_d/trust_certificate_d/:Common:dtca-bundle.crt_113514_1", - "[2021-10-26T12:37:06.399Z] [INFO]: parseFile var/tmp/filestore_temp/files_d/Common_d/certificate_key_d/:Common:f5_api_com.key_63136_1", - "[2021-10-26T12:37:06.399Z] [INFO]: parseFile var/tmp/filestore_temp/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_general_ui_65124_1", - "[2021-10-26T12:37:06.399Z] [INFO]: parseFile var/tmp/filestore_temp/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_framework_installation_65173_1", - "[2021-10-26T12:37:06.399Z] [INFO]: parseFile var/tmp/filestore_temp/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_act_logon_page_ag_65223_2", - "[2021-10-26T12:37:06.399Z] [INFO]: parseFile var/tmp/filestore_temp/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_logout_65164_1", - "[2021-10-26T12:37:06.399Z] [INFO]: parseFile var/tmp/filestore_temp/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_eps_65170_1", - "[2021-10-26T12:37:06.399Z] [INFO]: parseFile var/tmp/filestore_temp/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_errormap_65167_1", - "[2021-10-26T12:37:06.399Z] [INFO]: parseFile var/tmp/filestore_temp/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_end_deny_ag_65134_1" - ], - "output": { - "id": "be31bf9f-4c51-48a3-9e03-fa1b3b5aa347", - "dateTime": "2021-10-26T12:37:06.411Z", - "hostname": "devCloud01.benlab.io", - "inputFileType": ".ucs", - "config": { - "sources": [ - { - "fileName": "config/bigip.conf", - "size": 57563, - "content": "#TMSH-VERSION: 15.1.0.4\n\nanalytics global-settings { }\napm aaa localdb /Common/localDB { }\napm epsec epsec-package /Common/epsec-1.0.0-892.0.iso {\n cache-path /config/filestore/files_d/Common_d/epsec_package_d/:Common:epsec-1.0.0-892.0.iso_65040_1\n oesis-version 4.3.1158.0\n revision 1\n version 1.0.0-892.0\n}\napm policy access-policy /Common/adminAuth_local_aPolicy {\n default-ending /Common/adminAuth_local_aPolicy_end_deny\n items {\n /Common/adminAuth_local_aPolicy_act_localdb_auth { }\n /Common/adminAuth_local_aPolicy_act_logon_page { }\n /Common/adminAuth_local_aPolicy_end_allow { }\n /Common/adminAuth_local_aPolicy_end_deny { }\n /Common/adminAuth_local_aPolicy_ent { }\n }\n start-item /Common/adminAuth_local_aPolicy_ent\n}\napm policy customization-group /Common/adminAuth_local_aPolicy_act_logon_page_ag {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_act_logon_page_ag_65223_2\n revision 2\n source /Common/modern\n}\napm policy customization-group /Common/adminAuth_local_aPolicy_end_deny_ag {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_end_deny_ag_65134_1\n revision 1\n source /Common/modern\n type logout\n}\napm policy customization-group /Common/adminAuth_local_aPolicy_eps {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_eps_65170_1\n revision 1\n source /Common/modern\n type eps\n}\napm policy customization-group /Common/adminAuth_local_aPolicy_errormap {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_errormap_65167_1\n revision 1\n source /Common/modern\n type errormap\n}\napm policy customization-group /Common/adminAuth_local_aPolicy_framework_installation {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_framework_installation_65173_1\n revision 1\n source /Common/modern\n type framework-installation\n}\napm policy customization-group /Common/adminAuth_local_aPolicy_general_ui {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_general_ui_65124_1\n revision 1\n source /Common/modern\n type general-ui\n}\napm policy customization-group /Common/adminAuth_local_aPolicy_logout {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_logout_65164_1\n revision 1\n source /Common/modern\n type logout\n}\napm policy customization-source /Common/modern { }\napm policy customization-source /Common/standard { }\napm policy policy-item /Common/adminAuth_local_aPolicy_act_localdb_auth {\n agents {\n /Common/adminAuth_local_aPolicy_act_localdb_auth_ag {\n type aaa-localdb\n }\n }\n caption \"LocalDB Auth\"\n color 1\n item-type action\n rules {\n {\n caption Successful\n expression \"expr {[mcget {session.localdb.last.result}] == 1}\"\n next-item /Common/adminAuth_local_aPolicy_end_allow\n }\n {\n caption \"Locked User Out\"\n expression \"expr {[mcget {session.localdb.last.result}] == 2}\"\n next-item /Common/adminAuth_local_aPolicy_end_deny\n }\n {\n caption fallback\n next-item /Common/adminAuth_local_aPolicy_end_deny\n }\n }\n}\napm policy policy-item /Common/adminAuth_local_aPolicy_act_logon_page {\n agents {\n /Common/adminAuth_local_aPolicy_act_logon_page_ag {\n type logon-page\n }\n }\n caption \"Logon Page\"\n color 1\n item-type action\n rules {\n {\n caption fallback\n next-item /Common/adminAuth_local_aPolicy_act_localdb_auth\n }\n }\n}\napm policy policy-item /Common/adminAuth_local_aPolicy_end_allow {\n agents {\n /Common/adminAuth_local_aPolicy_end_allow_ag {\n type ending-allow\n }\n }\n caption Allow\n color 1\n item-type ending\n}\napm policy policy-item /Common/adminAuth_local_aPolicy_end_deny {\n agents {\n /Common/adminAuth_local_aPolicy_end_deny_ag {\n type ending-deny\n }\n }\n caption Deny\n color 2\n item-type ending\n}\napm policy policy-item /Common/adminAuth_local_aPolicy_ent {\n caption Start\n color 1\n rules {\n {\n caption fallback\n next-item /Common/adminAuth_local_aPolicy_act_logon_page\n }\n }\n}\napm policy agent aaa-localdb /Common/adminAuth_local_aPolicy_act_localdb_auth_ag {\n localdb-instance /Common/localDB\n}\napm policy agent ending-allow /Common/adminAuth_local_aPolicy_end_allow_ag { }\napm policy agent ending-deny /Common/adminAuth_local_aPolicy_end_deny_ag {\n customization-group /Common/adminAuth_local_aPolicy_end_deny_ag\n}\napm policy agent logon-page /Common/adminAuth_local_aPolicy_act_logon_page_ag {\n customization-group /Common/adminAuth_local_aPolicy_act_logon_page_ag\n}\napm profile access /Common/adminAuth_local_aPolicy {\n accept-languages { en }\n access-policy /Common/adminAuth_local_aPolicy\n app-service none\n customization-group /Common/adminAuth_local_aPolicy_logout\n customization-key 22ac0aeb0346bcebf5e867279edf9d7b\n default-language en\n domain-cookie none\n eps-group /Common/adminAuth_local_aPolicy_eps\n errormap-group /Common/adminAuth_local_aPolicy_errormap\n exchange-profile none\n framework-installation-group /Common/adminAuth_local_aPolicy_framework_installation\n general-ui-group /Common/adminAuth_local_aPolicy_general_ui\n generation 4\n generation-action noop\n httponly-cookie false\n log-settings {\n /Common/default-log-setting\n }\n logout-uri-include none\n logout-uri-timeout 5\n modified-since-last-policy-sync true\n named-scope none\n persistent-cookie false\n scope profile\n secure-cookie true\n sso-name none\n type system-authentication\n user-identity-method http\n}\napm report default-report {\n report-name sessionReports/sessionSummary\n user /Common/admin\n}\nauth apm-auth /Common/system-auth {\n profile-access /Common/adminAuth_local_aPolicy\n}\nauth radius /Common/system-auth {\n servers {\n /Common/system_auth_name1\n }\n}\nauth radius-server /Common/system_auth_name1 {\n secret $M$mn$9uYx+bTjLD8YSGZAUEfFwHvpSDwZsL25kZxdn5NZmCI=\n server 10.200.244.1\n}\nauth remote-user {\n default-role admin\n remote-console-access tmsh\n}\nauth source {\n fallback true\n}\nilx global-settings {\n debug-port-blacklist { 47019 54321 60000 }\n}\nltm default-node-monitor {\n rule none\n}\nltm node /Common/10.10.10.1 {\n address 10.10.10.1\n}\nltm node /Common/192.168.200.42 {\n address 192.168.200.42\n}\nltm node /Common/api.chucknorris.io {\n fqdn {\n address-family all\n autopopulate enabled\n name api.chucknorris.io\n }\n}\nltm node /Common/app1_Node1 {\n address 192.168.1.22\n}\nltm node /Common/app1_Node2 {\n address 192.168.1.23\n}\nltm node /Common/app2_Node1 {\n address 192.168.2.22\n description app2_Node1\n}\nltm node /Common/app2_Node2 {\n address 192.168.2.23\n description app2_Node2\n}\nltm node /Common/app3_Node1 {\n address 192.168.1.52\n}\nltm node /Common/app3_Node2 {\n address 192.168.1.53\n}\nltm node /Common/app5_Node5 {\n address 192.168.10.23\n}\nltm policy /Common/app3_ltm_policy {\n rules {\n global_rule_1 { }\n }\n strategy /Common/first-match\n}\nltm policy /Common/app4_ltPolicy {\n controls { forwarding }\n description \"testing for pool extraction function\"\n requires { http }\n rules {\n css_pool_rule {\n actions {\n 0 {\n forward\n select\n pool /Common/css_pool\n }\n }\n conditions {\n 0 {\n http-uri\n scheme\n ends-with\n values { .css }\n }\n }\n }\n jpg_pool_rule {\n actions {\n 0 {\n forward\n select\n pool /Common/jpg.pool\n }\n }\n conditions {\n 0 {\n http-uri\n query-string\n ends-with\n values { .jpg }\n }\n }\n ordinal 1\n }\n js_pool_rule {\n actions {\n 0 {\n forward\n select\n pool /Common/js.io_t80_pool\n }\n }\n conditions {\n 0 {\n http-uri\n scheme\n ends-with\n values { .js }\n }\n }\n ordinal 2\n }\n txt_node {\n actions {\n 0 {\n forward\n select\n node 10.10.10.1\n }\n }\n conditions {\n 0 {\n http-uri\n scheme\n ends-with\n values { .txt }\n }\n }\n ordinal 3\n }\n }\n strategy /Common/first-match\n}\nltm pool /Common/app1_t80_pool {\n members {\n /Common/app1_Node1:80 {\n address 192.168.1.22\n }\n /Common/app1_Node2:80 {\n address 192.168.1.23\n }\n }\n monitor /Common/http and /Common/tcp\n}\nltm pool /Common/app2_t80_pool {\n load-balancing-mode least-connections-member\n members {\n /Common/app2_Node1:80 {\n address 192.168.2.22\n }\n /Common/app2_Node2:80 {\n address 192.168.2.23\n }\n }\n monitor /Common/global_http_monitor and /Common/global_https_monitor\n}\nltm pool /Common/app3_t8443_pool {\n load-balancing-mode least-connections-member\n members {\n /Common/app3_Node1:8443 {\n address 192.168.1.52\n }\n /Common/app3_Node2:8443 {\n address 192.168.1.53\n }\n }\n monitor /Common/app1_tcp_half_open_quick_monitor and /Common/http_head_f5 and /Common/http2_head_f5 and /Common/http and /Common/tcp_half_open\n}\nltm pool /Common/app4_pool {\n members {\n /Common/api.chucknorris.io:443 {\n fqdn {\n autopopulate enabled\n name api.chucknorris.io\n }\n }\n }\n}\nltm pool /Common/css_pool { }\nltm pool /Common/jpg.pool { }\nltm pool /Common/js.io_t80_pool { }\nltm rule /Common/app3_rule {\n#comment\n\nwhen HTTP_REQUEST {\n # add more here\n}\n}\nltm rule /Common/app3_rule2 {\n#comment\n\nwhen HTTP_REQUEST {\n # ben test 444\n}\n}\nltm rule /Common/app3_rule3 {\n# app3_rule3 header\n\nwhen SERVERSSL_DATA {\n # got something from server\n}\n}\nltm rule /Common/app4_pool_rule {\n### test rule for corkscrew\n\n # \n\nwhen HTTP_REQUEST {\n\n # pool reference by variable declaration\n set html-pool web1Pool\n\n if { [HTTP::path] ends_with \"*.css\" }{\n\n # regular pool refernce\n pool css_pool\n\n } elseif { [HTTP::path] ends_with \"*.jpg\" }{\n\n # pool member refernce\n pool jpg.pool member 10.10.10.1 80\n\n } elseif { [HTTP::path] ends_with \"*.js\" }{\n\n # another pool reference with special characters\n pool js.io_t80_pool \n\n } elseif { [HTTP::path] ends_with \"*.xx\" }{\n\n # pool reference not in tmos config\n ### *** seems the gui won't let you attach an irule to a vs with a pool that doesn't exist\n #pool missing_pool\n\n } elseif { [HTTP::path] ends_with \"*.txt\" }{\n\n # node reference\n node 10.10.10.1 80\n\n } else {\n\n # pool referenced by variable\n pool $html-pool\n\n }\n}\n}\nltm rule /Common/app4_pool_rule2 {\n\n}\nltm snat-translation /Common/192.168.1.51 {\n address 192.168.1.51\n inherited-traffic-group true\n traffic-group /Common/traffic-group-1\n}\nltm snatpool /Common/app3_snat_pool {\n members {\n /Common/192.168.1.51\n }\n}\nltm virtual /Common/app1_t80_vs {\n creation-time 2020-09-17:08:50:22\n destination /Common/192.168.1.21:80\n ip-protocol tcp\n last-modified-time 2020-09-17:08:51:07\n mask 255.255.255.255\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/_sys_https_redirect\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address enabled\n translate-port enabled\n}\nltm virtual /Common/app1_t443_vs {\n destination /Common/192.168.1.21:443\n ip-protocol tcp\n last-modified-time 2020-09-18:10:05:54\n mask 255.255.255.255\n pool /Common/app1_t80_pool\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n}\nltm virtual /Common/app2_t80_vs {\n creation-time 2020-09-17:08:50:22\n destination /Common/192.168.2.21:80\n ip-protocol tcp\n last-modified-time 2020-09-17:08:51:07\n mask 255.255.255.255\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/_sys_https_redirect\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address enabled\n translate-port enabled\n}\nltm virtual /Common/app2_t443_vs {\n destination /Common/192.168.2.21:443\n ip-protocol tcp\n last-modified-time 2020-09-18:10:05:47\n mask 255.255.255.255\n pool /Common/app2_t80_pool\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n}\nltm virtual /Common/app3_t8443_vs {\n destination /Common/192.168.1.51:8443\n fallback-persistence /Common/app3_srcAddr_persist\n ip-protocol tcp\n last-modified-time 2020-09-17:12:45:40\n mask 255.255.255.255\n persist {\n /Common/app3_cookie {\n default yes\n }\n }\n policies {\n /Common/app3_ltm_policy { }\n }\n pool /Common/app3_t8443_pool\n profiles {\n /Common/app3_clientssl {\n context clientside\n }\n /Common/app3_serverssl {\n context serverside\n }\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/app3_rule\n /Common/app3_rule2\n /Common/app3_rule3\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n pool /Common/app3_snat_pool\n type snat\n }\n translate-address enabled\n translate-port enabled\n}\nltm virtual /Common/app4_t80_vs {\n description \"test pool references in irule extration and ltp\"\n destination /Common/192.168.2.25:80\n ip-protocol tcp\n last-modified-time 2020-10-07:07:28:35\n mask 255.255.255.255\n policies {\n /Common/app4_ltPolicy { }\n }\n pool /Common/app4_pool\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/_sys_https_redirect\n /Common/app4_pool_rule\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address enabled\n translate-port enabled\n}\nltm virtual /Common/forwarder_net_0.0.0.0 {\n destination /Common/0.0.0.0:0\n ip-forward\n mask any\n profiles {\n /Common/fastl4_loose { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address disabled\n translate-port disabled\n}\nltm virtual-address /Common/0.0.0.0 {\n address any\n arp disabled\n icmp-echo disabled\n mask any\n traffic-group /Common/traffic-group-1\n}\nltm virtual-address /Common/192.168.1.21 {\n address 192.168.1.21\n arp enabled\n mask 255.255.255.255\n traffic-group /Common/traffic-group-1\n}\nltm virtual-address /Common/192.168.1.51 {\n address 192.168.1.51\n arp enabled\n mask 255.255.255.255\n traffic-group /Common/traffic-group-1\n}\nltm virtual-address /Common/192.168.2.21 {\n address 192.168.2.21\n arp enabled\n mask 255.255.255.255\n traffic-group /Common/traffic-group-1\n}\nltm virtual-address /Common/192.168.2.25 {\n address 192.168.2.25\n arp enabled\n mask 255.255.255.255\n traffic-group /Common/traffic-group-1\n}\nltm auth radius-server /Common/system_auth_name1 {\n secret $M$mn$9uYx+bTjLD8YSGZAUEfFwHvpSDwZsL25kZxdn5NZmCI=\n server 10.200.244.1\n}\nltm classification auto-update settings {\n auto-update-interval weekly\n enabled no\n}\nltm data-group internal /Common/____appsvcs_declaration-1601897418975 {\n description \"f5 AS3 declaration (see info in record 0)\"\n records {\n 0 {\n data \"date^2020-10-05T11:30:18.975Z|id^1601897415002|tenants^|blocks^1\"\n }\n 1 {\n data eNoNzL0OwyAMBOB38dwgm5TmZ6vatVvUoRsCS0GCEAHtEuXd6/G+O90BLtpaYYb78wEXqG7lZN9casibaK9QoXjwEuiGNE7DlQyiFvzu3jZ+Zc9SVo7sWvixFC5vreQotwfY4lbRJSSuzaZdpho1doQdmoVo7nGmUU2D+cB5/gEMbipT\n }\n }\n type integer\n}\nltm data-group internal /Common/____appsvcs_declaration-1601900242421 {\n description \"f5 AS3 declaration (see info in record 0)\"\n records {\n 0 {\n data \"date^2020-10-05T12:17:22.421Z|id^autogen_6c3dbac3-4624-47e2-8ed7-3932d3c1d9b2|tenants^foo|blocks^1\"\n }\n 1 {\n data eNp1kM1uwjAQhN/F5ySynQAlN1SuSEilPbRCkbEXsOQ/2Q4XlHfvmlYUVa2PM+Odb/dKpBEpkZ6s1s+kIkmewYo3iEl7h2rbcNpQNI7ek/56T+/ACZdRV3AUo8npdb0dZvgeQ6sQjJYil1EVyWCDERnQGFUoXRAvWsJGaPf46+VLHnAihi465lGYlVIRUgIMfBC25M2MNrxhZH9PbH3MpC8IFQneG5z0m23Yos7IVP3nPFAUAeutdzr7eKvV0oZSaMEe4CZdbztA/JuOl/D3kj90036akEArLBFj9idww1y26iBkW3dz3tXdAnj9BGpRt8uWq1YytTxwhBmDwvttvCo3TGBAZn0BNKR3OXqTygIiyjOqO20hZYHEPeGU05rRms52jPds0XPedJy9k2n6BPXOoeQ=\n }\n }\n type integer\n}\nltm data-group internal /Common/____appsvcs_declaration-1601900272772 {\n description \"f5 AS3 declaration (see info in record 0)\"\n records {\n 0 {\n data \"date^2020-10-05T12:17:52.772Z|id^1601900269131|tenants^|blocks^1\"\n }\n 1 {\n data eNoNzDELwyAQBeD/cnMjd4ZE4lbatVvo0E30IILGoLZLyH/vje97j3eCT641sHB/PuAGzW+c3Ztri2UXHRUqFI9BAs1IC6KeFxpJ8HsE1/lVAkvZOLHv8cdS+LL3WpLcnuCq30TXmLl1lw+ZatQ4EA44raQtGTtpZYz+wHX9AQqTKk0=\n }\n }\n type integer\n}\nltm data-group internal /Common/____appsvcs_declaration-1602008840967 {\n description \"f5 AS3 declaration (see info in record 0)\"\n records {\n 0 {\n data \"date^2020-10-06T18:27:20.967Z|id^autogen_411122fd-f96d-45e5-9f42-5231b42fb590|tenants^foo|blocks^1\"\n }\n 1 {\n data eNp1UctuwjAQ/Befkyg2CTS5oXJFQirtoRWKjL0BS37Jdrig/HvXtKKoan2cGe/M7F6J0DxG0pP15pkUJIozGP4GISpnEV1UrK5qJEbnSH+9q/dguU2ISxj5pFN83eyGFt+jaO29VoKnPKogCYzXPAESk/TZC8JFCdhyZR9/vXzBA05E0UWFNHG9ljJAjICCD0I7VrV1xSpKDnfFzoVE+hyhIN45jZN+Zxt2iFMyF/8xDykygPbGWZVcuNkqYXw2NGCOcIOutw4Q/k7Hsvi75E+6+TDPmEBJNOFTciewQ0MpZWyU5dgtZdm00Jbd2LCyZQt6bNh4bLt8g8lL3N/WybzDCBpEUhdAQjibgtMxF+BBnBHdKwMxcUzcE1azuqR1WS/39Klnqx5v2i1X72SePwG436Fo\n }\n }\n type integer\n}\nltm data-group internal /Common/__appsvcs_update {\n type string\n}\nltm data-group internal /Common/appsvcs/dataStore {\n records {\n as3_async_records0 {\n data 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\n }\n }\n type string\n}\nltm data-group internal /Common/atgTeem/datastore {\n type string\n}\nltm data-group internal /Common/f5-appsvcs-templates/config {\n records {\n config0 {\n data eNqrVkpJzUktSU0JSc0tyEksSQ1OLSlWsopWKkktLlGKrQUAx+YL5Q==\n }\n }\n type string\n}\nltm data-group internal /Common/f5-appsvcs-templates/dataStore {\n records {\n bigip-fast-templates0 {\n data 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\n }\n examples0 {\n data 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\n }\n goodFastTemplates0 {\n data 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\n }\n }\n type string\n}\nltm monitor dns /Common/dubNameTst1_monitor {\n accept-rcode no-error\n adaptive disabled\n answer-contains query-type\n defaults-from /Common/dns\n interval 5\n qname query.test.com\n qtype a\n recv none\n time-until-up 0\n timeout 16\n}\nltm monitor http /Common/global_http_monitor {\n adaptive disabled\n defaults-from /Common/http\n interval 5\n ip-dscp 0\n recv \"ok 200\"\n recv-disable none\n send \"GET /anywebsite.com\\r\\n\"\n time-until-up 0\n timeout 16\n}\nltm monitor https /Common/global_https_monitor {\n adaptive disabled\n defaults-from /Common/https\n interval 5\n ip-dscp 0\n recv \"201 continue\"\n recv-disable none\n send \"GET /any-secure-website.com\\r\\n\"\n time-until-up 0\n timeout 16\n}\nltm monitor tcp /Common/test_tcp_monitor {\n adaptive disabled\n defaults-from /Common/tcp\n interval 5\n ip-dscp 0\n recv \"receive a tcp string\"\n recv-disable none\n send \"send a tcp string\"\n time-until-up 0\n timeout 16\n}\nltm monitor tcp-half-open /Common/app1_tcp_half_open_quick_monitor {\n defaults-from /Common/tcp_half_open\n destination *:*\n interval 1\n time-until-up 0\n timeout 4\n}\nltm monitor udp /Common/test_udp_monitor {\n adaptive disabled\n debug no\n defaults-from /Common/udp\n interval 5\n recv recieve-what?\n recv-disable none\n send \"default send string\"\n time-until-up 0\n timeout 16\n}\nltm persistence cookie /Common/app3_cookie {\n always-send disabled\n app-service none\n cookie-encryption disabled\n cookie-name app3CustomeCookie\n defaults-from /Common/cookie\n encrypt-cookie-poolname disabled\n expiration 0\n httponly enabled\n method insert\n override-connection-limit disabled\n secure enabled\n}\nltm persistence source-addr /Common/app3_srcAddr_persist {\n app-service none\n defaults-from /Common/source_addr\n hash-algorithm default\n map-proxies enabled\n mask none\n match-across-pools disabled\n match-across-services disabled\n match-across-virtuals disabled\n override-connection-limit disabled\n timeout 180\n}\nltm profile client-ssl /Common/app2_clientssl {\n app-service none\n cert-key-chain {\n default {\n cert /Common/default.crt\n key /Common/default.key\n }\n }\n defaults-from /Common/clientssl\n inherit-ca-certkeychain true\n inherit-certkeychain true\n}\nltm profile client-ssl /Common/app3_clientssl {\n app-service none\n cert-key-chain {\n default {\n cert /Common/default.crt\n key /Common/default.key\n }\n }\n defaults-from /Common/clientssl\n inherit-ca-certkeychain true\n inherit-certkeychain true\n}\nltm profile client-ssl /Common/test1 {\n app-service none\n cert-key-chain {\n default {\n cert /Common/default.crt\n key /Common/default.key\n }\n }\n defaults-from /Common/clientssl\n inherit-ca-certkeychain true\n inherit-certkeychain true\n}\nltm profile fastl4 /Common/fastl4_loose {\n app-service none\n loose-close enabled\n loose-initialization enabled\n reset-on-timeout disabled\n syn-cookie-enable disabled\n}\nltm profile ftp /Common/global_http_monitor {\n app-service none\n defaults-from /Common/ftp\n}\nltm profile http /Common/dubNameTst1_profile {\n app-service none\n defaults-from /Common/http\n proxy-type reverse\n}\nltm profile http-compression /Common/dubName.Tst1_profile {\n app-service none\n defaults-from /Common/httpcompression\n}\nltm profile server-ssl /Common/app3_serverssl {\n app-service none\n defaults-from /Common/serverssl\n}\nltm profile server-ssl /Common/test2 {\n app-service none\n defaults-from /Common/serverssl\n}\nnet dns-resolver /Common/f5-aws-dns {\n forward-zones {\n amazonaws.com {\n nameservers {\n 8.8.8.8:53 { }\n }\n }\n idservice.net {\n nameservers {\n 8.8.8.8:53 { }\n }\n }\n }\n route-domain /Common/0\n}\nnet ipsec ike-daemon /Common/ikedaemon {\n log-publisher /Common/default-ipsec-log-publisher\n}\npem global-settings analytics { }\npem global-settings gx { }\npem global-settings policy { }\nsecurity dos ipv6-ext-hdr /Common/dos-ipv6-ext-hdr {\n frame-types { auth dstopt esp frag hbh mobility route }\n}\nsecurity dos udp-portlist /Common/dos-udp-portlist {\n list-type exclude-listed-ports\n}\nsecurity firewall config-change-log {\n log-publisher /Common/local-db-publisher\n}\nsecurity protocol-inspection compliance-map /Common/map_10426 {\n insp-id 10426\n key-type int\n value-type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/allowed_list {\n insp-id 10229\n type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/allowed_list {\n insp-id 10430\n type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/allowed_list {\n insp-id 10431\n type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/allowed_list {\n insp-id 10232\n type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/argument_len_max {\n insp-id 10905\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/command_argument_len_max {\n insp-id 10609\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/command_len_max {\n insp-id 10905\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/command_len_max {\n insp-id 10707\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/command_len_max {\n insp-id 10609\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/command_parameter_len_max {\n insp-id 10707\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/disallowed_list {\n insp-id 10229\n type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/disallowed_list {\n insp-id 10430\n type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/disallowed_list {\n insp-id 10431\n type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/disallowed_list {\n insp-id 10232\n type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/error_message_max {\n insp-id 10102\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/file_name_max {\n insp-id 10102\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/file_type_max {\n insp-id 10102\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/header_name_len_max {\n insp-id 11016\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/header_name_len_max {\n insp-id 11223\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/header_value_len_max {\n insp-id 11016\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/header_value_len_max {\n insp-id 11223\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/method_len_max {\n insp-id 11016\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/method_len_max {\n insp-id 11223\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/option_name_max {\n insp-id 10102\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/option_value_max {\n insp-id 10102\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/response_argument_len_max {\n insp-id 10609\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/response_code_len_max {\n insp-id 10609\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/response_parameter_len_max {\n insp-id 10707\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/status_code_len_max {\n insp-id 11016\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/status_code_len_max {\n insp-id 11223\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/status_len_max {\n insp-id 10707\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/status_reason_len_max {\n insp-id 11016\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/status_reason_len_max {\n insp-id 11223\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/tag_len_max {\n insp-id 10905\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/uri_len_max {\n insp-id 11016\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/uri_len_max {\n insp-id 11223\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/version_len_max {\n insp-id 11016\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/version_len_max {\n insp-id 11223\n type int\n}\nsecurity scrubber profile /Common/scrubber-profile-default {\n advertisement-ttl 300\n}\nsys compatibility-level {\n level 0\n}\nsys management-ovsdb {\n bfd-disabled\n bfd-route-domain none\n ca-cert-file none\n cert-file none\n cert-key-file none\n disabled\n flooding-type replicator\n log-level info\n logical-routing-type none\n tunnel-maintenance-mode active\n}\nsys diags ihealth {\n expiration 30\n no-ihealth false\n options none\n password none\n user none\n}\nsys ecm cloud-provider /Common/aws-ec2 {\n description \"The aws-ec2 parameters\"\n property-template {\n account { }\n availability-zone {\n valid-values { a b c d }\n }\n instance-type {\n valid-values { t2.micro t2.small t2.medium m3.medium m3.large m3.xlarge m3.2xlarge c3.large c3.xlarge c3.2xlarge c3.4xlarge c3.8xlarge r3.large r3.xlarge r3.2xlarge r3.4xlarge r3.8xlarge }\n }\n region {\n valid-values { us-east-1 us-west-1 us-west-2 sa-east-1 eu-west-1 eu-central-1 ap-southeast-2 ap-southeast-1 ap-northeast-1 }\n }\n }\n}\nsys ecm cloud-provider /Common/dnet {\n description \"The dnet parameters\"\n}\nsys ecm cloud-provider /Common/vsphere {\n description \"The vsphere parameters\"\n property-template {\n cloud-host-ip { }\n dhcp-network-name { }\n end-point-url { }\n node-name { }\n }\n}\nsys file ssl-key /Common/f5_api_com.key {\n cache-path /config/filestore/files_d/Common_d/certificate_key_d/:Common:f5_api_com.key_63136_1\n passphrase $M$dw$gJ3HaeiGt0skpPsA6hli9PsO/8yo5M6FkI1CHOPiN4GgC/h5Tln6v01SC2727mtleKP9Hw/Vnwio8eOiXi4umiV+IidOxMwtZinL8WYrqX0=\n revision 1\n source-path file:///config/ssl/ssl.key/f5_api_com.key\n}\nsys software update {\n auto-check enabled\n auto-phonehome disabled\n frequency weekly\n}\nwom endpoint-discovery { }\n" - }, - { - "fileName": "config/bigip_base.conf", - "size": 14543, - "content": "#TMSH-VERSION: 15.1.0.4\n\nauth partition Common {\n description \"Updated by AS3 at Thu, 17 Sep 2020 15:14:36 GMT\"\n}\nauth partition foo {\n description \"Updated by AS3 at Tue, 06 Oct 2020 18:27:20 GMT\"\n}\nauth partition test { }\nauth password-policy {\n lockout-duration 10\n manual-unlock-disabled true\n policy-enforcement disabled\n}\ncli global-settings {\n idle-timeout 20\n}\ncm cert /Common/dtca-bundle.crt {\n cache-path /config/filestore/files_d/Common_d/trust_certificate_d/:Common:dtca-bundle.crt_62982_2\n checksum SHA1:3389:19284e0ef6ad87b29507ec301eae079e0b59db5f\n revision 2\n}\ncm cert /Common/dtca.crt {\n cache-path /config/filestore/files_d/Common_d/trust_certificate_d/:Common:dtca.crt_62978_1\n checksum SHA1:1289:fff6e3324bb50dc77143169cbafcd2d79bbed17d\n revision 1\n}\ncm cert /Common/dtdi.crt {\n cache-path /config/filestore/files_d/Common_d/trust_certificate_d/:Common:dtdi.crt_62974_1\n checksum SHA1:1220:f989b434582f4bb9e185c5d816dc0ff75d16698a\n revision 1\n}\ncm device /Common/devCloud01.benlab.io {\n active-modules { \"APM, Base, VE GBB (500 CCU, 2500 Access Sessions)|MEYUYAE-LYUGYGN|Anti-Virus Checks|Base Endpoint Security Checks|Firewall Checks|Network Access|Secure Virtual Keyboard|APM, Web Application|Machine Certificate Checks|Protected Workspace|Remote Desktop|App Tunnel\" \"Best Bundle, VE-5G|COTNXDC-CXZIFUK|Rate Shaping|DNSSEC|GTM Licensed Objects, Unlimited|DNS Licensed Objects, Unlimited|DNS Rate Fallback, 250K|GTM Rate Fallback, 250K|GTM Rate, 250K|DNS Rate Limit, 250K QPS|Routing Bundle, VE|ASM, VE|DNS-GTM, Base, 5Gbps|SSL, VE|Max Compression, VE|AFM, VE|Exclusive Version, v12.1.X - 18.X|VE, Carrier Grade NAT (AFM ONLY)|PSM, VE\" }\n base-mac 00:50:56:96:f4:cb\n build 0.0.6\n cert /Common/dtdi.crt\n chassis-id 42167068-f586-7b5f-1e7aac1ada72\n edition \"Point Release 4\"\n hostname devCloud01.benlab.io\n key /Common/dtdi.key\n management-ip 10.200.244.110\n marketing-name \"BIG-IP Virtual Edition\"\n optional-modules { \"Advanced Protocols, VE\" \"App Mode (TMSH Only, No Root/Bash)\" \"ASM to AWF Upgrade, VE-3G\" \"Best, 5 Gbps -10 Gbps Upgrade\" \"BIG-IP VE, Multicast Routing\" \"BIG-IP VE, Privileged User Access, 100 Endpoints\" \"BIG-IP VE, Privileged User Access, 1000 Endpoints\" \"BIG-IP VE, Privileged User Access, 250 Endpoints\" \"BIG-IP VE, Privileged User Access, 50 Endpoints\" \"BIG-IP VE, Privileged User Access, 500 Endpoints\" \"CGN, ADD-VE, 5G\" \"Concurrent Users and Access Sessions, VE\" \"DataSafe, VE-5G\" \"DNS and GTM (250 QPS), VE\" \"External Interface and Network HSM, VE\" \"FIPS 140-2 Level 1, BIG-IP VE-1G to 10G\" \"Intrusion Prevention System, VE-5G\" \"IP Intelligence, 1Yr, VE-1G/VE-3G/VE-5G\" \"IP Intelligence, 3Yr, VE-1G/VE-3G/VE-5G\" \"IPS, 1Yr, VE-1G / VE-3G / VE-5G\" \"IPS, 3Yr, VE-1G / VE-3G / VE-5G\" \"PEM, ADD-VE, 5G\" \"Secure Web Gateway, VE-3G-10G, 10000 Sessions, 1Yr\" \"Secure Web Gateway, VE-3G-10G, 10000 Sessions, 3Yr\" \"Secure Web Gateway, VE-3G-10G, 5000 Sessions, 1Yr\" \"Secure Web Gateway, VE-3G-10G, 5000 Sessions, 3Yr\" \"SSL Orchestrator, VE (3G/5G/10G)\" \"URL Filtering, VE-3G-10G, 10000 Sessions, 1Yr\" \"URL Filtering, VE-3G-10G, 10000 Sessions, 3Yr\" \"URL Filtering, VE-3G-10G, 5000 Sessions, 1Yr\" \"URL Filtering, VE-3G-10G, 5000 Sessions, 3Yr\" \"VE SSL Compression Offload, Medium\" \"VPN Users\" }\n platform-id Z100\n product BIG-IP\n self-device true\n time-zone US/Central\n version 15.1.0.4\n}\ncm device-group /Common/device_trust_group {\n auto-sync enabled\n devices {\n /Common/devCloud01.benlab.io { }\n }\n hidden true\n network-failover disabled\n}\ncm device-group /Common/gtm {\n devices {\n /Common/devCloud01.benlab.io { }\n }\n hidden true\n network-failover disabled\n}\ncm key /Common/dtca.key {\n cache-path /config/filestore/files_d/Common_d/trust_certificate_key_d/:Common:dtca.key_62980_1\n checksum SHA1:1704:d108f95e23990ea14a618354af37dcf35dfb3561\n revision 1\n}\ncm key /Common/dtdi.key {\n cache-path /config/filestore/files_d/Common_d/trust_certificate_key_d/:Common:dtdi.key_62976_1\n checksum SHA1:1704:a9772d8ba23f474da7881461c1c5900ea74bd21e\n revision 1\n}\ncm traffic-group /Common/traffic-group-1 {\n unit-id 1\n}\ncm traffic-group /Common/traffic-group-local-only { }\ncm trust-domain /Common/Root {\n ca-cert /Common/dtca.crt\n ca-cert-bundle /Common/dtca-bundle.crt\n ca-devices { /Common/devCloud01.benlab.io }\n ca-key /Common/dtca.key\n guid ce731326-5456-423a-a14900505696f4cb\n status standalone\n trust-group /Common/device_trust_group\n}\nnet interface 1.0 {\n media-fixed 10000T-FD\n}\nnet port-list /Common/_sys_self_allow_tcp_defaults {\n ports {\n 22 { }\n 53 { }\n 161 { }\n 443 { }\n 1029-1043 { }\n 4353 { }\n }\n}\nnet port-list /Common/_sys_self_allow_udp_defaults {\n ports {\n 53 { }\n 161 { }\n 520 { }\n 1026 { }\n 4353 { }\n }\n}\nnet route-domain /Common/0 {\n id 0\n vlans {\n /Common/http-tunnel\n /Common/socks-tunnel\n /Common/internal\n }\n}\nnet self-allow {\n defaults {\n igmp:0\n ospf:0\n pim:0\n tcp:161\n tcp:22\n tcp:4353\n tcp:53\n tcp:8443\n udp:1026\n udp:161\n udp:4353\n udp:520\n udp:53\n }\n}\nnet stp /Common/cist {\n interfaces {\n 1.0 {\n external-path-cost 500\n internal-path-cost 500\n }\n }\n vlans {\n /Common/internal\n }\n}\nnet vlan /Common/internal {\n interfaces {\n 1.0 { }\n }\n tag 4094\n}\nnet fdb tunnel /Common/http-tunnel { }\nnet fdb tunnel /Common/socks-tunnel { }\nnet fdb vlan /Common/internal { }\nnet tunnels tunnel /Common/http-tunnel {\n description \"Tunnel for http-explicit profile\"\n profile /Common/tcp-forward\n}\nnet tunnels tunnel /Common/socks-tunnel {\n description \"Tunnel for socks profile\"\n profile /Common/tcp-forward\n}\nsecurity device-id attribute /Common/att01 {\n id 1\n}\nsecurity device-id attribute /Common/att02 {\n id 2\n}\nsecurity device-id attribute /Common/att03 {\n id 3\n}\nsecurity device-id attribute /Common/att04 {\n id 4\n}\nsecurity device-id attribute /Common/att05 {\n id 5\n}\nsecurity device-id attribute /Common/att06 {\n id 6\n}\nsecurity device-id attribute /Common/att07 {\n id 7\n}\nsecurity device-id attribute /Common/att08 {\n id 8\n}\nsecurity device-id attribute /Common/att09 {\n id 9\n}\nsecurity device-id attribute /Common/att10 {\n id 10\n}\nsecurity device-id attribute /Common/att11 {\n id 11\n}\nsecurity device-id attribute /Common/att12 {\n id 12\n}\nsecurity device-id attribute /Common/att13 {\n id 13\n}\nsecurity device-id attribute /Common/att14 {\n id 14\n}\nsecurity device-id attribute /Common/att15 {\n id 15\n}\nsecurity device-id attribute /Common/att16 {\n id 16\n}\nsecurity device-id attribute /Common/att17 {\n id 17\n}\nsecurity device-id attribute /Common/att18 {\n id 18\n}\nsecurity device-id attribute /Common/att19 {\n id 19\n}\nsecurity device-id attribute /Common/att20 {\n id 20\n}\nsecurity device-id attribute /Common/att21 {\n id 21\n}\nsecurity device-id attribute /Common/att22 {\n id 22\n}\nsecurity device-id attribute /Common/att23 {\n id 23\n}\nsecurity device-id attribute /Common/att24 {\n id 24\n}\nsecurity device-id attribute /Common/att25 {\n id 25\n}\nsecurity device-id attribute /Common/att26 {\n id 26\n}\nsecurity device-id attribute /Common/att27 {\n id 27\n}\nsecurity device-id attribute /Common/att28 {\n id 28\n}\nsecurity device-id attribute /Common/att29 {\n id 29\n}\nsecurity device-id attribute /Common/att30 {\n id 30\n}\nsecurity device-id attribute /Common/att31 {\n id 31\n}\nsecurity device-id attribute /Common/att32 {\n id 32\n}\nsecurity device-id attribute /Common/att33 {\n id 33\n}\nsecurity device-id attribute /Common/att34 {\n id 34\n}\nsecurity device-id attribute /Common/att35 {\n id 35\n}\nsecurity device-id attribute /Common/att36 {\n id 36\n}\nsecurity device-id attribute /Common/att37 {\n id 37\n}\nsecurity device-id attribute /Common/att38 {\n id 38\n}\nsecurity device-id attribute /Common/att39 {\n id 39\n}\nsecurity firewall config-entity-id /Common/uuid_entity_id {\n entity-id 7402404740565079421\n}\nsecurity firewall port-list /Common/_sys_self_allow_tcp_defaults {\n ports {\n 22 { }\n 53 { }\n 161 { }\n 443 { }\n 1029-1043 { }\n 4353 { }\n }\n}\nsecurity firewall port-list /Common/_sys_self_allow_udp_defaults {\n ports {\n 53 { }\n 161 { }\n 520 { }\n 1026 { }\n 4353 { }\n }\n}\nsecurity firewall rule-list /Common/_sys_self_allow_all {\n rules {\n _sys_allow_all {\n action accept\n ip-protocol any\n }\n }\n}\nsecurity firewall rule-list /Common/_sys_self_allow_defaults {\n rules {\n _sys_allow_tcp_defaults {\n action accept\n ip-protocol tcp\n destination {\n port-lists {\n /Common/_sys_self_allow_tcp_defaults\n }\n }\n }\n _sys_allow_udp_defaults {\n action accept\n ip-protocol udp\n destination {\n port-lists {\n /Common/_sys_self_allow_udp_defaults\n }\n }\n }\n _sys_allow_ospf_defaults {\n action accept\n ip-protocol ospf\n }\n _sys_allow_pim_defaults {\n action accept\n ip-protocol pim\n }\n _sys_allow_igmp_defaults {\n action accept\n ip-protocol igmp\n }\n }\n}\nsecurity firewall rule-list /Common/_sys_self_allow_management {\n rules {\n _sys_allow_ssh {\n action accept\n ip-protocol tcp\n destination {\n ports {\n 22 { }\n }\n }\n }\n _sys_allow_web {\n action accept\n ip-protocol tcp\n destination {\n ports {\n 443 { }\n }\n }\n }\n }\n}\nsecurity ip-intelligence policy /Common/ip-intelligence { }\nsecurity shared-objects port-list /Common/_sys_self_allow_tcp_defaults {\n ports {\n 22 { }\n 53 { }\n 161 { }\n 443 { }\n 1029-1043 { }\n 4353 { }\n }\n}\nsecurity shared-objects port-list /Common/_sys_self_allow_udp_defaults {\n ports {\n 53 { }\n 161 { }\n 520 { }\n 1026 { }\n 4353 { }\n }\n}\nsys dns {\n description configured-by-dhcp\n name-servers { 192.168.200.7 192.168.200.8 }\n search { benlab.io }\n}\nsys folder / {\n device-group none\n hidden false\n inherited-devicegroup false\n inherited-traffic-group false\n traffic-group /Common/traffic-group-1\n}\nsys folder /Common {\n device-group none\n hidden false\n inherited-devicegroup true\n inherited-traffic-group true\n traffic-group /Common/traffic-group-1\n}\nsys folder /Common/Drafts {\n device-group none\n hidden false\n inherited-devicegroup true\n inherited-traffic-group true\n traffic-group /Common/traffic-group-1\n}\nsys folder /Common/EPSEC {\n device-group none\n hidden false\n inherited-devicegroup true\n inherited-traffic-group true\n traffic-group /Common/traffic-group-1\n}\nsys folder /Common/EPSEC/Status {\n device-group none\n hidden false\n inherited-devicegroup true\n inherited-traffic-group true\n traffic-group /Common/traffic-group-1\n}\nsys folder /Common/appsvcs {\n device-group none\n hidden false\n inherited-devicegroup true\n inherited-traffic-group true\n traffic-group /Common/traffic-group-1\n}\nsys folder /Common/atgTeem {\n device-group none\n hidden false\n inherited-devicegroup true\n inherited-traffic-group true\n traffic-group /Common/traffic-group-1\n}\nsys folder /Common/f5-appsvcs-templates {\n device-group none\n hidden false\n inherited-devicegroup true\n inherited-traffic-group true\n traffic-group /Common/traffic-group-1\n}\nsys folder /foo {\n device-group none\n hidden false\n inherited-devicegroup true\n inherited-traffic-group true\n traffic-group /Common/traffic-group-1\n}\nsys folder /foo/defaultsUDP_5555 {\n device-group none\n hidden false\n inherited-devicegroup true\n inherited-traffic-group true\n traffic-group /Common/traffic-group-1\n}\nsys folder /test {\n device-group none\n hidden false\n inherited-devicegroup true\n inherited-traffic-group true\n traffic-group /Common/traffic-group-1\n}\nsys global-settings {\n console-inactivity-timeout 1200\n file-whitelist-path-prefix \"{/var/local/scf} {/tmp/} {/shared/} {/config/} {/usr/share/aws/} {/var/config/rest/downloads/appsvcs_update.cli}\"\n gui-setup disabled\n hostname devCloud01.benlab.io\n mgmt-dhcp dhcpv6\n}\nsys httpd {\n auth-pam-idle-timeout 12000\n ssl-port 8443\n}\nsys management-dhcp /Common/sys-mgmt-dhcp-config {\n request-options { subnet-mask broadcast-address routers domain-name domain-name-servers ntp-servers interface-mtu }\n}\nsys management-ip 10.200.244.110/24 {\n description configured-statically\n}\nsys management-route /Common/default {\n description configured-statically\n gateway 10.200.244.1\n network default\n}\nsys ntp {\n timezone US/Central\n}\nsys provision apm {\n level nominal\n}\nsys provision avr {\n level nominal\n}\nsys provision ltm {\n level nominal\n}\nsys snmp {\n agent-addresses { tcp6:161 udp6:161 }\n communities {\n /Common/comm-public {\n community-name public\n source default\n }\n }\n disk-monitors {\n /Common/root {\n minspace 2000\n path /\n }\n /Common/var {\n minspace 10000\n path /var\n }\n }\n process-monitors {\n /Common/bigd {\n max-processes infinity\n process bigd\n }\n /Common/chmand {\n process chmand\n }\n /Common/httpd {\n max-processes infinity\n process httpd\n }\n /Common/mcpd {\n process mcpd\n }\n /Common/sod {\n process sod\n }\n /Common/tmm {\n max-processes infinity\n process tmm\n }\n }\n}\nsys dynad settings {\n development-mode false\n}\nsys fpga firmware-config {\n type standard-balanced-fpga\n}\nsys sflow global-settings http { }\nsys sflow global-settings vlan { }\nsys turboflex profile-config {\n type turboflex-adc\n}\n" - }, - { - "fileName": "config/partitions/test/bigip.conf", - "size": 341, - "content": "#TMSH-VERSION: 15.1.0.4\n\napm client-packaging /test/client-packaging { }\napm resource sandbox /test/citrix-client-package {\n base-uri /test/public/citrix\n description \"Sandbox for Citrix client package files\"\n}\napm resource sandbox /test/hosted-content {\n base-uri /test/public/share\n description \"Sandbox for static contents\"\n}\n" - }, - { - "fileName": "config/partitions/test/bigip_script.conf", - "size": 713, - "content": "#TMSH-VERSION: 15.1.0.4\n\nsys application template /test/A_test_up1 {\n actions {\n definition {\n html-help {\n -- insert html help text --\n }\n implementation {\n ### insert tmsh script ###\n }\n macro {\n }\n presentation {\n ### insert presentations stuff ###\n }\n role-acl { admin manager resource-admin }\n run-as none\n }\n }\n description none\n ignore-verification false\n requires-bigip-version-max none\n requires-bigip-version-min 11.6.0\n requires-modules none\n signing-key none\n tmpl-checksum none\n tmpl-signature none\n}\n" - }, - { - "fileName": "config/partitions/foo/bigip.conf", - "size": 1504, - "content": "#TMSH-VERSION: 15.1.0.4\n\napm client-packaging /foo/client-packaging { }\napm resource sandbox /foo/citrix-client-package {\n base-uri /foo/public/citrix\n description \"Sandbox for Citrix client package files\"\n}\napm resource sandbox /foo/hosted-content {\n base-uri /foo/public/share\n description \"Sandbox for static contents\"\n}\nltm node /foo/192.50.2.2 {\n address 192.50.2.2\n}\nltm pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1 {\n members {\n /foo/192.50.2.2:5555 {\n address 192.50.2.2\n metadata {\n source {\n value declaration\n }\n }\n }\n }\n min-active-members 1\n monitor min 1 of { /Common/gateway_icmp }\n}\nltm virtual /foo/defaultsUDP_5555/serviceMain {\n creation-time 2020-10-06:13:27:20\n description defaultsUDP_5555\n destination /foo/192.50.2.1:5555\n ip-protocol udp\n last-modified-time 2020-10-06:13:27:20\n mask 255.255.255.255\n persist {\n /Common/source_addr {\n default yes\n }\n }\n pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1\n profiles {\n /Common/udp { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n}\nltm virtual-address /foo/192.50.2.1 {\n address 192.50.2.1\n arp enabled\n inherited-traffic-group true\n mask 255.255.255.255\n traffic-group /Common/traffic-group-1\n}\n" - }, - { - "fileName": "config/bigip_script.conf", - "size": 6562, - "content": "#TMSH-VERSION: 15.1.0.4\n\ncli script /Common/__appsvcs_update {\nproc script::run {} {\nif {[catch {\ntmsh::modify ltm data-group internal __appsvcs_update records none\n} err]} {\ntmsh::create ltm data-group internal __appsvcs_update type string records none\n}\nif { [catch {\ntmsh::create auth partition foo default-route-domain 0\ntmsh::create sys folder /foo/defaultsUDP_5555/\ntmsh::begin_transaction\ntmsh::modify auth partition foo description \\\"Updated by AS3 at [clock format [clock seconds] -gmt true -format {%a, %d %b %Y %T %Z}]\\\"\ntmsh::create ltm virtual-address /foo/192.50.2.1 address 192.50.2.1 arp enabled icmp-echo enabled mask 255.255.255.255 route-advertisement disabled spanning disabled traffic-group default\ntmsh::create ltm virtual /foo/defaultsUDP_5555/serviceMain address-status yes auto-lasthop default connection-limit 0 description \\\"defaultsUDP_5555\\\" destination /foo/192.50.2.1:5555 ip-protocol udp last-hop-pool none mask 255.255.255.255 mirror disabled persist replace-all-with \\{ /Common/source_addr \\{ default yes \\} \\} pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1 policies none profiles replace-all-with \\{ /Common/udp \\{ context all \\} \\} service-down-immediate-action none source 0.0.0.0/0 source-address-translation \\{ type automap \\} rules none security-log-profiles none source-port preserve translate-address enabled translate-port enabled nat64 disabled vlans none vlans-disabled metadata none clone-pools none\ntmsh::create ltm node /foo/192.50.2.2 address 192.50.2.2\ntmsh::create ltm pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1 load-balancing-mode round-robin members replace-all-with \\{ /foo/192.50.2.2:5555 \\{ connection-limit 0 dynamic-ratio 1 fqdn \\{ autopopulate disabled \\} priority-group 0 rate-limit disabled ratio 1 state user-up session user-enabled metadata replace-all-with \\{ source \\{ value declaration \\} \\} \\} \\} min-active-members 1 monitor min 1 of \\{ /Common/gateway_icmp \\} reselect-tries 0 service-down-action none slow-ramp-time 10\ntmsh::commit_transaction\n} err] } {\ncatch { tmsh::cancel_transaction } e\nregsub -all {\"} $err {\\\"} err\ntmsh::modify ltm data-group internal __appsvcs_update records add \\{ error \\{ data \\\"$err\\\" \\} \\}\ncatch { tmsh::delete sys folder /foo/defaultsUDP_5555/ } e\ncatch { tmsh::delete auth partition foo } e\n}}\n}\nsys application template /Common/A_test_up1 {\n actions {\n definition {\n html-help {\n -- insert html help text --\n }\n implementation {\n ### insert tmsh script ###\n }\n macro {\n }\n presentation {\n ### insert presentations stuff ###\n }\n role-acl { admin manager resource-admin }\n run-as none\n }\n }\n description none\n ignore-verification false\n requires-bigip-version-max none\n requires-bigip-version-min 11.6.0\n requires-modules none\n signing-key none\n tmpl-checksum none\n tmpl-signature none\n}\nsys application template /Common/A_test_up12 {\n actions {\n definition {\n html-help {\n -- insert html help text --\n }\n implementation {\n ### 33333 ###\n }\n macro {\n }\n presentation {\n ### 33333 ###\n }\n role-acl { admin manager resource-admin }\n run-as none\n }\n }\n description none\n ignore-verification false\n requires-bigip-version-max none\n requires-bigip-version-min 11.6.0\n requires-modules none\n signing-key none\n tmpl-checksum none\n tmpl-signature none\n}\nsys application template /Common/forwarder_v0.1 {\n actions {\n definition {\n html-help {\n }\n implementation {\n package require iapp 1.0.0\niapp::template start\n\n# assign app name that user typed in as a variable\nset app $tmsh::app_name\n\nset cdate [clock format [clock seconds] -format \"%Y-%m-%d:%H:%M\"]\n\n# all \"puts\" statements log iapp execution stuff to /var/tmp/scriptd.out\nputs \"Executing ${app} iApp - ${cdate}\"\n\n# tmsh::log statements log to /var/log/ltm\ntmsh::log \"Executing ${app} iApp - ${cdate}\"\n\n\nset fastl4 [iapp::conf create ltm profile fastl4 fastl4_loose \\\n reset-on-timeout disabled \\\n loose-close enabled \\\n loose-initialization enabled \\\n syn-cookie-enable disabled ]\n\niapp::conf create ltm virtual forwarder_net_0.0.0.0 \\\n description \\\"new comment\\\" \\\n destination any:any \\\n ip-forward \\\n profiles replace-all-with \\{ ${fastl4} \\}\n\n\n\n# create ltm virtual forwarding_net_0.0.0.0 destination any:any ip-forward profiles replace-all-with { fastL4 }\n\n\n# ltm profile fastl4 fastl4_loose {\n# app-service none\n# defaults-from fastL4\n# loose-close disabled\n# loose-initialization enabled\n# pva-acceleration none\n# reset-on-timeout disabled\n# syn-cookie-enable disabled\n# syn-cookie-whitelist disabled\n# }\n\n\niapp::template stop\n }\n macro {\n }\n presentation {\n section options {\n choice display_help display \"xlarge\" default \"hide\"\n optional ( options.display_help == \"full\" ) {\n message display_help_max\n }\n}\n\nsection main {\n message hello\n}\n\nsection todo {\n message what\n optional ( options.display_help == \"full\" ) {\n message todo1\n\n }\n}\n\ntext {\n main \"Virtual Forwarder net_0.0.0.0\"\n main.hello \"Nothing to Configure\" \"This iapp configures a simple standard 'open' virtual forwarder\"\n todo \"TODO list\"\n todo.what \"\" \"List of 'to do' items so they can be tracked - Show inline help for more details\"\n todo.todo1 \"todo 1\" \"things to do to make do do doooo\"\n\n options \"Template Options\"\n options.display_help \"Do you want to see inline help or additional information?\" {\n \"Yes, show inline help\" => \"full\",\n \"No, do not show inline help\" => \"hide\"\n }\n options.display_help_max \"\" \"Inline help is available to provide contextual descriptions to aid in the completion of this configuration. Select to show or hide the inline help in this template. Important notes and warnings are always visible, no matter which selection you make here.\"\n}\n }\n role-acl none\n run-as none\n }\n }\n description none\n ignore-verification false\n requires-bigip-version-max none\n requires-bigip-version-min 12.1.0\n requires-modules { ltm }\n signing-key none\n tmpl-checksum none\n tmpl-signature none\n}\n" - }, - { - "fileName": "config/bigip_user.conf", - "size": 541, - "content": "#TMSH-VERSION: 15.1.0.4\n\nauth user admin {\n description \"Admin User\"\n partition-access {\n all-partitions {\n role admin\n }\n }\n shell bash\n}\nauth user f5hubblelcdadmin {\n description f5hubblelcdadmin\n partition-access {\n all-partitions {\n role admin\n }\n }\n shell none\n}\nauth user guestUser {\n description guestUser\n partition-access {\n Common {\n role guest\n }\n }\n shell tmsh\n}\nauth user root {\n description root\n shell bash\n}\n" - } - ], - "base": [ - "net vlan /Common/internal {\n interfaces {\n 1.0 { }\n }\n tag 4094\n}", - "net route-domain /Common/0 {\n id 0\n vlans {\n /Common/http-tunnel\n /Common/socks-tunnel\n /Common/internal\n }\n}", - "auth partition Common {\n description \"Updated by AS3 at Thu, 17 Sep 2020 15:14:36 GMT\"\n}", - "auth partition foo {\n description \"Updated by AS3 at Tue, 06 Oct 2020 18:27:20 GMT\"\n}", - "auth partition test { }" - ], - "apps": [ - { - "name": "/Common/app1_t80_vs", - "configs": [ - "ltm virtual /Common/app1_t80_vs {\n creation-time 2020-09-17:08:50:22\n destination /Common/192.168.1.21:80\n ip-protocol tcp\n last-modified-time 2020-09-17:08:51:07\n mask 255.255.255.255\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/_sys_https_redirect\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address enabled\n translate-port enabled\n}" - ], - "map": { - "vsDest": "/Common/192.168.1.21:80" - } - }, - { - "name": "/Common/app1_t443_vs", - "configs": [ - "ltm virtual /Common/app1_t443_vs {\n destination /Common/192.168.1.21:443\n ip-protocol tcp\n last-modified-time 2020-09-18:10:05:54\n mask 255.255.255.255\n pool /Common/app1_t80_pool\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n}", - "ltm pool /Common/app1_t80_pool {\n members {\n /Common/app1_Node1:80 {\n address 192.168.1.22\n }\n /Common/app1_Node2:80 {\n address 192.168.1.23\n }\n }\n monitor /Common/http and /Common/tcp\n}", - "ltm node /Common/app1_Node1 {\n address 192.168.1.22\n}", - "ltm node /Common/app1_Node2 {\n address 192.168.1.23\n}" - ], - "map": { - "vsDest": "/Common/192.168.1.21:443", - "pool": [ - "192.168.1.22:80", - "192.168.1.23:80" - ] - } - }, - { - "name": "/Common/app2_t80_vs", - "configs": [ - "ltm virtual /Common/app2_t80_vs {\n creation-time 2020-09-17:08:50:22\n destination /Common/192.168.2.21:80\n ip-protocol tcp\n last-modified-time 2020-09-17:08:51:07\n mask 255.255.255.255\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/_sys_https_redirect\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address enabled\n translate-port enabled\n}" - ], - "map": { - "vsDest": "/Common/192.168.2.21:80" - } - }, - { - "name": "/Common/app2_t443_vs", - "configs": [ - "ltm virtual /Common/app2_t443_vs {\n destination /Common/192.168.2.21:443\n ip-protocol tcp\n last-modified-time 2020-09-18:10:05:47\n mask 255.255.255.255\n pool /Common/app2_t80_pool\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n}", - "ltm pool /Common/app2_t80_pool {\n load-balancing-mode least-connections-member\n members {\n /Common/app2_Node1:80 {\n address 192.168.2.22\n }\n /Common/app2_Node2:80 {\n address 192.168.2.23\n }\n }\n monitor /Common/global_http_monitor and /Common/global_https_monitor\n}", - "ltm node /Common/app2_Node1 {\n address 192.168.2.22\n description app2_Node1\n}", - "ltm node /Common/app2_Node2 {\n address 192.168.2.23\n description app2_Node2\n}", - "ltm monitor http /Common/global_http_monitor {\n adaptive disabled\n defaults-from /Common/http\n interval 5\n ip-dscp 0\n recv \"ok 200\"\n recv-disable none\n send \"GET /anywebsite.com\\r\\n\"\n time-until-up 0\n timeout 16\n}", - "ltm monitor https /Common/global_https_monitor {\n adaptive disabled\n defaults-from /Common/https\n interval 5\n ip-dscp 0\n recv \"201 continue\"\n recv-disable none\n send \"GET /any-secure-website.com\\r\\n\"\n time-until-up 0\n timeout 16\n}" - ], - "map": { - "vsDest": "/Common/192.168.2.21:443", - "pool": [ - "192.168.2.22:80", - "192.168.2.23:80" - ] - } - }, - { - "name": "/Common/app3_t8443_vs", - "configs": [ - "ltm virtual /Common/app3_t8443_vs {\n destination /Common/192.168.1.51:8443\n fallback-persistence /Common/app3_srcAddr_persist\n ip-protocol tcp\n last-modified-time 2020-09-17:12:45:40\n mask 255.255.255.255\n persist {\n /Common/app3_cookie {\n default yes\n }\n }\n policies {\n /Common/app3_ltm_policy { }\n }\n pool /Common/app3_t8443_pool\n profiles {\n /Common/app3_clientssl {\n context clientside\n }\n /Common/app3_serverssl {\n context serverside\n }\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/app3_rule\n /Common/app3_rule2\n /Common/app3_rule3\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n pool /Common/app3_snat_pool\n type snat\n }\n translate-address enabled\n translate-port enabled\n}", - "ltm pool /Common/app3_t8443_pool {\n load-balancing-mode least-connections-member\n members {\n /Common/app3_Node1:8443 {\n address 192.168.1.52\n }\n /Common/app3_Node2:8443 {\n address 192.168.1.53\n }\n }\n monitor /Common/app1_tcp_half_open_quick_monitor and /Common/http_head_f5 and /Common/http2_head_f5 and /Common/http and /Common/tcp_half_open\n}", - "ltm node /Common/app3_Node1 {\n address 192.168.1.52\n}", - "ltm node /Common/app3_Node2 {\n address 192.168.1.53\n}", - "ltm monitor tcp-half-open /Common/app1_tcp_half_open_quick_monitor {\n defaults-from /Common/tcp_half_open\n destination *:*\n interval 1\n time-until-up 0\n timeout 4\n}", - "ltm profile client-ssl /Common/app3_clientssl {\n app-service none\n cert-key-chain {\n default {\n cert /Common/default.crt\n key /Common/default.key\n }\n }\n defaults-from /Common/clientssl\n inherit-ca-certkeychain true\n inherit-certkeychain true\n}", - "ltm profile server-ssl /Common/app3_serverssl {\n app-service none\n defaults-from /Common/serverssl\n}", - "ltm rule /Common/app3_rule {\n#comment\n\nwhen HTTP_REQUEST {\n # add more here\n}\n}", - "ltm rule /Common/app3_rule2 {\n#comment\n\nwhen HTTP_REQUEST {\n # ben test 444\n}\n}", - "ltm rule /Common/app3_rule3 {\n# app3_rule3 header\n\nwhen SERVERSSL_DATA {\n # got something from server\n}\n}", - "ltm snatpool /Common/app3_snat_pool {\n members {\n /Common/192.168.1.51\n }\n}", - "ltm policy /Common/app3_ltm_policy {\n rules {\n global_rule_1 { }\n }\n strategy /Common/first-match\n}", - "ltm persistence cookie /Common/app3_cookie {\n always-send disabled\n app-service none\n cookie-encryption disabled\n cookie-name app3CustomeCookie\n defaults-from /Common/cookie\n encrypt-cookie-poolname disabled\n expiration 0\n httponly enabled\n method insert\n override-connection-limit disabled\n secure enabled\n}", - "ltm persistence source-addr /Common/app3_srcAddr_persist {\n app-service none\n defaults-from /Common/source_addr\n hash-algorithm default\n map-proxies enabled\n mask none\n match-across-pools disabled\n match-across-services disabled\n match-across-virtuals disabled\n override-connection-limit disabled\n timeout 180\n}" - ], - "map": { - "vsDest": "/Common/192.168.1.51:8443", - "pool": [ - "192.168.1.52:8443", - "192.168.1.53:8443" - ] - } - }, - { - "name": "/Common/app4_t80_vs", - "configs": [ - "ltm virtual /Common/app4_t80_vs {\n description \"test pool references in irule extration and ltp\"\n destination /Common/192.168.2.25:80\n ip-protocol tcp\n last-modified-time 2020-10-07:07:28:35\n mask 255.255.255.255\n policies {\n /Common/app4_ltPolicy { }\n }\n pool /Common/app4_pool\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/_sys_https_redirect\n /Common/app4_pool_rule\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address enabled\n translate-port enabled\n}", - "ltm pool /Common/app4_pool {\n members {\n /Common/api.chucknorris.io:443 {\n fqdn {\n autopopulate enabled\n name api.chucknorris.io\n }\n }\n }\n}", - "ltm node /Common/api.chucknorris.io {\n fqdn {\n address-family all\n autopopulate enabled\n name api.chucknorris.io\n }\n}", - "ltm rule /Common/app4_pool_rule {\n### test rule for corkscrew\n\n # \n\nwhen HTTP_REQUEST {\n\n # pool reference by variable declaration\n set html-pool web1Pool\n\n if { [HTTP::path] ends_with \"*.css\" }{\n\n # regular pool refernce\n pool css_pool\n\n } elseif { [HTTP::path] ends_with \"*.jpg\" }{\n\n # pool member refernce\n pool jpg.pool member 10.10.10.1 80\n\n } elseif { [HTTP::path] ends_with \"*.js\" }{\n\n # another pool reference with special characters\n pool js.io_t80_pool \n\n } elseif { [HTTP::path] ends_with \"*.xx\" }{\n\n # pool reference not in tmos config\n ### *** seems the gui won't let you attach an irule to a vs with a pool that doesn't exist\n #pool missing_pool\n\n } elseif { [HTTP::path] ends_with \"*.txt\" }{\n\n # node reference\n node 10.10.10.1 80\n\n } else {\n\n # pool referenced by variable\n pool $html-pool\n\n }\n}\n}", - "ltm pool /Common/css_pool { }", - "ltm pool /Common/jpg.pool { }", - "ltm pool /Common/js.io_t80_pool { }", - "ltm policy /Common/app4_ltPolicy {\n controls { forwarding }\n description \"testing for pool extraction function\"\n requires { http }\n rules {\n css_pool_rule {\n actions {\n 0 {\n forward\n select\n pool /Common/css_pool\n }\n }\n conditions {\n 0 {\n http-uri\n scheme\n ends-with\n values { .css }\n }\n }\n }\n jpg_pool_rule {\n actions {\n 0 {\n forward\n select\n pool /Common/jpg.pool\n }\n }\n conditions {\n 0 {\n http-uri\n query-string\n ends-with\n values { .jpg }\n }\n }\n ordinal 1\n }\n js_pool_rule {\n actions {\n 0 {\n forward\n select\n pool /Common/js.io_t80_pool\n }\n }\n conditions {\n 0 {\n http-uri\n scheme\n ends-with\n values { .js }\n }\n }\n ordinal 2\n }\n txt_node {\n actions {\n 0 {\n forward\n select\n node 10.10.10.1\n }\n }\n conditions {\n 0 {\n http-uri\n scheme\n ends-with\n values { .txt }\n }\n }\n ordinal 3\n }\n }\n strategy /Common/first-match\n}" - ], - "map": { - "vsDest": "/Common/192.168.2.25:80", - "pool": [ - "/Common/api.chucknorris.io,/Common/api.chucknorris.io:443" - ], - "irule": { - "pools": [ - [ - "css_pool" - ], - [ - "jpg.pool", - "member", - "10.10.10.1", - "80" - ], - [ - "js.io_t80_pool" - ] - ] - } - } - }, - { - "name": "/Common/forwarder_net_0.0.0.0", - "configs": [ - "ltm virtual /Common/forwarder_net_0.0.0.0 {\n destination /Common/0.0.0.0:0\n ip-forward\n mask any\n profiles {\n /Common/fastl4_loose { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address disabled\n translate-port disabled\n}", - "ltm profile fastl4 /Common/fastl4_loose {\n app-service none\n loose-close enabled\n loose-initialization enabled\n reset-on-timeout disabled\n syn-cookie-enable disabled\n}" - ], - "map": { - "vsDest": "/Common/0.0.0.0:0" - } - }, - { - "name": "/foo/defaultsUDP_5555/serviceMain", - "configs": [ - "ltm virtual /foo/defaultsUDP_5555/serviceMain {\n creation-time 2020-10-06:13:27:20\n description defaultsUDP_5555\n destination /foo/192.50.2.1:5555\n ip-protocol udp\n last-modified-time 2020-10-06:13:27:20\n mask 255.255.255.255\n persist {\n /Common/source_addr {\n default yes\n }\n }\n pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1\n profiles {\n /Common/udp { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n}", - "ltm pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1 {\n members {\n /foo/192.50.2.2:5555 {\n address 192.50.2.2\n metadata {\n source {\n value declaration\n }\n }\n }\n }\n min-active-members 1\n monitor min 1 of { /Common/gateway_icmp }\n}" - ], - "map": { - "vsDest": "/foo/192.50.2.1:5555" - } - } - ] - }, - "stats": { - "objectCount": 256, - "sourceSize": 117504228, - "objects": { - "virtuals": 8, - "profiles": 6, - "policies": 2, - "pools": 8, - "irules": 5, - "monitors": 6, - "nodes": 11, - "snatPools": 1 - }, - "sourceTmosVersion": "15.1.0.4", - "parseTime": 2152.248473, - "appTime": 9.98675, - "packTime": 1.103949 - }, - "logs": [ - "[2021-10-26T12:37:04.052Z] DeBuG: 'regular date log message'", - "[10/26/2021, 12:37:04 PM] DeBuG: 'toLocalString date log message'", - "[Tue, 26 Oct 2021 12:37:04 GMT] DeBuG: 'to UTC date log message'", - "[2021-10-26T12:37:04.248Z] [DEBUG]: detected file: [tests/artifacts/devCloud_10.9.2020.ucs], size: [117504228]", - "[2021-10-26T12:37:04.486Z] [INFO]: Recieved .conf file of version: 15.1.0.4", - "[2021-10-26T12:37:04.527Z] [ERROR]: failed to extract any parent tmos matches from config/partitions/test/bigip_script.conf - might be a scripts file...", - "[2021-10-26T12:37:06.401Z] [INFO]: digging vs config for /Common/app1_t80_vs", - "[2021-10-26T12:37:06.402Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2021-10-26T12:37:06.402Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2021-10-26T12:37:06.402Z] [DEBUG]: [/Common/app1_t80_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2021-10-26T12:37:06.402Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect' ]", - "[2021-10-26T12:37:06.402Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details", - "[2021-10-26T12:37:06.402Z] [DEBUG]: [/Common/app1_t80_vs] found the following rules \n /Common/_sys_https_redirect", - "[2021-10-26T12:37:06.403Z] [INFO]: digging vs config for /Common/app1_t443_vs", - "[2021-10-26T12:37:06.404Z] [DEBUG]: digging pool config for /Common/app1_t80_pool", - "[2021-10-26T12:37:06.404Z] [DEBUG]: Pool /Common/app1_t80_pool members found: [ '/Common/app1_Node1', '/Common/app1_Node2' ]", - "[2021-10-26T12:37:06.405Z] [DEBUG]: pool monitor references found: [ '/Common/http', '/Common/tcp' ]", - "[2021-10-26T12:37:06.405Z] [DEBUG]: pool monitor configs found: []", - "[2021-10-26T12:37:06.405Z] [DEBUG]: [/Common/app1_t80_pool] references 2 system default monitors, compare previous arrays for details", - "[2021-10-26T12:37:06.405Z] [DEBUG]: [/Common/app1_t443_vs] found the following pool /Common/app1_t80_pool", - "[2021-10-26T12:37:06.405Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2021-10-26T12:37:06.405Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2021-10-26T12:37:06.405Z] [DEBUG]: [/Common/app1_t443_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2021-10-26T12:37:06.405Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2021-10-26T12:37:06.405Z] [DEBUG]: [/Common/app1_t443_vs] found snat configuration \n type automap", - "[2021-10-26T12:37:06.405Z] [INFO]: digging vs config for /Common/app2_t80_vs", - "[2021-10-26T12:37:06.406Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2021-10-26T12:37:06.406Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2021-10-26T12:37:06.406Z] [DEBUG]: [/Common/app2_t80_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2021-10-26T12:37:06.406Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect' ]", - "[2021-10-26T12:37:06.406Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details", - "[2021-10-26T12:37:06.406Z] [DEBUG]: [/Common/app2_t80_vs] found the following rules \n /Common/_sys_https_redirect", - "[2021-10-26T12:37:06.406Z] [INFO]: digging vs config for /Common/app2_t443_vs", - "[2021-10-26T12:37:06.406Z] [DEBUG]: digging pool config for /Common/app2_t80_pool", - "[2021-10-26T12:37:06.406Z] [DEBUG]: Pool /Common/app2_t80_pool members found: [ '/Common/app2_Node1', '/Common/app2_Node2' ]", - "[2021-10-26T12:37:06.406Z] [DEBUG]: pool monitor references found: [ '/Common/global_http_monitor', '/Common/global_https_monitor' ]", - "[2021-10-26T12:37:06.407Z] [DEBUG]: pool monitor configs found: [\n 'ltm monitor http /Common/global_http_monitor {\\n' +\n ' adaptive disabled\\n' +\n ' defaults-from /Common/http\\n' +\n ' interval 5\\n' +\n ' ip-dscp 0\\n' +\n ' recv \"ok 200\"\\n' +\n ' recv-disable none\\n' +\n ' send \"GET /anywebsite.com\\\\r\\\\n\"\\n' +\n ' time-until-up 0\\n' +\n ' timeout 16\\n' +\n '}',\n 'ltm monitor https /Common/global_https_monitor {\\n' +\n ' adaptive disabled\\n' +\n ' defaults-from /Common/https\\n' +\n ' interval 5\\n' +\n ' ip-dscp 0\\n' +\n ' recv \"201 continue\"\\n' +\n ' recv-disable none\\n' +\n ' send \"GET /any-secure-website.com\\\\r\\\\n\"\\n' +\n ' time-until-up 0\\n' +\n ' timeout 16\\n' +\n '}'\n]", - "[2021-10-26T12:37:06.407Z] [DEBUG]: [/Common/app2_t443_vs] found the following pool /Common/app2_t80_pool", - "[2021-10-26T12:37:06.407Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2021-10-26T12:37:06.407Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2021-10-26T12:37:06.407Z] [DEBUG]: [/Common/app2_t443_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2021-10-26T12:37:06.407Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2021-10-26T12:37:06.407Z] [DEBUG]: [/Common/app2_t443_vs] found snat configuration \n type automap", - "[2021-10-26T12:37:06.407Z] [INFO]: digging vs config for /Common/app3_t8443_vs", - "[2021-10-26T12:37:06.407Z] [DEBUG]: digging pool config for /Common/app3_t8443_pool", - "[2021-10-26T12:37:06.407Z] [DEBUG]: Pool /Common/app3_t8443_pool members found: [ '/Common/app3_Node1', '/Common/app3_Node2' ]", - "[2021-10-26T12:37:06.407Z] [DEBUG]: pool monitor references found: [\n '/Common/app1_tcp_half_open_quick_monitor',\n '/Common/http_head_f5',\n '/Common/http2_head_f5',\n '/Common/http',\n '/Common/tcp_half_open'\n]", - "[2021-10-26T12:37:06.407Z] [DEBUG]: pool monitor configs found: [\n 'ltm monitor tcp-half-open /Common/app1_tcp_half_open_quick_monitor {\\n' +\n ' defaults-from /Common/tcp_half_open\\n' +\n ' destination *:*\\n' +\n ' interval 1\\n' +\n ' time-until-up 0\\n' +\n ' timeout 4\\n' +\n '}'\n]", - "[2021-10-26T12:37:06.407Z] [DEBUG]: [/Common/app3_t8443_pool] references 4 system default monitors, compare previous arrays for details", - "[2021-10-26T12:37:06.407Z] [DEBUG]: [/Common/app3_t8443_vs] found the following pool /Common/app3_t8443_pool", - "[2021-10-26T12:37:06.407Z] [DEBUG]: profile references found: [\n '/Common/app3_clientssl',\n '/Common/app3_serverssl',\n '/Common/http',\n '/Common/tcp'\n]", - "[2021-10-26T12:37:06.407Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2021-10-26T12:37:06.407Z] [DEBUG]: [/Common/app3_t8443_vs] found the following profiles \n /Common/app3_clientssl {\n context clientside\n }\n /Common/app3_serverssl {\n context serverside\n }\n /Common/http { }\n /Common/tcp { }", - "[2021-10-26T12:37:06.407Z] [DEBUG]: rule references found: [ '/Common/app3_rule', '/Common/app3_rule2', '/Common/app3_rule3' ]", - "[2021-10-26T12:37:06.408Z] [DEBUG]: [/Common/app3_t8443_vs] found the following rules \n /Common/app3_rule\n /Common/app3_rule2\n /Common/app3_rule3", - "[2021-10-26T12:37:06.408Z] [DEBUG]: [/Common/app3_t8443_vs] found snat configuration \n pool /Common/app3_snat_pool\n type snat", - "[2021-10-26T12:37:06.408Z] [DEBUG]: policy references found: [ '/Common/app3_ltm_policy' ]", - "[2021-10-26T12:37:06.408Z] [DEBUG]: policy found [/Common/app3_ltm_policy]", - "[2021-10-26T12:37:06.408Z] [DEBUG]: [/Common/app3_t8443_vs] found the following policies \n /Common/app3_ltm_policy { }", - "[2021-10-26T12:37:06.409Z] [DEBUG]: [/Common/app3_t8443_vs] found the following persistence \n /Common/app3_cookie {\n default yes\n }", - "[2021-10-26T12:37:06.409Z] [DEBUG]: [/Common/app3_t8443_vs] found the following persistence /Common/app3_srcAddr_persist", - "[2021-10-26T12:37:06.409Z] [INFO]: digging vs config for /Common/app4_t80_vs", - "[2021-10-26T12:37:06.409Z] [DEBUG]: digging pool config for /Common/app4_pool", - "[2021-10-26T12:37:06.409Z] [DEBUG]: Pool /Common/app4_pool members found: [ '/Common/api.chucknorris.io' ]", - "[2021-10-26T12:37:06.409Z] [DEBUG]: [/Common/app4_t80_vs] found the following pool /Common/app4_pool", - "[2021-10-26T12:37:06.409Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2021-10-26T12:37:06.409Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2021-10-26T12:37:06.409Z] [DEBUG]: [/Common/app4_t80_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2021-10-26T12:37:06.409Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect', '/Common/app4_pool_rule' ]", - "[2021-10-26T12:37:06.409Z] [DEBUG]: digging pool config for /Common/css_pool", - "[2021-10-26T12:37:06.409Z] [DEBUG]: digging pool config for /Common/jpg.pool", - "[2021-10-26T12:37:06.409Z] [DEBUG]: digging pool config for /Common/js.io_t80_pool", - "[2021-10-26T12:37:06.409Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details", - "[2021-10-26T12:37:06.409Z] [DEBUG]: [/Common/app4_t80_vs] found the following rules \n /Common/_sys_https_redirect\n /Common/app4_pool_rule", - "[2021-10-26T12:37:06.410Z] [DEBUG]: policy references found: [ '/Common/app4_ltPolicy' ]", - "[2021-10-26T12:37:06.410Z] [DEBUG]: policy found [/Common/app4_ltPolicy]", - "[2021-10-26T12:37:06.410Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/css_pool]", - "[2021-10-26T12:37:06.410Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/jpg.pool]", - "[2021-10-26T12:37:06.410Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/js.io_t80_pool]", - "[2021-10-26T12:37:06.410Z] [DEBUG]: [/Common/app4_t80_vs] found the following policies \n /Common/app4_ltPolicy { }", - "[2021-10-26T12:37:06.410Z] [INFO]: digging vs config for /Common/forwarder_net_0.0.0.0", - "[2021-10-26T12:37:06.410Z] [DEBUG]: profile references found: [ '/Common/fastl4_loose' ]", - "[2021-10-26T12:37:06.410Z] [DEBUG]: [/Common/forwarder_net_0.0.0.0] found the following profiles \n /Common/fastl4_loose { }", - "[2021-10-26T12:37:06.410Z] [INFO]: digging vs config for /foo/defaultsUDP_5555/serviceMain", - "[2021-10-26T12:37:06.410Z] [DEBUG]: digging pool config for /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1", - "[2021-10-26T12:37:06.410Z] [DEBUG]: Pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1 members found: [ '/foo/192.50.2.2' ]", - "[2021-10-26T12:37:06.410Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found the following pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1", - "[2021-10-26T12:37:06.410Z] [DEBUG]: profile references found: [ '/Common/udp' ]", - "[2021-10-26T12:37:06.410Z] [DEBUG]: Found 1 system default profiles, compare previous arrays for details", - "[2021-10-26T12:37:06.410Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found the following profiles \n /Common/udp { }", - "[2021-10-26T12:37:06.410Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2021-10-26T12:37:06.410Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found snat configuration \n type automap", - "[2021-10-26T12:37:06.410Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found the following persistence \n /Common/source_addr {\n default yes\n }" - ], - "fileStore": [ - { - "fileName": "var/tmp/filestore_temp/files_d/Common_d/trust_certificate_key_d/:Common:dtca.key_113512_1", - "size": 1704, - "content": "-----BEGIN PRIVATE KEY-----\nMIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCX9+xESzxrRk2l\n1CxJ2oHkmzjdWc2BssfHjbwcJM12XTbS/eb9WzOELQFutw3/mHqaXNxHZwru+qHC\nTJwekJXHwIWHtGSBaHTLQ3xRCKvJFdWYxZA7zcDk33gnFV6I72YtDjrWDToKGTpy\nPdyUfXB5HAeCBU5fRiV/VrpEK8S0Jzd+FV1gLs8BzsTS7g5+YIsmw+DPy9V60WBA\ng06wdfnzGJTPCjgaPGhSCJFYWN+ZMajeZ4+tM/oOv8i7HrlBwnH4P7Qu6nH9za1N\n4E7NJGrIby3Y3iSR2bc/m2hay5NtQqf6Ee9W7TCrG2z0Q2MD+Rt51KWbQYB+8S5b\n5JnAhVGXAgMBAAECggEAHiDf7ZZA7z+r60GKWkYA1JLVjkTckmcgZna6IZZGSb4n\nPWNrJTWsm/rUOt/93XucavgYD+vk5gY4ha3skb62gzivAH2KI4HTDe1eOy6N6Dr0\n8unQM5sSMA4B4zXAXUOhLTOSBJfwtsnTpYyQK7xGzSv6bROiOw9MJdfK6/MFd3W0\ne5tC46Qnjh2yt8n1q1LO43QanSrMNmTonU3PFRB3SWeJqlGp7NjSfA1ynRZFoCVl\n0OkbVWYA8Dqj+ByDu9bmPV6nOaFUzuI8f0Jzsoq8oC8He9hKcDqCu7OuLX78w1lo\nx1wSUzDk6+FXPcvXxA0S61ZBRhbx2oAmxO2XtM672QKBgQDVvnCG2/pWLiiEY3/y\nwTIClrx5OtIOUOkzha5BqLnweYMMYph5gLUQgkDM0OFhNuWarTFFqRoI6SbIUFDk\nLohG/EXAe4CV7fwGAOhBE4Slzccx4qOK/HkkEFCsGJKEXayhd8o0+czAaFI1Npxw\nAvILtt/gkr21CgK0+Ct+MbYJcwKBgQC2AwhtKralMUDD5zruTGmeSi6myJbXl5c3\nG+t8IzCIj7G59aYhOPMwtC2KMq/3yPz9BmEjXl+a1+/jOO0pu0fXFX5nJ4MIA8eT\n7ESeuA8befu1XmcVYutIwzulM+pSJIbfEXbYB/xwZzsyW/ai7vaSIK3yAhto6ehc\nZ60do3MeTQKBgGTrELgr3suX6ZtwWzXjz9f3Ea/vfMQzoZeo83ie0IPg62YKm1Eq\n2tKbnTrXGMLMp6XbRhtM1zUD2ELV4QuLiN5zN//EkBa6EbdH8GDhdUzPltBP4MW7\npPrJFT3cMDl8/QgTxg4zL2BdIQts6HneeifbxWKEBjwXKOYHEon3sKpPAoGBAK4a\n5JqYezI1lQBQVfzRN07lIw8DXddI+KsMmAudFbXrzlRV+N5avbZfBBjoN49MwUPA\nMHdGtSlHWf7+205KCYRi2REPqLWn9+c14MX6xui/nNl3PiAlCXAG4S08Je8BZcpH\nyGkJ6p4TAXtAoQJml5JclEelYFbROSX7PovVaC8ZAoGADEI9dZCNswGm3+H3QhZ4\n/3tc+vhBk7bbKm+e/W9R7PnNlOGCyhgTsnxL6i6ZtW8BMGjnnxdiNqG4diuWGQrk\nU7v+iy8KougCDzWAnwF97meTgW9o0nOai6LAIKZWeVe5geAq1i2Hud+1npWp/zlc\nnID34h/bYVZpKR23bOyjcks=\n-----END PRIVATE KEY-----\n" - }, - { - "fileName": "var/tmp/filestore_temp/files_d/Common_d/trust_certificate_key_d/:Common:dtdi.key_62976_1", - "size": 1704, - "content": "-----BEGIN PRIVATE KEY-----\nMIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCbz28YOpMWXjW0\n2eyxAF4AXjrwp1ua2U4mAjv/HkEd8ZP1uPaplw02FWnVtf/hg5sg1KYReZ/tpxQp\nggPiUAybrtrhrdxRFPpKMROO0f10+88nsats9eixXp2Uh0WaP61h1cSUQnyCOeLI\norTKed1YKY+LuOeMvOZ2ph9aoGTFJLE4WxJe7opuF3rCB/nDmtqRAbybDhBNJfOS\nToIL4Sd63Umg8iSVxAE+klnJfAUGkXDFQZ+b/Z7T7pdupA5bUB3jgLEQSCd1GUH4\nbVuUs9vLXAWRr3Orz4JvY+ByGT9gyyyxYdKFN96NxSD88MBR7dT2u8nw7r7oCc/w\n5lv81CnhAgMBAAECggEAHe8xadc/EQoSiWdg6PSoGqv/6OJOYCals/mz6yS13/nc\nslXR1e02VZCxn6Ryv7HYKOuR6EOUrUTvQ7Y95sn4UiS62qbbcBx2pbBeEI9ZgZMr\nTnX8+FcaWJFT9wgyIBthxS0bslw/rYlPf7p6v3fARcLeWDqzCb/1CxCJb5DnK1S/\nlC5mTrjn5LOVdyfH2e5oflvE8HArnh+PQt1R+ZFzIatkA5e4ekdTVWv/Bnd5lhqS\nzvmcELDaUnL6ncwxTGL+bgny+MoLKjlwOQYB9paKyxBlWWRHEy/MfSzbNtMHLgeI\n3kdN/qP3PejmVdDkaltTD4PZ9otZ6Oon0sG/IS/j0QKBgQDKVG/qgWZNn26rgT+U\n5ehxtPu+Rdn7FpQSZW0mmrqxVuG2JkR3d79oAzPOUKRWG+eAuY+b+frLn1G4/3jB\nkPTfqSShTFLPW2aw15z/ON44iS317n/7sVcgoy0FpjkFcD0gsoIELkVA6wbxmdGj\nqqMvXKdOEpZyF3wYVsIWsePc/QKBgQDFJAFjk/JG0Y6jkJ8ZgE6M9BdUo0vewhWV\nFZvTOFBPkYAgcPHeR66kj9zBtVcfgN+ODgE02bjrAhToVyk0LU5loXSU7MjhB+UP\n/YiCAF7490CyddUVYRFoOSAtNVpxGWMmAQaicaos4Idn4A6Tyzk2wVKRaZJrgrN6\noNbzUMYHtQKBgQC4BbpQyOaaXRLUTFbe/4i9usVpFrEe7Tc50CRJg1ugJgxelkmZ\ne0GMwbThxnjhlLmnW56hV+jiQIKcx0c2jrgZoQae6gM7c79fwouZmkiLlUFHOGgR\nLQe4uJEfXULpjl8amSEl2kvEsr77CVMiD/YiApxspv1Mwc1teaNH7v33pQKBgC9y\nS/dIWy4aL2dEXlZH4B/ie17+cjspoQIhkkBStFmCHkEwjbW+sNSgXzQrzc0iOiu5\nSScMI4pEFP4aRCtvoAerxSA2oN4wBTxE+762EiV/dI2++ErN8t+PqCPZTGwd/RPf\neVZNXvSwEUa50ShW5+06uAGRVBEWAtZHsZQb451lAoGANCoaVoLSS2Tcnud7nYHV\nP9zdcAF5/lZfsARNvWEbm1FMmDFyKAUZMCqLv4oD91g82U4+CjyzY6Ocn+Tr+vIN\nsw25otlIRC1+EG/jDCchhX9HGAljlnFPG0OSByyz/peZSjw4cja88qmjU35CYSir\nIjK0QYyS8k/coCKGsejm8A8=\n-----END PRIVATE KEY-----\n" - }, - { - "fileName": "var/tmp/filestore_temp/files_d/Common_d/trust_certificate_key_d/:Common:dtca.key_62980_1", - "size": 1704, - "content": "-----BEGIN PRIVATE KEY-----\nMIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQDHPOruqyDybaDM\nGi/CtDGTe2GP77bD9PUx4LZfBxnAQfkwAR3wbzxghOoqMHdsg+dA3U9f01+yy2Fn\nnoEUtCrCxYiv107ozy1gPvS1FL/o3PCJ7hpTaFW6ddpiNRX5e6/ASiahDsCh9+T5\ng0OERFjcuT/cEuxP/MPYcOWVk03OgyoaCZsu6ubVqWR2he/nHCBD2J6JTUKsFSg9\nIhuefVJQ+wvpNfIkfVm0Y3pzxOC53qP7l8AEWGRjIKR5WizVJ/wPDlwyydg7tBAD\nE3BriD0QED4nXIrQc8nZbGDrOd1/Eblg5GxaIzZmqdbYrla+r9pniDemxhVWWJls\n6ZrS0ISzAgMBAAECggEAH1ZRjWCVOgxMMk4cHP/CnHPXkJAfqwqoVkQF60RupHK8\nAvTqBJs6X+QIAMLGxeapROaKSYQxlSmwFGA15U/BOglfymiPHMcZV/4O9zxgQvwd\nSVSOB3hto3pN8wxufGMb7Z68HLD5U4BuH2CqCe/GGlF43eCMErirBSwcsD4PCuAH\nMqZKpmHQe6Ng9oDBG6dios0qau1+WApxQ5elCMZW3tRmoaHSLaXW6TlPx27wVF/c\nXewb9SW1EVCYMndahhlzVr1Hd3YmIbgBtA3QaTSO5yr1un5UUdJjkQ1DUH4zCIsd\nKX22htEJWCSnvEn11Bhj6AdlAVTYx5YXizlc2TufwQKBgQD3oRCSwMz7ZLD3fP/X\nF92KpP1v65a+aFBry3LDo7SwnmbGmg0XRR7Cldlif+xRABkNzXZeVGeEWX1iGzF5\nQfyyzZ+sLJ333hdBym0bPqg3vEEpec5KTl4pDSVpkGVdSm/VbzhwxMoyx7m7m1za\nfSLsXyviFI64Qp9EO3IxN0BsmQKBgQDN+RW1wyQB9JmKbpp4qa5777lgSK4KiOPM\nFt2Fd5IaRIc4iwzx7sRNCOCxg5+LxOSpaG5sSRUUUJ/xhzKcZHrScJqKje3ypcei\ntW7jp1ZuiRu/ziNKvIdWmsj+XUank1mHPpbSpFvkGcWw7AQL81CH5oDEN96zGFJW\nppDw8a3fKwKBgHiSHeW2ppgJMPlwDYoHfsFREG18Qku3suCpkNmdTg9pMRWmUJVx\n/EY2fEAvlTrjV0+XKPlJE5YnlJs+LlqiPI46/HHyz3+uzZglHfbUDUgGC5xMSJt5\niPNoCT1bJ1/DLKy5mLuftev/v3mPbiicIXMB6/YKmGszVST95N39zwqRAoGAVPhY\nuG8UP6pEXRNbrkNxs7clZk8VXUszjlIweIrnPubeUbkrUfMKEC2FZDXEb8h9/FUU\nmJ9djs/j66O2gUYCVSYW2unKK7uwK7NlV40E3vy48dt8O6yiuFuKZ0TbjO4AlQaA\n+czMC8GGCIKU+Mkbg7TXkhrqSD/UV+LHEF7jN5kCgYBrwEXzdCZn2GbT89/JqQQ1\n1qrfu8VZXNFkW4UKIjPQuuYm5hskjPne31o9scBcqWXkyt0qOzijO3exycYJ458o\nagX6S+hl9cGxAcYHC2l7p6+brkqaBXXT7Ek8KsyDbTzyX4PaGw0bZIzS06gm+MHA\nOncGOP1QiRBgDtJOrPC4eA==\n-----END PRIVATE KEY-----\n" - }, - { - "fileName": "var/tmp/filestore_temp/files_d/Common_d/trust_certificate_key_d/:Common:dtdi.key_113508_1", - "size": 1704, - "content": "-----BEGIN PRIVATE KEY-----\nMIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDkBR+77nZWxR6L\n1aobNWcB3ebw3hUHBEYr/j5SinMwTd4UsHb7SxMOO50GJTnu2lPnGN9s7zvLlAqE\n6m71SFyMsq/z5SzZ3zuKRJW0XEptQMMfTjGZzRpmWw4Y/J7mFFXlDvKQ7eNxFGBq\n8ISCR870wMTpnodCUQvZ917feK4ubQVWqrkIvAgtotuLNWZdv/UlDn9EgeenItUf\nziSw2Cnd0UkwS8dAcHamnX4k8xD51bwQZW5vc0AkxH5kZTFt8j0wDeyguETUVDoe\n34VKFa1ni6+DmSHxtlrEtgUH4g5DBoyYspF90GB564y0swUO6NEpS8axt2BLfOOM\nxyS85TG5AgMBAAECggEAZihtiVNTLZjvEJNPvRT1634xo6S8IwKlNbyYy35AEVox\nr29IP1npVa0bss8m335trNIV98ZPMexHsjkeMUKURG0iK9F3gL1k/ZOwxre6mKw1\nP2dXDaM4urb83/D+d/KQcSl7P7d0+Qq6D+9mTsBBVqKvFkPyMaIB/0u288QrtZxG\nEpmNYAT8Davtz2NpJ9uTSXelbUnp6U6mvyk+45pd7EyFBg08ufzQL0OVg8JZSMLz\nnA5KgBbVY0rCGsg+EsPYpwakh/K5HC06KSK4M12hzx9Vi6mmXeKIQ0xqQ3h9eqIm\nOfWi8M9BTRvy/BjmyOidHOscuO/ehE5pqtV7wW4jCQKBgQDzWnHpa6/ocn8rQPiz\nBb//tZfaI7fX9P4GmiB1BoIcMaKJyFzBXrgzP/HJzUV0UXxfl8+Nyz9gFlGVjJ0J\nEICfivom/mkxJB6714/K5cOYU1QJu/zwHuEwf9g3FOWeiEFdTxZT/rNdxo2Tr1eE\n/S0V7qDX9u9CZXLFbXLRmjIFgwKBgQDv3q+hX3ju72ZW2+Y9nLJ9yZ/pbDHfrgYL\n52GAVSSa0skO3RyHMASnzjd1kr19CKMMguRS8OGTI3W0bgU3Yyn81BzBlVeGXe+V\nWGAFQBZC7ts0nntpb5IQdoXEL2aEl6v64wtKtdSb67tMJSWgzRZNM914NNtEl0Qm\nYHu6dlTDEwKBgQCH7gpY5uTwQxxTjcwdO2X+sHFs0Ky9PUSzbV4Z4BPHKdZvffKJ\ntJ3RSrOFFFrqWSXOw56UxmXVB0J09YE18fjWpSuLomohn9pm9EaGgAbcTBdSBKaJ\nfcYtcAvW4J5OCi/wrd979XY9OE4Wo0eQqlaHvK4tU+pbPQ15x+PtvmKYfwKBgQCf\nuqEni4TjTwXOB0bNdmAhhTb4YDTh52ddW+nAZHIoqv556GGL4DzpZVfm8h0+epbg\nyPS0CnWb3nwN90l/9YfLNZAklIchEcJtp9jhBikMzzOnWXWC42nXjqVK2+mfl8RN\nIA2v5V87qQEjFoV1C7yzEjuDRWdRyIz4JT2fEBcngwKBgBnUNm/+t2xuQCR8Z3UO\nypG5IP/w3pWWyMoQImUrmmAz60F/H1wbZyzR5aIHqq9a9Zf/t5slOsF5wCyaeZiq\nXb2kq8l2lLRL9V1ZNi057XuH1NsmK6dFvpKNICHSsclT7XgdRlEfkv/VGqn+4eLA\ngXbmN4S9cnJHbz91nACFwLeh\n-----END PRIVATE KEY-----\n" - }, - { - "fileName": "var/tmp/filestore_temp/files_d/Common_d/trust_certificate_d/:Common:dtca.crt_62978_1", - "size": 1289, - "content": "-----BEGIN CERTIFICATE-----\nMIIDijCCAnKgAwIBAgIDCmfxMA0GCSqGSIb3DQEBBQUAMC4xLDAqBgNVBAMTI2Uy\nZmIxNTA0LWMyOTUtNGU0MS1hODUxMDA1MDU2OTZmNGNiMB4XDTIwMDcyNjE1MTQy\nM1oXDTMwMDcyNDE1MTQyM1owLjEsMCoGA1UEAxMjZTJmYjE1MDQtYzI5NS00ZTQx\nLWE4NTEwMDUwNTY5NmY0Y2IwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB\nAQDHPOruqyDybaDMGi/CtDGTe2GP77bD9PUx4LZfBxnAQfkwAR3wbzxghOoqMHds\ng+dA3U9f01+yy2FnnoEUtCrCxYiv107ozy1gPvS1FL/o3PCJ7hpTaFW6ddpiNRX5\ne6/ASiahDsCh9+T5g0OERFjcuT/cEuxP/MPYcOWVk03OgyoaCZsu6ubVqWR2he/n\nHCBD2J6JTUKsFSg9IhuefVJQ+wvpNfIkfVm0Y3pzxOC53qP7l8AEWGRjIKR5WizV\nJ/wPDlwyydg7tBADE3BriD0QED4nXIrQc8nZbGDrOd1/Eblg5GxaIzZmqdbYrla+\nr9pniDemxhVWWJls6ZrS0ISzAgMBAAGjgbAwga0wEQYDVR0RBAowCIIGYmlnaXAx\nMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgG2MB0GA1UdDgQWBBSkRaey\neVIjxoMOfHIZXZ03KJDWLjBYBgNVHSMEUTBPgBSkRaeyeVIjxoMOfHIZXZ03KJDW\nLqEypDAwLjEsMCoGA1UEAxMjZTJmYjE1MDQtYzI5NS00ZTQxLWE4NTEwMDUwNTY5\nNmY0Y2KCAwpn8TANBgkqhkiG9w0BAQUFAAOCAQEANtrUkJbtWsB5PxTr9eUMdJCT\nK4K6z3/yKSiuqltHBV9/iW5AU3Yl7vfRFV5YPRSDyqU9AV2Je822X0mXM5PEiqBT\n2Nt9//g+JhGb0S1yWDn+9rQrIMAYcr0s+ZzDjZAKmtrASJrebeCi6T+KrFCl4g2P\ncrpeMcvnkaLt4Q40qburWHJcItbacuUkQOB1sIgRKO+RuRUhAcjIuYbXBUVlBM4o\nGvnpwq1cJh2JsWhj+szuONm4ntEufIhj1u9insf374k7BDu8ggJA9UrhZeGoa/5l\nuG+f9WCoIMjDSbxRHYQCRDHS70iaQHvK5pMAZq4zhiPHUYpxqjFsTtixfW3Vyg==\n-----END CERTIFICATE-----\n" - }, - { - "fileName": "var/tmp/filestore_temp/files_d/Common_d/trust_certificate_d/:Common:dtca.crt_113510_1", - "size": 1289, - "content": "-----BEGIN CERTIFICATE-----\nMIIDijCCAnKgAwIBAgIDCaeLMA0GCSqGSIb3DQEBBQUAMC4xLDAqBgNVBAMTI2Q1\nNGE1MDAyLTMzZjEtNGYxMC04ZDQyMDA1MDU2OTZmNGNiMB4XDTIwMDkxNzE0NTgz\nMFoXDTMwMDkxNTE0NTgzMFowLjEsMCoGA1UEAxMjZDU0YTUwMDItMzNmMS00ZjEw\nLThkNDIwMDUwNTY5NmY0Y2IwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB\nAQCX9+xESzxrRk2l1CxJ2oHkmzjdWc2BssfHjbwcJM12XTbS/eb9WzOELQFutw3/\nmHqaXNxHZwru+qHCTJwekJXHwIWHtGSBaHTLQ3xRCKvJFdWYxZA7zcDk33gnFV6I\n72YtDjrWDToKGTpyPdyUfXB5HAeCBU5fRiV/VrpEK8S0Jzd+FV1gLs8BzsTS7g5+\nYIsmw+DPy9V60WBAg06wdfnzGJTPCjgaPGhSCJFYWN+ZMajeZ4+tM/oOv8i7HrlB\nwnH4P7Qu6nH9za1N4E7NJGrIby3Y3iSR2bc/m2hay5NtQqf6Ee9W7TCrG2z0Q2MD\n+Rt51KWbQYB+8S5b5JnAhVGXAgMBAAGjgbAwga0wEQYDVR0RBAowCIIGYmlnaXAx\nMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgG2MB0GA1UdDgQWBBRbxa8P\n7JsB4ADrBVk3SOz2MNQQijBYBgNVHSMEUTBPgBRbxa8P7JsB4ADrBVk3SOz2MNQQ\niqEypDAwLjEsMCoGA1UEAxMjZDU0YTUwMDItMzNmMS00ZjEwLThkNDIwMDUwNTY5\nNmY0Y2KCAwmnizANBgkqhkiG9w0BAQUFAAOCAQEAGmUpTy2VwO4vfLD4jRef41f4\nbUMrtbxjCLYAfwUQEgGpbQsEAJ04gJVJzciplLJIBU1WHTIM5OM52fw5tV+cw8Ie\nZ/BwsJ1CAOLQqtmzEimeYPgEHguHT5su35HnOS3ulsKXw2c/tHn9mSm9UP65bM0T\n2YIic+dvp7DWA7WRvZmMRJ/BTFmuB/llP8WYOpcfwh2FYaIhQgYukH87LrwzAf7f\nL9h3AzCRHVBSYZEA2tRhsskDtDV7Y63SsKigKVhu5///DJlespXHjfTt6ylT3YCF\nUBcwNO/VuaVd+jbs/0N60yjww5cfzEhsUWJPRMs45FA9/+9ZfSmP3hwfLnfgDA==\n-----END CERTIFICATE-----\n" - }, - { - "fileName": "var/tmp/filestore_temp/files_d/Common_d/trust_certificate_d/:Common:dtdi.crt_62974_1", - "size": 1220, - "content": "-----BEGIN CERTIFICATE-----\nMIIDVzCCAj+gAwIBAgIDAskTMA0GCSqGSIb3DQEBBQUAMC4xLDAqBgNVBAMTI2Uy\nZmIxNTA0LWMyOTUtNGU0MS1hODUxMDA1MDU2OTZmNGNiMB4XDTIwMDcyNjE1MTQy\nNFoXDTMwMDcyNDE1MTQyNFowETEPMA0GA1UEAxMGYmlnaXAxMIIBIjANBgkqhkiG\n9w0BAQEFAAOCAQ8AMIIBCgKCAQEAm89vGDqTFl41tNnssQBeAF468KdbmtlOJgI7\n/x5BHfGT9bj2qZcNNhVp1bX/4YObINSmEXmf7acUKYID4lAMm67a4a3cURT6SjET\njtH9dPvPJ7GrbPXosV6dlIdFmj+tYdXElEJ8gjniyKK0ynndWCmPi7jnjLzmdqYf\nWqBkxSSxOFsSXu6Kbhd6wgf5w5rakQG8mw4QTSXzkk6CC+Enet1JoPIklcQBPpJZ\nyXwFBpFwxUGfm/2e0+6XbqQOW1Ad44CxEEgndRlB+G1blLPby1wFka9zq8+Cb2Pg\nchk/YMsssWHShTfejcUg/PDAUe3U9rvJ8O6+6AnP8OZb/NQp4QIDAQABo4GaMIGX\nMAwGA1UdEwEB/wQCMAAwDgYDVR0PAQH/BAQDAgWgMB0GA1UdDgQWBBRI38kmCpAw\n0+66APM9Y3+4DGcI/TBYBgNVHSMEUTBPgBSkRaeyeVIjxoMOfHIZXZ03KJDWLqEy\npDAwLjEsMCoGA1UEAxMjZTJmYjE1MDQtYzI5NS00ZTQxLWE4NTEwMDUwNTY5NmY0\nY2KCAwpn8TANBgkqhkiG9w0BAQUFAAOCAQEAAQliI6N0R9Z8jnUGyI9ZICLhBLq+\n9N6D0Pc8QVGYsNLr6go5fU2kIXFf/NMJoHFtLvVOqo2fA4GnEF7mhKGRGUuuNmCq\nk3IKB49URDbwLsnRiXQYgwuGV2beYzqHDXqDEEbUDBCWth8A5Htx0GAOCDC3Gano\n3H4MBL7i90J5wk4FFHfQ4g1LJ/IQ18ul5+Vc+CVcRFK5KePvkKzj3ZfLhtgilV62\nmfqTthSqkaPcOwhj7UBt3nEpr9ugLjYcf9xK+NJAVu6SHVWOvAM6wUrrUWUVmZ1y\nA8ZKu8qdkujrREQubC/vxJHAuGATD0behP0taqpRsccOGhPB4G0B3/ooYg==\n-----END CERTIFICATE-----\n" - }, - { - "fileName": "var/tmp/filestore_temp/files_d/Common_d/trust_certificate_d/:Common:dtca-bundle.crt_62982_2", - "size": 3389, - "content": "-----BEGIN CERTIFICATE-----\nMIIDijCCAnKgAwIBAgIDCmfxMA0GCSqGSIb3DQEBBQUAMC4xLDAqBgNVBAMTI2Uy\nZmIxNTA0LWMyOTUtNGU0MS1hODUxMDA1MDU2OTZmNGNiMB4XDTIwMDcyNjE1MTQy\nM1oXDTMwMDcyNDE1MTQyM1owLjEsMCoGA1UEAxMjZTJmYjE1MDQtYzI5NS00ZTQx\nLWE4NTEwMDUwNTY5NmY0Y2IwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB\nAQDHPOruqyDybaDMGi/CtDGTe2GP77bD9PUx4LZfBxnAQfkwAR3wbzxghOoqMHds\ng+dA3U9f01+yy2FnnoEUtCrCxYiv107ozy1gPvS1FL/o3PCJ7hpTaFW6ddpiNRX5\ne6/ASiahDsCh9+T5g0OERFjcuT/cEuxP/MPYcOWVk03OgyoaCZsu6ubVqWR2he/n\nHCBD2J6JTUKsFSg9IhuefVJQ+wvpNfIkfVm0Y3pzxOC53qP7l8AEWGRjIKR5WizV\nJ/wPDlwyydg7tBADE3BriD0QED4nXIrQc8nZbGDrOd1/Eblg5GxaIzZmqdbYrla+\nr9pniDemxhVWWJls6ZrS0ISzAgMBAAGjgbAwga0wEQYDVR0RBAowCIIGYmlnaXAx\nMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgG2MB0GA1UdDgQWBBSkRaey\neVIjxoMOfHIZXZ03KJDWLjBYBgNVHSMEUTBPgBSkRaeyeVIjxoMOfHIZXZ03KJDW\nLqEypDAwLjEsMCoGA1UEAxMjZTJmYjE1MDQtYzI5NS00ZTQxLWE4NTEwMDUwNTY5\nNmY0Y2KCAwpn8TANBgkqhkiG9w0BAQUFAAOCAQEANtrUkJbtWsB5PxTr9eUMdJCT\nK4K6z3/yKSiuqltHBV9/iW5AU3Yl7vfRFV5YPRSDyqU9AV2Je822X0mXM5PEiqBT\n2Nt9//g+JhGb0S1yWDn+9rQrIMAYcr0s+ZzDjZAKmtrASJrebeCi6T+KrFCl4g2P\ncrpeMcvnkaLt4Q40qburWHJcItbacuUkQOB1sIgRKO+RuRUhAcjIuYbXBUVlBM4o\nGvnpwq1cJh2JsWhj+szuONm4ntEufIhj1u9insf374k7BDu8ggJA9UrhZeGoa/5l\nuG+f9WCoIMjDSbxRHYQCRDHS70iaQHvK5pMAZq4zhiPHUYpxqjFsTtixfW3Vyg==\n-----END CERTIFICATE-----\n-----BEGIN CERTIFICATE-----\nMIIC2jCCAcKgAwIBAgIEKRmOjjANBgkqhkiG9w0BAQUFADAvMS0wKwYDVQQDEyQx\nYjNkM2FkNC0yNDUyLTRiZjYtODVkNi1jZjIwMWMxMzBhOGYwHhcNMTkwOTE4MTE1\nMjE0WhcNMjkwOTE2MTE1MjE0WjAvMS0wKwYDVQQDEyQxYjNkM2FkNC0yNDUyLTRi\nZjYtODVkNi1jZjIwMWMxMzBhOGYwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK\nAoIBAQDfi7yyKOk8BbXYcHv8xcFLTVuYQjJ/cz7JLOsqthV45LonJJwIxTKX2O7a\ntNuscK2eX3zRuE74X+NI9z2TYmbgcJC/XirtU0LhrkXSRwDoe+4rakTZYBL6zzgy\nEdH9e/N/25zRrsPHOFolXY+iDTjTJp8MxDVA3ppVJVBlSkvsLgjHN/ivjsOOZ86v\ntlsnc/jXBR5VSirF8wF8cUi3hWQmTyJcyz8pp1nZx43SzUZw2rrfZ/JEKTpik/4M\ny3mhyIFtJ0DVS8bKF6bNRQceqxUIULkC4Q1aZUwKAn1tEqAD515Mw3rsZTxUJ7Dk\n4/0zZWF+3nJP912dueCNJFqQ1QOnAgMBAAEwDQYJKoZIhvcNAQEFBQADggEBAGvY\n5TSVFJ7qjHd5sykkgchbCA8HknKaE99LV3GU25/4h704pGLoFEek26HzyExAo9GS\nAnnny17Z8wN5xbtpGCrRtt9U+KHj2yQ1RGikULfzcPW6qICjJFK0yEBg9XNfmksp\n0r27LrN8KZq1gEuatI9yQeXK9C1pZ5gfKxNYiIqk5EvbR50EmcSE20pfk92dEKGt\nl+Yyuv4quT2ijcu3EPS3ninlqxILsWuNaCVZ/07SKOKXyT7lfTbBaNuly7dwGMLp\nytyVifDv42/bAKQqLVWu+2X4ja0hUx8tjkY/0yu9AFdtaGPo7cZPMtEMHNHUjVlC\nkIrumN5VgqdHBg2EXw0=\n-----END CERTIFICATE-----\n-----BEGIN CERTIFICATE-----\nMIIC2jCCAcKgAwIBAgIEWV9VgjANBgkqhkiG9w0BAQUFADAvMS0wKwYDVQQDEyRl\nNjNhZjUxYS04NDU3LTQ2N2QtOGNiYi1lYTAyODYwYmExNzIwHhcNMTkwOTE4MTE1\nMjE3WhcNMjkwOTE2MTE1MjE3WjAvMS0wKwYDVQQDEyRlNjNhZjUxYS04NDU3LTQ2\nN2QtOGNiYi1lYTAyODYwYmExNzIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK\nAoIBAQDeeNrbk7SDHPnhsfmoFx7ZxZ3jU1bCJgSixvN/UXcASpU293FLrZjx5x+w\nEdQP/0kV6+oNxq3Mgd48scc/BjakSTePXCCq3Xs7y5LGPb31bFNyW3iG+Qc55VZK\nZgmGUm4i827UFR/9gDsGfFw6ynRYtyymVPu99VDqHj8b3bvZ4L7Y7laIQ3MltOkK\nh8JGIrSZ4ARm3OKssKf+gIBFAiQqGKPJgRTW/p0dbN12I7uzcpftULujGL1Xsyo8\n/YWk+P7IFmLsnIqImclMujgnClr19jhB9bc/eT3S/UwjAWWIAO5sWRTFMOfyc1r4\nsg3nd0glxXuCXmnl9Tie5ke/86jXAgMBAAEwDQYJKoZIhvcNAQEFBQADggEBAC3m\ndpuTPLzLy2VBcvmVr6m0VRVrPnxttd9+3heOaO/pgFL8yMfRhoET7A6PROKWu81O\nWqQZlPlNEM1pjIeUaIJyvBjzBYCoAwoN4o2BsuLeR1Bf7OFhS0g+eCJCfBzYmwwd\nHBIN0dTLP4Cyd/M8Pb/qV66V7dTIorxLSslCLBpfj5SZWMfsYaU2nq+gT3O4sgGm\nnhvZCoNdwTHsfShxVpDTqFZPaMl+QbspkLbW4KdYykUXK4xzFd9NHKzVe/DtK8um\nyL5KuABtky6sVoxTqq4rhKgCZR+EjTTYE1j/MDhtL3dwfKoo9A1jjW3gynSzBs/r\nO83UZ0J2uHLxDxz1yek=\n-----END CERTIFICATE-----\n" - }, - { - "fileName": "var/tmp/filestore_temp/files_d/Common_d/trust_certificate_d/:Common:dtdi.crt_113506_1", - "size": 1245, - "content": "-----BEGIN CERTIFICATE-----\nMIIDajCCAlKgAwIBAgIDAQOFMA0GCSqGSIb3DQEBBQUAMC4xLDAqBgNVBAMTI2Q1\nNGE1MDAyLTMzZjEtNGYxMC04ZDQyMDA1MDU2OTZmNGNiMB4XDTIwMDkxNzE0NTgz\nNVoXDTMwMDkxNTE0NTgzNVowETEPMA0GA1UEAxMGYmlnaXAxMIIBIjANBgkqhkiG\n9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5AUfu+52VsUei9WqGzVnAd3m8N4VBwRGK/4+\nUopzME3eFLB2+0sTDjudBiU57tpT5xjfbO87y5QKhOpu9UhcjLKv8+Us2d87ikSV\ntFxKbUDDH04xmc0aZlsOGPye5hRV5Q7ykO3jcRRgavCEgkfO9MDE6Z6HQlEL2fde\n33iuLm0FVqq5CLwILaLbizVmXb/1JQ5/RIHnpyLVH84ksNgp3dFJMEvHQHB2pp1+\nJPMQ+dW8EGVub3NAJMR+ZGUxbfI9MA3soLhE1FQ6Ht+FShWtZ4uvg5kh8bZaxLYF\nB+IOQwaMmLKRfdBgeeuMtLMFDujRKUvGsbdgS3zjjMckvOUxuQIDAQABo4GtMIGq\nMBEGA1UdEQQKMAiCBmJpZ2lwMTAMBgNVHRMBAf8EAjAAMA4GA1UdDwEB/wQEAwIF\noDAdBgNVHQ4EFgQU21PAsN35gDnswVBSiXfV1uAnU/YwWAYDVR0jBFEwT4AUW8Wv\nD+ybAeAA6wVZN0js9jDUEIqhMqQwMC4xLDAqBgNVBAMTI2Q1NGE1MDAyLTMzZjEt\nNGYxMC04ZDQyMDA1MDU2OTZmNGNiggMJp4swDQYJKoZIhvcNAQEFBQADggEBABAy\npYl4l+86Gcl+kyJ2SlFydSkRyBhxXww1XIDC/2W4UHU9D1NMCpMwsW6HcoajcCO7\nuEjonVaNx3taSBZCQQonhd/gRvRLs5XppX/vj7le3gOAGGnl4mwqgPjyvsKNjpAA\nXTDyXTExbMaBGySsmvlRwyPDrs7xwK9Y3ySjpUALSVwmbAjtsTjMTfkh92x22RnP\nJzKy17aqh21HDDJVI7LhyCHaWdyyQnPaWp+xQdk5n8b72SIE67vXLB2J17Q8OneW\nVP6RtqMVbIWFLWnkw/2vK6We9iUkbdhUowLmSeheZvGhQxsZPLv0vIis1/N8+YT9\nvxvkhMCc/xgi2cw3Abs=\n-----END CERTIFICATE-----\n" - }, - { - "fileName": "var/tmp/filestore_temp/files_d/Common_d/trust_certificate_d/:Common:dtca-bundle.crt_113514_1", - "size": 3389, - "content": "-----BEGIN CERTIFICATE-----\nMIIDijCCAnKgAwIBAgIDCaeLMA0GCSqGSIb3DQEBBQUAMC4xLDAqBgNVBAMTI2Q1\nNGE1MDAyLTMzZjEtNGYxMC04ZDQyMDA1MDU2OTZmNGNiMB4XDTIwMDkxNzE0NTgz\nMFoXDTMwMDkxNTE0NTgzMFowLjEsMCoGA1UEAxMjZDU0YTUwMDItMzNmMS00ZjEw\nLThkNDIwMDUwNTY5NmY0Y2IwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB\nAQCX9+xESzxrRk2l1CxJ2oHkmzjdWc2BssfHjbwcJM12XTbS/eb9WzOELQFutw3/\nmHqaXNxHZwru+qHCTJwekJXHwIWHtGSBaHTLQ3xRCKvJFdWYxZA7zcDk33gnFV6I\n72YtDjrWDToKGTpyPdyUfXB5HAeCBU5fRiV/VrpEK8S0Jzd+FV1gLs8BzsTS7g5+\nYIsmw+DPy9V60WBAg06wdfnzGJTPCjgaPGhSCJFYWN+ZMajeZ4+tM/oOv8i7HrlB\nwnH4P7Qu6nH9za1N4E7NJGrIby3Y3iSR2bc/m2hay5NtQqf6Ee9W7TCrG2z0Q2MD\n+Rt51KWbQYB+8S5b5JnAhVGXAgMBAAGjgbAwga0wEQYDVR0RBAowCIIGYmlnaXAx\nMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgG2MB0GA1UdDgQWBBRbxa8P\n7JsB4ADrBVk3SOz2MNQQijBYBgNVHSMEUTBPgBRbxa8P7JsB4ADrBVk3SOz2MNQQ\niqEypDAwLjEsMCoGA1UEAxMjZDU0YTUwMDItMzNmMS00ZjEwLThkNDIwMDUwNTY5\nNmY0Y2KCAwmnizANBgkqhkiG9w0BAQUFAAOCAQEAGmUpTy2VwO4vfLD4jRef41f4\nbUMrtbxjCLYAfwUQEgGpbQsEAJ04gJVJzciplLJIBU1WHTIM5OM52fw5tV+cw8Ie\nZ/BwsJ1CAOLQqtmzEimeYPgEHguHT5su35HnOS3ulsKXw2c/tHn9mSm9UP65bM0T\n2YIic+dvp7DWA7WRvZmMRJ/BTFmuB/llP8WYOpcfwh2FYaIhQgYukH87LrwzAf7f\nL9h3AzCRHVBSYZEA2tRhsskDtDV7Y63SsKigKVhu5///DJlespXHjfTt6ylT3YCF\nUBcwNO/VuaVd+jbs/0N60yjww5cfzEhsUWJPRMs45FA9/+9ZfSmP3hwfLnfgDA==\n-----END CERTIFICATE-----\n-----BEGIN CERTIFICATE-----\nMIIC2jCCAcKgAwIBAgIEKRmOjjANBgkqhkiG9w0BAQUFADAvMS0wKwYDVQQDEyQx\nYjNkM2FkNC0yNDUyLTRiZjYtODVkNi1jZjIwMWMxMzBhOGYwHhcNMTkwOTE4MTE1\nMjE0WhcNMjkwOTE2MTE1MjE0WjAvMS0wKwYDVQQDEyQxYjNkM2FkNC0yNDUyLTRi\nZjYtODVkNi1jZjIwMWMxMzBhOGYwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK\nAoIBAQDfi7yyKOk8BbXYcHv8xcFLTVuYQjJ/cz7JLOsqthV45LonJJwIxTKX2O7a\ntNuscK2eX3zRuE74X+NI9z2TYmbgcJC/XirtU0LhrkXSRwDoe+4rakTZYBL6zzgy\nEdH9e/N/25zRrsPHOFolXY+iDTjTJp8MxDVA3ppVJVBlSkvsLgjHN/ivjsOOZ86v\ntlsnc/jXBR5VSirF8wF8cUi3hWQmTyJcyz8pp1nZx43SzUZw2rrfZ/JEKTpik/4M\ny3mhyIFtJ0DVS8bKF6bNRQceqxUIULkC4Q1aZUwKAn1tEqAD515Mw3rsZTxUJ7Dk\n4/0zZWF+3nJP912dueCNJFqQ1QOnAgMBAAEwDQYJKoZIhvcNAQEFBQADggEBAGvY\n5TSVFJ7qjHd5sykkgchbCA8HknKaE99LV3GU25/4h704pGLoFEek26HzyExAo9GS\nAnnny17Z8wN5xbtpGCrRtt9U+KHj2yQ1RGikULfzcPW6qICjJFK0yEBg9XNfmksp\n0r27LrN8KZq1gEuatI9yQeXK9C1pZ5gfKxNYiIqk5EvbR50EmcSE20pfk92dEKGt\nl+Yyuv4quT2ijcu3EPS3ninlqxILsWuNaCVZ/07SKOKXyT7lfTbBaNuly7dwGMLp\nytyVifDv42/bAKQqLVWu+2X4ja0hUx8tjkY/0yu9AFdtaGPo7cZPMtEMHNHUjVlC\nkIrumN5VgqdHBg2EXw0=\n-----END CERTIFICATE-----\n-----BEGIN CERTIFICATE-----\nMIIC2jCCAcKgAwIBAgIEWV9VgjANBgkqhkiG9w0BAQUFADAvMS0wKwYDVQQDEyRl\nNjNhZjUxYS04NDU3LTQ2N2QtOGNiYi1lYTAyODYwYmExNzIwHhcNMTkwOTE4MTE1\nMjE3WhcNMjkwOTE2MTE1MjE3WjAvMS0wKwYDVQQDEyRlNjNhZjUxYS04NDU3LTQ2\nN2QtOGNiYi1lYTAyODYwYmExNzIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK\nAoIBAQDeeNrbk7SDHPnhsfmoFx7ZxZ3jU1bCJgSixvN/UXcASpU293FLrZjx5x+w\nEdQP/0kV6+oNxq3Mgd48scc/BjakSTePXCCq3Xs7y5LGPb31bFNyW3iG+Qc55VZK\nZgmGUm4i827UFR/9gDsGfFw6ynRYtyymVPu99VDqHj8b3bvZ4L7Y7laIQ3MltOkK\nh8JGIrSZ4ARm3OKssKf+gIBFAiQqGKPJgRTW/p0dbN12I7uzcpftULujGL1Xsyo8\n/YWk+P7IFmLsnIqImclMujgnClr19jhB9bc/eT3S/UwjAWWIAO5sWRTFMOfyc1r4\nsg3nd0glxXuCXmnl9Tie5ke/86jXAgMBAAEwDQYJKoZIhvcNAQEFBQADggEBAC3m\ndpuTPLzLy2VBcvmVr6m0VRVrPnxttd9+3heOaO/pgFL8yMfRhoET7A6PROKWu81O\nWqQZlPlNEM1pjIeUaIJyvBjzBYCoAwoN4o2BsuLeR1Bf7OFhS0g+eCJCfBzYmwwd\nHBIN0dTLP4Cyd/M8Pb/qV66V7dTIorxLSslCLBpfj5SZWMfsYaU2nq+gT3O4sgGm\nnhvZCoNdwTHsfShxVpDTqFZPaMl+QbspkLbW4KdYykUXK4xzFd9NHKzVe/DtK8um\nyL5KuABtky6sVoxTqq4rhKgCZR+EjTTYE1j/MDhtL3dwfKoo9A1jjW3gynSzBs/r\nO83UZ0J2uHLxDxz1yek=\n-----END CERTIFICATE-----\n" - }, - { - "fileName": "var/tmp/filestore_temp/files_d/Common_d/certificate_key_d/:Common:f5_api_com.key_63136_1", - "size": 3306, - "content": "-----BEGIN RSA PRIVATE KEY-----\nProc-Type: 4,ENCRYPTED\nDEK-Info: DES-CBC,47ED725CCFA3C3D0\n\n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\n-----END RSA PRIVATE KEY-----\n" - }, - { - "fileName": "var/tmp/filestore_temp/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_general_ui_65124_1", - "size": 62, - "content": "\n\n" - }, - { - "fileName": "var/tmp/filestore_temp/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_framework_installation_65173_1", - "size": 62, - "content": "\n\n" - }, - { - "fileName": "var/tmp/filestore_temp/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_act_logon_page_ag_65223_2", - "size": 134, - "content": "\n\n \n\n" - }, - { - "fileName": "var/tmp/filestore_temp/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_logout_65164_1", - "size": 62, - "content": "\n\n" - }, - { - "fileName": "var/tmp/filestore_temp/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_eps_65170_1", - "size": 62, - "content": "\n\n" - }, - { - "fileName": "var/tmp/filestore_temp/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_errormap_65167_1", - "size": 62, - "content": "\n\n" - }, - { - "fileName": "var/tmp/filestore_temp/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_end_deny_ag_65134_1", - "size": 62, - "content": "\n\n" - } - ] - } -} diff --git a/package-lock.json b/package-lock.json index e080a08..c844bdd 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "f5-corkscrew", - "version": "0.14.0", + "version": "1.1.0", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "f5-corkscrew", - "version": "0.14.0", + "version": "1.1.0", "license": "Apache-2.0", "dependencies": { "balanced-match": "^2.0.0", @@ -14,13 +14,13 @@ "deepmerge-ts": "^5.1.0", "f5-conx-core": "^0.17.2", "fast-xml-parser": "^4.2.2", - "glob": "^9.3.4", + "glob": "^10.2.3", "object-path": "^0.11.8", - "tar": "^6.1.13", + "tar": "^6.1.14", "tar-stream": "^3.0.0", "uuid": "^9.0.0", "xregexp": "^5.1.1", - "yargs": "^17.7.1", + "yargs": "^17.7.2", "zlib": "^1.0.5" }, "bin": { @@ -35,7 +35,7 @@ "@types/mocha": "^10.0.1", "@types/node": "^16.11.7", "@types/object-path": "^0.11.1", - "@types/tar": "^6.1.4", + "@types/tar": "^6.1.5", "@types/tar-stream": "^2.2.2", "@types/uuid": "^9.0.1", "@types/yargs": "^17.0.24", @@ -615,6 +615,95 @@ "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", "dev": true }, + "node_modules/@isaacs/cliui": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", + "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", + "dependencies": { + "string-width": "^5.1.2", + "string-width-cjs": "npm:string-width@^4.2.0", + "strip-ansi": "^7.0.1", + "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", + "wrap-ansi": "^8.1.0", + "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@isaacs/cliui/node_modules/ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==" + }, + "node_modules/@isaacs/cliui/node_modules/string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "dependencies": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@isaacs/cliui/node_modules/strip-ansi": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz", + "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/wrap-ansi": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", + "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", + "dependencies": { + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, "node_modules/@istanbuljs/load-nyc-config": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", @@ -790,6 +879,15 @@ "node": ">= 8" } }, + "node_modules/@pkgjs/parseargs": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", + "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", + "optional": true, + "engines": { + "node": ">=14" + } + }, "node_modules/@tsconfig/node10": { "version": "1.0.9", "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.9.tgz", @@ -892,9 +990,9 @@ "dev": true }, "node_modules/@types/tar": { - "version": "6.1.4", - "resolved": "https://registry.npmjs.org/@types/tar/-/tar-6.1.4.tgz", - "integrity": "sha512-Cp4oxpfIzWt7mr2pbhHT2OTXGMAL0szYCzuf8lRWyIMCgsx6/Hfc3ubztuhvzXHXgraTQxyOCmmg7TDGIMIJJQ==", + "version": "6.1.5", + "resolved": "https://registry.npmjs.org/@types/tar/-/tar-6.1.5.tgz", + "integrity": "sha512-qm2I/RlZij5RofuY7vohTpYNaYcrSQlN2MyjucQc7ZweDwaEWkdN/EeNh6e9zjK6uEm6PwjdMXkcj05BxZdX1Q==", "dev": true, "dependencies": { "@types/node": "*", @@ -1732,7 +1830,6 @@ "version": "7.0.3", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, "dependencies": { "path-key": "^3.1.0", "shebang-command": "^2.0.0", @@ -1978,6 +2075,11 @@ "node": ">=6.0.0" } }, + "node_modules/eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==" + }, "node_modules/electron-to-chromium": { "version": "1.4.356", "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.356.tgz", @@ -2580,7 +2682,8 @@ "node_modules/fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true }, "node_modules/fsevents": { "version": "2.3.2", @@ -2655,14 +2758,18 @@ } }, "node_modules/glob": { - "version": "9.3.4", - "resolved": "https://registry.npmjs.org/glob/-/glob-9.3.4.tgz", - "integrity": "sha512-qaSc49hojMOv1EPM4EuyITjDSgSKI0rthoHnvE81tcOi1SCVndHko7auqxdQ14eiQG2NDBJBE86+2xIrbIvrbA==", + "version": "10.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.2.3.tgz", + "integrity": "sha512-Kb4rfmBVE3eQTAimgmeqc2LwSnN0wIOkkUL6HmxEFxNJ4fHghYHVbFba/HcGcRjE6s9KoMNK3rSOwkL4PioZjg==", "dependencies": { - "fs.realpath": "^1.0.0", - "minimatch": "^8.0.2", - "minipass": "^4.2.4", - "path-scurry": "^1.6.1" + "foreground-child": "^3.1.0", + "jackspeak": "^2.0.3", + "minimatch": "^9.0.0", + "minipass": "^5.0.0", + "path-scurry": "^1.7.0" + }, + "bin": { + "glob": "dist/cjs/src/bin.js" }, "engines": { "node": ">=16 || 14 >=14.17" @@ -2696,10 +2803,25 @@ "balanced-match": "^1.0.0" } }, + "node_modules/glob/node_modules/foreground-child": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz", + "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==", + "dependencies": { + "cross-spawn": "^7.0.0", + "signal-exit": "^4.0.1" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/glob/node_modules/minimatch": { - "version": "8.0.3", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-8.0.3.tgz", - "integrity": "sha512-tEEvU9TkZgnFDCtpnrEYnPsjT7iUx42aXfs4bzmQ5sMA09/6hZY0jeZcGkXyDagiBOvkUjNo8Viom+Me6+2x7g==", + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.0.tgz", + "integrity": "sha512-0jJj8AvgKqWN05mrwuqi8QYKx1WmYSUoKSxu5Qhs9prezTz10sxAHGNZe9J9cqIJzta8DWsleh2KaVaLl6Ru2w==", "dependencies": { "brace-expansion": "^2.0.1" }, @@ -2710,6 +2832,25 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/glob/node_modules/minipass": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", + "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/glob/node_modules/signal-exit": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.0.1.tgz", + "integrity": "sha512-uUWsN4aOxJAS8KOuf3QMyFtgm1pkb6I+KRZbRF/ghdf5T7sM+B1lLLzPDxswUjkmHyxQAVzEgG35E3NzDM9GVw==", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/globals": { "version": "13.20.0", "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", @@ -3142,8 +3283,7 @@ "node_modules/isexe": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" }, "node_modules/istanbul-lib-coverage": { "version": "3.2.0", @@ -3281,6 +3421,23 @@ "node": ">=8" } }, + "node_modules/jackspeak": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.2.0.tgz", + "integrity": "sha512-r5XBrqIJfwRIjRt/Xr5fv9Wh09qyhHfKnYddDlpM+ibRR20qrYActpCAgU6U+d53EOEjzkvxPMVHSlgR7leXrQ==", + "dependencies": { + "@isaacs/cliui": "^8.0.2" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" + } + }, "node_modules/js-sdsl": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.4.0.tgz", @@ -3493,6 +3650,7 @@ "version": "4.2.5", "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.2.5.tgz", "integrity": "sha512-+yQl7SX3bIT83Lhb4BVorMAHVuqsskxRdlmO9kTpyukp8vsm2Sn/fUOV9xlnG8/a5JsypJzap21lz/y3FBMJ8Q==", + "dev": true, "engines": { "node": ">=8" } @@ -4157,18 +4315,17 @@ "version": "3.1.1", "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true, "engines": { "node": ">=8" } }, "node_modules/path-scurry": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.6.3.tgz", - "integrity": "sha512-RAmB+n30SlN+HnNx6EbcpoDy9nwdpcGPnEKrJnu6GZoDWBdIjo1UQMVtW2ybtC7LC2oKLcMq8y5g8WnKLiod9g==", + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.7.0.tgz", + "integrity": "sha512-UkZUeDjczjYRE495+9thsgcVgsaCPkaw80slmfVFgllxY+IO8ubTsOpFVjDPROBqJdHfVPUFRHPBV/WciOVfWg==", "dependencies": { - "lru-cache": "^7.14.1", - "minipass": "^4.0.2" + "lru-cache": "^9.0.0", + "minipass": "^5.0.0" }, "engines": { "node": ">=16 || 14 >=14.17" @@ -4178,11 +4335,19 @@ } }, "node_modules/path-scurry/node_modules/lru-cache": { - "version": "7.18.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", - "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "version": "9.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-9.1.1.tgz", + "integrity": "sha512-65/Jky17UwSb0BuB9V+MyDpsOtXKmYwzhyl+cOa9XUiI4uV2Ouy/2voFP3+al0BjZbJgMBD8FojMpAf+Z+qn4A==", "engines": { - "node": ">=12" + "node": "14 || >=16.14" + } + }, + "node_modules/path-scurry/node_modules/minipass": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", + "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", + "engines": { + "node": ">=8" } }, "node_modules/path-type": { @@ -4593,7 +4758,6 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, "dependencies": { "shebang-regex": "^3.0.0" }, @@ -4605,7 +4769,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true, "engines": { "node": ">=8" } @@ -4711,6 +4874,20 @@ "node": ">=8" } }, + "node_modules/string-width-cjs": { + "name": "string-width", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/strip-ansi": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", @@ -4722,6 +4899,18 @@ "node": ">=8" } }, + "node_modules/strip-ansi-cjs": { + "name": "strip-ansi", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/strip-bom": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", @@ -4769,13 +4958,13 @@ } }, "node_modules/tar": { - "version": "6.1.13", - "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.13.tgz", - "integrity": "sha512-jdIBIN6LTIe2jqzay/2vtYLlBHa3JF42ot3h1dW8Q0PaAG4v8rm0cvpVePtau5C6OKXGGcgO9q2AMNSWxiLqKw==", + "version": "6.1.14", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.14.tgz", + "integrity": "sha512-piERznXu0U7/pW7cdSn7hjqySIVTYT6F76icmFk7ptU7dDYlXTm5r9A6K04R2vU3olYgoKeo1Cg3eeu5nhftAw==", "dependencies": { "chownr": "^2.0.0", "fs-minipass": "^2.0.0", - "minipass": "^4.0.0", + "minipass": "^5.0.0", "minizlib": "^2.1.1", "mkdirp": "^1.0.3", "yallist": "^4.0.0" @@ -4802,6 +4991,14 @@ "node": ">=10" } }, + "node_modules/tar/node_modules/minipass": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", + "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", + "engines": { + "node": ">=8" + } + }, "node_modules/tar/node_modules/yallist": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", @@ -5077,7 +5274,6 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, "dependencies": { "isexe": "^2.0.0" }, @@ -5145,6 +5341,23 @@ "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } }, + "node_modules/wrap-ansi-cjs": { + "name": "wrap-ansi", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, "node_modules/wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", @@ -5193,9 +5406,9 @@ "dev": true }, "node_modules/yargs": { - "version": "17.7.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.1.tgz", - "integrity": "sha512-cwiTb08Xuv5fqF4AovYacTFNxk62th7LKJ6BL9IGUpTJrWoU7/7WdQGTP2SjKf1dUNBGzDd28p/Yfs/GI6JrLw==", + "version": "17.7.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", + "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", "dependencies": { "cliui": "^8.0.1", "escalade": "^3.1.1", @@ -5752,6 +5965,64 @@ "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", "dev": true }, + "@isaacs/cliui": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", + "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", + "requires": { + "string-width": "^5.1.2", + "string-width-cjs": "npm:string-width@^4.2.0", + "strip-ansi": "^7.0.1", + "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", + "wrap-ansi": "^8.1.0", + "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==" + }, + "ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==" + }, + "emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==" + }, + "string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "requires": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + } + }, + "strip-ansi": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz", + "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", + "requires": { + "ansi-regex": "^6.0.1" + } + }, + "wrap-ansi": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", + "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", + "requires": { + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" + } + } + } + }, "@istanbuljs/load-nyc-config": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", @@ -5889,6 +6160,12 @@ "fastq": "^1.6.0" } }, + "@pkgjs/parseargs": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", + "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", + "optional": true + }, "@tsconfig/node10": { "version": "1.0.9", "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.9.tgz", @@ -5990,9 +6267,9 @@ "dev": true }, "@types/tar": { - "version": "6.1.4", - "resolved": "https://registry.npmjs.org/@types/tar/-/tar-6.1.4.tgz", - "integrity": "sha512-Cp4oxpfIzWt7mr2pbhHT2OTXGMAL0szYCzuf8lRWyIMCgsx6/Hfc3ubztuhvzXHXgraTQxyOCmmg7TDGIMIJJQ==", + "version": "6.1.5", + "resolved": "https://registry.npmjs.org/@types/tar/-/tar-6.1.5.tgz", + "integrity": "sha512-qm2I/RlZij5RofuY7vohTpYNaYcrSQlN2MyjucQc7ZweDwaEWkdN/EeNh6e9zjK6uEm6PwjdMXkcj05BxZdX1Q==", "dev": true, "requires": { "@types/node": "*", @@ -6563,7 +6840,6 @@ "version": "7.0.3", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, "requires": { "path-key": "^3.1.0", "shebang-command": "^2.0.0", @@ -6747,6 +7023,11 @@ "esutils": "^2.0.2" } }, + "eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==" + }, "electron-to-chromium": { "version": "1.4.356", "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.356.tgz", @@ -7191,7 +7472,8 @@ "fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true }, "fsevents": { "version": "2.3.2", @@ -7244,14 +7526,15 @@ } }, "glob": { - "version": "9.3.4", - "resolved": "https://registry.npmjs.org/glob/-/glob-9.3.4.tgz", - "integrity": "sha512-qaSc49hojMOv1EPM4EuyITjDSgSKI0rthoHnvE81tcOi1SCVndHko7auqxdQ14eiQG2NDBJBE86+2xIrbIvrbA==", + "version": "10.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.2.3.tgz", + "integrity": "sha512-Kb4rfmBVE3eQTAimgmeqc2LwSnN0wIOkkUL6HmxEFxNJ4fHghYHVbFba/HcGcRjE6s9KoMNK3rSOwkL4PioZjg==", "requires": { - "fs.realpath": "^1.0.0", - "minimatch": "^8.0.2", - "minipass": "^4.2.4", - "path-scurry": "^1.6.1" + "foreground-child": "^3.1.0", + "jackspeak": "^2.0.3", + "minimatch": "^9.0.0", + "minipass": "^5.0.0", + "path-scurry": "^1.7.0" }, "dependencies": { "balanced-match": { @@ -7267,13 +7550,32 @@ "balanced-match": "^1.0.0" } }, + "foreground-child": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz", + "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==", + "requires": { + "cross-spawn": "^7.0.0", + "signal-exit": "^4.0.1" + } + }, "minimatch": { - "version": "8.0.3", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-8.0.3.tgz", - "integrity": "sha512-tEEvU9TkZgnFDCtpnrEYnPsjT7iUx42aXfs4bzmQ5sMA09/6hZY0jeZcGkXyDagiBOvkUjNo8Viom+Me6+2x7g==", + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.0.tgz", + "integrity": "sha512-0jJj8AvgKqWN05mrwuqi8QYKx1WmYSUoKSxu5Qhs9prezTz10sxAHGNZe9J9cqIJzta8DWsleh2KaVaLl6Ru2w==", "requires": { "brace-expansion": "^2.0.1" } + }, + "minipass": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", + "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==" + }, + "signal-exit": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.0.1.tgz", + "integrity": "sha512-uUWsN4aOxJAS8KOuf3QMyFtgm1pkb6I+KRZbRF/ghdf5T7sM+B1lLLzPDxswUjkmHyxQAVzEgG35E3NzDM9GVw==" } } }, @@ -7577,8 +7879,7 @@ "isexe": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" }, "istanbul-lib-coverage": { "version": "3.2.0", @@ -7686,6 +7987,15 @@ "istanbul-lib-report": "^3.0.0" } }, + "jackspeak": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.2.0.tgz", + "integrity": "sha512-r5XBrqIJfwRIjRt/Xr5fv9Wh09qyhHfKnYddDlpM+ibRR20qrYActpCAgU6U+d53EOEjzkvxPMVHSlgR7leXrQ==", + "requires": { + "@isaacs/cliui": "^8.0.2", + "@pkgjs/parseargs": "^0.11.0" + } + }, "js-sdsl": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.4.0.tgz", @@ -7844,7 +8154,8 @@ "minipass": { "version": "4.2.5", "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.2.5.tgz", - "integrity": "sha512-+yQl7SX3bIT83Lhb4BVorMAHVuqsskxRdlmO9kTpyukp8vsm2Sn/fUOV9xlnG8/a5JsypJzap21lz/y3FBMJ8Q==" + "integrity": "sha512-+yQl7SX3bIT83Lhb4BVorMAHVuqsskxRdlmO9kTpyukp8vsm2Sn/fUOV9xlnG8/a5JsypJzap21lz/y3FBMJ8Q==", + "dev": true }, "minizlib": { "version": "2.1.2", @@ -8355,22 +8666,26 @@ "path-key": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==" }, "path-scurry": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.6.3.tgz", - "integrity": "sha512-RAmB+n30SlN+HnNx6EbcpoDy9nwdpcGPnEKrJnu6GZoDWBdIjo1UQMVtW2ybtC7LC2oKLcMq8y5g8WnKLiod9g==", + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.7.0.tgz", + "integrity": "sha512-UkZUeDjczjYRE495+9thsgcVgsaCPkaw80slmfVFgllxY+IO8ubTsOpFVjDPROBqJdHfVPUFRHPBV/WciOVfWg==", "requires": { - "lru-cache": "^7.14.1", - "minipass": "^4.0.2" + "lru-cache": "^9.0.0", + "minipass": "^5.0.0" }, "dependencies": { "lru-cache": { - "version": "7.18.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", - "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==" + "version": "9.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-9.1.1.tgz", + "integrity": "sha512-65/Jky17UwSb0BuB9V+MyDpsOtXKmYwzhyl+cOa9XUiI4uV2Ouy/2voFP3+al0BjZbJgMBD8FojMpAf+Z+qn4A==" + }, + "minipass": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", + "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==" } } }, @@ -8671,7 +8986,6 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, "requires": { "shebang-regex": "^3.0.0" } @@ -8679,8 +8993,7 @@ "shebang-regex": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==" }, "signal-exit": { "version": "3.0.7", @@ -8764,6 +9077,16 @@ "strip-ansi": "^6.0.1" } }, + "string-width-cjs": { + "version": "npm:string-width@4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + }, "strip-ansi": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", @@ -8772,6 +9095,14 @@ "ansi-regex": "^5.0.1" } }, + "strip-ansi-cjs": { + "version": "npm:strip-ansi@6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "requires": { + "ansi-regex": "^5.0.1" + } + }, "strip-bom": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", @@ -8807,13 +9138,13 @@ } }, "tar": { - "version": "6.1.13", - "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.13.tgz", - "integrity": "sha512-jdIBIN6LTIe2jqzay/2vtYLlBHa3JF42ot3h1dW8Q0PaAG4v8rm0cvpVePtau5C6OKXGGcgO9q2AMNSWxiLqKw==", + "version": "6.1.14", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.14.tgz", + "integrity": "sha512-piERznXu0U7/pW7cdSn7hjqySIVTYT6F76icmFk7ptU7dDYlXTm5r9A6K04R2vU3olYgoKeo1Cg3eeu5nhftAw==", "requires": { "chownr": "^2.0.0", "fs-minipass": "^2.0.0", - "minipass": "^4.0.0", + "minipass": "^5.0.0", "minizlib": "^2.1.1", "mkdirp": "^1.0.3", "yallist": "^4.0.0" @@ -8824,6 +9155,11 @@ "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==" }, + "minipass": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", + "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==" + }, "yallist": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", @@ -9034,7 +9370,6 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, "requires": { "isexe": "^2.0.0" } @@ -9081,6 +9416,16 @@ "strip-ansi": "^6.0.0" } }, + "wrap-ansi-cjs": { + "version": "npm:wrap-ansi@7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + } + }, "wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", @@ -9123,9 +9468,9 @@ "dev": true }, "yargs": { - "version": "17.7.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.1.tgz", - "integrity": "sha512-cwiTb08Xuv5fqF4AovYacTFNxk62th7LKJ6BL9IGUpTJrWoU7/7WdQGTP2SjKf1dUNBGzDd28p/Yfs/GI6JrLw==", + "version": "17.7.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", + "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", "requires": { "cliui": "^8.0.1", "escalade": "^3.1.1", diff --git a/package.json b/package.json index 0963b45..15e3efc 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "f5-corkscrew", "description": "extracting tmos config", "author": "F5DevCentral", - "version": "1.0.0", + "version": "1.1.1", "license": "Apache-2.0", "homepage": "https://github.com/f5devcentral/f5-corkscrew#readme", "main": "dist/index.js", @@ -16,7 +16,7 @@ }, "scripts": { "lint": "tsc --noEmit && eslint 'src/**/*.{js,ts,tsx}' 'src/tests/**/*.{js,ts,tsx}'", - "test": "nyc mocha -r ts-node/register \"tests/ALL.tests.ts\"", + "test": "nyc mocha -r ts-node/register \"tests/*.tests.ts\"", "refresh": "rm -rf ./node_modules ./package-lock.json && npm install", "build-code-docs": "typedoc --out code_docs src", "compile": "tsc -p .", @@ -59,7 +59,7 @@ "@types/mocha": "^10.0.1", "@types/node": "^16.11.7", "@types/object-path": "^0.11.1", - "@types/tar": "^6.1.4", + "@types/tar": "^6.1.5", "@types/tar-stream": "^2.2.2", "@types/uuid": "^9.0.1", "@types/yargs": "^17.0.24", @@ -78,13 +78,13 @@ "deepmerge-ts": "^5.1.0", "f5-conx-core": "^0.17.2", "fast-xml-parser": "^4.2.2", - "glob": "^9.3.4", + "glob": "^10.2.3", "object-path": "^0.11.8", - "tar": "^6.1.13", + "tar": "^6.1.14", "tar-stream": "^3.0.0", "uuid": "^9.0.0", "xregexp": "^5.1.1", - "yargs": "^17.7.1", + "yargs": "^17.7.2", "zlib": "^1.0.5" } } diff --git a/src/cli.ts b/src/cli.ts index defa7dd..1a1f5dd 100644 --- a/src/cli.ts +++ b/src/cli.ts @@ -21,9 +21,26 @@ import BigipConfig from './ltm' import yargs from 'yargs'; import Logger from 'f5-conx-core/dist/logger'; -export const logger = new Logger('F5_CORKSCREW_LOG_LEVEL'); +const logger = new Logger('F5_CORKSCREW_LOG_LEVEL'); -async function explode(args: argsObj) { + +export const cli = yargs(process.argv.slice(2)).options({ + file: { + type: 'string', + demandOption: true, + describe: '.conf|ucs|kqview to explode' + }, + no_sources: { type: 'boolean', default: true }, + no_file_store: { type: 'boolean', default: true }, + no_command_logs: { type: 'boolean', default: true }, + no_process_logs: { type: 'boolean', default: true }, + }).argv + + explode(cli) + + + +async function explode(args: any) { logger.console = false @@ -70,7 +87,7 @@ async function explode(args: argsObj) { if (output) { if(args.no_sources) delete output.config.sources if(args.no_file_store) delete output.fileStore - if(args.no_conversion_logs) delete output.logs + if(args.no_process_logs) delete output.logs // add successful output if there respObj['output'] = output; @@ -83,45 +100,13 @@ async function explode(args: argsObj) { } console.log(JSON.stringify(respObj)) - + return respObj; } -// yargs -// .command('explode ', 'explode bigip config', (yargs) => { -// yargs -// .positional('file', { -// describe: '.conf|ucs|kqview to explode', -// demandOption: true -// }) -// .option('no_sources', { -// describe: 'supress config file sources bigip.conf, bigip_base.conf output', -// boolean: true -// }) -// .option('no_file_store', { -// describe: 'supress filestore files output', -// boolean: true -// }) -// .option('no_command_logs', { -// describe: 'no cli output', -// boolean: true -// }) -// .option('no_conversion_logs', { -// describe: 'no extraction parsing logs', -// boolean: true -// }) -// }, (argv: argsObj) => { -// explode(argv) -// }) -// .demandCommand(1, 'A command is required') -// .wrap(120) -// .strict() -// .argv; - - -export type argsObj = { +type argsObj = { no_sources: boolean, no_file_store: boolean, no_command_logs: boolean, - no_conversion_logs: boolean, + no_process_logs: boolean, file: string } \ No newline at end of file diff --git a/src/deepParse.ts b/src/deepParse.ts index 58bf766..4c02ebc 100644 --- a/src/deepParse.ts +++ b/src/deepParse.ts @@ -3,11 +3,14 @@ 'use strict'; import XRegExp from 'xregexp'; +import { RegExTree } from './regex'; +import { deepmergeInto } from 'deepmerge-ts'; +import logger from './logger'; +import { balancedRx1, balancedRxAll } from './tmos2json'; - -export async function parseDeep(obj: any, rx) { +export async function parseDeep(obj: any, rx: RegExTree) { // GTM SERVER -------------------------------------------------- if (obj.gtm?.server) { @@ -92,17 +95,21 @@ export async function parseDeep(obj: any, rx) { }) } + // test function to handle what is below, so it can be reused + const rest = keyValuePairs(body) + deepmergeInto(sObj, rest); + // at this point, the rest of the server config options should be single line touples [string, string] // so, split the lines, then split on the space, make object parameters {[0]: [1]} // this will keep the regexing to a minimum // if this approach doesn't work out, we will just have to regex all the lines // got this working, but regex approach is still recommended - body = body.trim() - body = body.split('\n') - .forEach(b2 => { - const b3 = b2.trim().split(' ') - sObj[b3[0]] = b3[1]; - }) + // body = body.trim() + // body = body.split('\n') + // .forEach(b2 => { + // const b3 = b2.trim().split(' ') + // sObj[b3[0]] = b3[1]; + // }) // todo: trim the body and see if anything is leftover // Log an error that we missed something in extra parsing @@ -200,12 +207,14 @@ export async function parseDeep(obj: any, rx) { let body = obj.gtm.wideip[dnsType][wipName]; obj.gtm.wideip[dnsType][wipName] = { line: body }; // re-assign the original config string const sObj = obj.gtm.wideip[dnsType][wipName]; // local var the object we are working with - const nameRx = body.match(rx.gtm.wideip.name); + const nameRx = wipName.match(rx.gtm.wideip.name); + + sObj.fqdn = nameRx.groups.name; + partitionFolder(sObj, nameRx.groups.partition); - sObj.fqdn = nameRx.groups.name, - sObj.partition = nameRx.groups.partition, sObj.type = dnsType; // add dns type to object body + const descriptionRx = body.match(rx.gtm.wideip.description) const lrpRx = body.match(rx.gtm.wideip.lastResortPool) const persistRx = body.match(rx.gtm.wideip.persistence) // todo: move to rx tree const lbModeRx = body.match(rx.gtm.wideip['pool-lb-mode']) // todo: move to rx tree @@ -213,6 +222,11 @@ export async function parseDeep(obj: any, rx) { const rulesRx = body.match(rx.gtm.wideip.rules) // todo: move to rx tree const poolsParentRx = body.match(rx.gtm.wideip.poolsParent) // todo: move to rx tree + if (descriptionRx) { + body = body.replace(descriptionRx[0], ''); + sObj.description = descriptionRx.groups.desc; + } + if (lrpRx) { body = body.replace(lrpRx[0], ''); sObj['last-resort-pool'] = lrpRx.groups; @@ -271,48 +285,440 @@ export async function parseDeep(obj: any, rx) { const sObj = obj.asm.policy[key]; const statusRx = body.match(rx.asm.status); - const bmRx = body.match(rx.asm['blocking-mode']); - const descRx = body.match(rx.asm.description); - const encodingRx = body.match(rx.asm.encoding); - const pbRx = body.match(rx.asm['policy-builder']); - const pTempRx = body.match(rx.asm['policy-template']); - const pTypeRx = body.match(rx.asm['policy-type']); - const ppRx = body.match(rx.asm['parent-policy']); - - if(statusRx) { + // const bmRx = body.match(rx.asm['blocking-mode']); + // const descRx = body.match(rx.asm.description); + // const encodingRx = body.match(rx.asm.encoding); + // const pbRx = body.match(rx.asm['policy-builder']); + // const pTempRx = body.match(rx.asm['policy-template']); + // const pTypeRx = body.match(rx.asm['policy-type']); + // const ppRx = body.match(rx.asm['parent-policy']); + + if (statusRx) { + body = body.replace(statusRx[0], '') sObj.status = statusRx.groups.bool; } - if(bmRx) { - sObj['blocking-mode'] = bmRx.groups.bm; + const rest = keyValuePairs(body) + deepmergeInto(sObj, rest); + + // if (bmRx) { + // body = body.replace(bmRx[0], '') + // sObj['blocking-mode'] = bmRx.groups.bm; + // } + + // if (descRx) { + // sObj.description = descRx.groups.desc; + // } + + // if (encodingRx) { + // sObj.encoding = encodingRx.groups.emc; + // } + + // if (pbRx) { + // sObj['policy-builder'] = pbRx.groups.status; + // } + + // if (pTempRx) { + // sObj['policy-template'] = pTempRx.groups.name; + // } + + // if (pTypeRx) { + // sObj['policy-type'] = pTypeRx.groups.type; + // } + + // if (ppRx) { + // sObj['parent-policy'] = ppRx.groups.name; + // } + + // body; + + return; + + // APM Access Profiles -------------------------------------------------- + } else if (obj.apm?.profile?.access) { + + const key = Object.keys(obj.apm.profile.access)[0]; // only one policy at this point + let body = obj.apm.profile.access[key]; + obj.apm.profile.access[key] = { line: body }; // re-assign the original config string + const sObj = obj.apm.profile.access[key]; + + const nameRx = key.match(rx.apm.name); + sObj.name = nameRx.groups.name; + partitionFolder(sObj, nameRx.groups.partition); + + const alRx = body.match(rx.apm['accept-languages']); + const apRx = body.match(rx.apm['access-policy']); + const lsRx = body.match(rx.apm['log-settings']) + + if (alRx) { + body = body.replace(alRx[0], ''); + const langs = alRx.groups.langs.split(' '); + sObj['accept-languages'] = langs; + } + + if (apRx) { + body = body.replace(apRx[0], ''); + sObj['access-policy'] = apRx.groups.name; + } + + if (lsRx) { + body = body.replace(lsRx[0], ''); + const profs = lsRx.groups.profiles.split('\n') + .map(x => { + return x.trim() + }); + sObj['log-settings'] = profs; + } + + const rest = keyValuePairs(body) + + deepmergeInto(sObj, rest); + + + // APM Access Profiles -------------------------------------------------- + } else if (obj.apm?.policy?.['access-policy']) { + + const key = Object.keys(obj.apm.policy['access-policy'])[0]; // only one policy at this point + let body = obj.apm.policy['access-policy'][key]; + obj.apm.policy['access-policy'][key] = { line: body }; // re-assign the original config string + const sObj = obj.apm.policy['access-policy'][key]; + + /** + * not sure we need to parse this at this time since we parsed + * the access profile for policy reference + * + * keeping here for now (4.29.2023) + */ + + + // LTM Virtual Server -------------------------------------------------- + } else if (obj.ltm?.virtual) { + + const key = Object.keys(obj.ltm.virtual)[0]; // only one policy at this point + let body = obj.ltm.virtual[key]; + obj.ltm.virtual[key] = { line: obj.ltm.virtual[key] }; // re-assign the original config string + const sObj = obj.ltm.virtual[key]; + + const nameRx = key.match(rx.ltm.virtual.name); + sObj.name = nameRx.groups.name; + partitionFolder(sObj, nameRx.groups.partition); + + const destination = body.match(rx.ltm.virtual.destination); + if(destination) { + body = body.replace(destination[0], ''); + sObj.destination = destination[1]; + } + + const descRx = body.match(rx.ltm.virtual.description); + const poolRx = body.match(rx.ltm.virtual.pool); + const profilesRx = body.match(rx.ltm.virtual.profiles); + const rulesRx = body.match(rx.ltm.virtual.rules); + const snatRx = body.match(rx.ltm.virtual.snat); + const policiesRx = body.match(rx.ltm.virtual.policies); + const persistenceRx = body.match(rx.ltm.virtual.persist); + const fallBackPersistRx = body.match(rx.ltm.virtual.fbPersist); + const vlansRx = body.match(rx.ltm.virtual.vlans); + + if (descRx) { + body = body.replace(descRx[0], ''); + sObj.description = descRx[1]; + } + + if (poolRx) { + body = body.replace(poolRx[0], ''); + sObj.pool = poolRx[1]; + } + + if (profilesRx) { + body = body.replace(profilesRx[0], ''); + const pList = profilesRx[1].match(rx.ltm.profiles.names); + sObj.profiles = pList; + } + + if (rulesRx) { + body = body.replace(rulesRx[0], ''); + const list = rulesRx[1].match(rx.ltm.rules.names); + sObj.rules = list; + } + + if (snatRx) { + body = body.replace(snatRx[0], ''); + const sd = snatRx[1].match(rx.ltm.snat.details); + sObj.snat = sd.groups.pool + ? sd.groups.pool + : sd.groups.type; } - if(descRx) { - sObj.description = descRx.groups.desc; + if (policiesRx) { + body = body.replace(policiesRx[0], ''); + const list = policiesRx[1].match(rx.ltm.ltPolicies.names); + sObj.policies = list; } - if(encodingRx) { - sObj.encoding = encodingRx.groups.emc; + if (persistenceRx) { + body = body.replace(persistenceRx[0], ''); + const persist = persistenceRx[1].match(rx.ltm.persist.name)[0]; + sObj.persist = persist as string; } - if(pbRx) { - sObj['policy-builder'] = pbRx.groups.status; + if (fallBackPersistRx) { + body = body.replace(fallBackPersistRx[0], ''); + sObj['fallback-persistence'] = fallBackPersistRx[1]; } + + if (vlansRx) { + body = body.replace(vlansRx[0], ''); + sObj.vlans = vlansRx[1].trim().split(/\n +/); - if(pTempRx) { - sObj['policy-template'] = pTempRx.groups.name; } - if(pTypeRx) { - sObj['policy-type'] = pTypeRx.groups.type; + const rest = keyValuePairs(body) + deepmergeInto(sObj, rest); + + + + // LTM pool -------------------------------------------------- + } else if (obj.ltm?.pool) { + + const key = Object.keys(obj.ltm.pool)[0]; // only one policy at this point + let body = obj.ltm.pool[key]; + obj.ltm.pool[key] = { line: obj.ltm.pool[key] }; // re-assign the original config string + const sObj = obj.ltm.pool[key]; + + const nameRx = key.match(rx.ltm.virtual.name); + sObj.name = nameRx.groups.name; + partitionFolder(sObj, nameRx.groups.partition); + + // const membersGroupRx = body.match(rx.ltm.pool.membersGroup); + + balancedRxAll(body).matches.forEach(e => { + body = e.rest; // re-assign the leftover config string from the match + + // if we have a parent pool 'members' group + if (e.prefaceKey === 'members') { + sObj.members = {} // instantiate the members object + + balancedRxAll(e.body).matches.forEach(f => { + + const n = f.prefaceKey.match(rx.ltm?.pool?.name) + + const mbrObj = { + // name: n.groups.name, + // partition: n.groups.partition, + } + + if (f.body.includes('metadata')) { + // remove all the metadata junk... + const meta = balancedRx1('metadata {', f.body) + f.body = meta.rest; + } + + if (f.body.includes('fqdn')) { + const fqdnRx = f.body.match(rx.ltm.pool.fqdn) + f.body = f.body.replace(fqdnRx[0], '') + const fqdnPBody: any = keyValuePairs(fqdnRx.groups.body); + fqdnPBody.fqdn = fqdnPBody.name; + delete fqdnPBody.name; + deepmergeInto(mbrObj, fqdnPBody); + } + + // merge whatever is left + const pBody = keyValuePairs(f.body) + deepmergeInto(mbrObj, pBody); + + sObj.members[f.prefaceKey] = mbrObj + + }) + + + } + + // if monitor... + // monitor min 2 of { /Common/gateway_icmp /Common/http /Common/http2 } + if (e.prefaceKey.includes('monitor')) { + // here we have a monitor OBJECT, so we need to parse it a little differently + const qualifier = e.prefaceKey.slice(8) + sObj.monitorQualifier = qualifier; + sObj.monitor = e.body.trim().split(' '); + } + }); + + // continue withe parsing monitors + const monitorRx = body.match(rx.ltm.pool.monitors) + + if (monitorRx) { + // monitors parse situation 1. "requirement=>ALL", list of monitors + // monitor /Common/app1_tcp_half_open_quick_monitor and /Common/http_head_f5 and /Common/http2_head_f5 and /Common/http and /Common/tcp_half_open + body = body.replace(monitorRx[0], ''); + sObj.monitor = monitorRx[1].split(/ and /); } - if(ppRx) { - sObj['parent-policy'] = ppRx.groups.name; + const remaining = keyValuePairs(body) + deepmergeInto(sObj, remaining); + + // continue withe parsing profiles + // profiles is not really needed, but it's a nested object + // and will conflict with parsing the rest of the details + + + + } else if (obj.ltm?.node) { + + const key = Object.keys(obj.ltm.node)[0]; // only one policy at this point + let body = obj.ltm.node[key]; + obj.ltm.node[key] = { line: body }; // re-assign the original config string + const sObj = obj.ltm.node[key]; + + const nameRx = key.match(rx.ltm.virtual.name); + sObj.name = nameRx.groups.name; + partitionFolder(sObj, nameRx.groups.partition); + + const m = balancedRx1('fqdn {', body) + + if(m) { + body = m.rest; + const fqdnBody: any = keyValuePairs(m.body); + fqdnBody.fqdn = fqdnBody.name; + delete fqdnBody.name; + deepmergeInto(sObj, fqdnBody); } + const remaining = keyValuePairs(body) + deepmergeInto(sObj, remaining); + sObj; + + + + + } else if (obj.ltm?.snatpool) { + + const key = Object.keys(obj.ltm.snatpool)[0]; // only one policy at this point + let body = obj.ltm.snatpool[key]; + obj.ltm.snatpool[key] = { line: body }; // re-assign the original config string + const sObj = obj.ltm.snatpool[key]; + + const nameRx = key.match(rx.name); + sObj.name = nameRx.groups.name; + partitionFolder(sObj, nameRx.groups.partition); + + balancedRxAll(body).matches.forEach(e => { + body = e.rest; + // sObj[e.prefaceKey] = e.body.trim().split(/\n +/); + const x = e.body.trim().split('\n') + sObj[e.prefaceKey] = x.map(x => x.split('/')[2]); + sObj; + }); + + sObj; + + + + + } else if (obj.ltm?.monitor) { + + const monType = Object.keys(obj.ltm.monitor)[0]; // only one policy at this point + const key = Object.keys(obj.ltm.monitor[monType])[0]; // only one policy at this point + let body = obj.ltm.monitor[monType][key]; + obj.ltm.monitor[monType][key] = { line: body }; // re-assign the original config string + const sObj = obj.ltm.monitor[monType][key]; + + const nameRx = key.match(rx.name); + sObj.name = nameRx.groups.name; + partitionFolder(sObj, nameRx.groups.partition); + + const remaining = keyValuePairs(body) + deepmergeInto(sObj, remaining); + sObj; + + + + + + } else if (obj.security?.dos?.profile) { + + const key = Object.keys(obj.security.dos.profile)[0]; // only one policy at this point + let body = obj.security.dos.profile[key]; + obj.security.dos.profile[key] = { line: body }; // re-assign the original config string + const sObj = obj.security.dos.profile[key]; + + const nameRx = key.match(rx.name); + sObj.name = nameRx.groups.name; + partitionFolder(sObj, nameRx.groups.partition); + + // going three layers deep since this is only for visibility + balancedRxAll(body).matches.forEach(e => { + body = e.rest; + sObj[e.prefaceKey] = {} + + balancedRxAll(e.body).matches.forEach( f => { + e.body = f.rest; + sObj[e.prefaceKey][f.prefaceKey] = {} + // sObj[e.prefaceKey][f.prefaceKey] = f.body + balancedRxAll(f.body).matches.forEach( g => { + f.body = g.rest; + sObj[e.prefaceKey][f.prefaceKey][g.prefaceKey] = g.body + g; + }) + + const rst = keyValuePairs(f.body); + deepmergeInto(sObj[e.prefaceKey][f.prefaceKey], rst) + f; + }) + + const rst = keyValuePairs(e.body); + deepmergeInto(sObj[e.prefaceKey], rst) + e; + }); + + const remaining = keyValuePairs(body) + deepmergeInto(sObj, remaining); + sObj; + + + + + } else if (obj.security?.['bot-defense']?.profile) { + + + const key = Object.keys(obj.security['bot-defense'].profile)[0]; // only one policy at this point + let body = obj.security['bot-defense'].profile[key]; + obj.security['bot-defense'].profile[key] = { line: body }; // re-assign the original config string + const sObj = obj.security['bot-defense'].profile[key]; + + const nameRx = key.match(rx.name); + sObj.name = nameRx.groups.name; + partitionFolder(sObj, nameRx.groups.partition); + + // going three layers deep since this is only for visibility + balancedRxAll(body).matches.forEach(e => { + body = e.rest; + sObj[e.prefaceKey] = {} + + // this header definition is quoted AND has line returns + // so we have to treat it special... + const h = e.body.match(/\n +headers "(?[\w:, \-\n]+)"/) + if(h) { + e.body = e.body.replace(h[0], '') + sObj[e.prefaceKey].headers = h.groups.body.split('\n'); + } + + balancedRxAll(e.body).matches.forEach( f => { + e.body = f.rest; + sObj[e.prefaceKey][f.prefaceKey] = f.body + f; + }) + + const rst = keyValuePairs(e.body); + deepmergeInto(sObj[e.prefaceKey], rst) + e; + }); + + const remaining = keyValuePairs(body) + deepmergeInto(sObj, remaining); + return; + // EXAMPLE NEXT PARSING OBJECT -------------------------------------------------- } else if (obj.some?.thing) { @@ -320,13 +726,26 @@ export async function parseDeep(obj: any, rx) { } +/** + * takes partition/folder abstracted from object name and adds them to the parsed objects + * + */ +function partitionFolder(obj, x: string) { + const partitionFolder = x.split('/') + obj.partition = partitionFolder[1]; + if(partitionFolder[2]) { + obj.folder = partitionFolder[2]; + } +} /** * breaks down tmos config bracketed objects (recursive) * + * *** depricated -> use balancedRx1 or balancedRxAll *** + * * input (note the line returns and spacing) * * pools { @@ -395,3 +814,38 @@ export function digBrackets(config: string): { return x2; } + + +export function keyValuePairs(body: string) { + const obj = {} + body = body.trim(); + body.split('\n') + .forEach(line => { + + // catches lines/strings, with quotes (which include spaces) + // example: description "yabba dappa doo!" + const m = line.match(/(?[\w]+) "(?[\S\s]+)"/) + const n = line.match(/(?[\w]+) '(?[\S\s]+)'/) + + if(m) { + + body = body.replace(m[0], '') + obj[m.groups.key] = m.groups.value + + } else if (n) { + + body = body.replace(n[0], '') + obj[n.groups.key] = n.groups.value + + } else { + + const a = line.trim().split(' ') + if (a[0] && a[1]) { + obj[a[0]] = a[1]; + } + } + line; + }) + + return obj; +} \ No newline at end of file diff --git a/src/digConfigs.ts b/src/digConfigs.ts index 3b3cc0f..4d34225 100644 --- a/src/digConfigs.ts +++ b/src/digConfigs.ts @@ -2,11 +2,10 @@ 'use strict'; import logger from './logger'; -import { AppMap, BigipConfObj } from './models' +import { BigipConfObj, TmosApp } from './models' import { RegExTree } from './regex'; -import { cleanObject, pathValueFromKey } from './objects'; -import { poolsInPolicy, poolsInRule } from './pools'; -import { digDataGroupsiniRule } from './digiRules'; +import { pathValueFromKey } from './objects'; +import { poolsInPolicy } from './pools'; /** @@ -14,7 +13,7 @@ import { digDataGroupsiniRule } from './digiRules'; * @param vsName virtual server name * @param vsConfig virtual server tmos config body */ -export async function digVsConfig(vsName: string, vsConfig: string, configTree: BigipConfObj, rx: RegExTree) { +export async function digVsConfig(vsName: string, vsConfig: BigipConfObj["ltm"]['virtual']['key'], configTree: BigipConfObj, rx: RegExTree) { /** * @@ -28,413 +27,136 @@ export async function digVsConfig(vsName: string, vsConfig: string, configTree: logger.info(`digging vs config for ${vsName}`); - const pool = vsConfig.match(rx.vs.pool.obj); - const profiles = vsConfig.match(rx.vs.profiles.obj); - const rules = vsConfig.match(rx.vs.rules.obj); - const snat = vsConfig.match(rx.vs.snat.obj); - const policies = vsConfig.match(rx.vs.ltPolicies.obj); - const persistence = vsConfig.match(rx.vs.persist.obj); - const fallBackPersist = vsConfig.match(rx.vs.fbPersist); - const destination = vsConfig.match(rx.vs.destination); - - // base vsMap config object - const map: AppMap = { - // vsName, - vsDest: '' - }; - - // add destination to vsMap object - if (destination && destination[1]) { - map.vsDest = destination[1]; - - } - let config = []; - config.push(`ltm virtual ${vsName} {${vsConfig}}`); - - if (pool && pool[1]) { - const x = digPoolConfig(pool[1], configTree, rx); - config.push(...x.config); - map.pool = x.map; - logger.debug(`[${vsName}] found the following pool`, pool[1]); - } - - if (profiles && profiles[1]) { - const x = digProfileConfigs(profiles[1], configTree, rx); - config.push(...x.config); - logger.debug(`[${vsName}] found the following profiles`, profiles[1]); - } - - if (rules && rules[1]) { - // add irule connection destination mapping - - await digRuleConfigs(rules[1], configTree, rx) - .then(x => { - config.push(...x.config); - if (x.map) { - map.irule = x.map; + // clone the app config + const tmpObj = JSON.parse(JSON.stringify(vsConfig)); + + // move and recrate the original config line + delete tmpObj.line; + const originalCfg = `ltm virtual ${vsName} {${vsConfig.line}}` + tmpObj.lines = [originalCfg]; + const appObj = tmpObj as TmosApp; + + if (appObj.pool) { + // dig pool details + // just reassign the parsed pool details into the vs + const body = configTree.ltm.pool[vsConfig.pool]; + appObj.lines.push(`ltm pool ${appObj.pool} {${body.line}}`); + // raw copy the pool config + appObj.pool = JSON.parse(JSON.stringify(configTree.ltm.pool[vsConfig.pool])); + delete appObj.pool.line; + + if(appObj.pool?.members) { + + Object.keys(appObj.pool?.members).forEach( n => { + // loop through all the pool members and get the node details + const name = n.split(':')[0]; + const body = configTree.ltm.node[name] + if (body) { + appObj.lines.push(`ltm node ${name} {${body.line}}`); } - logger.debug(`[${vsName}] found the following rules`, rules[1]); + }) + } } - if (snat && snat[1]) { - const x = digSnatConfig(snat[1], configTree, rx); - config.push(...x.config); - logger.debug(`[${vsName}] found snat configuration`, snat[1]) - } - - if (policies && policies[1]) { - // add ltp destination mapping - const x = digPolicyConfig(policies[1], configTree, rx); - config.push(...x.config); - logger.debug(`[${vsName}] found the following policies`, policies[1]); - } - - if (persistence && persistence[1]) { - const x = digPersistConfig(persistence[1], configTree, rx); - config.push(...x.config); - logger.debug(`[${vsName}] found the following persistence`, persistence[1]); - } - - if (fallBackPersist && fallBackPersist[1]) { - const x = digFbPersistConfig(fallBackPersist[1], configTree); - config.push(...x.config); - logger.debug(`[${vsName}] found the following persistence`, fallBackPersist[1]); - } - - // remove any duplicate entries - config = uniqueList(config); - - // removed empty values and objects - cleanObject(config); - cleanObject(map); - - return { config, map }; + if (appObj.profiles) { + // dig profiles details -} - -/** - * get full pool config and supporting node/monitor configs - * @param poolName - */ -function digPoolConfig(poolName: string, configObject: BigipConfObj, rx: RegExTree) { - - logger.debug(`digging pool config for ${poolName}`); - - // const rx = this.rx.vs.pool; // get needed rx sub-tree - - const config = []; - const map = []; - - const poolConfig = pathValueFromKey(configObject.ltm.pool, poolName) - - if (poolConfig) { + // todo: dig profiles deeper => deep parse profiles/settings - config.push(`ltm pool ${poolName} {${poolConfig.value}}`); - const members = poolConfig.value.match(rx.vs.pool.members); - const monitors = poolConfig.value.match(rx.vs.pool.monitors); - - if (members && members[1]) { - - // TODO: move all these regex's to the rx tree - - // dig node information from members - const nodeNames = members[1].match(rx.vs.pool.nodesFromMembers); - // const nodeAddresses = members[1].match(rx.n) - - // regular pool member definition regex - const memberDef = members[1].match(/(\/[\w\-\/.]+:\d+) {\s+address(.+?)\s+}/g) - - // fqdn pool member definition regex - const memberFqdnDef = members[1].match(/(\/[\w\-\/.]+:\d+) {\s+fqdn {\s+([\s\S]+?)\s+}\s+}/g) - - logger.debug(`Pool ${poolName} members found:`, nodeNames); - - if (memberDef) { - memberDef.forEach((el: string) => { - const name = el.match(/(\/[\w\-\/.]+)/); - const port = el.match(/(?<=:)\d+(?= )/); - const addr = el.match(/(?<=address )[\d.]+/); - - const x = pathValueFromKey(configObject.ltm.node, name[0]) - config.push(`ltm node ${x.key} {${x.value}}`); - map.push(`${addr}:${port}`) - }) + appObj.profiles.forEach(name => { + // check the ltm profiles + const x = pathValueFromKey(configTree.ltm?.profile, name); + if (x) { + appObj.lines.push(`ltm profile ${x.path} ${x.key} {${x.value}}`); } - if (memberFqdnDef) { - memberFqdnDef.forEach((el: string) => { - // const memberFqdnNames = el.match(/([\s\S]+?)\n/g); - const name = el.match(/(\/[\w\-\/.]+)/); - const port = el.match(/(?<=:)\d+(?= )/); - - const a = pathValueFromKey(configObject.ltm.node, name[0]); - - config.push(`ltm node ${a.key} {${a.value}}`); - map.push(`${name}:${port}`) - }) - } - } - - if (monitors && monitors[1]) { - - //dig monitor configs like pool members above - const monitorNames = monitors[1].split(/ and /); - logger.debug('pool monitor references found:', monitorNames); - - // eslint-disable-next-line prefer-const - const monitorNameConfigs = []; - monitorNames.forEach(name => { - - // new way look for key in .ltm.monitor - const x = pathValueFromKey(configObject.ltm.monitor, name) - if (x) { - // rebuild tmos object - monitorNameConfigs.push(`ltm monitor ${x.path} ${x.key} {${x.value}}`); - } - }) - - logger.debug('pool monitor configs found:', monitorNameConfigs); - const defaultMonitors = monitorNames.length - monitorNameConfigs.length - - if (defaultMonitors) { - logger.debug(`[${poolName}] references ${defaultMonitors} system default monitors, compare previous arrays for details`) + // check apm profiles + const y = pathValueFromKey(configTree?.apm?.profile?.access, name); + if (y) { + appObj.lines.push(`apm profile access ${y.path} ${y.key} {${y.value}}`); } - if (monitorNameConfigs) { - // monitorNameConfigs.join('\n'); - config.push(...monitorNameConfigs); - + // check asm profile + const z = pathValueFromKey(configTree?.asm?.policy, name); + if (z) { + appObj.lines.push(`asm policy ${z.path} ${z.key} {${z.value}}`); } - } + }) } - return { config, map }; -} - - - - + if (appObj.rules) { + // dig iRule details -function digProfileConfigs(profilesList: string, configObject: BigipConfObj, rx: RegExTree) { + // todo: dig deeper like digRuleConfigs() in digConfigs.ts.331 + appObj.rules.forEach(name => { - // regex profiles list to individual profiles - const profileNames = profilesList.match(rx.vs.profiles.names); - logger.debug(`profile references found: `, profileNames); - - const config = []; - const map = []; - profileNames.forEach(name => { - - // check the ltm profiles - const x = pathValueFromKey(configObject.ltm.profile, name); - if (x) { - config.push(`ltm profile ${x.path} ${x.key} {${x.value}}`); - } - - // check apm profiles - const y = pathValueFromKey(configObject.apm.profile, name); - if (y) { - config.push(`apm profile access ${y.path} ${y.key} {${y.value}}`); - } - - }) - - const defaultProfiles = profileNames.length - config.length; - if (defaultProfiles) { - logger.debug(`Found ${defaultProfiles} system default profiles, compare previous arrays for details`) + const x = pathValueFromKey(configTree.ltm?.rule, name) + if (x) { + appObj.lines.push(`ltm rule ${x.key} {${x.value}}`); + } + }) } - // return config.join('\n'); - return { config, map }; -} - - - + if (appObj.snat) { + // dig snat details + // if this snat string is the name of a snat pool, then replace with snatpool details + // if not, then its 'automap' or 'none' => nothing to add here + if (configTree.ltm.snatpool[vsConfig.snat]) { + const c = JSON.parse(JSON.stringify(configTree.ltm.snatpool[vsConfig.snat])); + delete c.line; + appObj.snat = c; + appObj.lines.push(`ltm snatpool ${vsConfig.snat} { ${c.line} }`) - -/** - * - * @param rulesList raw irules regex from vs dig - */ -async function digRuleConfigs(rulesList: string, configObject: BigipConfObj, rx: RegExTree) { - - const ruleNames = rulesList.match(rx.vs.rules.names); - logger.debug(`rule references found: `, ruleNames); - - // list of rules on the vs - const iRuleConfigs = []; - // config list to return (includes irules and other objects referenced by irules) - const config = []; - - type ruleMap = { - pools?: string[] | string[][], - virtuals?: string[] - nodes?: string[] - } - - // final config object - const obj = { - config: [] + } } - const map: ruleMap = {}; - - await ruleNames.forEach(async name => { - // search config, return matches - const x = pathValueFromKey(configObject.ltm.rule, name) - - if (x) { - iRuleConfigs.push(`ltm rule ${x.key} {${x.value}}`); - - const iRulePools = poolsInRule(x.value); - if (iRulePools) { + if (appObj.policies) { + // dig profiles details + appObj.policies.forEach(name => { - // for each pool reference found, get config - iRulePools.forEach(el => { + const x = pathValueFromKey(configTree.ltm?.policy, name) + if (x) { + appObj.lines.push(`ltm policy ${x.key} {${x.value}}`); - // if no "/", this is a "/Common/" partition rule - if (/\//.test(el[0])) { - // found slash, so has parition prefix - const poolC = digPoolConfig(el[0], configObject, rx); + // got through each policy and dig references (like pools) + const pools = poolsInPolicy(x.value) - if (poolC) { - // obj.config.push(poolC.config[0]); - config.push(poolC.config[0]); - // deepMergeObj(obj, { map: { pools: poolC.map }}) - map.pools = poolC.map; + if (pools) { + pools.forEach(pool => { + const cfg = configTree.ltm.pool[pool] + // if we got here there should be a pool for the reference, + // but just in case, we confirm with (if) statement + if (cfg) { + // push pool config to list + logger.debug(`policy [${x.key}], pool found [${cfg.name}]`); + appObj.lines.push(`ltm pool ${cfg.name} {${cfg.line}}`) } - - } else { - - // no slash, so adding commond partition prefix - const poolC = digPoolConfig(`/Common/${el[0]}`, configObject, rx); - - if (poolC) { - // obj.config.push(poolC.config[0]); - config.push(poolC.config[0]); - // deepMergeObj(obj, { map: { pools: poolC.map }}) - map.pools = poolC.map; - } - } - }) - // add pools to map - map.pools = iRulePools; - } - - - // if we have any internal data-groups, find data groups in irule - if(configObject.ltm['data-group']?.internal) { - - const dataGroups = Object.keys(configObject.ltm['data-group'].internal) - if (dataGroups.length > 0) { - await digDataGroupsiniRule(x.value, dataGroups) - .then(async dgNamesInRule => { - await dgNamesInRule.forEach(async dg => { - const dgBody = configObject.ltm['data-group'].internal[dg]; - const fullDgConfig = `ltm data-group internal ${dg} { ${dgBody} }` - config.push(fullDgConfig); - }) - }) + }) } } - } - }) - - const defaultRules = ruleNames.length - iRuleConfigs.length; - if (defaultRules) { - logger.debug(`Found ${defaultRules} system default iRules, compare previous arrays for details`) + }) } - // add the irules to the beginning of the config array to be returned - config.unshift(...iRuleConfigs); - - return { config, map }; -} - - - - - - - - -/** - * analyzes vs snat config, returns full snat configuration if pool reference - * @param snat vs snat reference as string - */ -function digSnatConfig(snat: string, configObject: BigipConfObj, rx: RegExTree) { - const config = []; - const map = []; - if (snat.includes('pool')) { - const snatName = snat.match(rx.vs.snat.name); - if (snatName) { - const x = pathValueFromKey(configObject.ltm.snatpool, snatName[1]) - config.push(`ltm snatpool ${x.key} {${x.value}}`); - } else { - logger.error(`Detected following snat pool configuration, but did not find in config [${snat}]`) + if (appObj.persist) { + // dig profiles details + const x = pathValueFromKey(configTree.ltm?.persistence, appObj.persist) + if (x) { + appObj.lines.push(`ltm persistence ${x.path} ${x.key} {${x.value}}`); } - } else { - logger.debug(`snat configuration detected, but no pool reference found, presume -> automap`) } - return { config, map }; -} - - - - - -/** - * loops through vs ltp list and returns full ltp configs - * @param ltPolicys vs ltp config - */ -function digPolicyConfig(policys: string, configObject: BigipConfObj, rx: RegExTree) { - - // regex local traffic list to individual profiles - const policyNames = policys.match(rx.vs.ltPolicies.names); - logger.debug(`policy references found: `, policyNames); - - const config = []; - const map = []; - - // get policy references from vs - policyNames.forEach(name => { - - const x = pathValueFromKey(configObject.ltm.policy, name) + if (appObj['fallback-persistence']) { + // dig profiles details + const x = pathValueFromKey(configTree.ltm?.persistence, appObj['fallback-persistence']) if (x) { - logger.debug(`policy found [${x.key}]`); - config.push(`ltm policy ${x.key} {${x.value}}`) - - // got through each policy and dig references (like pools) - const pools = poolsInPolicy(x.value) - - if (pools) { - pools.forEach(pool => { - const cfg = pathValueFromKey(configObject.ltm.pool, pool) - // if we got here there should be a pool for the reference, - // but just in case, we confirm with (if) statement - if (cfg) { - // push pool config to list - logger.debug(`policy [${x.key}], pool found [${cfg.key}]`); - config.push(`ltm pool ${cfg.key} {${cfg.value}}`) - } - }) - } - - - } else { - logger.error(`Could not find ltPolicy named: ${name}`) + appObj.lines.push(`ltm persistence ${x.path} ${x.key} {${x.value}}`); } + } - }) + return appObj; - // removde duplicates - // const unique = uniqueList(config); - // join list with line returns to return a single config string - // return unique.join('\n'); - return { config, map }; } @@ -449,47 +171,6 @@ export function uniqueList(x: string[]) { - -/** - * get persistence config - * @param persistence vs persistence referecne - */ -function digPersistConfig(persist: string, configObject: BigipConfObj, rx: RegExTree) { - - const config = []; - const map = []; - - const persistName = persist.match(rx.vs.persist.name); - if (persistName) { - const x = pathValueFromKey(configObject.ltm.persistence, persistName[1]) - if (x) { - config.push(`ltm persistence ${x.path} ${x.key} {${x.value}}`); - } - } - return { config, map }; -} - - - - - -/** - * get fall back persistence config - * @param fbPersist vs fallback-persistence - */ -function digFbPersistConfig(fbPersist: string, configObject: BigipConfObj) { - - const config = []; - const map = []; - const x = pathValueFromKey(configObject.ltm.persistence, fbPersist); - if (x) { - config.push(`ltm persistence ${x.path} ${x.key} {${x.value}}`); - } - return { config, map }; -} - - - /** * get hostname from json config tree (if present) * @param configObject to search for hostname diff --git a/src/digGslb.ts b/src/digGslb.ts index 17c9c94..6b8d8a6 100644 --- a/src/digGslb.ts +++ b/src/digGslb.ts @@ -60,30 +60,51 @@ export class DigGslb { delete tmpObj.line; tmpObj.lines = [ originalCfg ]; const appObj = tmpObj as GslbApp; + appObj.allPossibleDestinations = []; - // dig each pool reference, replacing as we go - for (let poolRef of appObj.pools) { - - // copy full pool details - const poolDetails = JSON.parse( - JSON.stringify(this.gtm.pool[appObj.type][poolRef.name])); - const originalLine = `gtm pool ${poolDetails.type} ${poolRef.name} { ${poolDetails.line} }`; - appObj.lines.push(originalLine) - delete poolDetails.line; - - if(poolDetails.members) { - - poolDetails.members.forEach( e => { - const serverDetails = this.gtm.server[e.server]; - const originalLine = `gtm server ${e.server} { ${serverDetails.line} }`; - const vServer = serverDetails['virtual-servers'][e.vs]; - appObj.lines.push(originalLine); - deepmergeInto(e, vServer); - }) - } - - deepmergeInto(poolRef, poolDetails) + // if we have iRules, try to parse them for responses/pool/destinations + if(appObj.iRules) { + // loop through each irule associated and dig out details + // add possible destinations or resposnes to the allPossibleDestinations array + } + if(appObj.pools) { + + // dig each pool reference, replacing as we go + for (let poolRef of appObj.pools) { + + // copy full pool details + const poolDetails = JSON.parse( + JSON.stringify(this.gtm.pool[appObj.type][poolRef.name])); + const originalLine = `gtm pool ${poolDetails.type} ${poolRef.name} { ${poolDetails.line} }`; + appObj.lines.push(originalLine) + delete poolDetails.line; + + if(poolDetails['fallback-ip']) { + appObj.allPossibleDestinations.push(poolDetails['fallback-ip']) + } + + if(poolDetails.members) { + + poolDetails.members.forEach( e => { + const serverDetails = this.gtm.server[e.server]; + const originalLine = `gtm server ${e.server} { ${serverDetails.line} }`; + const vServer = serverDetails['virtual-servers'][e.vs]; + + const tPort = vServer["translation-port"] ? vServer["translation-port"] : ''; + const tAddress = vServer["translation-address"] ? vServer["translation-address"] : ''; + const tAddressPort = tPort ? `${tAddress}:${tPort}` : tAddress; + const dest = tAddress ? `${vServer.destination}->NAT->${tAddressPort}` : vServer.destination + + appObj.allPossibleDestinations.push(dest) + appObj.lines.push(originalLine); + deepmergeInto(e, vServer); + }) + } + + deepmergeInto(poolRef, poolDetails) + + } } this.apps.push(appObj) diff --git a/src/ltm.ts b/src/ltm.ts index 14d3a9f..ed81188 100644 --- a/src/ltm.ts +++ b/src/ltm.ts @@ -12,7 +12,7 @@ import { EventEmitter } from 'events'; import { RegExTree } from './regex' import logger from './logger'; import { nestedObjValue } from './objects' -import { BigipConfObj, ConfigFile, ConfigFiles, Explosion, Stats, xmlStats } from './models' +import { BigipConfObj, ConfigFile, Explosion, Stats, xmlStats } from './models' import { v4 as uuidv4 } from 'uuid'; import { countObjects } from './objCounter'; import { digVsConfig, getHostname } from './digConfigs'; @@ -21,7 +21,7 @@ import { UnPacker } from './unPackerStream'; import { digDoConfig } from './digDoClassesAuto'; import { DigGslb } from './digGslb'; import { parseDeep } from './deepParse'; -import { XMLParser } from 'fast-xml-parser'; +// import { XMLParser } from 'fast-xml-parser'; import { deepmergeInto } from 'deepmerge-ts'; @@ -35,7 +35,7 @@ export default class BigipConfig extends EventEmitter { * incoming config files array * ex. [{filename:'config/bigip.conf',size:12345,content:'...'},{...}] */ - configFiles: ConfigFiles = []; + configFiles: ConfigFile[] = []; /** * tmos config as nested json objects * - consolidated parant object keys like ltm/apm/sys/... @@ -452,11 +452,11 @@ export default class BigipConfig extends EventEmitter { // dig config, but catch errors await digVsConfig(key, value, this.configObject, this.rx) - .then(vsConfig => { - apps.push({ name: key, configs: vsConfig.config, map: vsConfig.map }); + .then(vsApp => { + apps.push(vsApp); }) .catch(err => { - apps.push({ name: key, configs: err, map: '' }); + apps.push({ name: key, lines: err, }); }) } diff --git a/src/models.ts b/src/models.ts index a901066..83d26d3 100644 --- a/src/models.ts +++ b/src/models.ts @@ -6,15 +6,53 @@ */ export type BigipConfObj = { ltm?: { - virtual?: { [key: string]: string }; - pool?: { [key: string]: string }; - node?: { [key: string]: string }; + virtual?: { + [key: string]: { + name: string; + partition: string; + folder?: string; + destination?: string; + line: string; + description?: string; + pool?: string; + profiles?: string[]; + rules?: string[]; + snat?: string; + policies?: string[]; + persist?: string; + 'fallback-persistence'?: string; + } + }; + pool?: { + [key: string]: { + line: string; + name: string; + partition: string; + members: { [key: string]: unknown }; + }; + }; + node?: { + [key: string]: { + line: string; + name: string; + partition: string; + address: string; + }; + }; monitor?: { [key: string]: string }; profile?: { [key: string]: string }; policy?: { [key: string]: string }; rule?: { [key: string]: string }; persistence?: { [key: string]: string }; - snatpool?: { [key: string]: string }; + snatpool?: { + [key: string]: { + line: string; + name: string; + partition: string; + folder?: string; + members?: string[]; + } + }; "data-group"?: { internal?: { [key: string]: string } }, @@ -28,15 +66,48 @@ export type BigipConfObj = { "access-policy"?: { [k: string]: string }; }; profile?: { - access?: { [key: string]: string } + access?: { + [key: string]: { + line: string; + name: string; + partition: string; + "accept-languages": string[]; + "access-policy": string; + "log-settings": string[]; + "app-service": string; + "customization-group": string; + "customization-key": string; + "default-language": string; + "domain-cookie": string; + "eps-group": string; + "errormap-group": string; + "exchange-profile": string; + "framework-installation-group": string; + "general-ui-group": string; + generation: string; + "generation-action": string; + "httponly-cookie"?: string; + "logout-uri-timeout"?: string; + "modified-since-last-policy-sync": string; + "named-scope"?: string; + "oauth-profile"?: string; + "persistent-cookie"?: string; + scope?: string; + "secure-cookie"?: string; + "sso-name"?: string; + type: string; + "user-identity-method"?: string; + } + + } } }; asm?: { policy?: { [k: string]: string }; - } + }; auth?: { partition?: unknown; - } + }; net?: { route?: unknown; "port-list"?: unknown; @@ -45,7 +116,15 @@ export type BigipConfObj = { "self-allow"?: string; trunk?: string; vlan?: string; - }, + }; + security?: { + dos?: { + profile?: unknown; + }; + ['bot-defense']?: { + profile?: unknown; + }; + }; sys?: { "global-settings"?: string; application?: { @@ -178,7 +257,9 @@ export type GslbApp = { fqdn: string; partition: string; type: GtmRecordTypes; + description?: string; lines: string[]; + allPossibleDestinations: string[]; aliases?: string[]; iRules?: string[]; pools?: GtmPool[] | GtmPoolRef[]; @@ -222,16 +303,24 @@ export type GtmPool = { - - - - /** * array item of returned "apps" */ export type TmosApp = { - name: string, - configs: string[], + name: string; + partition: string; + folder?: string; + destination: string; + lines: string[], + description?: string; + pool?: BigipConfObj["ltm"]["pool"]['key']; + profiles?: string[]; + rules?: string[]; + snat?: BigipConfObj["ltm"]["snatpool"]['key']; + policies?: string[]; + persist?: string; + diagnostics?: any[]; + 'fallback-persistence'?: string; map?: AppMap } @@ -241,7 +330,7 @@ export type TmosApp = { */ export type AppMap = { // the virtual server clients connect to - vsDest?: string, + destination?: string, // default pool members (ip:port) pool?: string[], irule?: { @@ -293,6 +382,8 @@ export type ObjStats = { apmProfiles?: number, apmPolicies?: number, asmPolicies?: number, + botProfiles?: number; + dosProfiles?: number; gtm?: GslbStats; } @@ -324,14 +415,6 @@ export type ConfigFile = { } -/** - * defines the structure of the archive file extraction or single bigip.conf - */ -export type ConfigFiles = { - fileName: string, - size: number, - content: string -}[] export type xmlStats = { 'mcp_module.xml'?: { diff --git a/src/objCounter.ts b/src/objCounter.ts index df7cae7..eb0d3c8 100644 --- a/src/objCounter.ts +++ b/src/objCounter.ts @@ -63,6 +63,14 @@ export async function countObjects (obj: BigipConfObj): Promise { if(obj.asm?.policy) { stats.asmPolicies = Object.keys(obj.asm.policy).length; } + + if(obj.security['bot-defense']) { + stats.botProfiles = Object.keys(obj.security['bot-defense']).length; + } + + if(obj.security.dos) { + stats.dosProfiles = Object.keys(obj.security.dos).length; + } return stats; diff --git a/src/objects.ts b/src/objects.ts index 1b63099..95d8526 100644 --- a/src/objects.ts +++ b/src/objects.ts @@ -3,69 +3,13 @@ import logger from "./logger"; import { BigipConfObj } from "./models"; -/** - * recursively removes empty value/objects/arrays - * @param obj - */ -export function cleanObject (obj: any) { - - // This needs to be fully tested to confirm full functionality, - // but this helped accmoplish what I needed at this time - - cleanEmpty(obj); - clearEmpties(obj); - - // // following is also a way to remove empty values from stuff - // // but can be process intensive - // function removeUndefined (json) { - // return JSON.parse(JSON.stringify(json)) - // } -} - - -/** - * recursively removes empty values from objects/arrays - * @param obj - */ -function cleanEmpty(obj: unknown) { - if (Array.isArray(obj)) { - return obj - .map(v => (v && typeof v === 'object') ? cleanEmpty(v) : v) - .filter(v => !(v == null)); - } else { - return Object.entries(obj) - .map(([k, v]) => [k, v && typeof v === 'object' ? cleanEmpty(v) : v]) - .reduce((a, [k, v]) => (v == null ? a : (a[k] = v, a)), {}); - } -} - -/** - * recursively removes empty objects - * @param obj - */ -function clearEmpties(obj) { - for (const k in obj) { - if (!obj[k] || typeof obj[k] !== "object") { - continue // If null or not an object, skip to the next iteration - } - - // The property is an object - clearEmpties(obj[k]); // <-- Make a recursive call on the nested object - if (Object.keys(obj[k]).length === 0) { - delete obj[k]; // The object had no properties, so delete that property - } - } -} - -type RetObj = { +export type RetObj = { path?: string, key?: string, value?: string } - - /** * builds multi-level nested objects with data * https://stackoverflow.com/questions/5484673/javascript-how-to-dynamically-create-nested-objects-using-object-names-given-by @@ -81,49 +25,6 @@ export function nestedObjValue (fields: string[], value: string): unknown { -// /** -// * provides deep merge of multi-level objects -// * subsequent items in list overwrite conflicting entries -// * @param objs list of objects to merge -// */ -// export function deepMergeObj(target: unknown, source: unknown,): unknown { -// return deepmerge(target, source, { clone: false }) -// } - - -// /** -// * Simple object check. -// * @param item -// * @returns {boolean} -// */ -// function isObject(item) { -// return (item && typeof item === 'object' && !Array.isArray(item)); -// } - -// /** -// * Deep merge two objects. -// * https://stackoverflow.com/questions/27936772/how-to-deep-merge-instead-of-shallow-merge -// * @param target -// * @param ...sources -// */ -// export function simpleMergeDeep(target: unknown, ...sources: any): unknown { -// if (!sources.length) return target; -// const source = sources.shift(); - -// if (isObject(target) && isObject(source)) { -// for (const key in source) { -// if (isObject(source[key])) { -// if (!target[key]) Object.assign(target, { [key]: {} }); -// simpleMergeDeep(target[key], source[key]); -// } else { -// Object.assign(target, { [key]: source[key] }); -// } -// } -// } - -// return simpleMergeDeep(target, ...sources); -// } - /** * this will overwrite existing data @@ -146,78 +47,6 @@ export function setNestedKey(obj: unknown, path: string[], value: unknown): unkn -/** - * deep search object for value using regex - * @param vtf value to find (regex capable) - * @param obj to search - * @param return array of path steps - */ -export function getPathOfValue(vtf: string | RegExp, obj: unknown): unknown { - - /** - * https://stackoverflow.com/questions/53543303/find-a-full-object-path-to-a-given-value-with-javascript - */ - - // function maybeMatch(reg, str) { - // var m = str.match(reg); - // return m ? m[0] : null; - // } - - // if (vtf instanceof RegExp) vtf = maybeMatch(vtf, str); - - const regex = new RegExp(vtf) - return find(obj); - - function find(obj, item?) { - for (const key in obj) { - if (obj[key] && typeof obj[key] === "object") { - const result = find(obj[key], item); - if (result) { - result.unshift(key); - return result; - } - } else if (regex.test(obj[key])) { - return [key]; - } - } - } -} - - -/** - * gets value by deep path in array form - * (ex. ['ltm','monitor','http']) - * - * *** paths have to be in array form since names can have '.' in them *** - * - * @param path to fetch value - * @param obj containing path/value to get - */ -export function deepGet(path: string[], obj: unknown): unknown { - - /** - * this seems to be the best way to GET a value (by far) - * - * https://stackoverflow.com/questions/6393943/convert-javascript-string-in-dot-notation-into-an-object-reference - */ - - const xxx = index(obj, path); - return xxx; - - function index(obj, is, value?) { - if (typeof is == 'string') - return index(obj, is.split('.'), value); - else if (is.length == 1 && value !== undefined) - return obj[is[0]] = value; - else if (is.length == 0) - return obj; - else - return index(obj[is[0]], is.slice(1), value); - } -} - - - /** * searches object for key * @@ -276,9 +105,6 @@ export function pathValueFromKey(obj: unknown, key: string): RetObj { if (results.length = 1) { // return array of results return results[0]; - } else { - logger.error(`pathValueFromKey found more than one match, returning first, full list: ${results}`) - return results[0]; } } diff --git a/src/regex.ts b/src/regex.ts index ceaf6d1..469d96a 100644 --- a/src/regex.ts +++ b/src/regex.ts @@ -58,44 +58,62 @@ export class RegExTree { /(?=(apm|ltm|gtm|asm|security|net|pem|sys|wom|ilx|auth|analytics|wom|---end---))/ ], 'g'); + /** + * used for abstracting partition from name + */ + name = /(?(\/[\w\d_\-]+\/[\w\d_\-]+\/|\/[\w\d_\-]+\/))(?[\w\d_\-.]+)/; - vs = { + ltm = { + virtual: { + name: /(?(\/[\w\d_\-]+\/[\w\d_\-]+\/|\/[\w\d_\-]+\/))(?[\w\d_\-.]+)/, + destination: /destination [\w.\-\/]+\/([\d.]+:\d+)/, + description: /\n +description "(?[\w' .-/]+)"\n/, + pool: /(?(\/[\w\d_\-]+\/[\w\d_\-]+\/|\/[\w\d_\-]+\/))(?[\w\d_\-.]+)/, + membersGroup: /members {([\s\S]+?)\n }\n/, + members: /(?[\w\-\/:.]+) {\n +(?[\s\S]+?)\n +}/g, + member: /(?[\w\-\/:.]+) {\n +(?[\s\S]+?)\n +}/, + fqdn: /fqdn {\n +(?[\s\S]+?)\n +}/, + memberDef: /(\/[\w\-\/.]+:\d+) {\s+address(.+?)\s+}/g, + memberFqdnDef: /(\/[\w\-\/.]+:\d+) {\s+fqdn {\s+([\s\S]+?)\s+}\s+}/g, nodesFromMembers: /(\/\w+\/.+?)(?=:)/g, - monitors: /monitor (\/\w+.+?)\n/ + monitors: /monitor ([\/\w.]+?)\n/ }, profiles: { - obj: /profiles {([\s\S]+?)\n }\n/, asmProf: /ASM_([\w-.]+)/, names: /(\/[\w\-\/.]+)/g }, rules: { - obj: /rules {([\s\S]+?)\n }\n/, names: /(\/[\w\-\/.]+)/g }, snat: { - obj: /source-address-translation {([\s\S]+?)\n }\n/, + details: /(pool (?[\w.\/]+)?)|(type (?(none|automap|snat)?))/, name: /pool (\/[\w\-\/.]+)/ }, ltPolicies: { - obj: /policies {([\s\S]+?)\n }\n/, asmRef: /asm (?enable|disable) policy (?[\w\/._]+)/, names: /(\/[\w\-\/.]+)/g }, persist: { - obj: /persist {([\s\S]+?)\n }\n/, name: /(\/[\w\-\/.]+)/ }, - fbPersist: /fallback-persistence (\/\w+.+?)\n/, - destination: /destination (\/\w+\/[\w+\.\-]+:\d+)/ + } gtm = { wideip: { name: /(?(\/[\w\d_\-]+\/[\w\d_\-]+\/|\/[\w\d_\-]+\/))(?[\w\d_\-.]+)/, + description: /description "(?[\w' .-/]+)"\n/, persistence: /persistence (?\w+)/, 'pool-lb-mode': /pool-lb-mode (?\w+)/, aliases: /aliases {([\s\S]+?)\n }\n/, @@ -129,7 +147,7 @@ export class RegExTree { asm = { status: /\n +(?active|inactive)\n/, 'blocking-mode': /\n +blocking-mode (?enabled|disabled)\n/, - description: /\n +description (?[\w'" .-]+)\n/, + description: /\n +description "(?[\w' .-/]+)"\n/, encoding: /\n +encoding (?[\w]+)\n/, 'policy-builder': /\n +policy-builder (?enabled|disabled)\n/, 'policy-template': /\n +policy-template (?[\w-.]+)\n/, @@ -137,6 +155,13 @@ export class RegExTree { 'parent-policy': /\n +parent-policy (?[\w-.]+)\n/ } + apm = { + name: /(?(\/[\w\d_\-]+\/[\w\d_\-]+\/|\/[\w\d_\-]+\/))(?[\w\d_\-.]+)/, + 'accept-languages': /\n +accept-languages { (?[\w ]+)? }\n/, + 'access-policy': /\n +access-policy (?[\w/.]+)\n/, + 'log-settings': /\n +log-settings {\n +(?[\S\s]+?)\n +}\n/, + } + /** * first tmos config file * @@ -170,8 +195,8 @@ export class RegExTree { // full tmos version without decimals if (x > 19000) { logger.error('>v19.0.0.0 tmos detected - this should never happen!!!') - this.vs.fbPersist = /new-fallBackPersist-regex/; - this.vs.pool.obj = /new-pool-regex/; + this.ltm.virtual.fbPersist = /new-fallBackPersist-regex/; + this.ltm.virtual.pool = /new-pool-regex/; } if (x < 10000) { logger.error(' { } + * + * created 4.30.2023 to more accurately capture tmos bracketd objects * - * @param cfg child config to parse - * @param obj used to iterate + * @param preRx parent object string to start counting with + * @param x tmos config string to find body of ending brack } + * @returns */ -export function tmosChildToObj(cfg: string, obj?: unknown): unknown { - - /** - * input tmos parent object body - * (ex. ltm virtual { <...everything_here...> }) - * - * 1. capture single line 'key': 'value' pairs - * (ex 'destination /Common/192.168.1.51:8443') - * 2. capture lists - * (ex ) - * - */ - - // used for iteration in the future - obj = obj ? obj : {}; - - const startingCfg = cfg; - - /** - * loop through each of the objects - * remove the match, check if "{}" in match - * If bracket, re-iterate tmosChildtoObj to convert to child object - * if no brackets, split each new line - * split each new line - * if two elements in array, set key/value pair - * if >2 el in array, set value as array - */ - - // while this part of the config has brackets... - while (/{/.test(cfg)) { - - const blncd = balanced('{', '}', cfg); - if (blncd) { - // get line up to first '{' - const name = blncd.pre; - const name2 = name.split(/\n/).pop().trim(); - const body = blncd.body; - - /** - * does body include: - * if {} = means it's another object - * - */ - - const xx = body.trim().includes('\n'); - - if (body.includes('{') || body === ' ') { - - // it's a nested object, put in body for next round - const rebuiltObj = `${name2} {${body}}` - cfg = cfg.replace(rebuiltObj, ''); - obj[name2] = body; - - } else if (body.trim().includes('\n')) { - - //regex single-line key-value pairs - const singleLineKVpairsRegex = /([\w-]+) (.+)/g - const childKVpair = cfg.match(singleLineKVpairsRegex); - if (childKVpair) { - childKVpair.forEach(el2 => { - // remove items as we convert them - cfg = cfg.replace(el2, '') - const [key, val] = el2.split(' '); - obj[key] = val; - }); - } - - - // // split on line returns - // const body2 = body.split('\n'); - // // check each line for spaces - // body2.forEach(el => { - // const line = el.split(' '); - // if (line.length > 1) { - // } - // }); - } else if (body.trim().includes(' ')) { - - const keyVal = body.split(' ') - obj[keyVal[0]] = keyVal[1]; - cfg = cfg.replace(body, ''); - - } else { - // no line returns, split on spaces return array - const arr1 = body.trim().split(' ') - obj[name2] = arr1; - const rebuiltObj = `${name2} {${body}}` - cfg = cfg.replace(rebuiltObj, ''); - } +export function balancedRx1(preRx: string, x: string) { + // looking to build a custom funtion similar to balance-matched + // https://github.com/juliangruber/balanced-match - // const cfg2 = cfg; + // find the matching rx + const pRx = x.match(preRx) + + // if no match, return + if (pRx) { + + const preface = pRx[0]; + const preIndexStart = pRx.index!; // beginning of the rxMatch + const preIndexEnd = preIndexStart + preRx.length; // end of the rxMatch + let idx = preIndexEnd + 1; // start our index just after ther first match + let beginCount = 1; // since our firt match was in the rx + let endCount = 0; + + do { + + // loop through the string counting brackets till even + const a = x[idx] + if (a === '{') beginCount++ + if (a === '}') endCount++ + idx++; } + while (beginCount != endCount) + + const pre = preface?.slice(0, -1).trim(); // trim off parent start bracket { + const bdy = x.slice(preIndexEnd, idx - 1) // trim off parent ending bracket } + // return the original string without everything we just found + const rest = x.slice(0, preIndexStart) + x.slice(idx) + + // return parent name and body + // example: {} + return { prefaceKey: pre, body: bdy, rest }; } +} - // const childObjectsRegex = /([\w\-.]+) {\n([\s\S]+?)\n }/ - // const childObjects = cfg.match(childObjectsRegex); - // // parsing child objects and removing - // if (childObjects && childObjects.length === 3) { - // childObjects.forEach(el => { - - // // if(el.includes('{')) { - // // // const objName = el.match(/\s([\w\-.]+) {/)[1] - // // // const objBody = el.match(/\s([ \w\-.]+) {\n([\s\S]+?)\n }/) - // // if (objName) { - // // obj[objName] = objBody; - // // } - // // } - // cfg = cfg.replace(el, ''); - // obj[childObjects[1]] = childObjects[2] - // }); - // } - - // const childObjectsSLRegex = /[\/ \w\-.]+ {(.+?)}/g - // const childObjectsSL = cfg.match(childObjectsSLRegex); - // if(childObjectsSL) { - // childObjectsSL.forEach(el => { - // cfg = cfg.replace(el, ''); - // const objName = el.match(/([\w\-.]+) {/)[1] - // obj[objName] = '' - // }) - // } - - const singleLineKVpairsRegex = /([\w-]+) (.+)/g - const childKVpair = cfg.match(singleLineKVpairsRegex); - if (childKVpair) { - childKVpair.forEach(el2 => { - // remove items as we convert them - cfg = cfg.replace(el2, '') - const [key, val] = el2.split(' '); - obj[key] = val; - }); + + +/** + * Capture tmos backeted object ex. ltm pool { } + * + * created 4.30.2023 to more accurately capture tmos bracketd objects + * + * this one returns an array of matches and requires a RegExp input + * + * @param preRx parent object string to start counting with + * @param x tmos config string to find body of ending brack } + * @returns + */ +export function balancedRxAll(x: string, objB: boolean = false): + { matches: { prefaceKey: string, body: string, rest: string }[], rest: string} { + // looking to build a custom funtion similar to balance-matched + // https://github.com/juliangruber/balanced-match + + const preRx = /\n +[\w\-\/:. ]+ {/ + + let pRx: RegExpMatchArray | null; + const ret: any[] = [] + + do { + + // run the rx to find the beginning of a backeted object + pRx = x.match(preRx); + + if(pRx) { + // catpure the bracketed object + const r = balancedRx1(pRx[0], x); + + if(r) { + // push key/value from bracketed object to the return array + ret.push(r); + // update the original string so we can dig out the next object + x = r.rest; + } + } } + while (pRx); + + // remove all the rest strings from the matches + // https://stackoverflow.com/questions/12482961/change-values-in-array-when-doing-foreach + // ret.forEach( (o, i, a) => a[i] = { prefaceKey: o.prefaceKey, body: o.body }) + + if(objB) { + + // build an object of all the key/bodies + // const obj = {} + // ret.forEach(b => { + // obj[b.prefaceKey] = b.body + // }) + // return { matches: obj, rest: x }; + + } else { + + return { matches: ret, rest: x }; - // /** - // * down here, we didn't detect any objects "{}", - // * nor single line key: value pair (namevalue) - // * it must be a list, so lets see what kind of list it is - // */ - - // if (cfg.trim().includes('\n')) { - // // - // } - - // split on lines - const regex = new RegExp(/\S/); // any non-white space characters - if (regex.test(cfg)) { - logger.error('parsing child object has leftover config:', cfg) - logger.error('parsing child object original config:', startingCfg); } - return obj; } \ No newline at end of file diff --git a/src/tmosParser.ts b/src/tmosParser.ts deleted file mode 100644 index 19e6883..0000000 --- a/src/tmosParser.ts +++ /dev/null @@ -1,123 +0,0 @@ - - -// // import { } from './utils/objects' - -// import balanced from 'balanced-match'; -// import { ParseResp } from './models'; - -// import { deepMergeObj, nestedObjValue } from './objects' - - - -// /** -// * turns tmos config file parent objects to json tree -// * *** the original parse function in the main ltm config -// * is still better than this*** -// * Not only is it about 20% faster, but it is also able -// * to convert all parent objects -// * -// * I presume this is becuase the objects get staged in an array -// * before conversion and merging into the tree -// * -// * @param config tmos config as a string -// */ -// export function parseTmosConfig (config: string): ParseResp { - -// const startTime = process.hrtime.bigint(); -// let totalObjectCount = 0; -// let ltmObjectCount = 0; -// const lineCount = countLines(config); -// let parsingCfg = config; -// let fullObj = {}; - -// // remove first line for tmos config version -// parsingCfg = parsingCfg.replace(/#TMSH-VERSION: (\d.+)/, ''); - - -// // just picked a number, should be adjusted as we go -// if (lineCount > 10000) { - -// /** -// * find the index of the first '\nltm ' object, then rip out -// * everything up to that so we don't have to keep searching -// * through it -// */ -// const firstLtm = parsingCfg.match(/\nltm /); -// parsingCfg = parsingCfg.slice(firstLtm.index) - -// while ( /\nltm .+?{/.test(parsingCfg) ) { - -// const blncd = balanced('{', '}', parsingCfg); -// if(blncd) { -// // extract object name from bracket match pre-text -// const parentObjName = blncd.pre.trim().split(' '); - -// // create new nested object with name/paths and body -// const newObj = nestedObjValue(parentObjName, blncd.body); - -// // merge new object back into main objects tree -// fullObj = deepMergeObj(fullObj, newObj); - -// // rebuild object we are extracting from config file -// const rebuiltObj = `${parentObjName.join(' ')} {${blncd.body}}` - -// // remove object from config file -// parsingCfg = parsingCfg.replace(rebuiltObj, ''); - -// // trim leading and trailing white space -// parsingCfg = parsingCfg.trim(); - -// ltmObjectCount ++; -// } -// } - -// } else { - -// while ( /{/.test(parsingCfg) ) { -// const blncd = balanced('{', '}', parsingCfg); - -// if(blncd) { - -// // extract object name from bracket match pre-text -// const parentObjName = blncd.pre.trim().split(' '); - -// // create new nested object with name/paths and body -// const newObj = nestedObjValue(parentObjName, blncd.body); - -// // merge new object back into main objects tree -// fullObj = deepMergeObj(fullObj, newObj); - -// // rebuild object we are extracting from config file -// const rebuiltObj = `${parentObjName.join(' ')} {${blncd.body}}` - -// // remove object from config file -// parsingCfg = parsingCfg.replace(rebuiltObj, ''); - -// // trim leading and trailing white space -// parsingCfg = parsingCfg.trim(); - -// // increment object counter -// totalObjectCount ++; -// } -// } -// } - - -// const parseTime = Number(process.hrtime.bigint() - startTime) / 1000000 -// return { -// totalObjectCount, -// ltmObjectCount, -// lineCount, -// parseTime, -// fullObj -// } -// } - -// /** -// * approximate number of lines in config -// * - not sure how it handles line returns in health monitors and irules -// * @param config tmos config file -// */ -// export function countLines (config: string): number { -// return config.split(/\r\n|\n/).length; -// } \ No newline at end of file diff --git a/tests/012_balanedMatch.tests.ts b/tests/012_balanedMatch.tests.ts new file mode 100644 index 0000000..92d4037 --- /dev/null +++ b/tests/012_balanedMatch.tests.ts @@ -0,0 +1,151 @@ + +'use strict'; + +import assert from 'assert'; + +import { balancedRx1, balancedRxAll } from '../src/tmos2json' +import { isArray, isObject } from 'f5-conx-core'; + + +describe('Balance Matched work as of 4.30.2023', async function () { + + it(`balanced match function 1`, async function () { + + const t = ` + members { + /Common/app3_Node1:8443 { + address 192.168.1.52 + } + /Common/app3_Node2:8443 { + address 192.168.1.53 + } +} +` + + // this was reall just my first example of where I wanted to go. + // the other functions are more representative of what is needed + function balanced1(x: string) { + + x = x.trim(); + const b = x.replace(/\n +/g, ' ') + const sp = x.split('') + + const preface: string[] = []; + const body: string[] = []; + let beginCount = 0; + let endCount = 0; + + for (const a of sp) { + if (a === '{') beginCount++ + if (a === '}') endCount++ + + if (beginCount === 0) preface.push(a) + if (beginCount > 0) body.push(a); + + + if (beginCount === endCount && body.length > 0) break; + + } + + const pre = preface.join('').trim(); + body.shift(); // removes the parent starting { + body.pop(); // removed the parent ending } + const bdy = body.join('').trim(); // combine the rest the body + + return { k: pre, v: bdy } + } + + const d = balanced1(t); + + }); + + + // was working on deep parsing ltm pools, so this is the body of a complicted ltm pool object + const t = ` + allow-nat no + allow-snat no + description "yabba dappa doo!" + ignore-persisted-weight enabled + ip-tos-to-client mimic + ip-tos-to-server mimic + link-qos-to-client 5 + link-qos-to-server 6 + load-balancing-mode observed-member + members { + /Common/10.3.110.10:80 { + address 10.3.110.10 + } + /Common/10.3.110.10:443 { + address 10.3.110.10 + } + /Common/10.3.110.10:8443 { + address 10.3.110.10 + } + /Common/dw1.lab.io:8443 { + fqdn { + autopopulate enabled + name dude1.where.io + } + } + /Common/dw2.lab.io:443 { + description asfd + monitor /Common/http + fqdn { + name dude2.where.io + } + } + } + monitor min 2 of { /Common/gateway_icmp /Common/http /Common/http2 } + profiles { + /Common/nvgre + } + queue-depth-limit 66 + queue-time-limit 88 + reselect-tries 7 + service-down-action reset + slow-ramp-time 300 + ` + it(`balanced match function 2`, async function () { + + + + const d = balancedRx1('members {', t); + + // the following are just to make sure the basic structure of the object is there + // and those strings include details we expect + assert.ok(d?.prefaceKey.includes('members')) + assert.ok(d?.body.includes('fqdn {')) + assert.ok(d?.rest.includes('yabba')) + + + }); + + + + it(`balancedRxAll - array`, async function () { + + const d = balancedRxAll(t); + + // the following are just to make sure the basic structure of the object is there + // and those strings include details we expect + assert.ok(isArray(d.matches)) + assert.ok(typeof d.rest === 'string') + assert.ok(typeof d.matches[0].prefaceKey === 'string') + assert.ok(typeof d.matches[0].body === 'string') + + }); + + + // it(`balancedRxAll - Object`, async function () { + + // const d = balancedRxAll(t, true); + + // // the following are just to make sure the basic structure of the object is there + // // and those strings include details we expect + // assert.ok(isObject(d.matches)) + // assert.ok(typeof d.rest === 'string') + + // }); + + +}); diff --git a/tests/015_regexTree.tests.ts b/tests/015_regexTree.tests.ts index 1eae8da..4e83ea4 100644 --- a/tests/015_regexTree.tests.ts +++ b/tests/015_regexTree.tests.ts @@ -29,7 +29,7 @@ describe('Testing regex tree functions', function () { const rx = new RegExTree(config) assert.ok(typeof rx === 'object'); assert.deepStrictEqual( - rx.vs.pool.obj, + rx.ltm.virtual.pool, /(? 5); }); - - it(`basic gtm - high level fqdn details`, async function () { assert.ok(typeof gslb![0] == 'object'); assert.ok(typeof gslb![0].fqdn == 'string'); assert.ok(typeof gslb![0].type == 'string'); assert.ok(typeof gslb![1].aliases![0] == 'string'); + + }); + + it(`wideip with no pool + description`, async function () { + + const piTime = gslb.find(e => e.fqdn === 'piTime314a.int.sci.com') + assert.ok(piTime?.allPossibleDestinations.length === 0); + assert.ok(typeof piTime.description == 'string'); }); + + + }); diff --git a/tests/032_apmDetails.tests.ts b/tests/032_apmDetails.tests.ts new file mode 100644 index 0000000..0f62f15 --- /dev/null +++ b/tests/032_apmDetails.tests.ts @@ -0,0 +1,59 @@ + +'use strict'; + +import assert from 'assert'; +import path from 'path'; + +import BigipConfig from '../src/ltm'; +import { archiveMake } from './archive_generator/archiveBuilder'; +import { Explosion, GslbApp } from '../src/models'; + + +let device: BigipConfig; +let expld: Explosion; +const parsedFileEvents: any[] = []; +const parsedObjEvents: any[] = []; +let testFile = ''; + +describe('APM parsing/abstraction', async function () { + + before(async () => { + + console.log('test file: ', __filename); + + testFile = await archiveMake('qkview') as string; + const testFileDetails = path.parse(testFile); + + device = new BigipConfig(); + + device.on('parseFile', (x: any) => parsedFileEvents.push(x)) + device.on('parseObject', (x: any) => parsedObjEvents.push(x)) + + await device.loadParseAsync(testFile); + expld = await device.explode(); + + }) + + it(`number of expected apm access profiles`, async function () { + + const keys = Object.keys(device.configObject.apm!.profile!.access!); + + assert.ok(keys.length === 3, 'should find three apm access profiles'); + + }); + + it(`confirm 'apm profile access' structur`, async function () { + + const profile = device.configObject.apm!.profile!.access!['/Common/sslvpn_network_access']; + + assert.ok(profile['accept-languages'].length === 3); + assert.ok(profile['log-settings'].length === 2); + assert.ok(typeof profile['access-policy'] === 'string'); + assert.ok(typeof profile.type === 'string'); + + }); + + + +}); + diff --git a/tests/035_gtmDetails.tests.ts b/tests/035_doClasses.tests.ts similarity index 81% rename from tests/035_gtmDetails.tests.ts rename to tests/035_doClasses.tests.ts index 2324dfb..0ac563b 100644 --- a/tests/035_gtmDetails.tests.ts +++ b/tests/035_doClasses.tests.ts @@ -15,7 +15,7 @@ let expld: Explosion; const parsedFileEvents: any[] = []; const parsedObjEvents: any[] = []; let testFile = ''; -const doc: any[] = []; +const doc: string[] = []; describe('ACC DO Classes parsing/abstraction', async function() { @@ -29,8 +29,10 @@ describe('ACC DO Classes parsing/abstraction', async function() { device.on('parseFile', (x: any) => parsedFileEvents.push(x) ) device.on('parseObject', (x: any) => parsedObjEvents.push(x) ) - await device.loadParseAsync(testFile); - expld = await device.explode(); + await device.loadParseAsync(testFile) + .then( async x => { + expld = await device.explode(); + }); }) @@ -40,9 +42,9 @@ describe('ACC DO Classes parsing/abstraction', async function() { doc.push(...expld.config.doClasses); } - console.log(device.configObject.gtm) + // console.log(device.configObject.gtm) - assert.ok(doc.length === 31) + assert.ok(doc.length === 34) }); @@ -51,8 +53,8 @@ describe('ACC DO Classes parsing/abstraction', async function() { // this means we didn't parse the object correctly (started when deep parsing began) const text = '[object, object]'; - const resp = doc.findIndex(x => x.test(text)) - assert.ok(!resp); + const resp = doc.findIndex(x => x.includes(text)) + assert.deepStrictEqual(resp, -1); }); diff --git a/tests/037_ltmDetails.tests.ts b/tests/037_ltmDetails.tests.ts new file mode 100644 index 0000000..1ce0b57 --- /dev/null +++ b/tests/037_ltmDetails.tests.ts @@ -0,0 +1,98 @@ + +'use strict'; + +import assert from 'assert'; +import path from 'path'; + +import BigipConfig from '../src/ltm'; +import { archiveMake } from './archive_generator/archiveBuilder'; +import { Explosion, GslbApp } from '../src/models'; + + +let device: BigipConfig; +let expld: Explosion; +const parsedFileEvents: any[] = []; +const parsedObjEvents: any[] = []; +let testFile = ''; + + +describe('LTM parsing/abstraction', async function () { + + before(async () => { + + console.log('test file: ', __filename); + + testFile = await archiveMake('qkview') as string; + const testFileDetails = path.parse(testFile); + + device = new BigipConfig(); + + device.on('parseFile', (x: any) => parsedFileEvents.push(x)) + device.on('parseObject', (x: any) => parsedObjEvents.push(x)) + + await device.loadParseAsync(testFile); + expld = await device.explode(); + + }) + + it(`number of expected ltm virtual servers`, async function () { + + const keys = Object.keys(device.configObject.ltm?.virtual!); + + assert.ok(keys.length === 15, 'should find 15 virtual servers'); + + }); + + + it(`number of expected ltm pools`, async function () { + + const keys = Object.keys(device.configObject.ltm?.pool!); + + assert.ok(keys.length === 13, 'should find 13 pools'); + + }); + + it(`number of expected ltm monitors`, async function () { + + const keys = Object.keys(device.configObject.ltm?.monitor!); + + assert.ok(keys.length === 6, 'should find 6 monitors'); + + }); + + it(`number of expected ltm snat pools`, async function () { + + const keys = Object.keys(device.configObject.ltm?.snatpool!); + + assert.ok(keys.length === 2, 'should find 2 snat pools'); + + }); + + it(`vs no destination`, async function () { + + // ltm virtual /foo/wiffle_redirect_vs + const idx = expld.config.apps?.findIndex(i => !i.destination) + let app; + if(idx) { + app = expld.config?.apps?.[idx]; + } + assert.ok(!app.destination, 'app should not have a destination'); + assert.ok(app.description, 'app should have a description'); + + }); + + it(`missing local traffic policies`, async function () { + + delete device.configObject.ltm?.policy; + + const localExpld = await device.explode(); + + assert.ok(localExpld, 'should not error while abstracting apps with missing configs'); + + }); + + + + +}); + diff --git a/tests/040_waf.tests.ts b/tests/040_waf.tests.ts index d8f0866..1578f67 100644 --- a/tests/040_waf.tests.ts +++ b/tests/040_waf.tests.ts @@ -39,21 +39,22 @@ describe('WAF/ASM parsing/abstraction', async function () { asmObj = device.configObject.asm } + // do we have any asm objects? assert.ok(typeof asmObj === 'object') }); it(`Inspect asm policy object for params`, async function () { - const basicPolic1 = asmObj.policy['/Common/basic_policy_1'] - assert.ok(typeof basicPolic1.line === 'string'); - assert.ok(typeof basicPolic1.description === 'string'); - assert.ok(typeof basicPolic1.status === 'string'); - assert.ok(typeof basicPolic1['blocking-mode'] === 'string'); - assert.ok(typeof basicPolic1['policy-builder'] === 'string'); - assert.ok(typeof basicPolic1['policy-template'] === 'string'); - assert.ok(typeof basicPolic1['parent-policy'] === 'string'); - assert.ok(typeof basicPolic1['policy-type'] === 'string'); + const basicPolicy1 = asmObj.policy['/Common/basic_policy_1'] + assert.ok(typeof basicPolicy1.line === 'string'); + assert.ok(typeof basicPolicy1.description === 'string'); + assert.ok(typeof basicPolicy1.status === 'string'); + assert.ok(typeof basicPolicy1['blocking-mode'] === 'string'); + assert.ok(typeof basicPolicy1['policy-builder'] === 'string'); + assert.ok(typeof basicPolicy1['policy-template'] === 'string'); + assert.ok(typeof basicPolicy1['parent-policy'] === 'string'); + assert.ok(typeof basicPolicy1['policy-type'] === 'string'); }); @@ -73,7 +74,7 @@ describe('WAF/ASM parsing/abstraction', async function () { const body = v.replace(/\n +/g, ' ') - const iAsm = body.match(device.rx!.vs.ltPolicies.asmRef) + const iAsm = body.match(device.rx!.ltm.ltPolicies.asmRef) if (iAsm) { asmLtKeys.push(k) asmLtProfiles.push({ [k]: iAsm[0] }) @@ -97,18 +98,18 @@ describe('WAF/ASM parsing/abstraction', async function () { // so, now we will dig the profiles object for what we need instead... // const - const profilesObj = v.match(device.rx!.vs.profiles.obj); + // const profilesObj = v.match(device.rx!.ltm.profiles.names); - if (profilesObj) { - const asmProf = profilesObj[1].match(device.rx!.vs.profiles.asmProf) - if(asmProf) { - if(asmVirtuals[asmProf[1]]) { - asmVirtuals[asmProf[1]].push(k); - } else { - asmVirtuals[asmProf[1]] = [k] - } - } - } + // if (profilesObj) { + // const asmProf = profilesObj[1].match(device.rx!.ltm.profiles.asmProf) + // if(asmProf) { + // if(asmVirtuals[asmProf[1]]) { + // asmVirtuals[asmProf[1]].push(k); + // } else { + // asmVirtuals[asmProf[1]] = [k] + // } + // } + // } } diff --git a/tests/050_conf_file.tests.ts b/tests/050_conf_file.tests.ts index 8c5d945..f1b9234 100644 --- a/tests/050_conf_file.tests.ts +++ b/tests/050_conf_file.tests.ts @@ -102,10 +102,11 @@ describe('bigip.conf tests', async function () { "/Common/app2_t80_vs", "/Common/bigiq.benlab.io_t443_vs", "/Common/app2_t443_vs", + "/Common/persistTest_80_vs", "/Common/app3_t8443_vs", "/Common/app4_t80_vs", "/Common/forwarder_net_0.0.0.0", - ]; + ] assert.deepStrictEqual(apps, expected, 'Should get list of virtual servers / apps'); }); @@ -117,15 +118,15 @@ describe('bigip.conf tests', async function () { "ltm pool /Common/app4_pool {\n members {\n /Common/api.chucknorris.io:443 {\n fqdn {\n autopopulate enabled\n name api.chucknorris.io\n }\n }\n }\n}", "ltm node /Common/api.chucknorris.io {\n fqdn {\n address-family all\n autopopulate enabled\n name api.chucknorris.io\n }\n}", "ltm rule /Common/app4_pool_rule {\n### test rule for corkscrew\n\n # \n\nwhen HTTP_REQUEST {\n\n # pool reference by variable declaration\n set html-pool web1Pool\n\n if { [HTTP::path] ends_with \"*.css\" }{\n\n # regular pool refernce\n pool css_pool\n\n } elseif { [HTTP::path] ends_with \"*.jpg\" }{\n\n # pool member refernce\n pool jpg.pool member 10.10.10.1 80\n\n } elseif { [HTTP::path] ends_with \"*.js\" }{\n\n # another pool reference with special characters\n pool js.io_t80_pool \n\n } elseif { [HTTP::path] ends_with \"*.xx\" }{\n\n # pool reference not in tmos config\n ### *** seems the gui won't let you attach an irule to a vs with a pool that doesn't exist\n #pool missing_pool\n\n } elseif { [HTTP::path] ends_with \"*.txt\" }{\n\n # node reference\n node 10.10.10.1 80\n\n } else {\n\n # pool referenced by variable\n pool $html-pool\n\n }\n}\n}", - "ltm pool /Common/css_pool { }", - "ltm pool /Common/jpg.pool { }", - "ltm pool /Common/js.io_t80_pool { }", "ltm policy /Common/app4_ltPolicy {\n controls { forwarding }\n description \"testing for pool extraction function\"\n requires { http }\n rules {\n css_pool_rule {\n actions {\n 0 {\n forward\n select\n pool /Common/css_pool\n }\n }\n conditions {\n 0 {\n http-uri\n scheme\n ends-with\n values { .css }\n }\n }\n }\n jpg_pool_rule {\n actions {\n 0 {\n forward\n select\n pool /Common/jpg.pool\n }\n }\n conditions {\n 0 {\n http-uri\n query-string\n ends-with\n values { .jpg }\n }\n }\n ordinal 1\n }\n js_pool_rule {\n actions {\n 0 {\n forward\n select\n pool /Common/js.io_t80_pool\n }\n }\n conditions {\n 0 {\n http-uri\n scheme\n ends-with\n values { .js }\n }\n }\n ordinal 2\n }\n txt_node {\n actions {\n 0 {\n forward\n select\n node 10.10.10.1\n }\n }\n conditions {\n 0 {\n http-uri\n scheme\n ends-with\n values { .txt }\n }\n }\n ordinal 3\n }\n }\n strategy /Common/first-match\n}", - ]; + "ltm pool css_pool { }", + "ltm pool jpg.pool { }", + "ltm pool js.io_t80_pool { }", + ] await device.apps('/Common/app4_t80_vs') .then(app => { - const appConfig = app![0].config; + const appConfig = app![0].lines; assert.deepStrictEqual(appConfig, expected, 'Should get list of virtual servers / apps'); }) diff --git a/tests/052_ucs.tests.ts b/tests/052_ucs.tests.ts index 2b7521b..5ce5109 100644 --- a/tests/052_ucs.tests.ts +++ b/tests/052_ucs.tests.ts @@ -61,15 +61,20 @@ describe('ucs tests', async function () { "/Common/app2_t80_vs", "/Common/bigiq.benlab.io_t443_vs", "/Common/app2_t443_vs", + "/Common/persistTest_80_vs", "/Common/app3_t8443_vs", "/Common/app4_t80_vs", "/Common/forwarder_net_0.0.0.0", "/foo/defaultsUDP_5555/serviceMain", + "/foo/t1.lab.io_80vs", + "/foo/wiffle_redirect_vs", + "/foo/app8_80vs", "/hue-infra/hue-up/hue-up.benlab.io_t80_vs", "/hue-infra/hue-up/hue-up.benlab.io_t443_vs", ] assert.deepStrictEqual(apps, expected, 'Should get list of virtual servers / apps'); + }); it(`get app config by name`, async function () { @@ -80,13 +85,13 @@ describe('ucs tests', async function () { "ltm pool /Common/app4_pool {\n members {\n /Common/api.chucknorris.io:443 {\n fqdn {\n autopopulate enabled\n name api.chucknorris.io\n }\n }\n }\n}", "ltm node /Common/api.chucknorris.io {\n fqdn {\n address-family all\n autopopulate enabled\n name api.chucknorris.io\n }\n}", "ltm rule /Common/app4_pool_rule {\n### test rule for corkscrew\n\n # \n\nwhen HTTP_REQUEST {\n\n # pool reference by variable declaration\n set html-pool web1Pool\n\n if { [HTTP::path] ends_with \"*.css\" }{\n\n # regular pool refernce\n pool css_pool\n\n } elseif { [HTTP::path] ends_with \"*.jpg\" }{\n\n # pool member refernce\n pool jpg.pool member 10.10.10.1 80\n\n } elseif { [HTTP::path] ends_with \"*.js\" }{\n\n # another pool reference with special characters\n pool js.io_t80_pool \n\n } elseif { [HTTP::path] ends_with \"*.xx\" }{\n\n # pool reference not in tmos config\n ### *** seems the gui won't let you attach an irule to a vs with a pool that doesn't exist\n #pool missing_pool\n\n } elseif { [HTTP::path] ends_with \"*.txt\" }{\n\n # node reference\n node 10.10.10.1 80\n\n } else {\n\n # pool referenced by variable\n pool $html-pool\n\n }\n}\n}", - "ltm pool /Common/css_pool { }", - "ltm pool /Common/jpg.pool { }", - "ltm pool /Common/js.io_t80_pool { }", "ltm policy /Common/app4_ltPolicy {\n controls { forwarding }\n description \"testing for pool extraction function\"\n requires { http }\n rules {\n css_pool_rule {\n actions {\n 0 {\n forward\n select\n pool /Common/css_pool\n }\n }\n conditions {\n 0 {\n http-uri\n scheme\n ends-with\n values { .css }\n }\n }\n }\n jpg_pool_rule {\n actions {\n 0 {\n forward\n select\n pool /Common/jpg.pool\n }\n }\n conditions {\n 0 {\n http-uri\n query-string\n ends-with\n values { .jpg }\n }\n }\n ordinal 1\n }\n js_pool_rule {\n actions {\n 0 {\n forward\n select\n pool /Common/js.io_t80_pool\n }\n }\n conditions {\n 0 {\n http-uri\n scheme\n ends-with\n values { .js }\n }\n }\n ordinal 2\n }\n txt_node {\n actions {\n 0 {\n forward\n select\n node 10.10.10.1\n }\n }\n conditions {\n 0 {\n http-uri\n scheme\n ends-with\n values { .txt }\n }\n }\n ordinal 3\n }\n }\n strategy /Common/first-match\n}", - ]; + "ltm pool css_pool { }", + "ltm pool jpg.pool { }", + "ltm pool js.io_t80_pool { }", + ] - const appConfig = app![0].config; + const appConfig = app![0].lines; assert.deepStrictEqual(appConfig, expected, 'Should get list of virtual servers / apps'); }); diff --git a/tests/054_qkview.tests.ts b/tests/054_qkview.tests.ts index 735a7e7..ec74410 100644 --- a/tests/054_qkview.tests.ts +++ b/tests/054_qkview.tests.ts @@ -21,8 +21,8 @@ let testFile = ''; let outFile = ''; -describe('qkview tests', async function() { - +describe('qkview tests', async function () { + before(async () => { testFile = await archiveMake('qkview') as string; const testFileDetails = path.parse(testFile); @@ -31,15 +31,18 @@ describe('qkview tests', async function() { console.log('outFile', outFile); }) - it(`instantiate -> parse configs, get parseTime, explode`, async function() { - + it(`instantiate -> parse configs, get parseTime, explode`, async function () { + device = new BigipConfig(); - device.on('parseFile', (x: any) => parsedFileEvents.push(x) ) - device.on('parseObject', (x: any) => parsedObjEvents.push(x) ) + device.on('parseFile', (x: any) => parsedFileEvents.push(x)) + device.on('parseObject', (x: any) => parsedObjEvents.push(x)) - const parseTime = await device.loadParseAsync(testFile); - expld = await device.explode(); + const parseTime = await device.loadParseAsync(testFile) + .then(async parseTime => { + expld = await device.explode(); + return parseTime; + }); fs.writeFileSync(`${outFile}.json`, JSON.stringify(expld, undefined, 4)); const bigLog = logOutput(device.configObject, expld); @@ -49,7 +52,7 @@ describe('qkview tests', async function() { }); - it(`list apps`, async function() { + it(`list apps`, async function () { const apps = await device.appList(); @@ -59,18 +62,22 @@ describe('qkview tests', async function() { "/Common/app2_t80_vs", "/Common/bigiq.benlab.io_t443_vs", "/Common/app2_t443_vs", + "/Common/persistTest_80_vs", "/Common/app3_t8443_vs", "/Common/app4_t80_vs", "/Common/forwarder_net_0.0.0.0", "/foo/defaultsUDP_5555/serviceMain", + "/foo/t1.lab.io_80vs", + "/foo/wiffle_redirect_vs", + "/foo/app8_80vs", "/hue-infra/hue-up/hue-up.benlab.io_t80_vs", "/hue-infra/hue-up/hue-up.benlab.io_t443_vs", ] - + assert.deepStrictEqual(apps, expected, 'Should get list of virtual servers / apps'); }); - it(`get app config by name`, async function() { + it(`get app config by name`, async function () { const app = await device.apps('/Common/app4_t80_vs'); const expected = [ @@ -78,18 +85,18 @@ describe('qkview tests', async function() { "ltm pool /Common/app4_pool {\n members {\n /Common/api.chucknorris.io:443 {\n fqdn {\n autopopulate enabled\n name api.chucknorris.io\n }\n }\n }\n}", "ltm node /Common/api.chucknorris.io {\n fqdn {\n address-family all\n autopopulate enabled\n name api.chucknorris.io\n }\n}", "ltm rule /Common/app4_pool_rule {\n### test rule for corkscrew\n\n # \n\nwhen HTTP_REQUEST {\n\n # pool reference by variable declaration\n set html-pool web1Pool\n\n if { [HTTP::path] ends_with \"*.css\" }{\n\n # regular pool refernce\n pool css_pool\n\n } elseif { [HTTP::path] ends_with \"*.jpg\" }{\n\n # pool member refernce\n pool jpg.pool member 10.10.10.1 80\n\n } elseif { [HTTP::path] ends_with \"*.js\" }{\n\n # another pool reference with special characters\n pool js.io_t80_pool \n\n } elseif { [HTTP::path] ends_with \"*.xx\" }{\n\n # pool reference not in tmos config\n ### *** seems the gui won't let you attach an irule to a vs with a pool that doesn't exist\n #pool missing_pool\n\n } elseif { [HTTP::path] ends_with \"*.txt\" }{\n\n # node reference\n node 10.10.10.1 80\n\n } else {\n\n # pool referenced by variable\n pool $html-pool\n\n }\n}\n}", - "ltm pool /Common/css_pool { }", - "ltm pool /Common/jpg.pool { }", - "ltm pool /Common/js.io_t80_pool { }", "ltm policy /Common/app4_ltPolicy {\n controls { forwarding }\n description \"testing for pool extraction function\"\n requires { http }\n rules {\n css_pool_rule {\n actions {\n 0 {\n forward\n select\n pool /Common/css_pool\n }\n }\n conditions {\n 0 {\n http-uri\n scheme\n ends-with\n values { .css }\n }\n }\n }\n jpg_pool_rule {\n actions {\n 0 {\n forward\n select\n pool /Common/jpg.pool\n }\n }\n conditions {\n 0 {\n http-uri\n query-string\n ends-with\n values { .jpg }\n }\n }\n ordinal 1\n }\n js_pool_rule {\n actions {\n 0 {\n forward\n select\n pool /Common/js.io_t80_pool\n }\n }\n conditions {\n 0 {\n http-uri\n scheme\n ends-with\n values { .js }\n }\n }\n ordinal 2\n }\n txt_node {\n actions {\n 0 {\n forward\n select\n node 10.10.10.1\n }\n }\n conditions {\n 0 {\n http-uri\n scheme\n ends-with\n values { .txt }\n }\n }\n ordinal 3\n }\n }\n strategy /Common/first-match\n}", - ]; + "ltm pool css_pool { }", + "ltm pool jpg.pool { }", + "ltm pool js.io_t80_pool { }", + ] + + const appConfig = app![0].lines; - const appConfig = app![0].config; - assert.deepStrictEqual(appConfig, expected, 'Should get list of virtual servers / apps'); }); - it(`only qvkiew SHOULD have default profiles/settings`, async function() { + it(`only qvkiew SHOULD have default profiles/settings`, async function () { const baseLtmProfiles = device.defaultProfileBase; const sysLowProfiles = device.defaultLowProfileBase; @@ -99,15 +106,15 @@ describe('qkview tests', async function() { }); - it(`basic gtm - high level fqdn details`, async function() { + it(`basic gtm - high level fqdn details`, async function () { const gslb = expld.config.gslb; - assert.ok(gslb!.length === 5); - assert.ok(typeof gslb![0] == 'object'); - assert.ok(typeof gslb![0].fqdn == 'string'); - assert.ok(typeof gslb![0].type == 'string'); - assert.ok(typeof gslb![1].aliases![0] == 'string'); + assert.ok(gslb!.length > 5); + assert.ok(typeof gslb![0] === 'object'); + assert.ok(typeof gslb![0].fqdn === 'string'); + assert.ok(typeof gslb![0].type === 'string'); + assert.ok(typeof gslb![1].aliases![0] === 'string'); }); }); diff --git a/tests/056_cli.tests.ts b/tests/056_cli.tests.ts new file mode 100644 index 0000000..c68c22b --- /dev/null +++ b/tests/056_cli.tests.ts @@ -0,0 +1,93 @@ + +'use strict'; + +import assert from 'assert'; +import path from 'path'; + +import { archiveMake } from './archive_generator/archiveBuilder'; + +import { execSync } from 'child_process'; + + + +let testFile = ''; +let outFile = ''; + +describe('cli (yargs) tests', async function () { + + before(async () => { + testFile = await archiveMake('qkview') as string; + const testFileDetails = path.parse(testFile); + outFile = path.join(testFileDetails.dir, `${testFileDetails.base}.log`); + console.log('test file: ', __filename); + console.log('outFile', outFile); + + }) + + + it(`run cli with defaults`, async function () { + + // node dist/cli.js --file ./tests/artifacts/f5_corkscrew_test.qkview + + const resp = execSync(`node dist/cli.js --file ${testFile}`) + + const output = JSON.parse(resp.toString()) + + // todo: save the output to a file like the other tests + + assert.ok(resp) + assert.ok(typeof output.output === 'object') + + assert.ok(typeof output.output.dateTime === 'string') + assert.ok(typeof output.output.hostname === 'string') + assert.ok(typeof output.output.id === 'string') + assert.ok(typeof output.output.inputFileType === 'string') + + assert.ok(typeof output.output.stats === 'object') + assert.ok(typeof output.output.config === 'object') + + assert.ok(Array.isArray(output.output.config.apps)) + assert.ok(typeof output.output.config.apps[0] === 'object') + + assert.ok(Array.isArray(output.output.config.doClasses)) + assert.ok(typeof output.output.config.doClasses[0] === 'string') + + assert.ok(Array.isArray(output.output.config.gslb)) + assert.ok(typeof output.output.config.gslb[0] === 'object') + + }); + + it(`run cli with all details returned`, async function () { + + const cmd = [ + 'node', 'dist/cli.js', + '--file', testFile, + '--no_sources', 'false', + '--no_file_store', 'false', + '--no_command_logs', 'false', + '--no_process_logs', 'false', + ].join(' '); + + const resp = execSync(cmd) + + const output = JSON.parse(resp.toString()) + + // todo: save the output to a file like the other tests + + assert.ok(resp) + + assert.ok(typeof output.output === 'object') + + assert.ok(Array.isArray(output.command_logs)) + assert.ok(typeof output.command_logs[0] === 'string') + + assert.ok(Array.isArray(output.output.logs)) + assert.ok(typeof output.output.logs[0] === 'string') + + assert.ok(Array.isArray(output.output.config.sources)) + assert.ok(typeof output.output.config.sources[0] === 'object') + + }); + +}); + diff --git a/tests/ALL.tests.ts b/tests/ALL.tests.no.ts similarity index 100% rename from tests/ALL.tests.ts rename to tests/ALL.tests.no.ts diff --git a/tests/archive_generator/archive1/config/bigip.conf b/tests/archive_generator/archive1/config/bigip.conf index e92d356..7383d03 100644 --- a/tests/archive_generator/archive1/config/bigip.conf +++ b/tests/archive_generator/archive1/config/bigip.conf @@ -512,7 +512,7 @@ apm profile access /Common/radiusServer { user-identity-method http } apm profile access /Common/sslvpn_network_access { - accept-languages { en } + accept-languages { en es fr } access-policy /Common/sslvpn_network_access app-service none customization-group /Common/sslvpn_network_access_logout @@ -524,15 +524,17 @@ apm profile access /Common/sslvpn_network_access { exchange-profile none framework-installation-group /Common/sslvpn_network_access_frameworkinstallation general-ui-group /Common/sslvpn_network_access_general_ui - generation 2 + generation 3 generation-action noop httponly-cookie false log-settings { /Common/default-log-setting + /Common/default-sslo-log-setting } - logout-uri-include none + logout-uri-include { /some/logout.html } logout-uri-timeout 5 modified-since-last-policy-sync true + named-scope none oauth-profile none persistent-cookie false scope profile @@ -862,6 +864,50 @@ ltm pool /Common/app3_t8443_pool { } monitor /Common/app1_tcp_half_open_quick_monitor and /Common/http_head_f5 and /Common/http2_head_f5 and /Common/http and /Common/tcp_half_open } +ltm pool /Common/manyOptions_pool { + allow-nat no + allow-snat no + description "yabba dappa doo!" + ignore-persisted-weight enabled + ip-tos-to-client mimic + ip-tos-to-server mimic + link-qos-to-client 5 + link-qos-to-server 6 + load-balancing-mode observed-member + members { + /Common/10.3.110.10:80 { + address 10.3.110.10 + } + /Common/10.3.110.10:443 { + address 10.3.110.10 + } + /Common/10.3.110.10:8443 { + address 10.3.110.10 + } + /Common/dw1.lab.io:8443 { + fqdn { + autopopulate enabled + name dude1.where.io + } + } + /Common/dw2.lab.io:443 { + description asfd + monitor /Common/http + fqdn { + name dude2.where.io + } + } + } + monitor min 2 of { /Common/gateway_icmp /Common/http /Common/http2 } + profiles { + /Common/nvgre + } + queue-depth-limit 66 + queue-time-limit 88 + reselect-tries 7 + service-down-action reset + slow-ramp-time 300 +} ltm pool /Common/app4_pool { members { /Common/api.chucknorris.io:443 { @@ -953,6 +999,14 @@ ltm snatpool /Common/app3_snat_pool { /Common/192.168.1.51 } } +ltm snatpool /Common/testSnat1_pool { + members { + /Common/1.1.1.1 + /Common/1.1.1.2 + /Common/1.1.1.3 + /Common/1.1.1.4 + } +} ltm virtual /Common/app1_t80_vs { creation-time 2020-09-17:08:50:22 destination /Common/192.168.1.21:80 @@ -1033,6 +1087,8 @@ ltm virtual /Common/bigiq.benlab.io_t443_vs { translate-port enabled vlans { /Common/vlan255_f5peer + /Common/vlan245 + /Common/vlan230 } vlans-enabled } @@ -1054,6 +1110,28 @@ ltm virtual /Common/app2_t443_vs { translate-address enabled translate-port enabled } +ltm virtual /Common/persistTest_80_vs { + creation-time 2023-05-09:11:25:01 + description "vs to explore persist configs - both default/fallback are single entries" + destination /Common/10.6.3.4:80 + fallback-persistence /Common/source_addr + ip-protocol tcp + last-modified-time 2023-05-09:11:25:01 + mask 255.255.255.255 + persist { + /Common/cookie { + default yes + } + } + profiles { + /Common/http { } + /Common/tcp { } + } + serverssl-use-sni disabled + source 0.0.0.0/0 + translate-address enabled + translate-port enabled +} ltm virtual /Common/app3_t8443_vs { destination /Common/192.168.1.51:8443 fallback-persistence /Common/app3_srcAddr_persist @@ -1424,6 +1502,166 @@ net ipsec ike-daemon /Common/ikedaemon { pem global-settings analytics { } pem global-settings gx { } pem global-settings policy { } +security dos profile /Common/app50_dos { + app-service none + application { + app50_dos { + bot-defense { + browser-legit-captcha disabled + browser-legit-enabled disabled + } + captcha-response { + failure { + body "You have entered an invalid answer for the question. Please, try again. +
+%DOSL7.captcha.image% %DOSL7.captcha.audio% %DOSL7.captcha.change% +
+What code is in the image\? +%DOSL7.captcha.solution% +
+%DOSL7.captcha.submit% +
+
+Your support ID is: %DOSL7.captcha.support_id%." + } + first { + body "This question is for testing whether you are a human visitor and to prevent automated spam submission. +
+%DOSL7.captcha.image% %DOSL7.captcha.audio% %DOSL7.captcha.change% +
+What code is in the image\? +%DOSL7.captcha.solution% +
+%DOSL7.captcha.submit% +
+
+Your support ID is: %DOSL7.captcha.support_id%." + } + } + heavy-urls { + automatic-detection disabled + protection disabled + } + mobile-detection { + allow-any-android-package false + allow-any-ios-package false + } + stress-based { + behavioral { + mitigation-mode none + } + ip-rate-limiting disabled + url-enable-heavy disabled + url-rate-limiting disabled + } + tps-based { + ip-rate-limiting disabled + mode off + url-enable-heavy disabled + url-rate-limiting disabled + } + } + } + creation-time 2023-05-09:06:11:09 + creation-user admin + description "app #50 sample dos profile" + dos-network { + app50_dos { } + } + http-whitelist none + last-modified-time 2023-05-09:06:11:10 + modify-user admin + protocol-dns { + app50_dos { } + } + protocol-sip { + app50_dos { } + } + threshold-sensitivity high +} +security bot-defense profile /Common/app51_bot { + allow-browser-access enabled + api-access-strict-mitigation enabled + app-service none + blocking-page { + body "Request RejectedThe requested URL was rejected. Please consult with your administrator.

Your support ID is: <%BOTDEFENSE.support_id%>

[Go Back]" + headers "Cache-Control: no-store, must-revalidate, no-cache +Pragma: no-cache +Connection: close" + status-code 200 + type default + } + browser-mitigation-action block + captcha-response { + failure { + body "You have entered an invalid answer for the question. Please, try again. +
+%BOTDEFENSE.captcha.image% %BOTDEFENSE.captcha.audio% %BOTDEFENSE.captcha.change% +
+What code is in the image\? +%BOTDEFENSE.captcha.solution% +
+%BOTDEFENSE.captcha.submit% +
+
+Your support ID is: %BOTDEFENSE.captcha.support_id%." + type default + } + first { + body "This question is for testing whether you are a human visitor and to prevent automated spam submission. +
+%BOTDEFENSE.captcha.image% %BOTDEFENSE.captcha.audio% %BOTDEFENSE.captcha.change% +
+What code is in the image\? +%BOTDEFENSE.captcha.solution% +
+%BOTDEFENSE.captcha.submit% +
+
+Your support ID is: %BOTDEFENSE.captcha.support_id%." + type default + } + } + cross-domain-requests allow-all + description "some example bot profile" + deviceid-mode generate-before-access + dos-attack-strict-mitigation enabled + enforcement-mode blocking + enforcement-readiness-period 9 + grace-period 300 + honeypot-page { + body + headers "Cache-Control: no-store, must-revalidate, no-cache +Pragma: no-cache +Connection: close" + status-code 200 + type default + } + mobile-detection { + allow-android-rooted-device disabled + allow-any-android-package enabled + allow-any-ios-package enabled + allow-emulators disabled + allow-jailbroken-devices disabled + block-debugger-enabled-device enabled + client-side-challenge-mode pass + } + perform-challenge-in-transparent disabled + redirect-to-pool-name /Common/allOptionsPool + signature-staging-upon-update enabled + single-page-application disabled + template strict + whitelist { + apple_touch_1 { + match-order 2 + url /apple-touch-icon*.png + } + favicon_1 { + match-order 1 + url /favicon.ico + } + } +} security dos ipv6-ext-hdr /Common/dos-ipv6-ext-hdr { frame-types { auth dstopt esp frag hbh mobility route } } diff --git a/tests/archive_generator/archive1/config/bigip_base.conf b/tests/archive_generator/archive1/config/bigip_base.conf index 905ca54..8cde2b7 100644 --- a/tests/archive_generator/archive1/config/bigip_base.conf +++ b/tests/archive_generator/archive1/config/bigip_base.conf @@ -150,6 +150,15 @@ net vlan /Common/internal { } tag 4094 } +net vlan /Common/vlan255_f5peer { + tag 255 +} +net vlan /Common/vlan245 { + tag 245 +} +net vlan /Common/vlan230 { + tag 230 +} net fdb tunnel /Common/http-tunnel { } net fdb tunnel /Common/socks-tunnel { } net fdb vlan /Common/internal { } diff --git a/tests/archive_generator/archive1/config/bigip_gtm.conf b/tests/archive_generator/archive1/config/bigip_gtm.conf index d6a1875..b96ea07 100644 --- a/tests/archive_generator/archive1/config/bigip_gtm.conf +++ b/tests/archive_generator/archive1/config/bigip_gtm.conf @@ -345,6 +345,7 @@ gtm wideip a /Common/bigiq.benlab.io { bq2.benlab.io burger.queen.no } + description "complicated widip" last-resort-pool a /Common/bigiq.benlab.io_pool persistence enabled pool-lb-mode global-availability @@ -371,6 +372,13 @@ gtm wideip a /Common/devCloud01.benlab.io { } } } +gtm wideip a /Common/piTime314a.int.sci.com { + aliases { + piTime314a.td.sci.com + piTime314a.it.io + } + description "wideip with no pool/destination" +} gtm wideip a /Common/unifi.benlab.io { pools { /Common/unifi.benlab.io_pool { diff --git a/tests/archive_generator/archive1/config/partitions/foo/bigip.conf b/tests/archive_generator/archive1/config/partitions/foo/bigip.conf index 40ab894..e745fc2 100644 --- a/tests/archive_generator/archive1/config/partitions/foo/bigip.conf +++ b/tests/archive_generator/archive1/config/partitions/foo/bigip.conf @@ -57,3 +57,75 @@ ltm virtual-address /foo/192.50.2.1 { mask 255.255.255.255 traffic-group /Common/traffic-group-1 } +ltm virtual /foo/t1.lab.io_80vs { + creation-time 2023-04-29:13:02:55 + destination /foo/10.2.3.4:80 + ip-protocol tcp + last-modified-time 2023-04-29:13:02:55 + mask 255.255.255.255 + profiles { + /Common/tcp { } + } + serverssl-use-sni disabled + source 0.0.0.0/0 + source-address-translation { + pool /Common/testSnat1_pool + type snat + } + translate-address enabled + translate-port enabled +} +ltm virtual-address /foo/10.2.3.4 { + address 10.2.3.4 + arp enabled + icmp-echo enabled + mask 255.255.255.255 + traffic-group /Common/traffic-group-1 +} +ltm traffic-matching-criteria /foo/wiffle_redirect_trafficMatchCriteria { + destination-address-inline 10.1.1.9 + destination-port-inline 80 + protocol tcp + source-address-inline 0.0.0.0 + source-address-list /foo/wiffle_address_list +} +ltm rule /foo/HTTP-redirect-to-HTTPS { +when HTTP_REQUEST { HTTP::redirect https://[HTTP::host][HTTP::uri] } +} +ltm pool /foo/app8_pool { + monitor /Common/http +} +ltm virtual /foo/wiffle_redirect_vs { + creation-time 2023-02-02:13:10:03 + description "wiffle waffle baffle" + ip-protocol tcp + last-modified-time 2023-03-29:14:27:19 + profiles { + /Common/http { } + /Common/tcp { } + } + rules { + /foo/HTTP-redirect-to-HTTPS + } + traffic-matching-criteria /foo/wiffle_redirect_trafficMatchCriteria + translate-address enabled + translate-port enabled +} +ltm virtual /foo/app8_80vs { + creation-time 2021-03-04:18:40:06 + destination /foo/1.19.8.18:80 + ip-protocol tcp + last-modified-time 2021-03-04:18:40:06 + mask 255.255.255.255 + pool /foo/app8_pool + profiles { + /Common/http { } + /Common/tcp { } + } + source 0.0.0.0/0 + source-address-translation { + type automap + } + translate-address enabled + translate-port enabled +} diff --git a/tests/archive_generator/archive1/config/partitions/foo/bigip_base.conf b/tests/archive_generator/archive1/config/partitions/foo/bigip_base.conf new file mode 100644 index 0000000..2e7a59b --- /dev/null +++ b/tests/archive_generator/archive1/config/partitions/foo/bigip_base.conf @@ -0,0 +1,11 @@ +#TMSH-VERSION: 15.1.8.2 + +net address-list /foo/wiffle_address_list { + addresses { + 192.168.5.0/24 { } + 192.168.6.0/24 { } + 10.40.0.0/16 { } + 6.6.6.6/32 { } + } + description "wiffle_address_list Address List" +} diff --git a/tests/artifacts/f5_corkscrew_test.conf b/tests/artifacts/f5_corkscrew_test.conf index e92d356..7383d03 100644 --- a/tests/artifacts/f5_corkscrew_test.conf +++ b/tests/artifacts/f5_corkscrew_test.conf @@ -512,7 +512,7 @@ apm profile access /Common/radiusServer { user-identity-method http } apm profile access /Common/sslvpn_network_access { - accept-languages { en } + accept-languages { en es fr } access-policy /Common/sslvpn_network_access app-service none customization-group /Common/sslvpn_network_access_logout @@ -524,15 +524,17 @@ apm profile access /Common/sslvpn_network_access { exchange-profile none framework-installation-group /Common/sslvpn_network_access_frameworkinstallation general-ui-group /Common/sslvpn_network_access_general_ui - generation 2 + generation 3 generation-action noop httponly-cookie false log-settings { /Common/default-log-setting + /Common/default-sslo-log-setting } - logout-uri-include none + logout-uri-include { /some/logout.html } logout-uri-timeout 5 modified-since-last-policy-sync true + named-scope none oauth-profile none persistent-cookie false scope profile @@ -862,6 +864,50 @@ ltm pool /Common/app3_t8443_pool { } monitor /Common/app1_tcp_half_open_quick_monitor and /Common/http_head_f5 and /Common/http2_head_f5 and /Common/http and /Common/tcp_half_open } +ltm pool /Common/manyOptions_pool { + allow-nat no + allow-snat no + description "yabba dappa doo!" + ignore-persisted-weight enabled + ip-tos-to-client mimic + ip-tos-to-server mimic + link-qos-to-client 5 + link-qos-to-server 6 + load-balancing-mode observed-member + members { + /Common/10.3.110.10:80 { + address 10.3.110.10 + } + /Common/10.3.110.10:443 { + address 10.3.110.10 + } + /Common/10.3.110.10:8443 { + address 10.3.110.10 + } + /Common/dw1.lab.io:8443 { + fqdn { + autopopulate enabled + name dude1.where.io + } + } + /Common/dw2.lab.io:443 { + description asfd + monitor /Common/http + fqdn { + name dude2.where.io + } + } + } + monitor min 2 of { /Common/gateway_icmp /Common/http /Common/http2 } + profiles { + /Common/nvgre + } + queue-depth-limit 66 + queue-time-limit 88 + reselect-tries 7 + service-down-action reset + slow-ramp-time 300 +} ltm pool /Common/app4_pool { members { /Common/api.chucknorris.io:443 { @@ -953,6 +999,14 @@ ltm snatpool /Common/app3_snat_pool { /Common/192.168.1.51 } } +ltm snatpool /Common/testSnat1_pool { + members { + /Common/1.1.1.1 + /Common/1.1.1.2 + /Common/1.1.1.3 + /Common/1.1.1.4 + } +} ltm virtual /Common/app1_t80_vs { creation-time 2020-09-17:08:50:22 destination /Common/192.168.1.21:80 @@ -1033,6 +1087,8 @@ ltm virtual /Common/bigiq.benlab.io_t443_vs { translate-port enabled vlans { /Common/vlan255_f5peer + /Common/vlan245 + /Common/vlan230 } vlans-enabled } @@ -1054,6 +1110,28 @@ ltm virtual /Common/app2_t443_vs { translate-address enabled translate-port enabled } +ltm virtual /Common/persistTest_80_vs { + creation-time 2023-05-09:11:25:01 + description "vs to explore persist configs - both default/fallback are single entries" + destination /Common/10.6.3.4:80 + fallback-persistence /Common/source_addr + ip-protocol tcp + last-modified-time 2023-05-09:11:25:01 + mask 255.255.255.255 + persist { + /Common/cookie { + default yes + } + } + profiles { + /Common/http { } + /Common/tcp { } + } + serverssl-use-sni disabled + source 0.0.0.0/0 + translate-address enabled + translate-port enabled +} ltm virtual /Common/app3_t8443_vs { destination /Common/192.168.1.51:8443 fallback-persistence /Common/app3_srcAddr_persist @@ -1424,6 +1502,166 @@ net ipsec ike-daemon /Common/ikedaemon { pem global-settings analytics { } pem global-settings gx { } pem global-settings policy { } +security dos profile /Common/app50_dos { + app-service none + application { + app50_dos { + bot-defense { + browser-legit-captcha disabled + browser-legit-enabled disabled + } + captcha-response { + failure { + body "You have entered an invalid answer for the question. Please, try again. +
+%DOSL7.captcha.image% %DOSL7.captcha.audio% %DOSL7.captcha.change% +
+What code is in the image\? +%DOSL7.captcha.solution% +
+%DOSL7.captcha.submit% +
+
+Your support ID is: %DOSL7.captcha.support_id%." + } + first { + body "This question is for testing whether you are a human visitor and to prevent automated spam submission. +
+%DOSL7.captcha.image% %DOSL7.captcha.audio% %DOSL7.captcha.change% +
+What code is in the image\? +%DOSL7.captcha.solution% +
+%DOSL7.captcha.submit% +
+
+Your support ID is: %DOSL7.captcha.support_id%." + } + } + heavy-urls { + automatic-detection disabled + protection disabled + } + mobile-detection { + allow-any-android-package false + allow-any-ios-package false + } + stress-based { + behavioral { + mitigation-mode none + } + ip-rate-limiting disabled + url-enable-heavy disabled + url-rate-limiting disabled + } + tps-based { + ip-rate-limiting disabled + mode off + url-enable-heavy disabled + url-rate-limiting disabled + } + } + } + creation-time 2023-05-09:06:11:09 + creation-user admin + description "app #50 sample dos profile" + dos-network { + app50_dos { } + } + http-whitelist none + last-modified-time 2023-05-09:06:11:10 + modify-user admin + protocol-dns { + app50_dos { } + } + protocol-sip { + app50_dos { } + } + threshold-sensitivity high +} +security bot-defense profile /Common/app51_bot { + allow-browser-access enabled + api-access-strict-mitigation enabled + app-service none + blocking-page { + body "Request RejectedThe requested URL was rejected. Please consult with your administrator.

Your support ID is: <%BOTDEFENSE.support_id%>

[Go Back]" + headers "Cache-Control: no-store, must-revalidate, no-cache +Pragma: no-cache +Connection: close" + status-code 200 + type default + } + browser-mitigation-action block + captcha-response { + failure { + body "You have entered an invalid answer for the question. Please, try again. +
+%BOTDEFENSE.captcha.image% %BOTDEFENSE.captcha.audio% %BOTDEFENSE.captcha.change% +
+What code is in the image\? +%BOTDEFENSE.captcha.solution% +
+%BOTDEFENSE.captcha.submit% +
+
+Your support ID is: %BOTDEFENSE.captcha.support_id%." + type default + } + first { + body "This question is for testing whether you are a human visitor and to prevent automated spam submission. +
+%BOTDEFENSE.captcha.image% %BOTDEFENSE.captcha.audio% %BOTDEFENSE.captcha.change% +
+What code is in the image\? +%BOTDEFENSE.captcha.solution% +
+%BOTDEFENSE.captcha.submit% +
+
+Your support ID is: %BOTDEFENSE.captcha.support_id%." + type default + } + } + cross-domain-requests allow-all + description "some example bot profile" + deviceid-mode generate-before-access + dos-attack-strict-mitigation enabled + enforcement-mode blocking + enforcement-readiness-period 9 + grace-period 300 + honeypot-page { + body + headers "Cache-Control: no-store, must-revalidate, no-cache +Pragma: no-cache +Connection: close" + status-code 200 + type default + } + mobile-detection { + allow-android-rooted-device disabled + allow-any-android-package enabled + allow-any-ios-package enabled + allow-emulators disabled + allow-jailbroken-devices disabled + block-debugger-enabled-device enabled + client-side-challenge-mode pass + } + perform-challenge-in-transparent disabled + redirect-to-pool-name /Common/allOptionsPool + signature-staging-upon-update enabled + single-page-application disabled + template strict + whitelist { + apple_touch_1 { + match-order 2 + url /apple-touch-icon*.png + } + favicon_1 { + match-order 1 + url /favicon.ico + } + } +} security dos ipv6-ext-hdr /Common/dos-ipv6-ext-hdr { frame-types { auth dstopt esp frag hbh mobility route } } diff --git a/tests/artifacts/f5_corkscrew_test.conf.log b/tests/artifacts/f5_corkscrew_test.conf.log index ad7bad9..9b07bfd 100644 --- a/tests/artifacts/f5_corkscrew_test.conf.log +++ b/tests/artifacts/f5_corkscrew_test.conf.log @@ -5,41 +5,41 @@ ### Section 2: apps ### Section 3: conversion logs (error/info/debug) ### Section 4: configObjects (not object values yet) -### 2023-04-27T20:22:49.298Z +### 2023-05-24T01:12:48.522Z ################################################ ################################################ ### explosion stats ########## -### uuid: f006ffd1-7c3c-4157-ad64-6698f4b88051 -### dateTime: Thu Apr 27 2023 15:22:49 GMT-0500 (Central Daylight Time) +### uuid: b2035fd0-c391-4d8d-8f17-fda3ee11d32e +### dateTime: Tue May 23 2023 18:12:48 GMT-0700 (Pacific Daylight Time) { - "objectCount": 253, + "objectCount": 258, "objects": { - "virtuals": 8, + "virtuals": 9, "profiles": 6, "policies": 3, - "pools": 8, + "pools": 9, "irules": 5, "monitors": 6, "nodes": 11, - "snatPools": 1, + "snatPools": 2, "apmPolicies": 3, "apmProfiles": 3, - "asmPolicies": 1 + "asmPolicies": 1, + "botProfiles": 1, + "dosProfiles": 3 }, "sourceTmosVersion": "15.1.8.2", - "parseTime": 11.1762, - "appTime": 3.2063, - "fqdnTime": 0.0243, - "packTime": 0.4923 + "parseTime": 13.8033, + "appTime": 1.0539, + "fqdnTime": 0.0287, + "packTime": 0.5267 } ################################################ ################################################ -#### app name: /Common/app1_t80_vs -#### app map: { - "vsDest": "/Common/192.168.1.21:80" -} +#### app name: app1_t80_vs + #### ltm virtual /Common/app1_t80_vs { creation-time 2020-09-17:08:50:22 @@ -62,14 +62,8 @@ ltm virtual /Common/app1_t80_vs { ################################################ ################################################ -#### app name: /Common/app1_t443_vs -#### app map: { - "vsDest": "/Common/192.168.1.21:443", - "pool": [ - "192.168.1.22:80", - "192.168.1.23:80" - ] -} +#### app name: app1_t443_vs + #### ltm virtual /Common/app1_t443_vs { destination /Common/192.168.1.21:443 @@ -109,10 +103,8 @@ ltm node /Common/app1_Node2 { ################################################ ################################################ -#### app name: /Common/app2_t80_vs -#### app map: { - "vsDest": "/Common/192.168.2.21:80" -} +#### app name: app2_t80_vs + #### ltm virtual /Common/app2_t80_vs { creation-time 2020-09-17:08:50:22 @@ -135,13 +127,8 @@ ltm virtual /Common/app2_t80_vs { ################################################ ################################################ -#### app name: /Common/bigiq.benlab.io_t443_vs -#### app map: { - "vsDest": "/Common/10.200.244.15:443", - "pool": [ - "10.200.244.15:443" - ] -} +#### app name: bigiq.benlab.io_t443_vs + #### ltm virtual /Common/bigiq.benlab.io_t443_vs { creation-time 2019-10-01:17:59:21 @@ -169,6 +156,8 @@ ltm virtual /Common/bigiq.benlab.io_t443_vs { translate-port enabled vlans { /Common/vlan255_f5peer + /Common/vlan245 + /Common/vlan230 } vlans-enabled } @@ -204,14 +193,8 @@ ltm policy /Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs { ################################################ ################################################ -#### app name: /Common/app2_t443_vs -#### app map: { - "vsDest": "/Common/192.168.2.21:443", - "pool": [ - "192.168.2.22:80", - "192.168.2.23:80" - ] -} +#### app name: app2_t443_vs + #### ltm virtual /Common/app2_t443_vs { destination /Common/192.168.2.21:443 @@ -251,39 +234,39 @@ ltm node /Common/app2_Node2 { address 192.168.2.23 description app2_Node2 } -ltm monitor http /Common/global_http_monitor { - adaptive disabled - defaults-from /Common/http - interval 5 - ip-dscp 0 - recv "ok 200" - recv-disable none - send "GET /anywebsite.com\r\n" - time-until-up 0 - timeout 16 -} -ltm monitor https /Common/global_https_monitor { - adaptive disabled - defaults-from /Common/https - interval 5 - ip-dscp 0 - recv "201 continue" - recv-disable none - send "GET /any-secure-website.com\r\n" - time-until-up 0 - timeout 16 -} ################################################ ################################################ -#### app name: /Common/app3_t8443_vs -#### app map: { - "vsDest": "/Common/192.168.1.51:8443", - "pool": [ - "192.168.1.52:8443", - "192.168.1.53:8443" - ] +#### app name: persistTest_80_vs + +#### +ltm virtual /Common/persistTest_80_vs { + creation-time 2023-05-09:11:25:01 + description "vs to explore persist configs - both default/fallback are single entries" + destination /Common/10.6.3.4:80 + fallback-persistence /Common/source_addr + ip-protocol tcp + last-modified-time 2023-05-09:11:25:01 + mask 255.255.255.255 + persist { + /Common/cookie { + default yes + } + } + profiles { + /Common/http { } + /Common/tcp { } + } + serverssl-use-sni disabled + source 0.0.0.0/0 + translate-address enabled + translate-port enabled } +################################################ + +################################################ +#### app name: app3_t8443_vs + #### ltm virtual /Common/app3_t8443_vs { destination /Common/192.168.1.51:8443 @@ -342,13 +325,6 @@ ltm node /Common/app3_Node1 { ltm node /Common/app3_Node2 { address 192.168.1.53 } -ltm monitor tcp-half-open /Common/app1_tcp_half_open_quick_monitor { - defaults-from /Common/tcp_half_open - destination *:* - interval 1 - time-until-up 0 - timeout 4 -} ltm profile client-ssl /Common/app3_clientssl { app-service none cert-key-chain { @@ -386,11 +362,7 @@ when SERVERSSL_DATA { # got something from server } } -ltm snatpool /Common/app3_snat_pool { - members { - /Common/192.168.1.51 - } -} +ltm snatpool /Common/app3_snat_pool { undefined } ltm policy /Common/app3_ltm_policy { rules { global_rule_1 { } @@ -425,29 +397,8 @@ ltm persistence source-addr /Common/app3_srcAddr_persist { ################################################ ################################################ -#### app name: /Common/app4_t80_vs -#### app map: { - "vsDest": "/Common/192.168.2.25:80", - "pool": [ - "/Common/api.chucknorris.io,/Common/api.chucknorris.io:443" - ], - "irule": { - "pools": [ - [ - "css_pool" - ], - [ - "jpg.pool", - "member", - "10.10.10.1", - "80" - ], - [ - "js.io_t80_pool" - ] - ] - } -} +#### app name: app4_t80_vs + #### ltm virtual /Common/app4_t80_vs { description "test pool references in irule extration and ltp" @@ -533,9 +484,6 @@ when HTTP_REQUEST { } } } -ltm pool /Common/css_pool { } -ltm pool /Common/jpg.pool { } -ltm pool /Common/js.io_t80_pool { } ltm policy /Common/app4_ltPolicy { controls { forwarding } description "testing for pool extraction function" @@ -615,13 +563,14 @@ ltm policy /Common/app4_ltPolicy { } strategy /Common/first-match } +ltm pool css_pool { } +ltm pool jpg.pool { } +ltm pool js.io_t80_pool { } ################################################ ################################################ -#### app name: /Common/forwarder_net_0.0.0.0 -#### app map: { - "vsDest": "/Common/0.0.0.0:0" -} +#### app name: forwarder_net_0.0.0.0 + #### ltm virtual /Common/forwarder_net_0.0.0.0 { destination /Common/0.0.0.0:0 @@ -647,796 +596,450 @@ ltm profile fastl4 /Common/fastl4_loose { ####################################### ### conversion log #################### -[2023-04-27T20:22:44.883Z] DeBuG: 'regular date log message' -[4/27/2023, 3:22:44 PM] DeBuG: 'toLocalString date log message' -[Thu, 27 Apr 2023 20:22:44 GMT] DeBuG: 'to UTC date log message' -[2023-04-27T20:22:47.057Z] [ERROR]: >v19.0.0.0 tmos detected - this should never happen!!! -[2023-04-27T20:22:47.058Z] [ERROR]: automap -[2023-04-27T20:22:48.027Z] [DEBUG]: [/Common/app1_t443_vs] found snat configuration - type automap -[2023-04-27T20:22:48.027Z] [INFO]: digging vs config for /Common/app2_t80_vs -[2023-04-27T20:22:48.027Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:48.028Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:48.028Z] [DEBUG]: [/Common/app2_t80_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:48.028Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect' ] -[2023-04-27T20:22:48.028Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details -[2023-04-27T20:22:48.028Z] [DEBUG]: [/Common/app2_t80_vs] found the following rules - /Common/_sys_https_redirect -[2023-04-27T20:22:48.028Z] [INFO]: digging vs config for /Common/bigiq.benlab.io_t443_vs -[2023-04-27T20:22:48.028Z] [DEBUG]: digging pool config for /Common/bigiq.benlab.io_t443_pool -[2023-04-27T20:22:48.028Z] [DEBUG]: Pool /Common/bigiq.benlab.io_t443_pool members found: [ '/Common/10.200.244.15' ] -[2023-04-27T20:22:48.028Z] [DEBUG]: pool monitor references found: [ '/Common/https_head_f5' ] -[2023-04-27T20:22:48.028Z] [DEBUG]: pool monitor configs found: [] -[2023-04-27T20:22:48.028Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_pool] references 1 system default monitors, compare previous arrays for details -[2023-04-27T20:22:48.028Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following pool /Common/bigiq.benlab.io_t443_pool -[2023-04-27T20:22:48.028Z] [DEBUG]: profile references found: [ - '/Common/ASM_basic_policy_1', - '/Common/f5-tcp-progressive', - '/Common/http', - '/Common/websecurity' -] -[2023-04-27T20:22:48.028Z] [DEBUG]: Found 4 system default profiles, compare previous arrays for details -[2023-04-27T20:22:48.028Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following profiles - /Common/ASM_basic_policy_1 { } - /Common/f5-tcp-progressive { } - /Common/http { } - /Common/websecurity { } -[2023-04-27T20:22:48.028Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:48.028Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found snat configuration - type automap -[2023-04-27T20:22:48.028Z] [DEBUG]: policy references found: [ '/Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs' ] -[2023-04-27T20:22:48.028Z] [DEBUG]: policy found [/Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs] -[2023-04-27T20:22:48.028Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following policies - /Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs { } -[2023-04-27T20:22:48.029Z] [INFO]: digging vs config for /Common/app2_t443_vs -[2023-04-27T20:22:48.029Z] [DEBUG]: digging pool config for /Common/app2_t80_pool -[2023-04-27T20:22:48.029Z] [DEBUG]: Pool /Common/app2_t80_pool members found: [ '/Common/app2_Node1', '/Common/app2_Node2' ] -[2023-04-27T20:22:48.029Z] [DEBUG]: pool monitor references found: [ '/Common/global_http_monitor', '/Common/global_https_monitor' ] -[2023-04-27T20:22:48.029Z] [DEBUG]: pool monitor configs found: [ - 'ltm monitor http /Common/global_http_monitor {\n' + - ' adaptive disabled\n' + - ' defaults-from /Common/http\n' + - ' interval 5\n' + - ' ip-dscp 0\n' + - ' recv "ok 200"\n' + - ' recv-disable none\n' + - ' send "GET /anywebsite.com\\r\\n"\n' + - ' time-until-up 0\n' + - ' timeout 16\n' + - '}', - 'ltm monitor https /Common/global_https_monitor {\n' + - ' adaptive disabled\n' + - ' defaults-from /Common/https\n' + - ' interval 5\n' + - ' ip-dscp 0\n' + - ' recv "201 continue"\n' + - ' recv-disable none\n' + - ' send "GET /any-secure-website.com\\r\\n"\n' + - ' time-until-up 0\n' + - ' timeout 16\n' + - '}' -] -[2023-04-27T20:22:48.029Z] [DEBUG]: [/Common/app2_t443_vs] found the following pool /Common/app2_t80_pool -[2023-04-27T20:22:48.029Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:48.029Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:48.029Z] [DEBUG]: [/Common/app2_t443_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:48.029Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:48.029Z] [DEBUG]: [/Common/app2_t443_vs] found snat configuration - type automap -[2023-04-27T20:22:48.029Z] [INFO]: digging vs config for /Common/app3_t8443_vs -[2023-04-27T20:22:48.029Z] [DEBUG]: digging pool config for /Common/app3_t8443_pool -[2023-04-27T20:22:48.029Z] [DEBUG]: Pool /Common/app3_t8443_pool members found: [ '/Common/app3_Node1', '/Common/app3_Node2' ] -[2023-04-27T20:22:48.029Z] [DEBUG]: pool monitor references found: [ - '/Common/app1_tcp_half_open_quick_monitor', - '/Common/http_head_f5', - '/Common/http2_head_f5', - '/Common/http', - '/Common/tcp_half_open' -] -[2023-04-27T20:22:48.030Z] [DEBUG]: pool monitor configs found: [ - 'ltm monitor tcp-half-open /Common/app1_tcp_half_open_quick_monitor {\n' + - ' defaults-from /Common/tcp_half_open\n' + - ' destination *:*\n' + - ' interval 1\n' + - ' time-until-up 0\n' + - ' timeout 4\n' + - '}' -] -[2023-04-27T20:22:48.030Z] [DEBUG]: [/Common/app3_t8443_pool] references 4 system default monitors, compare previous arrays for details -[2023-04-27T20:22:48.030Z] [DEBUG]: [/Common/app3_t8443_vs] found the following pool /Common/app3_t8443_pool -[2023-04-27T20:22:48.030Z] [DEBUG]: profile references found: [ - '/Common/app3_clientssl', - '/Common/app3_serverssl', - '/Common/http', - '/Common/tcp' -] -[2023-04-27T20:22:48.030Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:48.030Z] [DEBUG]: [/Common/app3_t8443_vs] found the following profiles - /Common/app3_clientssl { - context clientside - } - /Common/app3_serverssl { - context serverside - } - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:48.030Z] [DEBUG]: rule references found: [ '/Common/app3_rule', '/Common/app3_rule2', '/Common/app3_rule3' ] -[2023-04-27T20:22:48.030Z] [DEBUG]: [/Common/app3_t8443_vs] found the following rules - /Common/app3_rule - /Common/app3_rule2 - /Common/app3_rule3 -[2023-04-27T20:22:48.030Z] [DEBUG]: [/Common/app3_t8443_vs] found snat configuration - pool /Common/app3_snat_pool - type snat -[2023-04-27T20:22:48.030Z] [DEBUG]: policy references found: [ '/Common/app3_ltm_policy' ] -[2023-04-27T20:22:48.030Z] [DEBUG]: policy found [/Common/app3_ltm_policy] -[2023-04-27T20:22:48.031Z] [DEBUG]: [/Common/app3_t8443_vs] found the following policies - /Common/app3_ltm_policy { } -[2023-04-27T20:22:48.031Z] [DEBUG]: [/Common/app3_t8443_vs] found the following persistence - /Common/app3_cookie { - default yes - } -[2023-04-27T20:22:48.031Z] [DEBUG]: [/Common/app3_t8443_vs] found the following persistence /Common/app3_srcAddr_persist -[2023-04-27T20:22:48.031Z] [INFO]: digging vs config for /Common/app4_t80_vs -[2023-04-27T20:22:48.031Z] [DEBUG]: digging pool config for /Common/app4_pool -[2023-04-27T20:22:48.031Z] [DEBUG]: Pool /Common/app4_pool members found: [ '/Common/api.chucknorris.io' ] -[2023-04-27T20:22:48.031Z] [DEBUG]: [/Common/app4_t80_vs] found the following pool /Common/app4_pool -[2023-04-27T20:22:48.031Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:48.031Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:48.031Z] [DEBUG]: [/Common/app4_t80_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:48.031Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect', '/Common/app4_pool_rule' ] -[2023-04-27T20:22:48.031Z] [DEBUG]: digging pool config for /Common/css_pool -[2023-04-27T20:22:48.031Z] [DEBUG]: digging pool config for /Common/jpg.pool -[2023-04-27T20:22:48.031Z] [DEBUG]: digging pool config for /Common/js.io_t80_pool -[2023-04-27T20:22:48.031Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details -[2023-04-27T20:22:48.032Z] [DEBUG]: [/Common/app4_t80_vs] found the following rules - /Common/_sys_https_redirect - /Common/app4_pool_rule -[2023-04-27T20:22:48.032Z] [DEBUG]: policy references found: [ '/Common/app4_ltPolicy' ] -[2023-04-27T20:22:48.032Z] [DEBUG]: policy found [/Common/app4_ltPolicy] -[2023-04-27T20:22:48.032Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/css_pool] -[2023-04-27T20:22:48.032Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/jpg.pool] -[2023-04-27T20:22:48.032Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/js.io_t80_pool] -[2023-04-27T20:22:48.032Z] [DEBUG]: [/Common/app4_t80_vs] found the following policies - /Common/app4_ltPolicy { } -[2023-04-27T20:22:48.032Z] [INFO]: digging vs config for /Common/forwarder_net_0.0.0.0 -[2023-04-27T20:22:48.032Z] [DEBUG]: profile references found: [ '/Common/fastl4_loose' ] -[2023-04-27T20:22:48.032Z] [DEBUG]: [/Common/forwarder_net_0.0.0.0] found the following profiles - /Common/fastl4_loose { } -[2023-04-27T20:22:48.032Z] [INFO]: digging vs config for /foo/defaultsUDP_5555/serviceMain -[2023-04-27T20:22:48.032Z] [DEBUG]: digging pool config for /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1 -[2023-04-27T20:22:48.032Z] [DEBUG]: Pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1 members found: [ '/foo/192.50.2.2' ] -[2023-04-27T20:22:48.032Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found the following pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1 -[2023-04-27T20:22:48.032Z] [DEBUG]: profile references found: [ '/Common/udp' ] -[2023-04-27T20:22:48.032Z] [DEBUG]: Found 1 system default profiles, compare previous arrays for details -[2023-04-27T20:22:48.032Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found the following profiles - /Common/udp { } -[2023-04-27T20:22:48.032Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:48.032Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found snat configuration - type automap -[2023-04-27T20:22:48.032Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found the following persistence - /Common/source_addr { - default yes - } -[2023-04-27T20:22:48.032Z] [INFO]: digging vs config for /hue-infra/hue-up/hue-up.benlab.io_t80_vs -[2023-04-27T20:22:48.032Z] [DEBUG]: digging pool config for /hue-infra/hue-up/hue-up.benlab.io_t80_pool -[2023-04-27T20:22:48.032Z] [DEBUG]: Pool /hue-infra/hue-up/hue-up.benlab.io_t80_pool members found: null -[2023-04-27T20:22:48.032Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found the following pool /hue-infra/hue-up/hue-up.benlab.io_t80_pool -[2023-04-27T20:22:48.032Z] [DEBUG]: profile references found: [ '/Common/f5-tcp-progressive', '/Common/http' ] -[2023-04-27T20:22:48.032Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:48.032Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found the following profiles - /Common/f5-tcp-progressive { } - /Common/http { } -[2023-04-27T20:22:48.032Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:48.032Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found snat configuration - type automap -[2023-04-27T20:22:48.032Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found the following persistence - /Common/cookie { - default yes - } -[2023-04-27T20:22:48.032Z] [INFO]: digging vs config for /hue-infra/hue-up/hue-up.benlab.io_t443_vs -[2023-04-27T20:22:48.032Z] [DEBUG]: digging pool config for /hue-infra/hue-up/hue-up.benlab.io_t443_pool -[2023-04-27T20:22:48.032Z] [DEBUG]: Pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool members found: null -[2023-04-27T20:22:48.032Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found the following pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool -[2023-04-27T20:22:48.033Z] [DEBUG]: profile references found: [ '/Common/f5-tcp-progressive', '/Common/http' ] -[2023-04-27T20:22:48.033Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:48.033Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found the following profiles - /Common/f5-tcp-progressive { } - /Common/http { } -[2023-04-27T20:22:48.033Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:48.033Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found snat configuration - type automap -[2023-04-27T20:22:48.033Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found the following persistence - /Common/cookie { - default yes - } -[2023-04-27T20:22:48.034Z] [INFO]: digging DO classes for base config info -[2023-04-27T20:22:48.034Z] [DEBUG]: no path "cli global-settings" in object -[2023-04-27T20:22:48.034Z] [DEBUG]: no path "sys db" in object -[2023-04-27T20:22:48.034Z] [DEBUG]: no path "net trunk" in object -[2023-04-27T20:22:48.034Z] [DEBUG]: no path "net self" in object -[2023-04-27T20:22:48.034Z] [DEBUG]: no path "net route" in object -[2023-04-27T20:22:48.034Z] [DEBUG]: no path "net routing access-list" in object -[2023-04-27T20:22:48.034Z] [DEBUG]: no path "net routing as-path" in object -[2023-04-27T20:22:48.034Z] [DEBUG]: no path "net routing prefix-list" in object -[2023-04-27T20:22:48.034Z] [DEBUG]: no path "net routing route-map" in object -[2023-04-27T20:22:48.034Z] [DEBUG]: no path "net routing bgp" in object -[2023-04-27T20:22:48.034Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object -[2023-04-27T20:22:48.034Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object -[2023-04-27T20:22:48.034Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object -[2023-04-27T20:22:48.034Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object -[2023-04-27T20:22:48.034Z] [DEBUG]: no path "cm device-group" in object -[2023-04-27T20:22:48.034Z] [DEBUG]: no path "cm traffic-group" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "cm traffic-group" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "sys syslog" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "auth tacacs" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "auth remote-role role-info" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "auth ldap" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "sys snmp traps" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "sys snmp users" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "sys snmp communities" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "net dag-globals" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "ltm global-settings traffic-control" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "sys sshd" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "net tunnels vxlan" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "sys disk directory" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "gtm monitor http" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "gtm monitor https" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "gtm monitor gateway-icmp" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "gtm monitor tcp" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "gtm monitor udp" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "gtm prober-pool" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "security firewall policy" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "security firewall address-list" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "security firewall management-ip-rules" in object -[2023-04-27T20:22:48.567Z] [DEBUG]: detected file: [/home/ted/f5-corkscrew/tests/artifacts/f5_corkscrew_test.qkview], size: [2580499] -[2023-04-27T20:22:48.569Z] [INFO]: config/profile_base.conf: default profile base file, stashing for later -[2023-04-27T20:22:48.569Z] [INFO]: config/low_profile_base.conf: default profile base file, stashing for later -[2023-04-27T20:22:48.570Z] [INFO]: Recieved .conf file of version: 15.1.8.2 -[2023-04-27T20:22:48.841Z] [INFO]: digging vs config for /Common/app1_t80_vs -[2023-04-27T20:22:48.842Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:48.842Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:48.842Z] [DEBUG]: [/Common/app1_t80_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:48.842Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect' ] -[2023-04-27T20:22:48.842Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details -[2023-04-27T20:22:48.842Z] [DEBUG]: [/Common/app1_t80_vs] found the following rules - /Common/_sys_https_redirect -[2023-04-27T20:22:48.842Z] [INFO]: digging vs config for /Common/app1_t443_vs -[2023-04-27T20:22:48.842Z] [DEBUG]: digging pool config for /Common/app1_t80_pool -[2023-04-27T20:22:48.843Z] [DEBUG]: Pool /Common/app1_t80_pool members found: [ '/Common/app1_Node1', '/Common/app1_Node2' ] -[2023-04-27T20:22:48.843Z] [DEBUG]: pool monitor references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:48.843Z] [DEBUG]: pool monitor configs found: [] -[2023-04-27T20:22:48.843Z] [DEBUG]: [/Common/app1_t80_pool] references 2 system default monitors, compare previous arrays for details -[2023-04-27T20:22:48.843Z] [DEBUG]: [/Common/app1_t443_vs] found the following pool /Common/app1_t80_pool -[2023-04-27T20:22:48.843Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:48.843Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:48.843Z] [DEBUG]: [/Common/app1_t443_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:48.843Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:48.843Z] [DEBUG]: [/Common/app1_t443_vs] found snat configuration - type automap -[2023-04-27T20:22:48.843Z] [INFO]: digging vs config for /Common/app2_t80_vs -[2023-04-27T20:22:48.843Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:48.843Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:48.843Z] [DEBUG]: [/Common/app2_t80_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:48.843Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect' ] -[2023-04-27T20:22:48.843Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details -[2023-04-27T20:22:48.843Z] [DEBUG]: [/Common/app2_t80_vs] found the following rules - /Common/_sys_https_redirect -[2023-04-27T20:22:48.843Z] [INFO]: digging vs config for /Common/bigiq.benlab.io_t443_vs -[2023-04-27T20:22:48.843Z] [DEBUG]: digging pool config for /Common/bigiq.benlab.io_t443_pool -[2023-04-27T20:22:48.843Z] [DEBUG]: Pool /Common/bigiq.benlab.io_t443_pool members found: [ '/Common/10.200.244.15' ] -[2023-04-27T20:22:48.843Z] [DEBUG]: pool monitor references found: [ '/Common/https_head_f5' ] -[2023-04-27T20:22:48.843Z] [DEBUG]: pool monitor configs found: [] -[2023-04-27T20:22:48.843Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_pool] references 1 system default monitors, compare previous arrays for details -[2023-04-27T20:22:48.843Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following pool /Common/bigiq.benlab.io_t443_pool -[2023-04-27T20:22:48.843Z] [DEBUG]: profile references found: [ - '/Common/ASM_basic_policy_1', - '/Common/f5-tcp-progressive', - '/Common/http', - '/Common/websecurity' -] -[2023-04-27T20:22:48.844Z] [DEBUG]: Found 4 system default profiles, compare previous arrays for details -[2023-04-27T20:22:48.844Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following profiles - /Common/ASM_basic_policy_1 { } - /Common/f5-tcp-progressive { } - /Common/http { } - /Common/websecurity { } -[2023-04-27T20:22:48.844Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:48.844Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found snat configuration - type automap -[2023-04-27T20:22:48.844Z] [DEBUG]: policy references found: [ '/Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs' ] -[2023-04-27T20:22:48.844Z] [DEBUG]: policy found [/Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs] -[2023-04-27T20:22:48.844Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following policies - /Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs { } -[2023-04-27T20:22:48.845Z] [INFO]: digging vs config for /Common/app2_t443_vs -[2023-04-27T20:22:48.845Z] [DEBUG]: digging pool config for /Common/app2_t80_pool -[2023-04-27T20:22:48.845Z] [DEBUG]: Pool /Common/app2_t80_pool members found: [ '/Common/app2_Node1', '/Common/app2_Node2' ] -[2023-04-27T20:22:48.845Z] [DEBUG]: pool monitor references found: [ '/Common/global_http_monitor', '/Common/global_https_monitor' ] -[2023-04-27T20:22:48.845Z] [DEBUG]: pool monitor configs found: [ - 'ltm monitor http /Common/global_http_monitor {\n' + - ' adaptive disabled\n' + - ' defaults-from /Common/http\n' + - ' interval 5\n' + - ' ip-dscp 0\n' + - ' recv "ok 200"\n' + - ' recv-disable none\n' + - ' send "GET /anywebsite.com\\r\\n"\n' + - ' time-until-up 0\n' + - ' timeout 16\n' + - '}', - 'ltm monitor https /Common/global_https_monitor {\n' + - ' adaptive disabled\n' + - ' defaults-from /Common/https\n' + - ' interval 5\n' + - ' ip-dscp 0\n' + - ' recv "201 continue"\n' + - ' recv-disable none\n' + - ' send "GET /any-secure-website.com\\r\\n"\n' + - ' time-until-up 0\n' + - ' timeout 16\n' + - '}' -] -[2023-04-27T20:22:48.845Z] [DEBUG]: [/Common/app2_t443_vs] found the following pool /Common/app2_t80_pool -[2023-04-27T20:22:48.845Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:48.845Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:48.845Z] [DEBUG]: [/Common/app2_t443_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:48.845Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:48.845Z] [DEBUG]: [/Common/app2_t443_vs] found snat configuration - type automap -[2023-04-27T20:22:48.845Z] [INFO]: digging vs config for /Common/app3_t8443_vs -[2023-04-27T20:22:48.845Z] [DEBUG]: digging pool config for /Common/app3_t8443_pool -[2023-04-27T20:22:48.845Z] [DEBUG]: Pool /Common/app3_t8443_pool members found: [ '/Common/app3_Node1', '/Common/app3_Node2' ] -[2023-04-27T20:22:48.845Z] [DEBUG]: pool monitor references found: [ - '/Common/app1_tcp_half_open_quick_monitor', - '/Common/http_head_f5', - '/Common/http2_head_f5', - '/Common/http', - '/Common/tcp_half_open' -] -[2023-04-27T20:22:48.845Z] [DEBUG]: pool monitor configs found: [ - 'ltm monitor tcp-half-open /Common/app1_tcp_half_open_quick_monitor {\n' + - ' defaults-from /Common/tcp_half_open\n' + - ' destination *:*\n' + - ' interval 1\n' + - ' time-until-up 0\n' + - ' timeout 4\n' + - '}' -] -[2023-04-27T20:22:48.845Z] [DEBUG]: [/Common/app3_t8443_pool] references 4 system default monitors, compare previous arrays for details -[2023-04-27T20:22:48.845Z] [DEBUG]: [/Common/app3_t8443_vs] found the following pool /Common/app3_t8443_pool -[2023-04-27T20:22:48.845Z] [DEBUG]: profile references found: [ - '/Common/app3_clientssl', - '/Common/app3_serverssl', - '/Common/http', - '/Common/tcp' -] -[2023-04-27T20:22:48.845Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:48.845Z] [DEBUG]: [/Common/app3_t8443_vs] found the following profiles - /Common/app3_clientssl { - context clientside - } - /Common/app3_serverssl { - context serverside - } - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:48.845Z] [DEBUG]: rule references found: [ '/Common/app3_rule', '/Common/app3_rule2', '/Common/app3_rule3' ] -[2023-04-27T20:22:48.846Z] [DEBUG]: [/Common/app3_t8443_vs] found the following rules - /Common/app3_rule - /Common/app3_rule2 - /Common/app3_rule3 -[2023-04-27T20:22:48.846Z] [DEBUG]: [/Common/app3_t8443_vs] found snat configuration - pool /Common/app3_snat_pool - type snat -[2023-04-27T20:22:48.846Z] [DEBUG]: policy references found: [ '/Common/app3_ltm_policy' ] -[2023-04-27T20:22:48.846Z] [DEBUG]: policy found [/Common/app3_ltm_policy] -[2023-04-27T20:22:48.846Z] [DEBUG]: [/Common/app3_t8443_vs] found the following policies - /Common/app3_ltm_policy { } -[2023-04-27T20:22:48.846Z] [DEBUG]: [/Common/app3_t8443_vs] found the following persistence - /Common/app3_cookie { - default yes - } -[2023-04-27T20:22:48.846Z] [DEBUG]: [/Common/app3_t8443_vs] found the following persistence /Common/app3_srcAddr_persist -[2023-04-27T20:22:48.846Z] [INFO]: digging vs config for /Common/app4_t80_vs -[2023-04-27T20:22:48.846Z] [DEBUG]: digging pool config for /Common/app4_pool -[2023-04-27T20:22:48.846Z] [DEBUG]: Pool /Common/app4_pool members found: [ '/Common/api.chucknorris.io' ] -[2023-04-27T20:22:48.846Z] [DEBUG]: [/Common/app4_t80_vs] found the following pool /Common/app4_pool -[2023-04-27T20:22:48.846Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:48.846Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:48.846Z] [DEBUG]: [/Common/app4_t80_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:48.846Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect', '/Common/app4_pool_rule' ] -[2023-04-27T20:22:48.846Z] [DEBUG]: digging pool config for /Common/css_pool -[2023-04-27T20:22:48.846Z] [DEBUG]: digging pool config for /Common/jpg.pool -[2023-04-27T20:22:48.846Z] [DEBUG]: digging pool config for /Common/js.io_t80_pool -[2023-04-27T20:22:48.847Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details -[2023-04-27T20:22:48.847Z] [DEBUG]: [/Common/app4_t80_vs] found the following rules - /Common/_sys_https_redirect - /Common/app4_pool_rule -[2023-04-27T20:22:48.847Z] [DEBUG]: policy references found: [ '/Common/app4_ltPolicy' ] -[2023-04-27T20:22:48.847Z] [DEBUG]: policy found [/Common/app4_ltPolicy] -[2023-04-27T20:22:48.847Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/css_pool] -[2023-04-27T20:22:48.847Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/jpg.pool] -[2023-04-27T20:22:48.847Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/js.io_t80_pool] -[2023-04-27T20:22:48.847Z] [DEBUG]: [/Common/app4_t80_vs] found the following policies - /Common/app4_ltPolicy { } -[2023-04-27T20:22:48.847Z] [INFO]: digging vs config for /Common/forwarder_net_0.0.0.0 -[2023-04-27T20:22:48.847Z] [DEBUG]: profile references found: [ '/Common/fastl4_loose' ] -[2023-04-27T20:22:48.847Z] [DEBUG]: [/Common/forwarder_net_0.0.0.0] found the following profiles - /Common/fastl4_loose { } -[2023-04-27T20:22:48.847Z] [INFO]: digging vs config for /foo/defaultsUDP_5555/serviceMain -[2023-04-27T20:22:48.847Z] [DEBUG]: digging pool config for /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1 -[2023-04-27T20:22:48.847Z] [DEBUG]: Pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1 members found: [ '/foo/192.50.2.2' ] -[2023-04-27T20:22:48.847Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found the following pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1 -[2023-04-27T20:22:48.847Z] [DEBUG]: profile references found: [ '/Common/udp' ] -[2023-04-27T20:22:48.847Z] [DEBUG]: Found 1 system default profiles, compare previous arrays for details -[2023-04-27T20:22:48.847Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found the following profiles - /Common/udp { } -[2023-04-27T20:22:48.847Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:48.847Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found snat configuration - type automap -[2023-04-27T20:22:48.847Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found the following persistence - /Common/source_addr { - default yes - } -[2023-04-27T20:22:48.847Z] [INFO]: digging vs config for /hue-infra/hue-up/hue-up.benlab.io_t80_vs -[2023-04-27T20:22:48.847Z] [DEBUG]: digging pool config for /hue-infra/hue-up/hue-up.benlab.io_t80_pool -[2023-04-27T20:22:48.847Z] [DEBUG]: Pool /hue-infra/hue-up/hue-up.benlab.io_t80_pool members found: null -[2023-04-27T20:22:48.847Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found the following pool /hue-infra/hue-up/hue-up.benlab.io_t80_pool -[2023-04-27T20:22:48.847Z] [DEBUG]: profile references found: [ '/Common/f5-tcp-progressive', '/Common/http' ] -[2023-04-27T20:22:48.847Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:48.847Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found the following profiles - /Common/f5-tcp-progressive { } - /Common/http { } -[2023-04-27T20:22:48.847Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:48.847Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found snat configuration - type automap -[2023-04-27T20:22:48.847Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found the following persistence - /Common/cookie { - default yes - } -[2023-04-27T20:22:48.847Z] [INFO]: digging vs config for /hue-infra/hue-up/hue-up.benlab.io_t443_vs -[2023-04-27T20:22:48.847Z] [DEBUG]: digging pool config for /hue-infra/hue-up/hue-up.benlab.io_t443_pool -[2023-04-27T20:22:48.847Z] [DEBUG]: Pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool members found: null -[2023-04-27T20:22:48.847Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found the following pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool -[2023-04-27T20:22:48.847Z] [DEBUG]: profile references found: [ '/Common/f5-tcp-progressive', '/Common/http' ] -[2023-04-27T20:22:48.847Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:48.847Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found the following profiles - /Common/f5-tcp-progressive { } - /Common/http { } -[2023-04-27T20:22:48.847Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:48.847Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found snat configuration - type automap -[2023-04-27T20:22:48.847Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found the following persistence - /Common/cookie { - default yes - } -[2023-04-27T20:22:48.848Z] [INFO]: digging DO classes for base config info -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "cli global-settings" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "sys db" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "net trunk" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "net self" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "net route" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "net routing access-list" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "net routing as-path" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "net routing prefix-list" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "net routing route-map" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "net routing bgp" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "cm device-group" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "cm traffic-group" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "cm traffic-group" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "sys syslog" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "auth tacacs" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "auth remote-role role-info" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "auth ldap" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "sys snmp traps" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "sys snmp users" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "sys snmp communities" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "net dag-globals" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "ltm global-settings traffic-control" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "sys sshd" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "net tunnels vxlan" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "sys disk directory" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "gtm monitor http" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "gtm monitor https" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "gtm monitor gateway-icmp" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "gtm monitor tcp" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "gtm monitor udp" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "gtm prober-pool" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "security firewall policy" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "security firewall address-list" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "security firewall management-ip-rules" in object -[2023-04-27T20:22:49.276Z] [DEBUG]: got .conf file [/home/ted/f5-corkscrew/tests/artifacts/f5_corkscrew_test.conf], size [76020] -[2023-04-27T20:22:49.276Z] [INFO]: Recieved .conf file of version: 15.1.8.2 -[2023-04-27T20:22:49.293Z] [INFO]: digging vs config for /Common/app1_t80_vs -[2023-04-27T20:22:49.294Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:49.294Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:49.294Z] [DEBUG]: [/Common/app1_t80_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:49.294Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect' ] -[2023-04-27T20:22:49.294Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details -[2023-04-27T20:22:49.294Z] [DEBUG]: [/Common/app1_t80_vs] found the following rules - /Common/_sys_https_redirect -[2023-04-27T20:22:49.294Z] [INFO]: digging vs config for /Common/app1_t443_vs -[2023-04-27T20:22:49.294Z] [DEBUG]: digging pool config for /Common/app1_t80_pool -[2023-04-27T20:22:49.294Z] [DEBUG]: Pool /Common/app1_t80_pool members found: [ '/Common/app1_Node1', '/Common/app1_Node2' ] -[2023-04-27T20:22:49.294Z] [DEBUG]: pool monitor references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:49.294Z] [DEBUG]: pool monitor configs found: [] -[2023-04-27T20:22:49.294Z] [DEBUG]: [/Common/app1_t80_pool] references 2 system default monitors, compare previous arrays for details -[2023-04-27T20:22:49.294Z] [DEBUG]: [/Common/app1_t443_vs] found the following pool /Common/app1_t80_pool -[2023-04-27T20:22:49.294Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:49.294Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:49.294Z] [DEBUG]: [/Common/app1_t443_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:49.294Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:49.294Z] [DEBUG]: [/Common/app1_t443_vs] found snat configuration - type automap -[2023-04-27T20:22:49.294Z] [INFO]: digging vs config for /Common/app2_t80_vs -[2023-04-27T20:22:49.294Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:49.294Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:49.294Z] [DEBUG]: [/Common/app2_t80_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:49.294Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect' ] -[2023-04-27T20:22:49.294Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details -[2023-04-27T20:22:49.294Z] [DEBUG]: [/Common/app2_t80_vs] found the following rules - /Common/_sys_https_redirect -[2023-04-27T20:22:49.295Z] [INFO]: digging vs config for /Common/bigiq.benlab.io_t443_vs -[2023-04-27T20:22:49.295Z] [DEBUG]: digging pool config for /Common/bigiq.benlab.io_t443_pool -[2023-04-27T20:22:49.295Z] [DEBUG]: Pool /Common/bigiq.benlab.io_t443_pool members found: [ '/Common/10.200.244.15' ] -[2023-04-27T20:22:49.295Z] [DEBUG]: pool monitor references found: [ '/Common/https_head_f5' ] -[2023-04-27T20:22:49.295Z] [DEBUG]: pool monitor configs found: [] -[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_pool] references 1 system default monitors, compare previous arrays for details -[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following pool /Common/bigiq.benlab.io_t443_pool -[2023-04-27T20:22:49.295Z] [DEBUG]: profile references found: [ - '/Common/ASM_basic_policy_1', - '/Common/f5-tcp-progressive', - '/Common/http', - '/Common/websecurity' -] -[2023-04-27T20:22:49.295Z] [DEBUG]: Found 4 system default profiles, compare previous arrays for details -[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following profiles - /Common/ASM_basic_policy_1 { } - /Common/f5-tcp-progressive { } - /Common/http { } - /Common/websecurity { } -[2023-04-27T20:22:49.295Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found snat configuration - type automap -[2023-04-27T20:22:49.295Z] [DEBUG]: policy references found: [ '/Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs' ] -[2023-04-27T20:22:49.295Z] [DEBUG]: policy found [/Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs] -[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following policies - /Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs { } -[2023-04-27T20:22:49.295Z] [INFO]: digging vs config for /Common/app2_t443_vs -[2023-04-27T20:22:49.295Z] [DEBUG]: digging pool config for /Common/app2_t80_pool -[2023-04-27T20:22:49.295Z] [DEBUG]: Pool /Common/app2_t80_pool members found: [ '/Common/app2_Node1', '/Common/app2_Node2' ] -[2023-04-27T20:22:49.295Z] [DEBUG]: pool monitor references found: [ '/Common/global_http_monitor', '/Common/global_https_monitor' ] -[2023-04-27T20:22:49.295Z] [DEBUG]: pool monitor configs found: [ - 'ltm monitor http /Common/global_http_monitor {\n' + - ' adaptive disabled\n' + - ' defaults-from /Common/http\n' + - ' interval 5\n' + - ' ip-dscp 0\n' + - ' recv "ok 200"\n' + - ' recv-disable none\n' + - ' send "GET /anywebsite.com\\r\\n"\n' + - ' time-until-up 0\n' + - ' timeout 16\n' + - '}', - 'ltm monitor https /Common/global_https_monitor {\n' + - ' adaptive disabled\n' + - ' defaults-from /Common/https\n' + - ' interval 5\n' + - ' ip-dscp 0\n' + - ' recv "201 continue"\n' + - ' recv-disable none\n' + - ' send "GET /any-secure-website.com\\r\\n"\n' + - ' time-until-up 0\n' + - ' timeout 16\n' + - '}' -] -[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/app2_t443_vs] found the following pool /Common/app2_t80_pool -[2023-04-27T20:22:49.295Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:49.295Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/app2_t443_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:49.295Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/app2_t443_vs] found snat configuration - type automap -[2023-04-27T20:22:49.295Z] [INFO]: digging vs config for /Common/app3_t8443_vs -[2023-04-27T20:22:49.295Z] [DEBUG]: digging pool config for /Common/app3_t8443_pool -[2023-04-27T20:22:49.295Z] [DEBUG]: Pool /Common/app3_t8443_pool members found: [ '/Common/app3_Node1', '/Common/app3_Node2' ] -[2023-04-27T20:22:49.295Z] [DEBUG]: pool monitor references found: [ - '/Common/app1_tcp_half_open_quick_monitor', - '/Common/http_head_f5', - '/Common/http2_head_f5', - '/Common/http', - '/Common/tcp_half_open' -] -[2023-04-27T20:22:49.295Z] [DEBUG]: pool monitor configs found: [ - 'ltm monitor tcp-half-open /Common/app1_tcp_half_open_quick_monitor {\n' + - ' defaults-from /Common/tcp_half_open\n' + - ' destination *:*\n' + - ' interval 1\n' + - ' time-until-up 0\n' + - ' timeout 4\n' + - '}' -] -[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/app3_t8443_pool] references 4 system default monitors, compare previous arrays for details -[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/app3_t8443_vs] found the following pool /Common/app3_t8443_pool -[2023-04-27T20:22:49.295Z] [DEBUG]: profile references found: [ - '/Common/app3_clientssl', - '/Common/app3_serverssl', - '/Common/http', - '/Common/tcp' -] -[2023-04-27T20:22:49.295Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/app3_t8443_vs] found the following profiles - /Common/app3_clientssl { - context clientside - } - /Common/app3_serverssl { - context serverside - } - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:49.295Z] [DEBUG]: rule references found: [ '/Common/app3_rule', '/Common/app3_rule2', '/Common/app3_rule3' ] -[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/app3_t8443_vs] found the following rules - /Common/app3_rule - /Common/app3_rule2 - /Common/app3_rule3 -[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/app3_t8443_vs] found snat configuration - pool /Common/app3_snat_pool - type snat -[2023-04-27T20:22:49.296Z] [DEBUG]: policy references found: [ '/Common/app3_ltm_policy' ] -[2023-04-27T20:22:49.296Z] [DEBUG]: policy found [/Common/app3_ltm_policy] -[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/app3_t8443_vs] found the following policies - /Common/app3_ltm_policy { } -[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/app3_t8443_vs] found the following persistence - /Common/app3_cookie { - default yes - } -[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/app3_t8443_vs] found the following persistence /Common/app3_srcAddr_persist -[2023-04-27T20:22:49.296Z] [INFO]: digging vs config for /Common/app4_t80_vs -[2023-04-27T20:22:49.296Z] [DEBUG]: digging pool config for /Common/app4_pool -[2023-04-27T20:22:49.296Z] [DEBUG]: Pool /Common/app4_pool members found: [ '/Common/api.chucknorris.io' ] -[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/app4_t80_vs] found the following pool /Common/app4_pool -[2023-04-27T20:22:49.296Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:49.296Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/app4_t80_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:49.296Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect', '/Common/app4_pool_rule' ] -[2023-04-27T20:22:49.296Z] [DEBUG]: digging pool config for /Common/css_pool -[2023-04-27T20:22:49.296Z] [DEBUG]: digging pool config for /Common/jpg.pool -[2023-04-27T20:22:49.296Z] [DEBUG]: digging pool config for /Common/js.io_t80_pool -[2023-04-27T20:22:49.296Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details -[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/app4_t80_vs] found the following rules - /Common/_sys_https_redirect - /Common/app4_pool_rule -[2023-04-27T20:22:49.296Z] [DEBUG]: policy references found: [ '/Common/app4_ltPolicy' ] -[2023-04-27T20:22:49.296Z] [DEBUG]: policy found [/Common/app4_ltPolicy] -[2023-04-27T20:22:49.296Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/css_pool] -[2023-04-27T20:22:49.296Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/jpg.pool] -[2023-04-27T20:22:49.296Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/js.io_t80_pool] -[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/app4_t80_vs] found the following policies - /Common/app4_ltPolicy { } -[2023-04-27T20:22:49.296Z] [INFO]: digging vs config for /Common/forwarder_net_0.0.0.0 -[2023-04-27T20:22:49.296Z] [DEBUG]: profile references found: [ '/Common/fastl4_loose' ] -[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/forwarder_net_0.0.0.0] found the following profiles - /Common/fastl4_loose { } -[2023-04-27T20:22:49.296Z] [INFO]: digging DO classes for base config info -[2023-04-27T20:22:49.296Z] [DEBUG]: no path "sys global-settings" in object -[2023-04-27T20:22:49.296Z] [DEBUG]: no path "cli global-settings" in object -[2023-04-27T20:22:49.296Z] [DEBUG]: no path "sys db" in object -[2023-04-27T20:22:49.296Z] [DEBUG]: no path "sys management-ip" in object -[2023-04-27T20:22:49.296Z] [DEBUG]: no path "sys provision" in object -[2023-04-27T20:22:49.296Z] [DEBUG]: no path "sys ntp" in object -[2023-04-27T20:22:49.296Z] [DEBUG]: no path "sys dns" in object -[2023-04-27T20:22:49.296Z] [DEBUG]: no path "net trunk" in object -[2023-04-27T20:22:49.296Z] [DEBUG]: no path "net vlan" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "net self" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "net route" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "net routing access-list" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "net routing as-path" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "net routing prefix-list" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "net routing route-map" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "net routing bgp" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "cm device-group" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "cm traffic-group" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "cm traffic-group" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "sys management-route" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "sys syslog" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "auth tacacs" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "net route-domain" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "auth remote-role role-info" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "auth ldap" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "sys snmp" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "sys snmp traps" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "sys snmp" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "sys snmp users" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "sys snmp communities" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "net dag-globals" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "sys httpd" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "ltm global-settings traffic-control" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "sys sshd" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "net tunnels tunnel" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "net tunnels vxlan" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "sys disk directory" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "gtm global-settings general" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "gtm datacenter" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "gtm server" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "gtm monitor http" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "gtm monitor https" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "gtm monitor gateway-icmp" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "gtm monitor tcp" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "gtm monitor udp" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "gtm prober-pool" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "security firewall policy" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "security firewall address-list" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "security firewall port-list" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "security firewall management-ip-rules" in object +[2023-05-24T01:12:41.404Z] DeBuG: 'regular date log message' +[5/23/2023, 6:12:41 PM] DeBuG: 'toLocalString date log message' +[Wed, 24 May 2023 01:12:41 GMT] DeBuG: 'to UTC date log message' +[2023-05-24T01:12:43.861Z] [ERROR]: >v19.0.0.0 tmos detected - this should never happen!!! +[2023-05-24T01:12:43.862Z] [ERROR]: \n%DOSL7.captcha.image% %DOSL7.captcha.audio% %DOSL7.captcha.change%\n
\nWhat code is in the image\\?\n%DOSL7.captcha.solution%\n
\n%DOSL7.captcha.submit%\n
\n
\nYour support ID is: %DOSL7.captcha.support_id%.\"\n }\n first {\n body \"This question is for testing whether you are a human visitor and to prevent automated spam submission.\n
\n%DOSL7.captcha.image% %DOSL7.captcha.audio% %DOSL7.captcha.change%\n
\nWhat code is in the image\\?\n%DOSL7.captcha.solution%\n
\n%DOSL7.captcha.submit%\n
\n
\nYour support ID is: %DOSL7.captcha.support_id%.\"\n }\n }\n heavy-urls {\n automatic-detection disabled\n protection disabled\n }\n mobile-detection {\n allow-any-android-package false\n allow-any-ios-package false\n }\n stress-based {\n behavioral {\n mitigation-mode none\n }\n ip-rate-limiting disabled\n url-enable-heavy disabled\n url-rate-limiting disabled\n }\n tps-based {\n ip-rate-limiting disabled\n mode off\n url-enable-heavy disabled\n url-rate-limiting disabled\n }\n }\n }\n creation-time 2023-05-09:06:11:09\n creation-user admin\n description \"app #50 sample dos profile\"\n dos-network {\n app50_dos { }\n }\n http-whitelist none\n last-modified-time 2023-05-09:06:11:10\n modify-user admin\n protocol-dns {\n app50_dos { }\n }\n protocol-sip {\n app50_dos { }\n }\n threshold-sensitivity high\n", + "name": "app50_dos", + "partition": "Common", + "application": { + "app50_dos": { + "bot-defense": "\n browser-legit-captcha disabled\n browser-legit-enabled disabled\n ", + "captcha-response": "\n failure {\n body \"You have entered an invalid answer for the question. Please, try again.\n
\n%DOSL7.captcha.image% %DOSL7.captcha.audio% %DOSL7.captcha.change%\n
\nWhat code is in the image\\?\n%DOSL7.captcha.solution%\n
\n%DOSL7.captcha.submit%\n
\n
\nYour support ID is: %DOSL7.captcha.support_id%.\"\n }\n first {\n body \"This question is for testing whether you are a human visitor and to prevent automated spam submission.\n
\n%DOSL7.captcha.image% %DOSL7.captcha.audio% %DOSL7.captcha.change%\n
\nWhat code is in the image\\?\n%DOSL7.captcha.solution%\n
\n%DOSL7.captcha.submit%\n
\n
\nYour support ID is: %DOSL7.captcha.support_id%.\"\n }\n ", + "heavy-urls": "\n automatic-detection disabled\n protection disabled\n ", + "mobile-detection": "\n allow-any-android-package false\n allow-any-ios-package false\n ", + "stress-based": "\n behavioral {\n mitigation-mode none\n }\n ip-rate-limiting disabled\n url-enable-heavy disabled\n url-rate-limiting disabled\n ", + "tps-based": "\n ip-rate-limiting disabled\n mode off\n url-enable-heavy disabled\n url-rate-limiting disabled\n " + } + }, + "dos-network": { + "app50_dos": {} + }, + "protocol-dns": { + "app50_dos": {} + }, + "protocol-sip": { + "app50_dos": {} + }, + "app-service": "none", + "creation-time": "2023-05-09:06:11:09", + "creation-user": "admin", + "description": "app #50 sample dos profile", + "http-whitelist": "none", + "last-modified-time": "2023-05-09:06:11:10", + "modify-user": "admin", + "threshold-sensitivity": "high" + } + }, "ipv6-ext-hdr": { "/Common/dos-ipv6-ext-hdr": "\n frame-types { auth dstopt esp frag hbh mobility route }\n" }, @@ -1800,6 +2015,68 @@ ltm profile fastl4 /Common/fastl4_loose { "/Common/dos-udp-portlist": "\n list-type exclude-listed-ports\n" } }, + "bot-defense": { + "profile": { + "/Common/app51_bot": { + "line": "\n allow-browser-access enabled\n api-access-strict-mitigation enabled\n app-service none\n blocking-page {\n body \"Request RejectedThe requested URL was rejected. Please consult with your administrator.

Your support ID is: <%BOTDEFENSE.support_id%>

[Go Back]\"\n headers \"Cache-Control: no-store, must-revalidate, no-cache\nPragma: no-cache\nConnection: close\"\n status-code 200\n type default\n }\n browser-mitigation-action block\n captcha-response {\n failure {\n body \"You have entered an invalid answer for the question. Please, try again.\n
\n%BOTDEFENSE.captcha.image% %BOTDEFENSE.captcha.audio% %BOTDEFENSE.captcha.change%\n
\nWhat code is in the image\\?\n%BOTDEFENSE.captcha.solution%\n
\n%BOTDEFENSE.captcha.submit%\n
\n
\nYour support ID is: %BOTDEFENSE.captcha.support_id%.\"\n type default\n }\n first {\n body \"This question is for testing whether you are a human visitor and to prevent automated spam submission.\n
\n%BOTDEFENSE.captcha.image% %BOTDEFENSE.captcha.audio% %BOTDEFENSE.captcha.change%\n
\nWhat code is in the image\\?\n%BOTDEFENSE.captcha.solution%\n
\n%BOTDEFENSE.captcha.submit%\n
\n
\nYour support ID is: %BOTDEFENSE.captcha.support_id%.\"\n type default\n }\n }\n cross-domain-requests allow-all\n description \"some example bot profile\"\n deviceid-mode generate-before-access\n dos-attack-strict-mitigation enabled\n enforcement-mode blocking\n enforcement-readiness-period 9\n grace-period 300\n honeypot-page {\n body \n headers \"Cache-Control: no-store, must-revalidate, no-cache\nPragma: no-cache\nConnection: close\"\n status-code 200\n type default\n }\n mobile-detection {\n allow-android-rooted-device disabled\n allow-any-android-package enabled\n allow-any-ios-package enabled\n allow-emulators disabled\n allow-jailbroken-devices disabled\n block-debugger-enabled-device enabled\n client-side-challenge-mode pass\n }\n perform-challenge-in-transparent disabled\n redirect-to-pool-name /Common/allOptionsPool\n signature-staging-upon-update enabled\n single-page-application disabled\n template strict\n whitelist {\n apple_touch_1 {\n match-order 2\n url /apple-touch-icon*.png\n }\n favicon_1 {\n match-order 1\n url /favicon.ico\n }\n }\n", + "name": "app51_bot", + "partition": "Common", + "blocking-page": { + "headers": [ + "Cache-Control: no-store, must-revalidate, no-cache", + "Pragma: no-cache", + "Connection: close" + ], + "body": "Request RejectedThe requested URL was rejected. Please consult with your administrator.

Your support ID is: <%BOTDEFENSE.support_id%>

[Go Back]", + "status-code": "200", + "type": "default" + }, + "captcha-response": { + "failure": "\n body \"You have entered an invalid answer for the question. Please, try again.\n
\n%BOTDEFENSE.captcha.image% %BOTDEFENSE.captcha.audio% %BOTDEFENSE.captcha.change%\n
\nWhat code is in the image\\?\n%BOTDEFENSE.captcha.solution%\n
\n%BOTDEFENSE.captcha.submit%\n
\n
\nYour support ID is: %BOTDEFENSE.captcha.support_id%.\"\n type default\n ", + "first": "\n body \"This question is for testing whether you are a human visitor and to prevent automated spam submission.\n
\n%BOTDEFENSE.captcha.image% %BOTDEFENSE.captcha.audio% %BOTDEFENSE.captcha.change%\n
\nWhat code is in the image\\?\n%BOTDEFENSE.captcha.solution%\n
\n%BOTDEFENSE.captcha.submit%\n
\n
\nYour support ID is: %BOTDEFENSE.captcha.support_id%.\"\n type default\n " + }, + "honeypot-page": { + "headers": [ + "Cache-Control: no-store, must-revalidate, no-cache", + "Pragma: no-cache", + "Connection: close" + ], + "body": "", + "status-code": "200", + "type": "default" + }, + "mobile-detection": { + "allow-android-rooted-device": "disabled", + "allow-any-android-package": "enabled", + "allow-any-ios-package": "enabled", + "allow-emulators": "disabled", + "allow-jailbroken-devices": "disabled", + "block-debugger-enabled-device": "enabled", + "client-side-challenge-mode": "pass" + }, + "whitelist": { + "apple_touch_1": "\n match-order 2\n url /apple-touch-icon*.png\n ", + "favicon_1": "\n match-order 1\n url /favicon.ico\n " + }, + "allow-browser-access": "enabled", + "api-access-strict-mitigation": "enabled", + "app-service": "none", + "browser-mitigation-action": "block", + "cross-domain-requests": "allow-all", + "description": "some example bot profile", + "deviceid-mode": "generate-before-access", + "dos-attack-strict-mitigation": "enabled", + "enforcement-mode": "blocking", + "enforcement-readiness-period": "9", + "grace-period": "300", + "perform-challenge-in-transparent": "disabled", + "redirect-to-pool-name": "/Common/allOptionsPool", + "signature-staging-upon-update": "enabled", + "single-page-application": "disabled", + "template": "strict" + } + } + }, "firewall": { "config-change-log": "\n log-publisher /Common/local-db-publisher\n" }, diff --git a/tests/artifacts/f5_corkscrew_test.conf.log.json b/tests/artifacts/f5_corkscrew_test.conf.log.json index ed074f3..268398f 100644 --- a/tests/artifacts/f5_corkscrew_test.conf.log.json +++ b/tests/artifacts/f5_corkscrew_test.conf.log.json @@ -1,13 +1,13 @@ { - "id": "f006ffd1-7c3c-4157-ad64-6698f4b88051", - "dateTime": "2023-04-27T20:22:49.297Z", + "id": "b2035fd0-c391-4d8d-8f17-fda3ee11d32e", + "dateTime": "2023-05-24T01:12:48.520Z", "inputFileType": ".conf", "config": { "sources": [ { "fileName": "f5_corkscrew_test.conf", - "size": 76020, - "content": "#TMSH-VERSION: 15.1.8.2\n\nanalytics global-settings { }\napm aaa localdb /Common/localDB { }\napm epsec epsec-package /Common/epsec-1.0.0-892.0.iso {\n cache-path /config/filestore/files_d/Common_d/epsec_package_d/:Common:epsec-1.0.0-892.0.iso_65040_1\n oesis-version 4.3.1158.0\n revision 1\n version 1.0.0-892.0\n}\napm policy access-policy /Common/adminAuth_local_aPolicy {\n default-ending /Common/adminAuth_local_aPolicy_end_deny\n items {\n /Common/adminAuth_local_aPolicy_act_localdb_auth { }\n /Common/adminAuth_local_aPolicy_act_logon_page { }\n /Common/adminAuth_local_aPolicy_end_allow { }\n /Common/adminAuth_local_aPolicy_end_deny { }\n /Common/adminAuth_local_aPolicy_ent { }\n }\n start-item /Common/adminAuth_local_aPolicy_ent\n}\napm policy customization-group /Common/adminAuth_local_aPolicy_act_logon_page_ag {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_act_logon_page_ag_65223_2\n revision 2\n source /Common/modern\n}\napm policy customization-group /Common/adminAuth_local_aPolicy_end_deny_ag {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_end_deny_ag_65134_1\n revision 1\n source /Common/modern\n type logout\n}\napm policy customization-group /Common/adminAuth_local_aPolicy_eps {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_eps_65170_1\n revision 1\n source /Common/modern\n type eps\n}\napm policy customization-group /Common/adminAuth_local_aPolicy_errormap {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_errormap_65167_1\n revision 1\n source /Common/modern\n type errormap\n}\napm policy customization-group /Common/adminAuth_local_aPolicy_framework_installation {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_framework_installation_65173_1\n revision 1\n source /Common/modern\n type framework-installation\n}\napm policy customization-group /Common/adminAuth_local_aPolicy_general_ui {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_general_ui_65124_1\n revision 1\n source /Common/modern\n type general-ui\n}\napm policy customization-group /Common/adminAuth_local_aPolicy_logout {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_logout_65164_1\n revision 1\n source /Common/modern\n type logout\n}\napm policy customization-source /Common/modern { }\napm policy customization-source /Common/standard { }\napm policy policy-item /Common/adminAuth_local_aPolicy_act_localdb_auth {\n agents {\n /Common/adminAuth_local_aPolicy_act_localdb_auth_ag {\n type aaa-localdb\n }\n }\n caption \"LocalDB Auth\"\n color 1\n item-type action\n rules {\n {\n caption Successful\n expression \"expr {[mcget {session.localdb.last.result}] == 1}\"\n next-item /Common/adminAuth_local_aPolicy_end_allow\n }\n {\n caption \"Locked User Out\"\n expression \"expr {[mcget {session.localdb.last.result}] == 2}\"\n next-item /Common/adminAuth_local_aPolicy_end_deny\n }\n {\n caption fallback\n next-item /Common/adminAuth_local_aPolicy_end_deny\n }\n }\n}\napm policy policy-item /Common/adminAuth_local_aPolicy_act_logon_page {\n agents {\n /Common/adminAuth_local_aPolicy_act_logon_page_ag {\n type logon-page\n }\n }\n caption \"Logon Page\"\n color 1\n item-type action\n rules {\n {\n caption fallback\n next-item /Common/adminAuth_local_aPolicy_act_localdb_auth\n }\n }\n}\napm policy policy-item /Common/adminAuth_local_aPolicy_end_allow {\n agents {\n /Common/adminAuth_local_aPolicy_end_allow_ag {\n type ending-allow\n }\n }\n caption Allow\n color 1\n item-type ending\n}\napm policy policy-item /Common/adminAuth_local_aPolicy_end_deny {\n agents {\n /Common/adminAuth_local_aPolicy_end_deny_ag {\n type ending-deny\n }\n }\n caption Deny\n color 2\n item-type ending\n}\napm policy policy-item /Common/adminAuth_local_aPolicy_ent {\n caption Start\n color 1\n rules {\n {\n caption fallback\n next-item /Common/adminAuth_local_aPolicy_act_logon_page\n }\n }\n}\napm policy agent aaa-localdb /Common/adminAuth_local_aPolicy_act_localdb_auth_ag {\n localdb-instance /Common/localDB\n}\napm policy agent ending-allow /Common/adminAuth_local_aPolicy_end_allow_ag { }\napm policy agent ending-deny /Common/adminAuth_local_aPolicy_end_deny_ag {\n customization-group /Common/adminAuth_local_aPolicy_end_deny_ag\n}\napm policy agent logon-page /Common/adminAuth_local_aPolicy_act_logon_page_ag {\n customization-group /Common/adminAuth_local_aPolicy_act_logon_page_ag\n}\napm profile access /Common/adminAuth_local_aPolicy {\n accept-languages { en }\n access-policy /Common/adminAuth_local_aPolicy\n app-service none\n customization-group /Common/adminAuth_local_aPolicy_logout\n customization-key 22ac0aeb0346bcebf5e867279edf9d7b\n default-language en\n domain-cookie none\n eps-group /Common/adminAuth_local_aPolicy_eps\n errormap-group /Common/adminAuth_local_aPolicy_errormap\n exchange-profile none\n framework-installation-group /Common/adminAuth_local_aPolicy_framework_installation\n general-ui-group /Common/adminAuth_local_aPolicy_general_ui\n generation 4\n generation-action noop\n httponly-cookie false\n log-settings {\n /Common/default-log-setting\n }\n logout-uri-include none\n logout-uri-timeout 5\n modified-since-last-policy-sync true\n named-scope none\n persistent-cookie false\n scope profile\n secure-cookie true\n sso-name none\n type system-authentication\n user-identity-method http\n}\napm report default-report {\n report-name sessionReports/sessionSummary\n user /Common/admin\n}\napm aaa localdb /Common/localDB { }\napm epsec epsec-package /Common/epsec-1.0.0-846.0.iso {\n cache-path /config/filestore/files_d/Common_d/epsec_package_d/:Common:epsec-1.0.0-846.0.iso_62973_1\n oesis-version 4.3.716.0\n revision 1\n version 1.0.0-846.0\n}\napm epsec epsec-package /Common/epsec-1.0.0-888.0.iso {\n cache-path /config/filestore/files_d/Common_d/epsec_package_d/:Common:epsec-1.0.0-888.0.iso_66742_1\n oesis-version 4.3.1103.0\n revision 1\n version 1.0.0-888.0\n}\napm epsec epsec-package /Common/epsec-1.0.0-1372.0.iso {\n cache-path /config/filestore/files_d/Common_d/epsec_package_d/:Common:epsec-1.0.0-1372.0.iso_68987_1\n oesis-version 4.3.3348.0\n revision 1\n version 1.0.0-1372.0\n}\napm policy access-policy /Common/radiusServer {\n default-ending /Common/radiusServer_end_deny\n items {\n /Common/radiusServer_act_radius_auth { }\n /Common/radiusServer_end_allow { }\n /Common/radiusServer_end_deny { }\n /Common/radiusServer_ent { }\n }\n start-item /Common/radiusServer_ent\n}\napm policy access-policy /Common/sslvpn_network_access {\n default-ending /Common/sslvpn_network_access_end_deny\n items {\n /Common/sslvpn_network_access_act_full_resource_assign { }\n /Common/sslvpn_network_access_act_localdb_auth { }\n /Common/sslvpn_network_access_act_logon_page { }\n /Common/sslvpn_network_access_end_allow { }\n /Common/sslvpn_network_access_end_deny { }\n /Common/sslvpn_network_access_ent { }\n }\n start-item /Common/sslvpn_network_access_ent\n}\napm policy customization-group /Common/radiusServer_end_deny_ag {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:radiusServer_end_deny_ag_216201_1\n revision 1\n source /Common/standard\n type logout\n}\napm policy customization-group /Common/radiusServer_eps {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:radiusServer_eps_216183_1\n revision 1\n source /Common/standard\n type eps\n}\napm policy customization-group /Common/radiusServer_errormap {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:radiusServer_errormap_216181_1\n revision 1\n source /Common/standard\n type errormap\n}\napm policy customization-group /Common/radiusServer_frameworkinstallation {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:radiusServer_frameworkinstallation_216185_1\n revision 1\n source /Common/standard\n type framework-installation\n}\napm policy customization-group /Common/radiusServer_general_ui {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:radiusServer_general_ui_216187_1\n revision 1\n source /Common/standard\n type general-ui\n}\napm policy customization-group /Common/radiusServer_logout {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:radiusServer_logout_216179_1\n revision 1\n source /Common/standard\n type logout\n}\napm policy customization-group /Common/ssl_webtop_customization {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:ssl_webtop_customization_103262_1\n revision 1\n source /Common/standard\n type webtop\n}\napm policy customization-group /Common/sslvpn_access_list_resource_network_access_customization {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:sslvpn_access_list_resource_network_access_customization_103276_1\n revision 1\n source /Common/standard\n type resource-network-access\n}\napm policy customization-group /Common/sslvpn_connectivity_profile_secure_access_client_customization {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:sslvpn_connectivity_profile_secure_access_client_customization_103292_1\n revision 1\n source /Common/standard\n type secure-access-client\n}\napm policy customization-group /Common/sslvpn_network_access_act_logon_page_ag {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:sslvpn_network_access_act_logon_page_ag_103365_2\n revision 2\n source /Common/standard\n}\napm policy customization-group /Common/sslvpn_network_access_end_deny_ag {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:sslvpn_network_access_end_deny_ag_103326_1\n revision 1\n source /Common/standard\n type logout\n}\napm policy customization-group /Common/sslvpn_network_access_eps {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:sslvpn_network_access_eps_103308_1\n revision 1\n source /Common/standard\n type eps\n}\napm policy customization-group /Common/sslvpn_network_access_errormap {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:sslvpn_network_access_errormap_103306_1\n revision 1\n source /Common/standard\n type errormap\n}\napm policy customization-group /Common/sslvpn_network_access_frameworkinstallation {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:sslvpn_network_access_frameworkinstallation_103310_1\n revision 1\n source /Common/standard\n type framework-installation\n}\napm policy customization-group /Common/sslvpn_network_access_general_ui {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:sslvpn_network_access_general_ui_103312_1\n revision 1\n source /Common/standard\n type general-ui\n}\napm policy customization-group /Common/sslvpn_network_access_logout {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:sslvpn_network_access_logout_103304_1\n revision 1\n source /Common/standard\n type logout\n}\napm policy customization-source /Common/modern { }\napm policy customization-source /Common/standard { }\napm policy policy-item /Common/radiusServer_act_radius_auth {\n agents {\n /Common/radiusServer_act_radius_auth_ag {\n type aaa-radius\n }\n }\n caption \"RADIUS Auth\"\n color 1\n item-type action\n rules {\n {\n caption Successful\n expression \"expr {[mcget {session.radius.last.result}] == 1}\"\n next-item /Common/radiusServer_end_deny\n }\n {\n caption fallback\n next-item /Common/radiusServer_end_deny\n }\n }\n}\napm policy policy-item /Common/radiusServer_end_allow {\n agents {\n /Common/radiusServer_end_allow_ag {\n type ending-allow\n }\n }\n caption Allow\n color 1\n item-type ending\n}\napm policy policy-item /Common/radiusServer_end_deny {\n agents {\n /Common/radiusServer_end_deny_ag {\n type ending-deny\n }\n }\n caption Deny\n color 2\n item-type ending\n}\napm policy policy-item /Common/radiusServer_ent {\n caption Start\n color 1\n rules {\n {\n caption fallback\n next-item /Common/radiusServer_act_radius_auth\n }\n }\n}\napm policy policy-item /Common/sslvpn_network_access_act_full_resource_assign {\n agents {\n /Common/sslvpn_network_access_act_full_resource_assign_ag {\n type resource-assign\n }\n }\n caption \"Advanced Resource Assign\"\n color 1\n item-type action\n rules {\n {\n caption fallback\n next-item /Common/sslvpn_network_access_end_allow\n }\n }\n}\napm policy policy-item /Common/sslvpn_network_access_act_localdb_auth {\n agents {\n /Common/sslvpn_network_access_act_localdb_auth_ag {\n type aaa-localdb\n }\n }\n caption \"LocalDB Auth\"\n color 1\n item-type action\n rules {\n {\n caption Successful\n expression \"expr {[mcget {session.localdb.last.result}] == 1}\"\n next-item /Common/sslvpn_network_access_act_full_resource_assign\n }\n {\n caption \"Locked User Out\"\n expression \"expr {[mcget {session.localdb.last.result}] == 2}\"\n next-item /Common/sslvpn_network_access_end_deny\n }\n {\n caption fallback\n next-item /Common/sslvpn_network_access_end_deny\n }\n }\n}\napm policy policy-item /Common/sslvpn_network_access_act_logon_page {\n agents {\n /Common/sslvpn_network_access_act_logon_page_ag {\n type logon-page\n }\n }\n caption \"Logon Page\"\n color 1\n item-type action\n rules {\n {\n caption fallback\n next-item /Common/sslvpn_network_access_act_localdb_auth\n }\n }\n}\napm policy policy-item /Common/sslvpn_network_access_end_allow {\n agents {\n /Common/sslvpn_network_access_end_allow_ag {\n type ending-allow\n }\n }\n caption Allow\n color 1\n item-type ending\n}\napm policy policy-item /Common/sslvpn_network_access_end_deny {\n agents {\n /Common/sslvpn_network_access_end_deny_ag {\n type ending-deny\n }\n }\n caption Deny\n color 2\n item-type ending\n}\napm policy policy-item /Common/sslvpn_network_access_ent {\n caption Start\n color 1\n rules {\n {\n caption fallback\n next-item /Common/sslvpn_network_access_act_logon_page\n }\n }\n}\napm policy agent aaa-localdb /Common/sslvpn_network_access_act_localdb_auth_ag {\n localdb-instance /Common/localDB\n}\napm policy agent aaa-radius /Common/radiusServer_act_radius_auth_ag {\n max-logon-attempt 5\n show-extended-error true\n}\napm policy agent ending-allow /Common/radiusServer_end_allow_ag { }\napm policy agent ending-allow /Common/sslvpn_network_access_end_allow_ag { }\napm policy agent ending-deny /Common/radiusServer_end_deny_ag {\n customization-group /Common/radiusServer_end_deny_ag\n}\napm policy agent ending-deny /Common/sslvpn_network_access_end_deny_ag {\n customization-group /Common/sslvpn_network_access_end_deny_ag\n}\napm policy agent logon-page /Common/sslvpn_network_access_act_logon_page_ag {\n customization-group /Common/sslvpn_network_access_act_logon_page_ag\n}\napm policy agent resource-assign /Common/sslvpn_network_access_act_full_resource_assign_ag {\n rules {\n {\n network-access-resources { /Common/sslvpn_access_list }\n webtop /Common/ssl_webtop\n }\n }\n}\napm profile access /Common/radiusServer {\n accept-languages { en }\n access-policy /Common/radiusServer\n app-service none\n customization-group /Common/radiusServer_logout\n customization-key c649c57de3b753f9764ae640df53f6cb\n default-language en\n domain-cookie none\n eps-group /Common/radiusServer_eps\n errormap-group /Common/radiusServer_errormap\n exchange-profile none\n framework-installation-group /Common/radiusServer_frameworkinstallation\n general-ui-group /Common/radiusServer_general_ui\n generation 1\n generation-action noop\n httponly-cookie false\n log-settings {\n /Common/default-log-setting\n }\n logout-uri-include none\n logout-uri-timeout 5\n modified-since-last-policy-sync true\n oauth-profile none\n persistent-cookie false\n scope profile\n secure-cookie true\n sso-name none\n type all\n user-identity-method http\n}\napm profile access /Common/sslvpn_network_access {\n accept-languages { en }\n access-policy /Common/sslvpn_network_access\n app-service none\n customization-group /Common/sslvpn_network_access_logout\n customization-key c0595c63f1a549ebf25e99e683989536\n default-language en\n domain-cookie none\n eps-group /Common/sslvpn_network_access_eps\n errormap-group /Common/sslvpn_network_access_errormap\n exchange-profile none\n framework-installation-group /Common/sslvpn_network_access_frameworkinstallation\n general-ui-group /Common/sslvpn_network_access_general_ui\n generation 2\n generation-action noop\n httponly-cookie false\n log-settings {\n /Common/default-log-setting\n }\n logout-uri-include none\n logout-uri-timeout 5\n modified-since-last-policy-sync true\n oauth-profile none\n persistent-cookie false\n scope profile\n secure-cookie true\n sso-name none\n type all\n user-identity-method http\n}\napm profile connectivity /Common/sslvpn_connectivity_profile {\n adaptive-compression enabled\n app-service none\n citrix-client-bundle /Common/default-citrix-client-bundle\n client-policy {\n sslvpn_connectivity_profile_clientPolicy { }\n }\n compress-buffer-size 4096\n compress-cpu-saver true\n compress-cpu-saver-high 90\n compress-cpu-saver-low 75\n compress-gzip-level 6\n compress-gzip-memlevel 8192\n compress-gzip-window-size 16384\n compress-ingress false\n compress-preferred-method zlib\n compression enabled\n compression-codecs { deflate lzo bzip2 }\n customization-group /Common/sslvpn_connectivity_profile_secure_access_client_customization\n defaults-from /Common/connectivity\n deflate-compression-level 1\n description none\n fec-name none\n location-specific false\n tunnel-name /Common/sslvpn_connectivity_profile\n}\napm report default-report {\n report-name sessionReports/sessionSummary\n user /Common/admin\n}\napm resource leasepool /Common/sslvpn_lease_pool {\n members {\n 10.10.10.10-10.10.10.20 { }\n }\n}\napm resource network-access /Common/sslvpn_access_list {\n address-space-include-dns-name { 192.168.200.7 192.168.200.8 }\n address-space-include-subnet {\n {\n subnet 10.200.0.0/16\n }\n {\n subnet 192.168.200.0/24\n }\n }\n customization-group /Common/sslvpn_access_list_resource_network_access_customization\n dns-primary 192.168.200.7\n dns-secondary 192.168.200.8\n dns-suffix benlab.io\n leasepool-name /Common/sslvpn_lease_pool\n split-tunneling true\n}\napm resource webtop /Common/ssl_webtop {\n customization-group /Common/ssl_webtop_customization\n webtop-type full\n}\nasm policy /Common/basic_policy_1 {\n active\n blocking-mode enabled\n description 'some description'\n encoding utf-8\n policy-builder enabled\n policy-template POLICY_TEMPLATE_RAPID_DEPLOYMENT\n policy-type security\n parent-policy some-.other_policy1\n}\nasm predefined-policy POLICY_TEMPLATE_ACTIVESYNC_V1_0_V2_0_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_ACTIVESYNC_V1_0_V2_0_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_API_SECURITY { }\nasm predefined-policy POLICY_TEMPLATE_BEHAVIORAL_WAF { }\nasm predefined-policy POLICY_TEMPLATE_COMPREHENSIVE { }\nasm predefined-policy POLICY_TEMPLATE_DRUPAL { }\nasm predefined-policy POLICY_TEMPLATE_DRUPAL_8 { }\nasm predefined-policy POLICY_TEMPLATE_FUNDAMENTAL { }\nasm predefined-policy POLICY_TEMPLATE_JOOMLA { }\nasm predefined-policy POLICY_TEMPLATE_LOTUSDOMINO_6_5_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_LOTUSDOMINO_6_5_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_ORACLE_10G_PORTAL_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_ORACLE_10G_PORTAL_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_ORACLE_APPLICATIONS_11I_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_ORACLE_APPLICATIONS_11I_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2003_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2003_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2003_WITH_ACTIVESYNC_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2003_WITH_ACTIVESYNC_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2007_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2007_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2007_WITH_ACTIVESYNC_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2007_WITH_ACTIVESYNC_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2010_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2010_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2016 { }\nasm predefined-policy POLICY_TEMPLATE_PASSIVE { }\nasm predefined-policy POLICY_TEMPLATE_PEOPLESOFT_PORTAL_9_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_PEOPLESOFT_PORTAL_9_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_RAPID_DEPLOYMENT { }\nasm predefined-policy POLICY_TEMPLATE_SAP_NETWEAVER { }\nasm predefined-policy POLICY_TEMPLATE_SAP_NETWEAVER_7_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_SAP_NETWEAVER_7_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_SHAREPOINT { }\nasm predefined-policy POLICY_TEMPLATE_SHAREPOINT_2003_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_SHAREPOINT_2003_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_SHAREPOINT_2007_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_SHAREPOINT_2007_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_SHAREPOINT_2010_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_SHAREPOINT_2010_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_SHAREPOINT_2016 { }\nasm predefined-policy POLICY_TEMPLATE_VULNERABILITY_ASSESSMENT { }\nasm predefined-policy POLICY_TEMPLATE_WORDPRESS { }\nasm predefined-policy POLICY_TEMPLATE_WORDPRESS_4_9 { }\nauth apm-auth /Common/system-auth {\n profile-access /Common/adminAuth_local_aPolicy\n}\nauth radius /Common/system-auth {\n servers {\n /Common/system_auth_name1\n }\n}\nauth radius-server /Common/system_auth_name1 {\n secret $M$mn$9uYx+bTjLD8YSGZAUEfFwHvpSDwZsL25kZxdn5NZmCI=\n server 10.200.244.1\n}\nauth remote-user {\n default-role admin\n remote-console-access tmsh\n}\nauth source {\n fallback true\n}\nilx global-settings {\n debug-port-blacklist { 47019 54321 60000 }\n}\nltm default-node-monitor {\n rule none\n}\nltm node /Common/10.200.244.15 {\n address 10.200.244.15\n description bigiq01\n}\nltm node /Common/10.10.10.1 {\n address 10.10.10.1\n}\nltm node /Common/192.168.200.42 {\n address 192.168.200.42\n}\nltm node /Common/api.chucknorris.io {\n fqdn {\n address-family all\n autopopulate enabled\n name api.chucknorris.io\n }\n}\nltm node /Common/app1_Node1 {\n address 192.168.1.22\n}\nltm node /Common/app1_Node2 {\n address 192.168.1.23\n}\nltm node /Common/app2_Node1 {\n address 192.168.2.22\n description app2_Node1\n}\nltm node /Common/app2_Node2 {\n address 192.168.2.23\n description app2_Node2\n}\nltm node /Common/app3_Node1 {\n address 192.168.1.52\n}\nltm node /Common/app3_Node2 {\n address 192.168.1.53\n}\nltm node /Common/app5_Node5 {\n address 192.168.10.23\n}\nltm policy /Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs {\n controls { asm }\n requires { http }\n rules {\n default {\n actions {\n 1 {\n asm\n enable\n policy /Common/basic_policy_1\n }\n }\n ordinal 1\n }\n }\n strategy /Common/first-match\n}\nltm policy /Common/app3_ltm_policy {\n rules {\n global_rule_1 { }\n }\n strategy /Common/first-match\n}\nltm policy /Common/app4_ltPolicy {\n controls { forwarding }\n description \"testing for pool extraction function\"\n requires { http }\n rules {\n css_pool_rule {\n actions {\n 0 {\n forward\n select\n pool /Common/css_pool\n }\n }\n conditions {\n 0 {\n http-uri\n scheme\n ends-with\n values { .css }\n }\n }\n }\n jpg_pool_rule {\n actions {\n 0 {\n forward\n select\n pool /Common/jpg.pool\n }\n }\n conditions {\n 0 {\n http-uri\n query-string\n ends-with\n values { .jpg }\n }\n }\n ordinal 1\n }\n js_pool_rule {\n actions {\n 0 {\n forward\n select\n pool /Common/js.io_t80_pool\n }\n }\n conditions {\n 0 {\n http-uri\n scheme\n ends-with\n values { .js }\n }\n }\n ordinal 2\n }\n txt_node {\n actions {\n 0 {\n forward\n select\n node 10.10.10.1\n }\n }\n conditions {\n 0 {\n http-uri\n scheme\n ends-with\n values { .txt }\n }\n }\n ordinal 3\n }\n }\n strategy /Common/first-match\n}\nltm pool /Common/bigiq.benlab.io_t443_pool {\n members {\n /Common/10.200.244.15:443 {\n address 10.200.244.15\n }\n }\n monitor /Common/https_head_f5\n}\nltm pool /Common/app1_t80_pool {\n members {\n /Common/app1_Node1:80 {\n address 192.168.1.22\n }\n /Common/app1_Node2:80 {\n address 192.168.1.23\n }\n }\n monitor /Common/http and /Common/tcp\n}\nltm pool /Common/app2_t80_pool {\n load-balancing-mode least-connections-member\n members {\n /Common/app2_Node1:80 {\n address 192.168.2.22\n }\n /Common/app2_Node2:80 {\n address 192.168.2.23\n }\n }\n monitor /Common/global_http_monitor and /Common/global_https_monitor\n}\nltm pool /Common/app3_t8443_pool {\n load-balancing-mode least-connections-member\n members {\n /Common/app3_Node1:8443 {\n address 192.168.1.52\n }\n /Common/app3_Node2:8443 {\n address 192.168.1.53\n }\n }\n monitor /Common/app1_tcp_half_open_quick_monitor and /Common/http_head_f5 and /Common/http2_head_f5 and /Common/http and /Common/tcp_half_open\n}\nltm pool /Common/app4_pool {\n members {\n /Common/api.chucknorris.io:443 {\n fqdn {\n autopopulate enabled\n name api.chucknorris.io\n }\n }\n }\n}\nltm pool /Common/css_pool { }\nltm pool /Common/jpg.pool { }\nltm pool /Common/js.io_t80_pool { }\nltm rule /Common/app3_rule {\n#comment\n\nwhen HTTP_REQUEST {\n # add more here\n}\n}\nltm rule /Common/app3_rule2 {\n#comment\n\nwhen HTTP_REQUEST {\n # ben test 444\n}\n}\nltm rule /Common/app3_rule3 {\n# app3_rule3 header\n\nwhen SERVERSSL_DATA {\n # got something from server\n}\n}\nltm rule /Common/app4_pool_rule {\n### test rule for corkscrew\n\n # \n\nwhen HTTP_REQUEST {\n\n # pool reference by variable declaration\n set html-pool web1Pool\n\n if { [HTTP::path] ends_with \"*.css\" }{\n\n # regular pool refernce\n pool css_pool\n\n } elseif { [HTTP::path] ends_with \"*.jpg\" }{\n\n # pool member refernce\n pool jpg.pool member 10.10.10.1 80\n\n } elseif { [HTTP::path] ends_with \"*.js\" }{\n\n # another pool reference with special characters\n pool js.io_t80_pool \n\n } elseif { [HTTP::path] ends_with \"*.xx\" }{\n\n # pool reference not in tmos config\n ### *** seems the gui won't let you attach an irule to a vs with a pool that doesn't exist\n #pool missing_pool\n\n } elseif { [HTTP::path] ends_with \"*.txt\" }{\n\n # node reference\n node 10.10.10.1 80\n\n } else {\n\n # pool referenced by variable\n pool $html-pool\n\n }\n}\n}\nltm rule /Common/app4_pool_rule2 {\n\n}\nltm snat-translation /Common/192.168.1.51 {\n address 192.168.1.51\n inherited-traffic-group true\n traffic-group /Common/traffic-group-1\n}\nltm snatpool /Common/app3_snat_pool {\n members {\n /Common/192.168.1.51\n }\n}\nltm virtual /Common/app1_t80_vs {\n creation-time 2020-09-17:08:50:22\n destination /Common/192.168.1.21:80\n ip-protocol tcp\n last-modified-time 2020-09-17:08:51:07\n mask 255.255.255.255\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/_sys_https_redirect\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address enabled\n translate-port enabled\n}\nltm virtual /Common/app1_t443_vs {\n destination /Common/192.168.1.21:443\n ip-protocol tcp\n last-modified-time 2020-09-18:10:05:54\n mask 255.255.255.255\n pool /Common/app1_t80_pool\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n}\nltm virtual /Common/app2_t80_vs {\n creation-time 2020-09-17:08:50:22\n destination /Common/192.168.2.21:80\n ip-protocol tcp\n last-modified-time 2020-09-17:08:51:07\n mask 255.255.255.255\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/_sys_https_redirect\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address enabled\n translate-port enabled\n}\nltm virtual /Common/bigiq.benlab.io_t443_vs {\n creation-time 2019-10-01:17:59:21\n description \"not flowing traffic, just used for GTM\"\n destination /Common/10.200.244.15:443\n ip-protocol tcp\n last-modified-time 2019-10-01:18:11:46\n mask 255.255.255.255\n policies {\n /Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs { }\n }\n pool /Common/bigiq.benlab.io_t443_pool\n profiles {\n /Common/ASM_basic_policy_1 { }\n /Common/f5-tcp-progressive { }\n /Common/http { }\n /Common/websecurity { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n vlans {\n /Common/vlan255_f5peer\n }\n vlans-enabled\n}\nltm virtual /Common/app2_t443_vs {\n destination /Common/192.168.2.21:443\n ip-protocol tcp\n last-modified-time 2020-09-18:10:05:47\n mask 255.255.255.255\n pool /Common/app2_t80_pool\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n}\nltm virtual /Common/app3_t8443_vs {\n destination /Common/192.168.1.51:8443\n fallback-persistence /Common/app3_srcAddr_persist\n ip-protocol tcp\n last-modified-time 2020-09-17:12:45:40\n mask 255.255.255.255\n persist {\n /Common/app3_cookie {\n default yes\n }\n }\n policies {\n /Common/app3_ltm_policy { }\n }\n pool /Common/app3_t8443_pool\n profiles {\n /Common/app3_clientssl {\n context clientside\n }\n /Common/app3_serverssl {\n context serverside\n }\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/app3_rule\n /Common/app3_rule2\n /Common/app3_rule3\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n pool /Common/app3_snat_pool\n type snat\n }\n translate-address enabled\n translate-port enabled\n}\nltm virtual /Common/app4_t80_vs {\n description \"test pool references in irule extration and ltp\"\n destination /Common/192.168.2.25:80\n ip-protocol tcp\n last-modified-time 2020-10-07:07:28:35\n mask 255.255.255.255\n policies {\n /Common/app4_ltPolicy { }\n }\n pool /Common/app4_pool\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/_sys_https_redirect\n /Common/app4_pool_rule\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address enabled\n translate-port enabled\n}\nltm virtual /Common/forwarder_net_0.0.0.0 {\n destination /Common/0.0.0.0:0\n ip-forward\n mask any\n profiles {\n /Common/fastl4_loose { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address disabled\n translate-port disabled\n}\nltm virtual-address /Common/0.0.0.0 {\n address any\n arp disabled\n icmp-echo disabled\n mask any\n traffic-group /Common/traffic-group-1\n}\nltm virtual-address /Common/192.168.1.21 {\n address 192.168.1.21\n arp enabled\n mask 255.255.255.255\n traffic-group /Common/traffic-group-1\n}\nltm virtual-address /Common/192.168.1.51 {\n address 192.168.1.51\n arp enabled\n mask 255.255.255.255\n traffic-group /Common/traffic-group-1\n}\nltm virtual-address /Common/192.168.2.21 {\n address 192.168.2.21\n arp enabled\n mask 255.255.255.255\n traffic-group /Common/traffic-group-1\n}\nltm virtual-address /Common/192.168.2.25 {\n address 192.168.2.25\n arp enabled\n mask 255.255.255.255\n traffic-group /Common/traffic-group-1\n}\nltm auth radius-server /Common/system_auth_name1 {\n secret $M$mn$9uYx+bTjLD8YSGZAUEfFwHvpSDwZsL25kZxdn5NZmCI=\n server 10.200.244.1\n}\nltm classification auto-update settings {\n auto-update-interval weekly\n enabled no\n}\nltm data-group internal /Common/____appsvcs_declaration-1601897418975 {\n description \"f5 AS3 declaration (see info in record 0)\"\n records {\n 0 {\n data \"date^2020-10-05T11:30:18.975Z|id^1601897415002|tenants^|blocks^1\"\n }\n 1 {\n data eNoNzL0OwyAMBOB38dwgm5TmZ6vatVvUoRsCS0GCEAHtEuXd6/G+O90BLtpaYYb78wEXqG7lZN9casibaK9QoXjwEuiGNE7DlQyiFvzu3jZ+Zc9SVo7sWvixFC5vreQotwfY4lbRJSSuzaZdpho1doQdmoVo7nGmUU2D+cB5/gEMbipT\n }\n }\n type integer\n}\nltm data-group internal /Common/____appsvcs_declaration-1601900242421 {\n description \"f5 AS3 declaration (see info in record 0)\"\n records {\n 0 {\n data \"date^2020-10-05T12:17:22.421Z|id^autogen_6c3dbac3-4624-47e2-8ed7-3932d3c1d9b2|tenants^foo|blocks^1\"\n }\n 1 {\n data eNp1kM1uwjAQhN/F5ySynQAlN1SuSEilPbRCkbEXsOQ/2Q4XlHfvmlYUVa2PM+Odb/dKpBEpkZ6s1s+kIkmewYo3iEl7h2rbcNpQNI7ek/56T+/ACZdRV3AUo8npdb0dZvgeQ6sQjJYil1EVyWCDERnQGFUoXRAvWsJGaPf46+VLHnAihi465lGYlVIRUgIMfBC25M2MNrxhZH9PbH3MpC8IFQneG5z0m23Yos7IVP3nPFAUAeutdzr7eKvV0oZSaMEe4CZdbztA/JuOl/D3kj90036akEArLBFj9idww1y26iBkW3dz3tXdAnj9BGpRt8uWq1YytTxwhBmDwvttvCo3TGBAZn0BNKR3OXqTygIiyjOqO20hZYHEPeGU05rRms52jPds0XPedJy9k2n6BPXOoeQ=\n }\n }\n type integer\n}\nltm data-group internal /Common/____appsvcs_declaration-1601900272772 {\n description \"f5 AS3 declaration (see info in record 0)\"\n records {\n 0 {\n data \"date^2020-10-05T12:17:52.772Z|id^1601900269131|tenants^|blocks^1\"\n }\n 1 {\n data eNoNzDELwyAQBeD/cnMjd4ZE4lbatVvo0E30IILGoLZLyH/vje97j3eCT641sHB/PuAGzW+c3Ztri2UXHRUqFI9BAs1IC6KeFxpJ8HsE1/lVAkvZOLHv8cdS+LL3WpLcnuCq30TXmLl1lw+ZatQ4EA44raQtGTtpZYz+wHX9AQqTKk0=\n }\n }\n type integer\n}\nltm data-group internal /Common/____appsvcs_declaration-1602008840967 {\n description \"f5 AS3 declaration (see info in record 0)\"\n records {\n 0 {\n data \"date^2020-10-06T18:27:20.967Z|id^autogen_411122fd-f96d-45e5-9f42-5231b42fb590|tenants^foo|blocks^1\"\n }\n 1 {\n data eNp1UctuwjAQ/Befkyg2CTS5oXJFQirtoRWKjL0BS37Jdrig/HvXtKKoan2cGe/M7F6J0DxG0pP15pkUJIozGP4GISpnEV1UrK5qJEbnSH+9q/dguU2ISxj5pFN83eyGFt+jaO29VoKnPKogCYzXPAESk/TZC8JFCdhyZR9/vXzBA05E0UWFNHG9ljJAjICCD0I7VrV1xSpKDnfFzoVE+hyhIN45jZN+Zxt2iFMyF/8xDykygPbGWZVcuNkqYXw2NGCOcIOutw4Q/k7Hsvi75E+6+TDPmEBJNOFTciewQ0MpZWyU5dgtZdm00Jbd2LCyZQt6bNh4bLt8g8lL3N/WybzDCBpEUhdAQjibgtMxF+BBnBHdKwMxcUzcE1azuqR1WS/39Klnqx5v2i1X72SePwG436Fo\n }\n }\n type integer\n}\nltm data-group internal /Common/__appsvcs_update {\n type string\n}\nltm data-group internal /Common/appsvcs/dataStore {\n records {\n as3_async_records0 {\n data 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\n }\n }\n type string\n}\nltm data-group internal /Common/atgTeem/datastore {\n type string\n}\nltm data-group internal /Common/f5-appsvcs-templates/config {\n records {\n config0 {\n data eNqrVkpJzUktSU0JSc0tyEksSQ1OLSlWsopWKkktLlGKrQUAx+YL5Q==\n }\n }\n type string\n}\nltm data-group internal /Common/f5-appsvcs-templates/dataStore {\n records {\n bigip-fast-templates0 {\n data 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\n }\n examples0 {\n data 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\n }\n goodFastTemplates0 {\n data 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\n }\n }\n type string\n}\nltm monitor dns /Common/dubNameTst1_monitor {\n accept-rcode no-error\n adaptive disabled\n answer-contains query-type\n defaults-from /Common/dns\n interval 5\n qname query.test.com\n qtype a\n recv none\n time-until-up 0\n timeout 16\n}\nltm monitor http /Common/global_http_monitor {\n adaptive disabled\n defaults-from /Common/http\n interval 5\n ip-dscp 0\n recv \"ok 200\"\n recv-disable none\n send \"GET /anywebsite.com\\r\\n\"\n time-until-up 0\n timeout 16\n}\nltm monitor https /Common/global_https_monitor {\n adaptive disabled\n defaults-from /Common/https\n interval 5\n ip-dscp 0\n recv \"201 continue\"\n recv-disable none\n send \"GET /any-secure-website.com\\r\\n\"\n time-until-up 0\n timeout 16\n}\nltm monitor tcp /Common/test_tcp_monitor {\n adaptive disabled\n defaults-from /Common/tcp\n interval 5\n ip-dscp 0\n recv \"receive a tcp string\"\n recv-disable none\n send \"send a tcp string\"\n time-until-up 0\n timeout 16\n}\nltm monitor tcp-half-open /Common/app1_tcp_half_open_quick_monitor {\n defaults-from /Common/tcp_half_open\n destination *:*\n interval 1\n time-until-up 0\n timeout 4\n}\nltm monitor udp /Common/test_udp_monitor {\n adaptive disabled\n debug no\n defaults-from /Common/udp\n interval 5\n recv recieve-what?\n recv-disable none\n send \"default send string\"\n time-until-up 0\n timeout 16\n}\nltm persistence cookie /Common/app3_cookie {\n always-send disabled\n app-service none\n cookie-encryption disabled\n cookie-name app3CustomeCookie\n defaults-from /Common/cookie\n encrypt-cookie-poolname disabled\n expiration 0\n httponly enabled\n method insert\n override-connection-limit disabled\n secure enabled\n}\nltm persistence source-addr /Common/app3_srcAddr_persist {\n app-service none\n defaults-from /Common/source_addr\n hash-algorithm default\n map-proxies enabled\n mask none\n match-across-pools disabled\n match-across-services disabled\n match-across-virtuals disabled\n override-connection-limit disabled\n timeout 180\n}\nltm profile client-ssl /Common/app2_clientssl {\n app-service none\n cert-key-chain {\n default {\n cert /Common/default.crt\n key /Common/default.key\n }\n }\n defaults-from /Common/clientssl\n inherit-ca-certkeychain true\n inherit-certkeychain true\n}\nltm profile client-ssl /Common/app3_clientssl {\n app-service none\n cert-key-chain {\n default {\n cert /Common/default.crt\n key /Common/default.key\n }\n }\n defaults-from /Common/clientssl\n inherit-ca-certkeychain true\n inherit-certkeychain true\n}\nltm profile client-ssl /Common/test1 {\n app-service none\n cert-key-chain {\n default {\n cert /Common/default.crt\n key /Common/default.key\n }\n }\n defaults-from /Common/clientssl\n inherit-ca-certkeychain true\n inherit-certkeychain true\n}\nltm profile fastl4 /Common/fastl4_loose {\n app-service none\n loose-close enabled\n loose-initialization enabled\n reset-on-timeout disabled\n syn-cookie-enable disabled\n}\nltm profile ftp /Common/global_http_monitor {\n app-service none\n defaults-from /Common/ftp\n}\nltm profile http /Common/dubNameTst1_profile {\n app-service none\n defaults-from /Common/http\n proxy-type reverse\n}\nltm profile http-compression /Common/dubName.Tst1_profile {\n app-service none\n defaults-from /Common/httpcompression\n}\nltm profile server-ssl /Common/app3_serverssl {\n app-service none\n defaults-from /Common/serverssl\n}\nltm profile server-ssl /Common/test2 {\n app-service none\n defaults-from /Common/serverssl\n}\nnet dns-resolver /Common/f5-aws-dns {\n forward-zones {\n amazonaws.com {\n nameservers {\n 8.8.8.8:53 { }\n }\n }\n idservice.net {\n nameservers {\n 8.8.8.8:53 { }\n }\n }\n }\n route-domain /Common/0\n}\nnet ipsec ike-daemon /Common/ikedaemon {\n log-publisher /Common/default-ipsec-log-publisher\n}\npem global-settings analytics { }\npem global-settings gx { }\npem global-settings policy { }\nsecurity dos ipv6-ext-hdr /Common/dos-ipv6-ext-hdr {\n frame-types { auth dstopt esp frag hbh mobility route }\n}\nsecurity dos udp-portlist /Common/dos-udp-portlist {\n list-type exclude-listed-ports\n}\nsecurity firewall config-change-log {\n log-publisher /Common/local-db-publisher\n}\nsecurity protocol-inspection compliance-map /Common/map_10426 {\n insp-id 10426\n key-type int\n value-type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/allowed_list {\n insp-id 10229\n type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/allowed_list {\n insp-id 10430\n type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/allowed_list {\n insp-id 10431\n type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/allowed_list {\n insp-id 10232\n type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/argument_len_max {\n insp-id 10905\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/command_argument_len_max {\n insp-id 10609\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/command_len_max {\n insp-id 10905\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/command_len_max {\n insp-id 10707\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/command_len_max {\n insp-id 10609\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/command_parameter_len_max {\n insp-id 10707\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/disallowed_list {\n insp-id 10229\n type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/disallowed_list {\n insp-id 10430\n type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/disallowed_list {\n insp-id 10431\n type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/disallowed_list {\n insp-id 10232\n type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/error_message_max {\n insp-id 10102\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/file_name_max {\n insp-id 10102\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/file_type_max {\n insp-id 10102\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/header_name_len_max {\n insp-id 11016\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/header_name_len_max {\n insp-id 11223\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/header_value_len_max {\n insp-id 11016\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/header_value_len_max {\n insp-id 11223\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/method_len_max {\n insp-id 11016\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/method_len_max {\n insp-id 11223\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/option_name_max {\n insp-id 10102\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/option_value_max {\n insp-id 10102\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/response_argument_len_max {\n insp-id 10609\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/response_code_len_max {\n insp-id 10609\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/response_parameter_len_max {\n insp-id 10707\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/status_code_len_max {\n insp-id 11016\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/status_code_len_max {\n insp-id 11223\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/status_len_max {\n insp-id 10707\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/status_reason_len_max {\n insp-id 11016\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/status_reason_len_max {\n insp-id 11223\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/tag_len_max {\n insp-id 10905\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/uri_len_max {\n insp-id 11016\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/uri_len_max {\n insp-id 11223\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/version_len_max {\n insp-id 11016\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/version_len_max {\n insp-id 11223\n type int\n}\nsecurity scrubber profile /Common/scrubber-profile-default {\n advertisement-ttl 300\n}\nsys compatibility-level {\n level 0\n}\nsys management-ovsdb {\n bfd-disabled\n bfd-route-domain none\n ca-cert-file none\n cert-file none\n cert-key-file none\n disabled\n flooding-type replicator\n log-level info\n logical-routing-type none\n tunnel-maintenance-mode active\n}\nsys diags ihealth {\n expiration 30\n no-ihealth false\n options none\n password none\n user none\n}\nsys ecm cloud-provider /Common/aws-ec2 {\n description \"The aws-ec2 parameters\"\n property-template {\n account { }\n availability-zone {\n valid-values { a b c d }\n }\n instance-type {\n valid-values { t2.micro t2.small t2.medium m3.medium m3.large m3.xlarge m3.2xlarge c3.large c3.xlarge c3.2xlarge c3.4xlarge c3.8xlarge r3.large r3.xlarge r3.2xlarge r3.4xlarge r3.8xlarge }\n }\n region {\n valid-values { us-east-1 us-west-1 us-west-2 sa-east-1 eu-west-1 eu-central-1 ap-southeast-2 ap-southeast-1 ap-northeast-1 }\n }\n }\n}\nsys ecm cloud-provider /Common/dnet {\n description \"The dnet parameters\"\n}\nsys ecm cloud-provider /Common/vsphere {\n description \"The vsphere parameters\"\n property-template {\n cloud-host-ip { }\n dhcp-network-name { }\n end-point-url { }\n node-name { }\n }\n}\nsys file ssl-key /Common/f5_api_com.key {\n cache-path /config/filestore/files_d/Common_d/certificate_key_d/:Common:f5_api_com.key_63136_1\n passphrase $M$dw$gJ3HaeiGt0skpPsA6hli9PsO/8yo5M6FkI1CHOPiN4GgC/h5Tln6v01SC2727mtleKP9Hw/Vnwio8eOiXi4umiV+IidOxMwtZinL8WYrqX0=\n revision 1\n source-path file:///config/ssl/ssl.key/f5_api_com.key\n}\nsys software update {\n auto-check enabled\n auto-phonehome disabled\n frequency weekly\n}\nwom endpoint-discovery { }\n" + "size": 82812, + "content": "#TMSH-VERSION: 15.1.8.2\n\nanalytics global-settings { }\napm aaa localdb /Common/localDB { }\napm epsec epsec-package /Common/epsec-1.0.0-892.0.iso {\n cache-path /config/filestore/files_d/Common_d/epsec_package_d/:Common:epsec-1.0.0-892.0.iso_65040_1\n oesis-version 4.3.1158.0\n revision 1\n version 1.0.0-892.0\n}\napm policy access-policy /Common/adminAuth_local_aPolicy {\n default-ending /Common/adminAuth_local_aPolicy_end_deny\n items {\n /Common/adminAuth_local_aPolicy_act_localdb_auth { }\n /Common/adminAuth_local_aPolicy_act_logon_page { }\n /Common/adminAuth_local_aPolicy_end_allow { }\n /Common/adminAuth_local_aPolicy_end_deny { }\n /Common/adminAuth_local_aPolicy_ent { }\n }\n start-item /Common/adminAuth_local_aPolicy_ent\n}\napm policy customization-group /Common/adminAuth_local_aPolicy_act_logon_page_ag {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_act_logon_page_ag_65223_2\n revision 2\n source /Common/modern\n}\napm policy customization-group /Common/adminAuth_local_aPolicy_end_deny_ag {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_end_deny_ag_65134_1\n revision 1\n source /Common/modern\n type logout\n}\napm policy customization-group /Common/adminAuth_local_aPolicy_eps {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_eps_65170_1\n revision 1\n source /Common/modern\n type eps\n}\napm policy customization-group /Common/adminAuth_local_aPolicy_errormap {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_errormap_65167_1\n revision 1\n source /Common/modern\n type errormap\n}\napm policy customization-group /Common/adminAuth_local_aPolicy_framework_installation {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_framework_installation_65173_1\n revision 1\n source /Common/modern\n type framework-installation\n}\napm policy customization-group /Common/adminAuth_local_aPolicy_general_ui {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_general_ui_65124_1\n revision 1\n source /Common/modern\n type general-ui\n}\napm policy customization-group /Common/adminAuth_local_aPolicy_logout {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_logout_65164_1\n revision 1\n source /Common/modern\n type logout\n}\napm policy customization-source /Common/modern { }\napm policy customization-source /Common/standard { }\napm policy policy-item /Common/adminAuth_local_aPolicy_act_localdb_auth {\n agents {\n /Common/adminAuth_local_aPolicy_act_localdb_auth_ag {\n type aaa-localdb\n }\n }\n caption \"LocalDB Auth\"\n color 1\n item-type action\n rules {\n {\n caption Successful\n expression \"expr {[mcget {session.localdb.last.result}] == 1}\"\n next-item /Common/adminAuth_local_aPolicy_end_allow\n }\n {\n caption \"Locked User Out\"\n expression \"expr {[mcget {session.localdb.last.result}] == 2}\"\n next-item /Common/adminAuth_local_aPolicy_end_deny\n }\n {\n caption fallback\n next-item /Common/adminAuth_local_aPolicy_end_deny\n }\n }\n}\napm policy policy-item /Common/adminAuth_local_aPolicy_act_logon_page {\n agents {\n /Common/adminAuth_local_aPolicy_act_logon_page_ag {\n type logon-page\n }\n }\n caption \"Logon Page\"\n color 1\n item-type action\n rules {\n {\n caption fallback\n next-item /Common/adminAuth_local_aPolicy_act_localdb_auth\n }\n }\n}\napm policy policy-item /Common/adminAuth_local_aPolicy_end_allow {\n agents {\n /Common/adminAuth_local_aPolicy_end_allow_ag {\n type ending-allow\n }\n }\n caption Allow\n color 1\n item-type ending\n}\napm policy policy-item /Common/adminAuth_local_aPolicy_end_deny {\n agents {\n /Common/adminAuth_local_aPolicy_end_deny_ag {\n type ending-deny\n }\n }\n caption Deny\n color 2\n item-type ending\n}\napm policy policy-item /Common/adminAuth_local_aPolicy_ent {\n caption Start\n color 1\n rules {\n {\n caption fallback\n next-item /Common/adminAuth_local_aPolicy_act_logon_page\n }\n }\n}\napm policy agent aaa-localdb /Common/adminAuth_local_aPolicy_act_localdb_auth_ag {\n localdb-instance /Common/localDB\n}\napm policy agent ending-allow /Common/adminAuth_local_aPolicy_end_allow_ag { }\napm policy agent ending-deny /Common/adminAuth_local_aPolicy_end_deny_ag {\n customization-group /Common/adminAuth_local_aPolicy_end_deny_ag\n}\napm policy agent logon-page /Common/adminAuth_local_aPolicy_act_logon_page_ag {\n customization-group /Common/adminAuth_local_aPolicy_act_logon_page_ag\n}\napm profile access /Common/adminAuth_local_aPolicy {\n accept-languages { en }\n access-policy /Common/adminAuth_local_aPolicy\n app-service none\n customization-group /Common/adminAuth_local_aPolicy_logout\n customization-key 22ac0aeb0346bcebf5e867279edf9d7b\n default-language en\n domain-cookie none\n eps-group /Common/adminAuth_local_aPolicy_eps\n errormap-group /Common/adminAuth_local_aPolicy_errormap\n exchange-profile none\n framework-installation-group /Common/adminAuth_local_aPolicy_framework_installation\n general-ui-group /Common/adminAuth_local_aPolicy_general_ui\n generation 4\n generation-action noop\n httponly-cookie false\n log-settings {\n /Common/default-log-setting\n }\n logout-uri-include none\n logout-uri-timeout 5\n modified-since-last-policy-sync true\n named-scope none\n persistent-cookie false\n scope profile\n secure-cookie true\n sso-name none\n type system-authentication\n user-identity-method http\n}\napm report default-report {\n report-name sessionReports/sessionSummary\n user /Common/admin\n}\napm aaa localdb /Common/localDB { }\napm epsec epsec-package /Common/epsec-1.0.0-846.0.iso {\n cache-path /config/filestore/files_d/Common_d/epsec_package_d/:Common:epsec-1.0.0-846.0.iso_62973_1\n oesis-version 4.3.716.0\n revision 1\n version 1.0.0-846.0\n}\napm epsec epsec-package /Common/epsec-1.0.0-888.0.iso {\n cache-path /config/filestore/files_d/Common_d/epsec_package_d/:Common:epsec-1.0.0-888.0.iso_66742_1\n oesis-version 4.3.1103.0\n revision 1\n version 1.0.0-888.0\n}\napm epsec epsec-package /Common/epsec-1.0.0-1372.0.iso {\n cache-path /config/filestore/files_d/Common_d/epsec_package_d/:Common:epsec-1.0.0-1372.0.iso_68987_1\n oesis-version 4.3.3348.0\n revision 1\n version 1.0.0-1372.0\n}\napm policy access-policy /Common/radiusServer {\n default-ending /Common/radiusServer_end_deny\n items {\n /Common/radiusServer_act_radius_auth { }\n /Common/radiusServer_end_allow { }\n /Common/radiusServer_end_deny { }\n /Common/radiusServer_ent { }\n }\n start-item /Common/radiusServer_ent\n}\napm policy access-policy /Common/sslvpn_network_access {\n default-ending /Common/sslvpn_network_access_end_deny\n items {\n /Common/sslvpn_network_access_act_full_resource_assign { }\n /Common/sslvpn_network_access_act_localdb_auth { }\n /Common/sslvpn_network_access_act_logon_page { }\n /Common/sslvpn_network_access_end_allow { }\n /Common/sslvpn_network_access_end_deny { }\n /Common/sslvpn_network_access_ent { }\n }\n start-item /Common/sslvpn_network_access_ent\n}\napm policy customization-group /Common/radiusServer_end_deny_ag {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:radiusServer_end_deny_ag_216201_1\n revision 1\n source /Common/standard\n type logout\n}\napm policy customization-group /Common/radiusServer_eps {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:radiusServer_eps_216183_1\n revision 1\n source /Common/standard\n type eps\n}\napm policy customization-group /Common/radiusServer_errormap {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:radiusServer_errormap_216181_1\n revision 1\n source /Common/standard\n type errormap\n}\napm policy customization-group /Common/radiusServer_frameworkinstallation {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:radiusServer_frameworkinstallation_216185_1\n revision 1\n source /Common/standard\n type framework-installation\n}\napm policy customization-group /Common/radiusServer_general_ui {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:radiusServer_general_ui_216187_1\n revision 1\n source /Common/standard\n type general-ui\n}\napm policy customization-group /Common/radiusServer_logout {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:radiusServer_logout_216179_1\n revision 1\n source /Common/standard\n type logout\n}\napm policy customization-group /Common/ssl_webtop_customization {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:ssl_webtop_customization_103262_1\n revision 1\n source /Common/standard\n type webtop\n}\napm policy customization-group /Common/sslvpn_access_list_resource_network_access_customization {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:sslvpn_access_list_resource_network_access_customization_103276_1\n revision 1\n source /Common/standard\n type resource-network-access\n}\napm policy customization-group /Common/sslvpn_connectivity_profile_secure_access_client_customization {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:sslvpn_connectivity_profile_secure_access_client_customization_103292_1\n revision 1\n source /Common/standard\n type secure-access-client\n}\napm policy customization-group /Common/sslvpn_network_access_act_logon_page_ag {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:sslvpn_network_access_act_logon_page_ag_103365_2\n revision 2\n source /Common/standard\n}\napm policy customization-group /Common/sslvpn_network_access_end_deny_ag {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:sslvpn_network_access_end_deny_ag_103326_1\n revision 1\n source /Common/standard\n type logout\n}\napm policy customization-group /Common/sslvpn_network_access_eps {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:sslvpn_network_access_eps_103308_1\n revision 1\n source /Common/standard\n type eps\n}\napm policy customization-group /Common/sslvpn_network_access_errormap {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:sslvpn_network_access_errormap_103306_1\n revision 1\n source /Common/standard\n type errormap\n}\napm policy customization-group /Common/sslvpn_network_access_frameworkinstallation {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:sslvpn_network_access_frameworkinstallation_103310_1\n revision 1\n source /Common/standard\n type framework-installation\n}\napm policy customization-group /Common/sslvpn_network_access_general_ui {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:sslvpn_network_access_general_ui_103312_1\n revision 1\n source /Common/standard\n type general-ui\n}\napm policy customization-group /Common/sslvpn_network_access_logout {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:sslvpn_network_access_logout_103304_1\n revision 1\n source /Common/standard\n type logout\n}\napm policy customization-source /Common/modern { }\napm policy customization-source /Common/standard { }\napm policy policy-item /Common/radiusServer_act_radius_auth {\n agents {\n /Common/radiusServer_act_radius_auth_ag {\n type aaa-radius\n }\n }\n caption \"RADIUS Auth\"\n color 1\n item-type action\n rules {\n {\n caption Successful\n expression \"expr {[mcget {session.radius.last.result}] == 1}\"\n next-item /Common/radiusServer_end_deny\n }\n {\n caption fallback\n next-item /Common/radiusServer_end_deny\n }\n }\n}\napm policy policy-item /Common/radiusServer_end_allow {\n agents {\n /Common/radiusServer_end_allow_ag {\n type ending-allow\n }\n }\n caption Allow\n color 1\n item-type ending\n}\napm policy policy-item /Common/radiusServer_end_deny {\n agents {\n /Common/radiusServer_end_deny_ag {\n type ending-deny\n }\n }\n caption Deny\n color 2\n item-type ending\n}\napm policy policy-item /Common/radiusServer_ent {\n caption Start\n color 1\n rules {\n {\n caption fallback\n next-item /Common/radiusServer_act_radius_auth\n }\n }\n}\napm policy policy-item /Common/sslvpn_network_access_act_full_resource_assign {\n agents {\n /Common/sslvpn_network_access_act_full_resource_assign_ag {\n type resource-assign\n }\n }\n caption \"Advanced Resource Assign\"\n color 1\n item-type action\n rules {\n {\n caption fallback\n next-item /Common/sslvpn_network_access_end_allow\n }\n }\n}\napm policy policy-item /Common/sslvpn_network_access_act_localdb_auth {\n agents {\n /Common/sslvpn_network_access_act_localdb_auth_ag {\n type aaa-localdb\n }\n }\n caption \"LocalDB Auth\"\n color 1\n item-type action\n rules {\n {\n caption Successful\n expression \"expr {[mcget {session.localdb.last.result}] == 1}\"\n next-item /Common/sslvpn_network_access_act_full_resource_assign\n }\n {\n caption \"Locked User Out\"\n expression \"expr {[mcget {session.localdb.last.result}] == 2}\"\n next-item /Common/sslvpn_network_access_end_deny\n }\n {\n caption fallback\n next-item /Common/sslvpn_network_access_end_deny\n }\n }\n}\napm policy policy-item /Common/sslvpn_network_access_act_logon_page {\n agents {\n /Common/sslvpn_network_access_act_logon_page_ag {\n type logon-page\n }\n }\n caption \"Logon Page\"\n color 1\n item-type action\n rules {\n {\n caption fallback\n next-item /Common/sslvpn_network_access_act_localdb_auth\n }\n }\n}\napm policy policy-item /Common/sslvpn_network_access_end_allow {\n agents {\n /Common/sslvpn_network_access_end_allow_ag {\n type ending-allow\n }\n }\n caption Allow\n color 1\n item-type ending\n}\napm policy policy-item /Common/sslvpn_network_access_end_deny {\n agents {\n /Common/sslvpn_network_access_end_deny_ag {\n type ending-deny\n }\n }\n caption Deny\n color 2\n item-type ending\n}\napm policy policy-item /Common/sslvpn_network_access_ent {\n caption Start\n color 1\n rules {\n {\n caption fallback\n next-item /Common/sslvpn_network_access_act_logon_page\n }\n }\n}\napm policy agent aaa-localdb /Common/sslvpn_network_access_act_localdb_auth_ag {\n localdb-instance /Common/localDB\n}\napm policy agent aaa-radius /Common/radiusServer_act_radius_auth_ag {\n max-logon-attempt 5\n show-extended-error true\n}\napm policy agent ending-allow /Common/radiusServer_end_allow_ag { }\napm policy agent ending-allow /Common/sslvpn_network_access_end_allow_ag { }\napm policy agent ending-deny /Common/radiusServer_end_deny_ag {\n customization-group /Common/radiusServer_end_deny_ag\n}\napm policy agent ending-deny /Common/sslvpn_network_access_end_deny_ag {\n customization-group /Common/sslvpn_network_access_end_deny_ag\n}\napm policy agent logon-page /Common/sslvpn_network_access_act_logon_page_ag {\n customization-group /Common/sslvpn_network_access_act_logon_page_ag\n}\napm policy agent resource-assign /Common/sslvpn_network_access_act_full_resource_assign_ag {\n rules {\n {\n network-access-resources { /Common/sslvpn_access_list }\n webtop /Common/ssl_webtop\n }\n }\n}\napm profile access /Common/radiusServer {\n accept-languages { en }\n access-policy /Common/radiusServer\n app-service none\n customization-group /Common/radiusServer_logout\n customization-key c649c57de3b753f9764ae640df53f6cb\n default-language en\n domain-cookie none\n eps-group /Common/radiusServer_eps\n errormap-group /Common/radiusServer_errormap\n exchange-profile none\n framework-installation-group /Common/radiusServer_frameworkinstallation\n general-ui-group /Common/radiusServer_general_ui\n generation 1\n generation-action noop\n httponly-cookie false\n log-settings {\n /Common/default-log-setting\n }\n logout-uri-include none\n logout-uri-timeout 5\n modified-since-last-policy-sync true\n oauth-profile none\n persistent-cookie false\n scope profile\n secure-cookie true\n sso-name none\n type all\n user-identity-method http\n}\napm profile access /Common/sslvpn_network_access {\n accept-languages { en es fr }\n access-policy /Common/sslvpn_network_access\n app-service none\n customization-group /Common/sslvpn_network_access_logout\n customization-key c0595c63f1a549ebf25e99e683989536\n default-language en\n domain-cookie none\n eps-group /Common/sslvpn_network_access_eps\n errormap-group /Common/sslvpn_network_access_errormap\n exchange-profile none\n framework-installation-group /Common/sslvpn_network_access_frameworkinstallation\n general-ui-group /Common/sslvpn_network_access_general_ui\n generation 3\n generation-action noop\n httponly-cookie false\n log-settings {\n /Common/default-log-setting\n /Common/default-sslo-log-setting\n }\n logout-uri-include { /some/logout.html }\n logout-uri-timeout 5\n modified-since-last-policy-sync true\n named-scope none\n oauth-profile none\n persistent-cookie false\n scope profile\n secure-cookie true\n sso-name none\n type all\n user-identity-method http\n}\napm profile connectivity /Common/sslvpn_connectivity_profile {\n adaptive-compression enabled\n app-service none\n citrix-client-bundle /Common/default-citrix-client-bundle\n client-policy {\n sslvpn_connectivity_profile_clientPolicy { }\n }\n compress-buffer-size 4096\n compress-cpu-saver true\n compress-cpu-saver-high 90\n compress-cpu-saver-low 75\n compress-gzip-level 6\n compress-gzip-memlevel 8192\n compress-gzip-window-size 16384\n compress-ingress false\n compress-preferred-method zlib\n compression enabled\n compression-codecs { deflate lzo bzip2 }\n customization-group /Common/sslvpn_connectivity_profile_secure_access_client_customization\n defaults-from /Common/connectivity\n deflate-compression-level 1\n description none\n fec-name none\n location-specific false\n tunnel-name /Common/sslvpn_connectivity_profile\n}\napm report default-report {\n report-name sessionReports/sessionSummary\n user /Common/admin\n}\napm resource leasepool /Common/sslvpn_lease_pool {\n members {\n 10.10.10.10-10.10.10.20 { }\n }\n}\napm resource network-access /Common/sslvpn_access_list {\n address-space-include-dns-name { 192.168.200.7 192.168.200.8 }\n address-space-include-subnet {\n {\n subnet 10.200.0.0/16\n }\n {\n subnet 192.168.200.0/24\n }\n }\n customization-group /Common/sslvpn_access_list_resource_network_access_customization\n dns-primary 192.168.200.7\n dns-secondary 192.168.200.8\n dns-suffix benlab.io\n leasepool-name /Common/sslvpn_lease_pool\n split-tunneling true\n}\napm resource webtop /Common/ssl_webtop {\n customization-group /Common/ssl_webtop_customization\n webtop-type full\n}\nasm policy /Common/basic_policy_1 {\n active\n blocking-mode enabled\n description 'some description'\n encoding utf-8\n policy-builder enabled\n policy-template POLICY_TEMPLATE_RAPID_DEPLOYMENT\n policy-type security\n parent-policy some-.other_policy1\n}\nasm predefined-policy POLICY_TEMPLATE_ACTIVESYNC_V1_0_V2_0_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_ACTIVESYNC_V1_0_V2_0_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_API_SECURITY { }\nasm predefined-policy POLICY_TEMPLATE_BEHAVIORAL_WAF { }\nasm predefined-policy POLICY_TEMPLATE_COMPREHENSIVE { }\nasm predefined-policy POLICY_TEMPLATE_DRUPAL { }\nasm predefined-policy POLICY_TEMPLATE_DRUPAL_8 { }\nasm predefined-policy POLICY_TEMPLATE_FUNDAMENTAL { }\nasm predefined-policy POLICY_TEMPLATE_JOOMLA { }\nasm predefined-policy POLICY_TEMPLATE_LOTUSDOMINO_6_5_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_LOTUSDOMINO_6_5_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_ORACLE_10G_PORTAL_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_ORACLE_10G_PORTAL_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_ORACLE_APPLICATIONS_11I_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_ORACLE_APPLICATIONS_11I_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2003_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2003_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2003_WITH_ACTIVESYNC_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2003_WITH_ACTIVESYNC_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2007_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2007_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2007_WITH_ACTIVESYNC_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2007_WITH_ACTIVESYNC_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2010_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2010_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2016 { }\nasm predefined-policy POLICY_TEMPLATE_PASSIVE { }\nasm predefined-policy POLICY_TEMPLATE_PEOPLESOFT_PORTAL_9_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_PEOPLESOFT_PORTAL_9_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_RAPID_DEPLOYMENT { }\nasm predefined-policy POLICY_TEMPLATE_SAP_NETWEAVER { }\nasm predefined-policy POLICY_TEMPLATE_SAP_NETWEAVER_7_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_SAP_NETWEAVER_7_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_SHAREPOINT { }\nasm predefined-policy POLICY_TEMPLATE_SHAREPOINT_2003_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_SHAREPOINT_2003_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_SHAREPOINT_2007_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_SHAREPOINT_2007_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_SHAREPOINT_2010_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_SHAREPOINT_2010_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_SHAREPOINT_2016 { }\nasm predefined-policy POLICY_TEMPLATE_VULNERABILITY_ASSESSMENT { }\nasm predefined-policy POLICY_TEMPLATE_WORDPRESS { }\nasm predefined-policy POLICY_TEMPLATE_WORDPRESS_4_9 { }\nauth apm-auth /Common/system-auth {\n profile-access /Common/adminAuth_local_aPolicy\n}\nauth radius /Common/system-auth {\n servers {\n /Common/system_auth_name1\n }\n}\nauth radius-server /Common/system_auth_name1 {\n secret $M$mn$9uYx+bTjLD8YSGZAUEfFwHvpSDwZsL25kZxdn5NZmCI=\n server 10.200.244.1\n}\nauth remote-user {\n default-role admin\n remote-console-access tmsh\n}\nauth source {\n fallback true\n}\nilx global-settings {\n debug-port-blacklist { 47019 54321 60000 }\n}\nltm default-node-monitor {\n rule none\n}\nltm node /Common/10.200.244.15 {\n address 10.200.244.15\n description bigiq01\n}\nltm node /Common/10.10.10.1 {\n address 10.10.10.1\n}\nltm node /Common/192.168.200.42 {\n address 192.168.200.42\n}\nltm node /Common/api.chucknorris.io {\n fqdn {\n address-family all\n autopopulate enabled\n name api.chucknorris.io\n }\n}\nltm node /Common/app1_Node1 {\n address 192.168.1.22\n}\nltm node /Common/app1_Node2 {\n address 192.168.1.23\n}\nltm node /Common/app2_Node1 {\n address 192.168.2.22\n description app2_Node1\n}\nltm node /Common/app2_Node2 {\n address 192.168.2.23\n description app2_Node2\n}\nltm node /Common/app3_Node1 {\n address 192.168.1.52\n}\nltm node /Common/app3_Node2 {\n address 192.168.1.53\n}\nltm node /Common/app5_Node5 {\n address 192.168.10.23\n}\nltm policy /Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs {\n controls { asm }\n requires { http }\n rules {\n default {\n actions {\n 1 {\n asm\n enable\n policy /Common/basic_policy_1\n }\n }\n ordinal 1\n }\n }\n strategy /Common/first-match\n}\nltm policy /Common/app3_ltm_policy {\n rules {\n global_rule_1 { }\n }\n strategy /Common/first-match\n}\nltm policy /Common/app4_ltPolicy {\n controls { forwarding }\n description \"testing for pool extraction function\"\n requires { http }\n rules {\n css_pool_rule {\n actions {\n 0 {\n forward\n select\n pool /Common/css_pool\n }\n }\n conditions {\n 0 {\n http-uri\n scheme\n ends-with\n values { .css }\n }\n }\n }\n jpg_pool_rule {\n actions {\n 0 {\n forward\n select\n pool /Common/jpg.pool\n }\n }\n conditions {\n 0 {\n http-uri\n query-string\n ends-with\n values { .jpg }\n }\n }\n ordinal 1\n }\n js_pool_rule {\n actions {\n 0 {\n forward\n select\n pool /Common/js.io_t80_pool\n }\n }\n conditions {\n 0 {\n http-uri\n scheme\n ends-with\n values { .js }\n }\n }\n ordinal 2\n }\n txt_node {\n actions {\n 0 {\n forward\n select\n node 10.10.10.1\n }\n }\n conditions {\n 0 {\n http-uri\n scheme\n ends-with\n values { .txt }\n }\n }\n ordinal 3\n }\n }\n strategy /Common/first-match\n}\nltm pool /Common/bigiq.benlab.io_t443_pool {\n members {\n /Common/10.200.244.15:443 {\n address 10.200.244.15\n }\n }\n monitor /Common/https_head_f5\n}\nltm pool /Common/app1_t80_pool {\n members {\n /Common/app1_Node1:80 {\n address 192.168.1.22\n }\n /Common/app1_Node2:80 {\n address 192.168.1.23\n }\n }\n monitor /Common/http and /Common/tcp\n}\nltm pool /Common/app2_t80_pool {\n load-balancing-mode least-connections-member\n members {\n /Common/app2_Node1:80 {\n address 192.168.2.22\n }\n /Common/app2_Node2:80 {\n address 192.168.2.23\n }\n }\n monitor /Common/global_http_monitor and /Common/global_https_monitor\n}\nltm pool /Common/app3_t8443_pool {\n load-balancing-mode least-connections-member\n members {\n /Common/app3_Node1:8443 {\n address 192.168.1.52\n }\n /Common/app3_Node2:8443 {\n address 192.168.1.53\n }\n }\n monitor /Common/app1_tcp_half_open_quick_monitor and /Common/http_head_f5 and /Common/http2_head_f5 and /Common/http and /Common/tcp_half_open\n}\nltm pool /Common/manyOptions_pool {\n allow-nat no\n allow-snat no\n description \"yabba dappa doo!\"\n ignore-persisted-weight enabled\n ip-tos-to-client mimic\n ip-tos-to-server mimic\n link-qos-to-client 5\n link-qos-to-server 6\n load-balancing-mode observed-member\n members {\n /Common/10.3.110.10:80 {\n address 10.3.110.10\n }\n /Common/10.3.110.10:443 {\n address 10.3.110.10\n }\n /Common/10.3.110.10:8443 {\n address 10.3.110.10\n }\n /Common/dw1.lab.io:8443 {\n fqdn {\n autopopulate enabled\n name dude1.where.io\n }\n }\n /Common/dw2.lab.io:443 {\n description asfd\n monitor /Common/http\n fqdn {\n name dude2.where.io\n }\n }\n }\n monitor min 2 of { /Common/gateway_icmp /Common/http /Common/http2 }\n profiles {\n /Common/nvgre\n }\n queue-depth-limit 66\n queue-time-limit 88\n reselect-tries 7\n service-down-action reset\n slow-ramp-time 300\n}\nltm pool /Common/app4_pool {\n members {\n /Common/api.chucknorris.io:443 {\n fqdn {\n autopopulate enabled\n name api.chucknorris.io\n }\n }\n }\n}\nltm pool /Common/css_pool { }\nltm pool /Common/jpg.pool { }\nltm pool /Common/js.io_t80_pool { }\nltm rule /Common/app3_rule {\n#comment\n\nwhen HTTP_REQUEST {\n # add more here\n}\n}\nltm rule /Common/app3_rule2 {\n#comment\n\nwhen HTTP_REQUEST {\n # ben test 444\n}\n}\nltm rule /Common/app3_rule3 {\n# app3_rule3 header\n\nwhen SERVERSSL_DATA {\n # got something from server\n}\n}\nltm rule /Common/app4_pool_rule {\n### test rule for corkscrew\n\n # \n\nwhen HTTP_REQUEST {\n\n # pool reference by variable declaration\n set html-pool web1Pool\n\n if { [HTTP::path] ends_with \"*.css\" }{\n\n # regular pool refernce\n pool css_pool\n\n } elseif { [HTTP::path] ends_with \"*.jpg\" }{\n\n # pool member refernce\n pool jpg.pool member 10.10.10.1 80\n\n } elseif { [HTTP::path] ends_with \"*.js\" }{\n\n # another pool reference with special characters\n pool js.io_t80_pool \n\n } elseif { [HTTP::path] ends_with \"*.xx\" }{\n\n # pool reference not in tmos config\n ### *** seems the gui won't let you attach an irule to a vs with a pool that doesn't exist\n #pool missing_pool\n\n } elseif { [HTTP::path] ends_with \"*.txt\" }{\n\n # node reference\n node 10.10.10.1 80\n\n } else {\n\n # pool referenced by variable\n pool $html-pool\n\n }\n}\n}\nltm rule /Common/app4_pool_rule2 {\n\n}\nltm snat-translation /Common/192.168.1.51 {\n address 192.168.1.51\n inherited-traffic-group true\n traffic-group /Common/traffic-group-1\n}\nltm snatpool /Common/app3_snat_pool {\n members {\n /Common/192.168.1.51\n }\n}\nltm snatpool /Common/testSnat1_pool {\n members {\n /Common/1.1.1.1\n /Common/1.1.1.2\n /Common/1.1.1.3\n /Common/1.1.1.4\n }\n}\nltm virtual /Common/app1_t80_vs {\n creation-time 2020-09-17:08:50:22\n destination /Common/192.168.1.21:80\n ip-protocol tcp\n last-modified-time 2020-09-17:08:51:07\n mask 255.255.255.255\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/_sys_https_redirect\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address enabled\n translate-port enabled\n}\nltm virtual /Common/app1_t443_vs {\n destination /Common/192.168.1.21:443\n ip-protocol tcp\n last-modified-time 2020-09-18:10:05:54\n mask 255.255.255.255\n pool /Common/app1_t80_pool\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n}\nltm virtual /Common/app2_t80_vs {\n creation-time 2020-09-17:08:50:22\n destination /Common/192.168.2.21:80\n ip-protocol tcp\n last-modified-time 2020-09-17:08:51:07\n mask 255.255.255.255\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/_sys_https_redirect\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address enabled\n translate-port enabled\n}\nltm virtual /Common/bigiq.benlab.io_t443_vs {\n creation-time 2019-10-01:17:59:21\n description \"not flowing traffic, just used for GTM\"\n destination /Common/10.200.244.15:443\n ip-protocol tcp\n last-modified-time 2019-10-01:18:11:46\n mask 255.255.255.255\n policies {\n /Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs { }\n }\n pool /Common/bigiq.benlab.io_t443_pool\n profiles {\n /Common/ASM_basic_policy_1 { }\n /Common/f5-tcp-progressive { }\n /Common/http { }\n /Common/websecurity { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n vlans {\n /Common/vlan255_f5peer\n /Common/vlan245\n /Common/vlan230\n }\n vlans-enabled\n}\nltm virtual /Common/app2_t443_vs {\n destination /Common/192.168.2.21:443\n ip-protocol tcp\n last-modified-time 2020-09-18:10:05:47\n mask 255.255.255.255\n pool /Common/app2_t80_pool\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n}\nltm virtual /Common/persistTest_80_vs {\n creation-time 2023-05-09:11:25:01\n description \"vs to explore persist configs - both default/fallback are single entries\"\n destination /Common/10.6.3.4:80\n fallback-persistence /Common/source_addr\n ip-protocol tcp\n last-modified-time 2023-05-09:11:25:01\n mask 255.255.255.255\n persist {\n /Common/cookie {\n default yes\n }\n }\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address enabled\n translate-port enabled\n}\nltm virtual /Common/app3_t8443_vs {\n destination /Common/192.168.1.51:8443\n fallback-persistence /Common/app3_srcAddr_persist\n ip-protocol tcp\n last-modified-time 2020-09-17:12:45:40\n mask 255.255.255.255\n persist {\n /Common/app3_cookie {\n default yes\n }\n }\n policies {\n /Common/app3_ltm_policy { }\n }\n pool /Common/app3_t8443_pool\n profiles {\n /Common/app3_clientssl {\n context clientside\n }\n /Common/app3_serverssl {\n context serverside\n }\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/app3_rule\n /Common/app3_rule2\n /Common/app3_rule3\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n pool /Common/app3_snat_pool\n type snat\n }\n translate-address enabled\n translate-port enabled\n}\nltm virtual /Common/app4_t80_vs {\n description \"test pool references in irule extration and ltp\"\n destination /Common/192.168.2.25:80\n ip-protocol tcp\n last-modified-time 2020-10-07:07:28:35\n mask 255.255.255.255\n policies {\n /Common/app4_ltPolicy { }\n }\n pool /Common/app4_pool\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/_sys_https_redirect\n /Common/app4_pool_rule\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address enabled\n translate-port enabled\n}\nltm virtual /Common/forwarder_net_0.0.0.0 {\n destination /Common/0.0.0.0:0\n ip-forward\n mask any\n profiles {\n /Common/fastl4_loose { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address disabled\n translate-port disabled\n}\nltm virtual-address /Common/0.0.0.0 {\n address any\n arp disabled\n icmp-echo disabled\n mask any\n traffic-group /Common/traffic-group-1\n}\nltm virtual-address /Common/192.168.1.21 {\n address 192.168.1.21\n arp enabled\n mask 255.255.255.255\n traffic-group /Common/traffic-group-1\n}\nltm virtual-address /Common/192.168.1.51 {\n address 192.168.1.51\n arp enabled\n mask 255.255.255.255\n traffic-group /Common/traffic-group-1\n}\nltm virtual-address /Common/192.168.2.21 {\n address 192.168.2.21\n arp enabled\n mask 255.255.255.255\n traffic-group /Common/traffic-group-1\n}\nltm virtual-address /Common/192.168.2.25 {\n address 192.168.2.25\n arp enabled\n mask 255.255.255.255\n traffic-group /Common/traffic-group-1\n}\nltm auth radius-server /Common/system_auth_name1 {\n secret $M$mn$9uYx+bTjLD8YSGZAUEfFwHvpSDwZsL25kZxdn5NZmCI=\n server 10.200.244.1\n}\nltm classification auto-update settings {\n auto-update-interval weekly\n enabled no\n}\nltm data-group internal /Common/____appsvcs_declaration-1601897418975 {\n description \"f5 AS3 declaration (see info in record 0)\"\n records {\n 0 {\n data \"date^2020-10-05T11:30:18.975Z|id^1601897415002|tenants^|blocks^1\"\n }\n 1 {\n data eNoNzL0OwyAMBOB38dwgm5TmZ6vatVvUoRsCS0GCEAHtEuXd6/G+O90BLtpaYYb78wEXqG7lZN9casibaK9QoXjwEuiGNE7DlQyiFvzu3jZ+Zc9SVo7sWvixFC5vreQotwfY4lbRJSSuzaZdpho1doQdmoVo7nGmUU2D+cB5/gEMbipT\n }\n }\n type integer\n}\nltm data-group internal /Common/____appsvcs_declaration-1601900242421 {\n description \"f5 AS3 declaration (see info in record 0)\"\n records {\n 0 {\n data \"date^2020-10-05T12:17:22.421Z|id^autogen_6c3dbac3-4624-47e2-8ed7-3932d3c1d9b2|tenants^foo|blocks^1\"\n }\n 1 {\n data eNp1kM1uwjAQhN/F5ySynQAlN1SuSEilPbRCkbEXsOQ/2Q4XlHfvmlYUVa2PM+Odb/dKpBEpkZ6s1s+kIkmewYo3iEl7h2rbcNpQNI7ek/56T+/ACZdRV3AUo8npdb0dZvgeQ6sQjJYil1EVyWCDERnQGFUoXRAvWsJGaPf46+VLHnAihi465lGYlVIRUgIMfBC25M2MNrxhZH9PbH3MpC8IFQneG5z0m23Yos7IVP3nPFAUAeutdzr7eKvV0oZSaMEe4CZdbztA/JuOl/D3kj90036akEArLBFj9idww1y26iBkW3dz3tXdAnj9BGpRt8uWq1YytTxwhBmDwvttvCo3TGBAZn0BNKR3OXqTygIiyjOqO20hZYHEPeGU05rRms52jPds0XPedJy9k2n6BPXOoeQ=\n }\n }\n type integer\n}\nltm data-group internal /Common/____appsvcs_declaration-1601900272772 {\n description \"f5 AS3 declaration (see info in record 0)\"\n records {\n 0 {\n data \"date^2020-10-05T12:17:52.772Z|id^1601900269131|tenants^|blocks^1\"\n }\n 1 {\n data eNoNzDELwyAQBeD/cnMjd4ZE4lbatVvo0E30IILGoLZLyH/vje97j3eCT641sHB/PuAGzW+c3Ztri2UXHRUqFI9BAs1IC6KeFxpJ8HsE1/lVAkvZOLHv8cdS+LL3WpLcnuCq30TXmLl1lw+ZatQ4EA44raQtGTtpZYz+wHX9AQqTKk0=\n }\n }\n type integer\n}\nltm data-group internal /Common/____appsvcs_declaration-1602008840967 {\n description \"f5 AS3 declaration (see info in record 0)\"\n records {\n 0 {\n data \"date^2020-10-06T18:27:20.967Z|id^autogen_411122fd-f96d-45e5-9f42-5231b42fb590|tenants^foo|blocks^1\"\n }\n 1 {\n data eNp1UctuwjAQ/Befkyg2CTS5oXJFQirtoRWKjL0BS37Jdrig/HvXtKKoan2cGe/M7F6J0DxG0pP15pkUJIozGP4GISpnEV1UrK5qJEbnSH+9q/dguU2ISxj5pFN83eyGFt+jaO29VoKnPKogCYzXPAESk/TZC8JFCdhyZR9/vXzBA05E0UWFNHG9ljJAjICCD0I7VrV1xSpKDnfFzoVE+hyhIN45jZN+Zxt2iFMyF/8xDykygPbGWZVcuNkqYXw2NGCOcIOutw4Q/k7Hsvi75E+6+TDPmEBJNOFTciewQ0MpZWyU5dgtZdm00Jbd2LCyZQt6bNh4bLt8g8lL3N/WybzDCBpEUhdAQjibgtMxF+BBnBHdKwMxcUzcE1azuqR1WS/39Klnqx5v2i1X72SePwG436Fo\n }\n }\n type integer\n}\nltm data-group internal /Common/__appsvcs_update {\n type string\n}\nltm data-group internal /Common/appsvcs/dataStore {\n records {\n as3_async_records0 {\n data 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\n }\n }\n type string\n}\nltm data-group internal /Common/atgTeem/datastore {\n type string\n}\nltm data-group internal /Common/f5-appsvcs-templates/config {\n records {\n config0 {\n data eNqrVkpJzUktSU0JSc0tyEksSQ1OLSlWsopWKkktLlGKrQUAx+YL5Q==\n }\n }\n type string\n}\nltm data-group internal /Common/f5-appsvcs-templates/dataStore {\n records {\n bigip-fast-templates0 {\n data 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\n }\n examples0 {\n data eNrtXOlv2zgW/1c4xn7YBZxEJ3V8y7YzO4NtMQGcncWiDgyKpBLN2JJXktMGHv/vQ1IXJcuOHNvpxQJtJfI9Hu+Rv3eQ8noUowUd+SP6CS2Wc5qNxqOcsieUs2d/PcoiXjx7yPMlo1pPR3mUz+l05E9H09F4OiI0w2m0zKMkFoXXoOAAP9/e3gC0XM4jjHgt+BjlD2CeIAICNEcxjuL7S3CTJo8RoQCB36I0X6E5+IVxEZLSLAMoJmCZpPl0GgOA5kl8XzSCwDzKcpCERScZTR9pKjHS7LIcWxjFEe88Y2Nbb1hR/rSkb7eLZ0uUMjnkNM0m+IEuEK8oqMWskuB3inPR6DJNljTNI5qVNDRGcT7jYuwwZXnK5liNBK3meSk23qMkmYN5HwtRzYRs2nxRnNN7mnYYNZmrFNIhHRYSPrC/kqnWSYcTpSl6EnwRW3C7hrNptfvhbsMLUvr/VZRSwks6CuiV7JbI+qTRnWbvDO7EGkLpPS3EgzJTUFZb5pZ+KirW6x/Eqv1StsM03mzYP2vBO51OR3iO2KzZgy9er9++4f+N6/pMbIPf2IbgO7umMy+1S61NuV5LGuC9cNqio96ubgV100bVSldv3ab6x90wyS0WtJVWGnIOY9t0XGIRpu9RFHe77O10UtDPuLjbrRXk5dq6EboS7a3l9ef75a7hi7mX87pecYL9QyGgzpIt5HPXbWKZJPNmqH1inX2kwawiq7k3bZk8y/islG5Kwu4AFwkD3yRt5lbXgpaOpIqtSS7oIqD9Taxbby0FywqR9voOfcjMNO2opG6g3mO+LxBNbLOmAfntrpF1+VT8z//lf2UQvantUWWismSVYnpbAeT7yW2BUUWxwh2FOwp3FO68GHcKHPkZZQ8CRyAkFBNi26aBQwxRYJrE1RwjJAbVCCVuGHrEwqaDHReGkLqhjqBr2KZuWp7tItHmLInpr6Hw2/gbms/lt/ipecMJk0Sc1+iWMzy7YnuIbYzRhoUkUhSSDQtDYgFKk88GfeOqkLOPRUP5QwHHE9Ea5kFEyIdGi27S6JE//0GfVPTypUUvp4ld+EJvtL57CmGSLlBeb4Qd0yoXzIwtmKOa+nwRlShqSaQ7rcPjra973yt3qTbF2Wn9pcmrOExgj8cEjnWZuuzFQrt9N2naYOT5PPtW/Kv1VhsvdKgGu1N9ztTmbpcsG2k/KzSmpdlEdNUnOgkTds9dBkpZ4by8I9e9Q67onx3zm3aHewZdCVMq8n1ub7Y3Tgl3/2boXjJJgF8xvWagrAyGMhjKYCiDoQzGN24wOhkOKwhtT3Md3TXtINA83YMIBo5FIUZmgAwbmhjqSHc8pBGNUhogwsod3SMesuzgPBmOHA87Zp0U2d3bN+3krmSzaDrQZGVcVCxOBHgesRFmIE8AG21Mcc4ex/3WTLZg4CHJcmYihd3iIyo33feRxnhBQuJlGZBv5xBWDv+30ginP4T9OvaK8uSKEnzCgxIm4D1e3PZpR8eA7vDL9vkjL3cQB/h22SN+2fmJzPhyd+0zu1r0WWfr3MGiAhIFJApIvmsg6QQRHg1s1yUQQ0N3IKau6RArhMSzQg2Fhm7S0PE0OyBG6OqOjg2CQ9sggecZHjGxfp4gYkUOCiL+87aFZzsQ7FpCMCQwTMIvJp4SvUQDP7Jhpm3gqnVSgZpooQIxJAbxXcUN6vLmF35584vdHcrAixKGcqcz8EzAr3Sj6njXYICB56ZXP9i611xnS+lGeKHudh4XhShYUrCkYEnB0vmufgaWZbseNizsmq5puQYhgUkNF0JoGFDXqa1Tz0C2YQVmaOmhQQwKXdPQQtO1qH22mGZW4ufWDVAJEuXN+kzI00rbgFVWJVMytuoKoEviEikFfpbH9BkD2d4Ihe+AvS72glEvVtGC+9j8FX1ir/wN2rZpt3xlyzI3OyKec3SjTl6OEuHZ4qVxjSOz0yv9zAc4kii2pjE8ElPOxGs5E58jicmXcubzxxelMb8zd+IQj2A83CWptmVLG2cIdLq2gl9OT3ZgDasMUNqPOaxO9wy2r41LvQeBfJv96UfkDw2nIb5g6qIrZ+2Jx/53/f5dX0AmPBAf7HA/prHkfLSojvI8pnFjrH0hekmsPuAyFXcQOzL1ARcor+kI1AeNNOVqsSQAl4go3lpppfYvQCPSiq5eURV7BWw++FMQ7UHbFrAfAu0DwH0gvA8H+MMgfjDID4D5Q4F+ONQPBfsOph0H+EdAfgv0D4f9wcD/PPTvBP9eUe0xANsm4DRG4Egz0DYEsimQa7bNQl+QiSmmMPScwHCJBU3TCw0PWdRDmhki6pmW4REY6sR1iYZYlAkphIEBbdch1NWcMwWZH1E46ODsx+LHUniWDPXdHy8gnVVdT96Dm4SVP+2/F8CkVN0MOPT2eHNtvBoKz+vtuTNeJvq4wVki1kmecE76KSqyenzISzFk8Pf/Xv/0DyBM2T9/+dcF65fRLstpvHPYePAqjfIn0cU8ub/n/CFF+SpVP8Fy4lM8popZoZYZ15r6/vGr+P5xS2uv/02kwqohWHXGw4uISJeSSh1dFAbnQny3coGyRZtljgIqeUKT5qc8Jm3ClI0h/UMaZo+G1Vc93/ZXPcUGYMt/l3MbRPfRUu6gg0pbrv1GfTikPhxSHw6d9NhemWFlhpUZVmZYmWFlhpUZPsH3u47tONAKTMMK+S+PORYxIPSQbRFsey6CENoQaaFlQtezPBN7gW4TOzSw7UCMsXnSDOJmXFoi8ZvJIoMqEokc7Ud/y6p8Fig2hX919XuWxBdF+WWS3l+RFIX5heZcPTDe9KLiGBcttLNoYF1agOomSFXAi8okCGgld+pa6ZoA0OTy+r4AKC8M1FVNtgRYlllpRyiH6SYebTZ/AfHJh7Q=\n }\n goodFastTemplates0 {\n data eNrtW2tv2zYU/Suct49OordlfQtaFB2wbgHiFRjqwKBIKlEhSx4lpy08/feR1It62JLtJE03FQgsUfdeUveSh+eI6G4SwjWZOJP7KMLvYJwsyHoTwITEk+kkKa+d3QRuNiqz2y0niZ8EZDlxlpPlZLqcYBIj6m8SPwpF4zWIfeZHwPvF4gYwt8BHkD8FX/zkAQQRxMCFAQyRH95fghsaPfqYAAg++jTZwgD8yrwwpiSOAQwx2EQ0WS7pchkCAIMovM/iQBD4cQIiL+snJvSRUMmXxJf58Dw/9Hn/MRveLmVNybcNedtuXm0gZclICI1v0QNZQ/4gsxYvFrmfCUpE0A2NNoQmPolzGxLCMFnxXDac4oSy1yxGArdBkmeO9ygl52jfxyxbK5Geup8fJuSe0IajInvlSTqmwyzDR/aXO5U1aXhCSuE34eezybZvOGkt7qe7lDdQ8vfWpwTzlkYBOjPbSllXNpqv2fkGd2IOQXpPsvTAWBeWxXJZkK/Zg93up2LivqJFIbzSNPvdFUGWy+UEBZAlgV044vb67Rv+M5VNYrEwPrIlwpd7aapfKpdKy3i3k8rCe+TmZY+dfS6EQy1SEatZ0o6A3a9R+TXiZuZF2SqPhyTZdJryfPqIfIB+2NF3Z++3mcuK16MVM/PIZ+GNKKmIupNnquPk64tP+33O1+X0FBE+ZSlrzO8sY3cdUTZRFFRj7sr16gtxV4WZHCBtZanXfUjebnLbjsGuIwbcEa1eVTYAtQrWn3W9+ZqsXbI31q7ZUJsHcsUk2NhfMNmf0EbNyhjlWnUcgY/FWq1iNBruavWobsrL/CKVEfqm3OyK/S+OthSRRYG+H24XGQBmzSOojaA2gtoIaq8T1DKQeg/jBwFShmEZ2kzREdYsT0Ou61mmhrFlY8+amS6Ciu0izbZnhqcSNJ8jTPS5MUMWMg1FIxldXEUh+cMTjJPfwSCQ78Jv1R2KWG7CpITOhIHlFVt/bEXxQLxw7yL6BVLOVsNtEKRMXbH5pA0SVLcZyC7e1DFWgldCB6JrnCfPiyhAgc/GHIMkAmz8IZM27HLaDbwy2IKHKE4YoIPkIRtUPnH+H3LrBOF0mlL778gtWV21JNizyK0fZsWMtKWPtiToyVkLq8Bh0tLmHe3NeA8P6d+bzyJGAyhN/IjOoTSy+7mUpsZCdl1ZPJ1znM840u8km0ZwGsFpBKcRnJ4SnJryxyXENg3NsFXVJoY9VzXLVGaKrc5s1dQ0BSHXUpA109yZpUEMFTxT4ZzYFlG5IHoh+aM35U8OjX++vQHyYjwgirhpDTnBNi7ALGaTRsAkYPCawaNAzvwDUszgtVOz8Jl8kHSvmfV666856+a38Cu75XeWaepmjT0bhp7u0UDP0c2oqc5K4bMpqGmJJqunL/ozSzMpFa3XGK7N+rlDH3HQKubQQxsGcYZhhOEYtnCQKmzxpm3WxROGkASGevVgPQxhKD2ocYOjiAGfy7HDL8V2eCwv4Bu1WhtDOu2nA6VXb+IkInD4q2sjUz5ab/pS0/zYWv/SevZn0unwT7XFuqxVo/mNVf7AGtZb04JYhPxvv+ppbhbLiRdFe8DGKWPEbNauTPavG4GYoTrXmDzQLtUOPHK4Zzc+f6o8NXES0MRa7tqh1P66/vBbl1QTfMQBe8iIYF0SG6kZnkVFRORqA3cKpicl2wE808URWSPZDmhlOrdsJNsBVaYbFmL6ANm3NTErLnoBqrxL1uU0lOIUgOiAfwrTw/quqSmHbw51MXhYWA6XlkeJy6PlZf+u0bTtk5gD94+2y0CZeYTQbEvNk/aUdoDjNpaavOrI6IAtpjfBewTnoCO+5o4zJIWHD/o6j/pO3oX2Bxq+FTVjtJruGnXqV8Ed8heqKrJU1cMzohvqHNpYVbDrGghChZgQzjxdRTax9LmHNYw9xBQwhpqtGLplK1B9IflrvE75Ox7ZnXlk9920ozycURiOwvA1CMPaV9JRFn5XWVjV4gcThebpqtAcZeFxstB8Kl1oDhKGPwOJfjhFW/3tqlbWnlUhQ2zwO59O8lNWRAfkW6nUXisMy2Ui+uNZd/17fzNq1FGjnqZRew4BR4X6+hWqvCu+jD5VNW8OmR618BySGVJNMtdnOp7PVQu7BrFdBVkWsk3FVj3dQ1jHrmlDw3ZVbW5B9wWOZ9NpDmPiv/4JDS/EKhUMe/JLXKg/kPk7V1ef4yi8yNovI3p/hSn0kgtldvXAvOlF4TEtYtRVJ8hj8yf59lw18cZc8ICa4pGeS+dmQKk/KY/QQH6GJj2sJBMwDL14kmYX4oclI/0XSLvHeQ==\n }\n }\n type string\n}\nltm monitor dns /Common/dubNameTst1_monitor {\n accept-rcode no-error\n adaptive disabled\n answer-contains query-type\n defaults-from /Common/dns\n interval 5\n qname query.test.com\n qtype a\n recv none\n time-until-up 0\n timeout 16\n}\nltm monitor http /Common/global_http_monitor {\n adaptive disabled\n defaults-from /Common/http\n interval 5\n ip-dscp 0\n recv \"ok 200\"\n recv-disable none\n send \"GET /anywebsite.com\\r\\n\"\n time-until-up 0\n timeout 16\n}\nltm monitor https /Common/global_https_monitor {\n adaptive disabled\n defaults-from /Common/https\n interval 5\n ip-dscp 0\n recv \"201 continue\"\n recv-disable none\n send \"GET /any-secure-website.com\\r\\n\"\n time-until-up 0\n timeout 16\n}\nltm monitor tcp /Common/test_tcp_monitor {\n adaptive disabled\n defaults-from /Common/tcp\n interval 5\n ip-dscp 0\n recv \"receive a tcp string\"\n recv-disable none\n send \"send a tcp string\"\n time-until-up 0\n timeout 16\n}\nltm monitor tcp-half-open /Common/app1_tcp_half_open_quick_monitor {\n defaults-from /Common/tcp_half_open\n destination *:*\n interval 1\n time-until-up 0\n timeout 4\n}\nltm monitor udp /Common/test_udp_monitor {\n adaptive disabled\n debug no\n defaults-from /Common/udp\n interval 5\n recv recieve-what?\n recv-disable none\n send \"default send string\"\n time-until-up 0\n timeout 16\n}\nltm persistence cookie /Common/app3_cookie {\n always-send disabled\n app-service none\n cookie-encryption disabled\n cookie-name app3CustomeCookie\n defaults-from /Common/cookie\n encrypt-cookie-poolname disabled\n expiration 0\n httponly enabled\n method insert\n override-connection-limit disabled\n secure enabled\n}\nltm persistence source-addr /Common/app3_srcAddr_persist {\n app-service none\n defaults-from /Common/source_addr\n hash-algorithm default\n map-proxies enabled\n mask none\n match-across-pools disabled\n match-across-services disabled\n match-across-virtuals disabled\n override-connection-limit disabled\n timeout 180\n}\nltm profile client-ssl /Common/app2_clientssl {\n app-service none\n cert-key-chain {\n default {\n cert /Common/default.crt\n key /Common/default.key\n }\n }\n defaults-from /Common/clientssl\n inherit-ca-certkeychain true\n inherit-certkeychain true\n}\nltm profile client-ssl /Common/app3_clientssl {\n app-service none\n cert-key-chain {\n default {\n cert /Common/default.crt\n key /Common/default.key\n }\n }\n defaults-from /Common/clientssl\n inherit-ca-certkeychain true\n inherit-certkeychain true\n}\nltm profile client-ssl /Common/test1 {\n app-service none\n cert-key-chain {\n default {\n cert /Common/default.crt\n key /Common/default.key\n }\n }\n defaults-from /Common/clientssl\n inherit-ca-certkeychain true\n inherit-certkeychain true\n}\nltm profile fastl4 /Common/fastl4_loose {\n app-service none\n loose-close enabled\n loose-initialization enabled\n reset-on-timeout disabled\n syn-cookie-enable disabled\n}\nltm profile ftp /Common/global_http_monitor {\n app-service none\n defaults-from /Common/ftp\n}\nltm profile http /Common/dubNameTst1_profile {\n app-service none\n defaults-from /Common/http\n proxy-type reverse\n}\nltm profile http-compression /Common/dubName.Tst1_profile {\n app-service none\n defaults-from /Common/httpcompression\n}\nltm profile server-ssl /Common/app3_serverssl {\n app-service none\n defaults-from /Common/serverssl\n}\nltm profile server-ssl /Common/test2 {\n app-service none\n defaults-from /Common/serverssl\n}\nnet dns-resolver /Common/f5-aws-dns {\n forward-zones {\n amazonaws.com {\n nameservers {\n 8.8.8.8:53 { }\n }\n }\n idservice.net {\n nameservers {\n 8.8.8.8:53 { }\n }\n }\n }\n route-domain /Common/0\n}\nnet ipsec ike-daemon /Common/ikedaemon {\n log-publisher /Common/default-ipsec-log-publisher\n}\npem global-settings analytics { }\npem global-settings gx { }\npem global-settings policy { }\nsecurity dos profile /Common/app50_dos {\n app-service none\n application {\n app50_dos {\n bot-defense {\n browser-legit-captcha disabled\n browser-legit-enabled disabled\n }\n captcha-response {\n failure {\n body \"You have entered an invalid answer for the question. Please, try again.\n
\n%DOSL7.captcha.image% %DOSL7.captcha.audio% %DOSL7.captcha.change%\n
\nWhat code is in the image\\?\n%DOSL7.captcha.solution%\n
\n%DOSL7.captcha.submit%\n
\n
\nYour support ID is: %DOSL7.captcha.support_id%.\"\n }\n first {\n body \"This question is for testing whether you are a human visitor and to prevent automated spam submission.\n
\n%DOSL7.captcha.image% %DOSL7.captcha.audio% %DOSL7.captcha.change%\n
\nWhat code is in the image\\?\n%DOSL7.captcha.solution%\n
\n%DOSL7.captcha.submit%\n
\n
\nYour support ID is: %DOSL7.captcha.support_id%.\"\n }\n }\n heavy-urls {\n automatic-detection disabled\n protection disabled\n }\n mobile-detection {\n allow-any-android-package false\n allow-any-ios-package false\n }\n stress-based {\n behavioral {\n mitigation-mode none\n }\n ip-rate-limiting disabled\n url-enable-heavy disabled\n url-rate-limiting disabled\n }\n tps-based {\n ip-rate-limiting disabled\n mode off\n url-enable-heavy disabled\n url-rate-limiting disabled\n }\n }\n }\n creation-time 2023-05-09:06:11:09\n creation-user admin\n description \"app #50 sample dos profile\"\n dos-network {\n app50_dos { }\n }\n http-whitelist none\n last-modified-time 2023-05-09:06:11:10\n modify-user admin\n protocol-dns {\n app50_dos { }\n }\n protocol-sip {\n app50_dos { }\n }\n threshold-sensitivity high\n}\nsecurity bot-defense profile /Common/app51_bot {\n allow-browser-access enabled\n api-access-strict-mitigation enabled\n app-service none\n blocking-page {\n body \"Request RejectedThe requested URL was rejected. Please consult with your administrator.

Your support ID is: <%BOTDEFENSE.support_id%>

[Go Back]\"\n headers \"Cache-Control: no-store, must-revalidate, no-cache\nPragma: no-cache\nConnection: close\"\n status-code 200\n type default\n }\n browser-mitigation-action block\n captcha-response {\n failure {\n body \"You have entered an invalid answer for the question. Please, try again.\n
\n%BOTDEFENSE.captcha.image% %BOTDEFENSE.captcha.audio% %BOTDEFENSE.captcha.change%\n
\nWhat code is in the image\\?\n%BOTDEFENSE.captcha.solution%\n
\n%BOTDEFENSE.captcha.submit%\n
\n
\nYour support ID is: %BOTDEFENSE.captcha.support_id%.\"\n type default\n }\n first {\n body \"This question is for testing whether you are a human visitor and to prevent automated spam submission.\n
\n%BOTDEFENSE.captcha.image% %BOTDEFENSE.captcha.audio% %BOTDEFENSE.captcha.change%\n
\nWhat code is in the image\\?\n%BOTDEFENSE.captcha.solution%\n
\n%BOTDEFENSE.captcha.submit%\n
\n
\nYour support ID is: %BOTDEFENSE.captcha.support_id%.\"\n type default\n }\n }\n cross-domain-requests allow-all\n description \"some example bot profile\"\n deviceid-mode generate-before-access\n dos-attack-strict-mitigation enabled\n enforcement-mode blocking\n enforcement-readiness-period 9\n grace-period 300\n honeypot-page {\n body \n headers \"Cache-Control: no-store, must-revalidate, no-cache\nPragma: no-cache\nConnection: close\"\n status-code 200\n type default\n }\n mobile-detection {\n allow-android-rooted-device disabled\n allow-any-android-package enabled\n allow-any-ios-package enabled\n allow-emulators disabled\n allow-jailbroken-devices disabled\n block-debugger-enabled-device enabled\n client-side-challenge-mode pass\n }\n perform-challenge-in-transparent disabled\n redirect-to-pool-name /Common/allOptionsPool\n signature-staging-upon-update enabled\n single-page-application disabled\n template strict\n whitelist {\n apple_touch_1 {\n match-order 2\n url /apple-touch-icon*.png\n }\n favicon_1 {\n match-order 1\n url /favicon.ico\n }\n }\n}\nsecurity dos ipv6-ext-hdr /Common/dos-ipv6-ext-hdr {\n frame-types { auth dstopt esp frag hbh mobility route }\n}\nsecurity dos udp-portlist /Common/dos-udp-portlist {\n list-type exclude-listed-ports\n}\nsecurity firewall config-change-log {\n log-publisher /Common/local-db-publisher\n}\nsecurity protocol-inspection compliance-map /Common/map_10426 {\n insp-id 10426\n key-type int\n value-type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/allowed_list {\n insp-id 10229\n type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/allowed_list {\n insp-id 10430\n type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/allowed_list {\n insp-id 10431\n type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/allowed_list {\n insp-id 10232\n type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/argument_len_max {\n insp-id 10905\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/command_argument_len_max {\n insp-id 10609\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/command_len_max {\n insp-id 10905\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/command_len_max {\n insp-id 10707\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/command_len_max {\n insp-id 10609\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/command_parameter_len_max {\n insp-id 10707\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/disallowed_list {\n insp-id 10229\n type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/disallowed_list {\n insp-id 10430\n type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/disallowed_list {\n insp-id 10431\n type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/disallowed_list {\n insp-id 10232\n type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/error_message_max {\n insp-id 10102\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/file_name_max {\n insp-id 10102\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/file_type_max {\n insp-id 10102\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/header_name_len_max {\n insp-id 11016\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/header_name_len_max {\n insp-id 11223\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/header_value_len_max {\n insp-id 11016\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/header_value_len_max {\n insp-id 11223\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/method_len_max {\n insp-id 11016\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/method_len_max {\n insp-id 11223\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/option_name_max {\n insp-id 10102\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/option_value_max {\n insp-id 10102\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/response_argument_len_max {\n insp-id 10609\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/response_code_len_max {\n insp-id 10609\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/response_parameter_len_max {\n insp-id 10707\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/status_code_len_max {\n insp-id 11016\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/status_code_len_max {\n insp-id 11223\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/status_len_max {\n insp-id 10707\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/status_reason_len_max {\n insp-id 11016\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/status_reason_len_max {\n insp-id 11223\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/tag_len_max {\n insp-id 10905\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/uri_len_max {\n insp-id 11016\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/uri_len_max {\n insp-id 11223\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/version_len_max {\n insp-id 11016\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/version_len_max {\n insp-id 11223\n type int\n}\nsecurity scrubber profile /Common/scrubber-profile-default {\n advertisement-ttl 300\n}\nsys compatibility-level {\n level 0\n}\nsys management-ovsdb {\n bfd-disabled\n bfd-route-domain none\n ca-cert-file none\n cert-file none\n cert-key-file none\n disabled\n flooding-type replicator\n log-level info\n logical-routing-type none\n tunnel-maintenance-mode active\n}\nsys diags ihealth {\n expiration 30\n no-ihealth false\n options none\n password none\n user none\n}\nsys ecm cloud-provider /Common/aws-ec2 {\n description \"The aws-ec2 parameters\"\n property-template {\n account { }\n availability-zone {\n valid-values { a b c d }\n }\n instance-type {\n valid-values { t2.micro t2.small t2.medium m3.medium m3.large m3.xlarge m3.2xlarge c3.large c3.xlarge c3.2xlarge c3.4xlarge c3.8xlarge r3.large r3.xlarge r3.2xlarge r3.4xlarge r3.8xlarge }\n }\n region {\n valid-values { us-east-1 us-west-1 us-west-2 sa-east-1 eu-west-1 eu-central-1 ap-southeast-2 ap-southeast-1 ap-northeast-1 }\n }\n }\n}\nsys ecm cloud-provider /Common/dnet {\n description \"The dnet parameters\"\n}\nsys ecm cloud-provider /Common/vsphere {\n description \"The vsphere parameters\"\n property-template {\n cloud-host-ip { }\n dhcp-network-name { }\n end-point-url { }\n node-name { }\n }\n}\nsys file ssl-key /Common/f5_api_com.key {\n cache-path /config/filestore/files_d/Common_d/certificate_key_d/:Common:f5_api_com.key_63136_1\n passphrase $M$dw$gJ3HaeiGt0skpPsA6hli9PsO/8yo5M6FkI1CHOPiN4GgC/h5Tln6v01SC2727mtleKP9Hw/Vnwio8eOiXi4umiV+IidOxMwtZinL8WYrqX0=\n revision 1\n source-path file:///config/ssl/ssl.key/f5_api_com.key\n}\nsys software update {\n auto-check enabled\n auto-phonehome disabled\n frequency weekly\n}\nwom endpoint-discovery { }\n" } ], "doClasses": [ @@ -21,659 +21,789 @@ ], "apps": [ { - "name": "/Common/app1_t80_vs", - "configs": [ - "ltm virtual /Common/app1_t80_vs {\n creation-time 2020-09-17:08:50:22\n destination /Common/192.168.1.21:80\n ip-protocol tcp\n last-modified-time 2020-09-17:08:51:07\n mask 255.255.255.255\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/_sys_https_redirect\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address enabled\n translate-port enabled\n}" + "name": "app1_t80_vs", + "partition": "Common", + "destination": "192.168.1.21:80", + "profiles": [ + "/Common/http", + "/Common/tcp" + ], + "rules": [ + "/Common/_sys_https_redirect" ], - "map": { - "vsDest": "/Common/192.168.1.21:80" - } + "creation-time": "2020-09-17:08:50:22", + "ip-protocol": "tcp", + "last-modified-time": "2020-09-17:08:51:07", + "mask": "255.255.255.255", + "serverssl-use-sni": "disabled", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled", + "lines": [ + "ltm virtual /Common/app1_t80_vs {\n creation-time 2020-09-17:08:50:22\n destination /Common/192.168.1.21:80\n ip-protocol tcp\n last-modified-time 2020-09-17:08:51:07\n mask 255.255.255.255\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/_sys_https_redirect\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address enabled\n translate-port enabled\n}" + ] }, { - "name": "/Common/app1_t443_vs", - "configs": [ + "name": "app1_t443_vs", + "partition": "Common", + "destination": "192.168.1.21:443", + "pool": { + "name": "app1_t80_pool", + "partition": "Common", + "members": { + "/Common/app1_Node1:80": { + "address": "192.168.1.22" + }, + "/Common/app1_Node2:80": { + "address": "192.168.1.23" + } + }, + "monitor": "/Common/http" + }, + "profiles": [ + "/Common/http", + "/Common/tcp" + ], + "snat": "automap", + "ip-protocol": "tcp", + "last-modified-time": "2020-09-18:10:05:54", + "mask": "255.255.255.255", + "serverssl-use-sni": "disabled", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled", + "lines": [ "ltm virtual /Common/app1_t443_vs {\n destination /Common/192.168.1.21:443\n ip-protocol tcp\n last-modified-time 2020-09-18:10:05:54\n mask 255.255.255.255\n pool /Common/app1_t80_pool\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n}", "ltm pool /Common/app1_t80_pool {\n members {\n /Common/app1_Node1:80 {\n address 192.168.1.22\n }\n /Common/app1_Node2:80 {\n address 192.168.1.23\n }\n }\n monitor /Common/http and /Common/tcp\n}", "ltm node /Common/app1_Node1 {\n address 192.168.1.22\n}", "ltm node /Common/app1_Node2 {\n address 192.168.1.23\n}" - ], - "map": { - "vsDest": "/Common/192.168.1.21:443", - "pool": [ - "192.168.1.22:80", - "192.168.1.23:80" - ] - } + ] }, { - "name": "/Common/app2_t80_vs", - "configs": [ - "ltm virtual /Common/app2_t80_vs {\n creation-time 2020-09-17:08:50:22\n destination /Common/192.168.2.21:80\n ip-protocol tcp\n last-modified-time 2020-09-17:08:51:07\n mask 255.255.255.255\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/_sys_https_redirect\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address enabled\n translate-port enabled\n}" + "name": "app2_t80_vs", + "partition": "Common", + "destination": "192.168.2.21:80", + "profiles": [ + "/Common/http", + "/Common/tcp" ], - "map": { - "vsDest": "/Common/192.168.2.21:80" - } + "rules": [ + "/Common/_sys_https_redirect" + ], + "creation-time": "2020-09-17:08:50:22", + "ip-protocol": "tcp", + "last-modified-time": "2020-09-17:08:51:07", + "mask": "255.255.255.255", + "serverssl-use-sni": "disabled", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled", + "lines": [ + "ltm virtual /Common/app2_t80_vs {\n creation-time 2020-09-17:08:50:22\n destination /Common/192.168.2.21:80\n ip-protocol tcp\n last-modified-time 2020-09-17:08:51:07\n mask 255.255.255.255\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/_sys_https_redirect\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address enabled\n translate-port enabled\n}" + ] }, { - "name": "/Common/bigiq.benlab.io_t443_vs", - "configs": [ - "ltm virtual /Common/bigiq.benlab.io_t443_vs {\n creation-time 2019-10-01:17:59:21\n description \"not flowing traffic, just used for GTM\"\n destination /Common/10.200.244.15:443\n ip-protocol tcp\n last-modified-time 2019-10-01:18:11:46\n mask 255.255.255.255\n policies {\n /Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs { }\n }\n pool /Common/bigiq.benlab.io_t443_pool\n profiles {\n /Common/ASM_basic_policy_1 { }\n /Common/f5-tcp-progressive { }\n /Common/http { }\n /Common/websecurity { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n vlans {\n /Common/vlan255_f5peer\n }\n vlans-enabled\n}", + "name": "bigiq.benlab.io_t443_vs", + "partition": "Common", + "destination": "10.200.244.15:443", + "pool": { + "name": "bigiq.benlab.io_t443_pool", + "partition": "Common", + "members": { + "/Common/10.200.244.15:443": { + "address": "10.200.244.15" + } + }, + "monitor": [ + "/Common/https_head_f5" + ] + }, + "profiles": [ + "/Common/ASM_basic_policy_1", + "/Common/f5-tcp-progressive", + "/Common/http", + "/Common/websecurity" + ], + "snat": "automap", + "policies": [ + "/Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs" + ], + "vlans": [ + "/Common/vlan255_f5peer", + "/Common/vlan245", + "/Common/vlan230" + ], + "creation-time": "2019-10-01:17:59:21", + "description": "not flowing traffic, just used for GTM", + "ip-protocol": "tcp", + "last-modified-time": "2019-10-01:18:11:46", + "mask": "255.255.255.255", + "serverssl-use-sni": "disabled", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled", + "lines": [ + "ltm virtual /Common/bigiq.benlab.io_t443_vs {\n creation-time 2019-10-01:17:59:21\n description \"not flowing traffic, just used for GTM\"\n destination /Common/10.200.244.15:443\n ip-protocol tcp\n last-modified-time 2019-10-01:18:11:46\n mask 255.255.255.255\n policies {\n /Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs { }\n }\n pool /Common/bigiq.benlab.io_t443_pool\n profiles {\n /Common/ASM_basic_policy_1 { }\n /Common/f5-tcp-progressive { }\n /Common/http { }\n /Common/websecurity { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n vlans {\n /Common/vlan255_f5peer\n /Common/vlan245\n /Common/vlan230\n }\n vlans-enabled\n}", "ltm pool /Common/bigiq.benlab.io_t443_pool {\n members {\n /Common/10.200.244.15:443 {\n address 10.200.244.15\n }\n }\n monitor /Common/https_head_f5\n}", "ltm node /Common/10.200.244.15 {\n address 10.200.244.15\n description bigiq01\n}", "ltm policy /Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs {\n controls { asm }\n requires { http }\n rules {\n default {\n actions {\n 1 {\n asm\n enable\n policy /Common/basic_policy_1\n }\n }\n ordinal 1\n }\n }\n strategy /Common/first-match\n}" - ], - "map": { - "vsDest": "/Common/10.200.244.15:443", - "pool": [ - "10.200.244.15:443" - ] - } + ] }, { - "name": "/Common/app2_t443_vs", - "configs": [ + "name": "app2_t443_vs", + "partition": "Common", + "destination": "192.168.2.21:443", + "pool": { + "name": "app2_t80_pool", + "partition": "Common", + "members": { + "/Common/app2_Node1:80": { + "address": "192.168.2.22" + }, + "/Common/app2_Node2:80": { + "address": "192.168.2.23" + } + }, + "load-balancing-mode": "least-connections-member", + "monitor": "/Common/global_http_monitor" + }, + "profiles": [ + "/Common/http", + "/Common/tcp" + ], + "snat": "automap", + "ip-protocol": "tcp", + "last-modified-time": "2020-09-18:10:05:47", + "mask": "255.255.255.255", + "serverssl-use-sni": "disabled", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled", + "lines": [ "ltm virtual /Common/app2_t443_vs {\n destination /Common/192.168.2.21:443\n ip-protocol tcp\n last-modified-time 2020-09-18:10:05:47\n mask 255.255.255.255\n pool /Common/app2_t80_pool\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n}", "ltm pool /Common/app2_t80_pool {\n load-balancing-mode least-connections-member\n members {\n /Common/app2_Node1:80 {\n address 192.168.2.22\n }\n /Common/app2_Node2:80 {\n address 192.168.2.23\n }\n }\n monitor /Common/global_http_monitor and /Common/global_https_monitor\n}", "ltm node /Common/app2_Node1 {\n address 192.168.2.22\n description app2_Node1\n}", - "ltm node /Common/app2_Node2 {\n address 192.168.2.23\n description app2_Node2\n}", - "ltm monitor http /Common/global_http_monitor {\n adaptive disabled\n defaults-from /Common/http\n interval 5\n ip-dscp 0\n recv \"ok 200\"\n recv-disable none\n send \"GET /anywebsite.com\\r\\n\"\n time-until-up 0\n timeout 16\n}", - "ltm monitor https /Common/global_https_monitor {\n adaptive disabled\n defaults-from /Common/https\n interval 5\n ip-dscp 0\n recv \"201 continue\"\n recv-disable none\n send \"GET /any-secure-website.com\\r\\n\"\n time-until-up 0\n timeout 16\n}" + "ltm node /Common/app2_Node2 {\n address 192.168.2.23\n description app2_Node2\n}" + ] + }, + { + "name": "persistTest_80_vs", + "partition": "Common", + "destination": "10.6.3.4:80", + "profiles": [ + "/Common/http", + "/Common/tcp" ], - "map": { - "vsDest": "/Common/192.168.2.21:443", - "pool": [ - "192.168.2.22:80", - "192.168.2.23:80" - ] - } + "persist": "/Common/cookie", + "fallback-persistence": "/Common/source_addr", + "creation-time": "2023-05-09:11:25:01", + "description": "vs to explore persist configs - both default/fallback are single entries", + "ip-protocol": "tcp", + "last-modified-time": "2023-05-09:11:25:01", + "mask": "255.255.255.255", + "serverssl-use-sni": "disabled", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled", + "lines": [ + "ltm virtual /Common/persistTest_80_vs {\n creation-time 2023-05-09:11:25:01\n description \"vs to explore persist configs - both default/fallback are single entries\"\n destination /Common/10.6.3.4:80\n fallback-persistence /Common/source_addr\n ip-protocol tcp\n last-modified-time 2023-05-09:11:25:01\n mask 255.255.255.255\n persist {\n /Common/cookie {\n default yes\n }\n }\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address enabled\n translate-port enabled\n}" + ] }, { - "name": "/Common/app3_t8443_vs", - "configs": [ + "name": "app3_t8443_vs", + "partition": "Common", + "destination": "192.168.1.51:8443", + "pool": { + "name": "app3_t8443_pool", + "partition": "Common", + "members": { + "/Common/app3_Node1:8443": { + "address": "192.168.1.52" + }, + "/Common/app3_Node2:8443": { + "address": "192.168.1.53" + } + }, + "load-balancing-mode": "least-connections-member", + "monitor": "/Common/app1_tcp_half_open_quick_monitor" + }, + "profiles": [ + "/Common/app3_clientssl", + "/Common/app3_serverssl", + "/Common/http", + "/Common/tcp" + ], + "rules": [ + "/Common/app3_rule", + "/Common/app3_rule2", + "/Common/app3_rule3" + ], + "snat": { + "name": "app3_snat_pool", + "partition": "Common", + "members": [ + "192.168.1.51" + ] + }, + "policies": [ + "/Common/app3_ltm_policy" + ], + "persist": "/Common/app3_cookie", + "fallback-persistence": "/Common/app3_srcAddr_persist", + "ip-protocol": "tcp", + "last-modified-time": "2020-09-17:12:45:40", + "mask": "255.255.255.255", + "serverssl-use-sni": "disabled", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled", + "lines": [ "ltm virtual /Common/app3_t8443_vs {\n destination /Common/192.168.1.51:8443\n fallback-persistence /Common/app3_srcAddr_persist\n ip-protocol tcp\n last-modified-time 2020-09-17:12:45:40\n mask 255.255.255.255\n persist {\n /Common/app3_cookie {\n default yes\n }\n }\n policies {\n /Common/app3_ltm_policy { }\n }\n pool /Common/app3_t8443_pool\n profiles {\n /Common/app3_clientssl {\n context clientside\n }\n /Common/app3_serverssl {\n context serverside\n }\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/app3_rule\n /Common/app3_rule2\n /Common/app3_rule3\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n pool /Common/app3_snat_pool\n type snat\n }\n translate-address enabled\n translate-port enabled\n}", "ltm pool /Common/app3_t8443_pool {\n load-balancing-mode least-connections-member\n members {\n /Common/app3_Node1:8443 {\n address 192.168.1.52\n }\n /Common/app3_Node2:8443 {\n address 192.168.1.53\n }\n }\n monitor /Common/app1_tcp_half_open_quick_monitor and /Common/http_head_f5 and /Common/http2_head_f5 and /Common/http and /Common/tcp_half_open\n}", "ltm node /Common/app3_Node1 {\n address 192.168.1.52\n}", "ltm node /Common/app3_Node2 {\n address 192.168.1.53\n}", - "ltm monitor tcp-half-open /Common/app1_tcp_half_open_quick_monitor {\n defaults-from /Common/tcp_half_open\n destination *:*\n interval 1\n time-until-up 0\n timeout 4\n}", "ltm profile client-ssl /Common/app3_clientssl {\n app-service none\n cert-key-chain {\n default {\n cert /Common/default.crt\n key /Common/default.key\n }\n }\n defaults-from /Common/clientssl\n inherit-ca-certkeychain true\n inherit-certkeychain true\n}", "ltm profile server-ssl /Common/app3_serverssl {\n app-service none\n defaults-from /Common/serverssl\n}", "ltm rule /Common/app3_rule {\n#comment\n\nwhen HTTP_REQUEST {\n # add more here\n}\n}", "ltm rule /Common/app3_rule2 {\n#comment\n\nwhen HTTP_REQUEST {\n # ben test 444\n}\n}", "ltm rule /Common/app3_rule3 {\n# app3_rule3 header\n\nwhen SERVERSSL_DATA {\n # got something from server\n}\n}", - "ltm snatpool /Common/app3_snat_pool {\n members {\n /Common/192.168.1.51\n }\n}", + "ltm snatpool /Common/app3_snat_pool { undefined }", "ltm policy /Common/app3_ltm_policy {\n rules {\n global_rule_1 { }\n }\n strategy /Common/first-match\n}", "ltm persistence cookie /Common/app3_cookie {\n always-send disabled\n app-service none\n cookie-encryption disabled\n cookie-name app3CustomeCookie\n defaults-from /Common/cookie\n encrypt-cookie-poolname disabled\n expiration 0\n httponly enabled\n method insert\n override-connection-limit disabled\n secure enabled\n}", "ltm persistence source-addr /Common/app3_srcAddr_persist {\n app-service none\n defaults-from /Common/source_addr\n hash-algorithm default\n map-proxies enabled\n mask none\n match-across-pools disabled\n match-across-services disabled\n match-across-virtuals disabled\n override-connection-limit disabled\n timeout 180\n}" - ], - "map": { - "vsDest": "/Common/192.168.1.51:8443", - "pool": [ - "192.168.1.52:8443", - "192.168.1.53:8443" - ] - } + ] }, { - "name": "/Common/app4_t80_vs", - "configs": [ + "name": "app4_t80_vs", + "partition": "Common", + "destination": "192.168.2.25:80", + "description": "test pool references in irule extration and ltp", + "pool": { + "name": "app4_pool", + "partition": "Common", + "members": { + "/Common/api.chucknorris.io:443": { + "autopopulate": "enabled", + "fqdn": "api.chucknorris.io" + } + } + }, + "profiles": [ + "/Common/http", + "/Common/tcp" + ], + "rules": [ + "/Common/_sys_https_redirect", + "/Common/app4_pool_rule" + ], + "policies": [ + "/Common/app4_ltPolicy" + ], + "ip-protocol": "tcp", + "last-modified-time": "2020-10-07:07:28:35", + "mask": "255.255.255.255", + "serverssl-use-sni": "disabled", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled", + "lines": [ "ltm virtual /Common/app4_t80_vs {\n description \"test pool references in irule extration and ltp\"\n destination /Common/192.168.2.25:80\n ip-protocol tcp\n last-modified-time 2020-10-07:07:28:35\n mask 255.255.255.255\n policies {\n /Common/app4_ltPolicy { }\n }\n pool /Common/app4_pool\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/_sys_https_redirect\n /Common/app4_pool_rule\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address enabled\n translate-port enabled\n}", "ltm pool /Common/app4_pool {\n members {\n /Common/api.chucknorris.io:443 {\n fqdn {\n autopopulate enabled\n name api.chucknorris.io\n }\n }\n }\n}", "ltm node /Common/api.chucknorris.io {\n fqdn {\n address-family all\n autopopulate enabled\n name api.chucknorris.io\n }\n}", "ltm rule /Common/app4_pool_rule {\n### test rule for corkscrew\n\n # \n\nwhen HTTP_REQUEST {\n\n # pool reference by variable declaration\n set html-pool web1Pool\n\n if { [HTTP::path] ends_with \"*.css\" }{\n\n # regular pool refernce\n pool css_pool\n\n } elseif { [HTTP::path] ends_with \"*.jpg\" }{\n\n # pool member refernce\n pool jpg.pool member 10.10.10.1 80\n\n } elseif { [HTTP::path] ends_with \"*.js\" }{\n\n # another pool reference with special characters\n pool js.io_t80_pool \n\n } elseif { [HTTP::path] ends_with \"*.xx\" }{\n\n # pool reference not in tmos config\n ### *** seems the gui won't let you attach an irule to a vs with a pool that doesn't exist\n #pool missing_pool\n\n } elseif { [HTTP::path] ends_with \"*.txt\" }{\n\n # node reference\n node 10.10.10.1 80\n\n } else {\n\n # pool referenced by variable\n pool $html-pool\n\n }\n}\n}", - "ltm pool /Common/css_pool { }", - "ltm pool /Common/jpg.pool { }", - "ltm pool /Common/js.io_t80_pool { }", - "ltm policy /Common/app4_ltPolicy {\n controls { forwarding }\n description \"testing for pool extraction function\"\n requires { http }\n rules {\n css_pool_rule {\n actions {\n 0 {\n forward\n select\n pool /Common/css_pool\n }\n }\n conditions {\n 0 {\n http-uri\n scheme\n ends-with\n values { .css }\n }\n }\n }\n jpg_pool_rule {\n actions {\n 0 {\n forward\n select\n pool /Common/jpg.pool\n }\n }\n conditions {\n 0 {\n http-uri\n query-string\n ends-with\n values { .jpg }\n }\n }\n ordinal 1\n }\n js_pool_rule {\n actions {\n 0 {\n forward\n select\n pool /Common/js.io_t80_pool\n }\n }\n conditions {\n 0 {\n http-uri\n scheme\n ends-with\n values { .js }\n }\n }\n ordinal 2\n }\n txt_node {\n actions {\n 0 {\n forward\n select\n node 10.10.10.1\n }\n }\n conditions {\n 0 {\n http-uri\n scheme\n ends-with\n values { .txt }\n }\n }\n ordinal 3\n }\n }\n strategy /Common/first-match\n}" - ], - "map": { - "vsDest": "/Common/192.168.2.25:80", - "pool": [ - "/Common/api.chucknorris.io,/Common/api.chucknorris.io:443" - ], - "irule": { - "pools": [ - [ - "css_pool" - ], - [ - "jpg.pool", - "member", - "10.10.10.1", - "80" - ], - [ - "js.io_t80_pool" - ] - ] - } - } + "ltm policy /Common/app4_ltPolicy {\n controls { forwarding }\n description \"testing for pool extraction function\"\n requires { http }\n rules {\n css_pool_rule {\n actions {\n 0 {\n forward\n select\n pool /Common/css_pool\n }\n }\n conditions {\n 0 {\n http-uri\n scheme\n ends-with\n values { .css }\n }\n }\n }\n jpg_pool_rule {\n actions {\n 0 {\n forward\n select\n pool /Common/jpg.pool\n }\n }\n conditions {\n 0 {\n http-uri\n query-string\n ends-with\n values { .jpg }\n }\n }\n ordinal 1\n }\n js_pool_rule {\n actions {\n 0 {\n forward\n select\n pool /Common/js.io_t80_pool\n }\n }\n conditions {\n 0 {\n http-uri\n scheme\n ends-with\n values { .js }\n }\n }\n ordinal 2\n }\n txt_node {\n actions {\n 0 {\n forward\n select\n node 10.10.10.1\n }\n }\n conditions {\n 0 {\n http-uri\n scheme\n ends-with\n values { .txt }\n }\n }\n ordinal 3\n }\n }\n strategy /Common/first-match\n}", + "ltm pool css_pool { }", + "ltm pool jpg.pool { }", + "ltm pool js.io_t80_pool { }" + ] }, { - "name": "/Common/forwarder_net_0.0.0.0", - "configs": [ + "name": "forwarder_net_0.0.0.0", + "partition": "Common", + "destination": "0.0.0.0:0", + "profiles": [ + "/Common/fastl4_loose" + ], + "mask": "any", + "serverssl-use-sni": "disabled", + "source": "0.0.0.0/0", + "translate-address": "disabled", + "translate-port": "disabled", + "lines": [ "ltm virtual /Common/forwarder_net_0.0.0.0 {\n destination /Common/0.0.0.0:0\n ip-forward\n mask any\n profiles {\n /Common/fastl4_loose { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address disabled\n translate-port disabled\n}", "ltm profile fastl4 /Common/fastl4_loose {\n app-service none\n loose-close enabled\n loose-initialization enabled\n reset-on-timeout disabled\n syn-cookie-enable disabled\n}" - ], - "map": { - "vsDest": "/Common/0.0.0.0:0" - } + ] } ], "gslb": [] }, "stats": { - "objectCount": 253, + "objectCount": 258, "objects": { - "virtuals": 8, + "virtuals": 9, "profiles": 6, "policies": 3, - "pools": 8, + "pools": 9, "irules": 5, "monitors": 6, "nodes": 11, - "snatPools": 1, + "snatPools": 2, "apmPolicies": 3, "apmProfiles": 3, - "asmPolicies": 1 + "asmPolicies": 1, + "botProfiles": 1, + "dosProfiles": 3 }, "sourceTmosVersion": "15.1.8.2", - "parseTime": 11.1762, - "appTime": 3.2063, - "fqdnTime": 0.0243, - "packTime": 0.4923 + "parseTime": 13.8033, + "appTime": 1.0539, + "fqdnTime": 0.0287, + "packTime": 0.5267 }, "logs": [ - "[2023-04-27T20:22:44.883Z] DeBuG: 'regular date log message'", - "[4/27/2023, 3:22:44 PM] DeBuG: 'toLocalString date log message'", - "[Thu, 27 Apr 2023 20:22:44 GMT] DeBuG: 'to UTC date log message'", - "[2023-04-27T20:22:47.057Z] [ERROR]: >v19.0.0.0 tmos detected - this should never happen!!!", - "[2023-04-27T20:22:47.058Z] [ERROR]: automap", - "[2023-04-27T20:22:48.027Z] [DEBUG]: [/Common/app1_t443_vs] found snat configuration \n type automap", - "[2023-04-27T20:22:48.027Z] [INFO]: digging vs config for /Common/app2_t80_vs", - "[2023-04-27T20:22:48.027Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:48.028Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:48.028Z] [DEBUG]: [/Common/app2_t80_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:48.028Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect' ]", - "[2023-04-27T20:22:48.028Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details", - "[2023-04-27T20:22:48.028Z] [DEBUG]: [/Common/app2_t80_vs] found the following rules \n /Common/_sys_https_redirect", - "[2023-04-27T20:22:48.028Z] [INFO]: digging vs config for /Common/bigiq.benlab.io_t443_vs", - "[2023-04-27T20:22:48.028Z] [DEBUG]: digging pool config for /Common/bigiq.benlab.io_t443_pool", - "[2023-04-27T20:22:48.028Z] [DEBUG]: Pool /Common/bigiq.benlab.io_t443_pool members found: [ '/Common/10.200.244.15' ]", - "[2023-04-27T20:22:48.028Z] [DEBUG]: pool monitor references found: [ '/Common/https_head_f5' ]", - "[2023-04-27T20:22:48.028Z] [DEBUG]: pool monitor configs found: []", - "[2023-04-27T20:22:48.028Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_pool] references 1 system default monitors, compare previous arrays for details", - "[2023-04-27T20:22:48.028Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following pool /Common/bigiq.benlab.io_t443_pool", - "[2023-04-27T20:22:48.028Z] [DEBUG]: profile references found: [\n '/Common/ASM_basic_policy_1',\n '/Common/f5-tcp-progressive',\n '/Common/http',\n '/Common/websecurity'\n]", - "[2023-04-27T20:22:48.028Z] [DEBUG]: Found 4 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:48.028Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following profiles \n /Common/ASM_basic_policy_1 { }\n /Common/f5-tcp-progressive { }\n /Common/http { }\n /Common/websecurity { }", - "[2023-04-27T20:22:48.028Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:48.028Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found snat configuration \n type automap", - "[2023-04-27T20:22:48.028Z] [DEBUG]: policy references found: [ '/Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs' ]", - "[2023-04-27T20:22:48.028Z] [DEBUG]: policy found [/Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs]", - "[2023-04-27T20:22:48.028Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following policies \n /Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs { }", - "[2023-04-27T20:22:48.029Z] [INFO]: digging vs config for /Common/app2_t443_vs", - "[2023-04-27T20:22:48.029Z] [DEBUG]: digging pool config for /Common/app2_t80_pool", - "[2023-04-27T20:22:48.029Z] [DEBUG]: Pool /Common/app2_t80_pool members found: [ '/Common/app2_Node1', '/Common/app2_Node2' ]", - "[2023-04-27T20:22:48.029Z] [DEBUG]: pool monitor references found: [ '/Common/global_http_monitor', '/Common/global_https_monitor' ]", - "[2023-04-27T20:22:48.029Z] [DEBUG]: pool monitor configs found: [\n 'ltm monitor http /Common/global_http_monitor {\\n' +\n ' adaptive disabled\\n' +\n ' defaults-from /Common/http\\n' +\n ' interval 5\\n' +\n ' ip-dscp 0\\n' +\n ' recv \"ok 200\"\\n' +\n ' recv-disable none\\n' +\n ' send \"GET /anywebsite.com\\\\r\\\\n\"\\n' +\n ' time-until-up 0\\n' +\n ' timeout 16\\n' +\n '}',\n 'ltm monitor https /Common/global_https_monitor {\\n' +\n ' adaptive disabled\\n' +\n ' defaults-from /Common/https\\n' +\n ' interval 5\\n' +\n ' ip-dscp 0\\n' +\n ' recv \"201 continue\"\\n' +\n ' recv-disable none\\n' +\n ' send \"GET /any-secure-website.com\\\\r\\\\n\"\\n' +\n ' time-until-up 0\\n' +\n ' timeout 16\\n' +\n '}'\n]", - "[2023-04-27T20:22:48.029Z] [DEBUG]: [/Common/app2_t443_vs] found the following pool /Common/app2_t80_pool", - "[2023-04-27T20:22:48.029Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:48.029Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:48.029Z] [DEBUG]: [/Common/app2_t443_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:48.029Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:48.029Z] [DEBUG]: [/Common/app2_t443_vs] found snat configuration \n type automap", - "[2023-04-27T20:22:48.029Z] [INFO]: digging vs config for /Common/app3_t8443_vs", - "[2023-04-27T20:22:48.029Z] [DEBUG]: digging pool config for /Common/app3_t8443_pool", - "[2023-04-27T20:22:48.029Z] [DEBUG]: Pool /Common/app3_t8443_pool members found: [ '/Common/app3_Node1', '/Common/app3_Node2' ]", - "[2023-04-27T20:22:48.029Z] [DEBUG]: pool monitor references found: [\n '/Common/app1_tcp_half_open_quick_monitor',\n '/Common/http_head_f5',\n '/Common/http2_head_f5',\n '/Common/http',\n '/Common/tcp_half_open'\n]", - "[2023-04-27T20:22:48.030Z] [DEBUG]: pool monitor configs found: [\n 'ltm monitor tcp-half-open /Common/app1_tcp_half_open_quick_monitor {\\n' +\n ' defaults-from /Common/tcp_half_open\\n' +\n ' destination *:*\\n' +\n ' interval 1\\n' +\n ' time-until-up 0\\n' +\n ' timeout 4\\n' +\n '}'\n]", - "[2023-04-27T20:22:48.030Z] [DEBUG]: [/Common/app3_t8443_pool] references 4 system default monitors, compare previous arrays for details", - "[2023-04-27T20:22:48.030Z] [DEBUG]: [/Common/app3_t8443_vs] found the following pool /Common/app3_t8443_pool", - "[2023-04-27T20:22:48.030Z] [DEBUG]: profile references found: [\n '/Common/app3_clientssl',\n '/Common/app3_serverssl',\n '/Common/http',\n '/Common/tcp'\n]", - "[2023-04-27T20:22:48.030Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:48.030Z] [DEBUG]: [/Common/app3_t8443_vs] found the following profiles \n /Common/app3_clientssl {\n context clientside\n }\n /Common/app3_serverssl {\n context serverside\n }\n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:48.030Z] [DEBUG]: rule references found: [ '/Common/app3_rule', '/Common/app3_rule2', '/Common/app3_rule3' ]", - "[2023-04-27T20:22:48.030Z] [DEBUG]: [/Common/app3_t8443_vs] found the following rules \n /Common/app3_rule\n /Common/app3_rule2\n /Common/app3_rule3", - "[2023-04-27T20:22:48.030Z] [DEBUG]: [/Common/app3_t8443_vs] found snat configuration \n pool /Common/app3_snat_pool\n type snat", - "[2023-04-27T20:22:48.030Z] [DEBUG]: policy references found: [ '/Common/app3_ltm_policy' ]", - "[2023-04-27T20:22:48.030Z] [DEBUG]: policy found [/Common/app3_ltm_policy]", - "[2023-04-27T20:22:48.031Z] [DEBUG]: [/Common/app3_t8443_vs] found the following policies \n /Common/app3_ltm_policy { }", - "[2023-04-27T20:22:48.031Z] [DEBUG]: [/Common/app3_t8443_vs] found the following persistence \n /Common/app3_cookie {\n default yes\n }", - "[2023-04-27T20:22:48.031Z] [DEBUG]: [/Common/app3_t8443_vs] found the following persistence /Common/app3_srcAddr_persist", - "[2023-04-27T20:22:48.031Z] [INFO]: digging vs config for /Common/app4_t80_vs", - "[2023-04-27T20:22:48.031Z] [DEBUG]: digging pool config for /Common/app4_pool", - "[2023-04-27T20:22:48.031Z] [DEBUG]: Pool /Common/app4_pool members found: [ '/Common/api.chucknorris.io' ]", - "[2023-04-27T20:22:48.031Z] [DEBUG]: [/Common/app4_t80_vs] found the following pool /Common/app4_pool", - "[2023-04-27T20:22:48.031Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:48.031Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:48.031Z] [DEBUG]: [/Common/app4_t80_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:48.031Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect', '/Common/app4_pool_rule' ]", - "[2023-04-27T20:22:48.031Z] [DEBUG]: digging pool config for /Common/css_pool", - "[2023-04-27T20:22:48.031Z] [DEBUG]: digging pool config for /Common/jpg.pool", - "[2023-04-27T20:22:48.031Z] [DEBUG]: digging pool config for /Common/js.io_t80_pool", - "[2023-04-27T20:22:48.031Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details", - "[2023-04-27T20:22:48.032Z] [DEBUG]: [/Common/app4_t80_vs] found the following rules \n /Common/_sys_https_redirect\n /Common/app4_pool_rule", - "[2023-04-27T20:22:48.032Z] [DEBUG]: policy references found: [ '/Common/app4_ltPolicy' ]", - "[2023-04-27T20:22:48.032Z] [DEBUG]: policy found [/Common/app4_ltPolicy]", - "[2023-04-27T20:22:48.032Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/css_pool]", - "[2023-04-27T20:22:48.032Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/jpg.pool]", - "[2023-04-27T20:22:48.032Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/js.io_t80_pool]", - "[2023-04-27T20:22:48.032Z] [DEBUG]: [/Common/app4_t80_vs] found the following policies \n /Common/app4_ltPolicy { }", - "[2023-04-27T20:22:48.032Z] [INFO]: digging vs config for /Common/forwarder_net_0.0.0.0", - "[2023-04-27T20:22:48.032Z] [DEBUG]: profile references found: [ '/Common/fastl4_loose' ]", - "[2023-04-27T20:22:48.032Z] [DEBUG]: [/Common/forwarder_net_0.0.0.0] found the following profiles \n /Common/fastl4_loose { }", - "[2023-04-27T20:22:48.032Z] [INFO]: digging vs config for /foo/defaultsUDP_5555/serviceMain", - "[2023-04-27T20:22:48.032Z] [DEBUG]: digging pool config for /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1", - "[2023-04-27T20:22:48.032Z] [DEBUG]: Pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1 members found: [ '/foo/192.50.2.2' ]", - "[2023-04-27T20:22:48.032Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found the following pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1", - "[2023-04-27T20:22:48.032Z] [DEBUG]: profile references found: [ '/Common/udp' ]", - "[2023-04-27T20:22:48.032Z] [DEBUG]: Found 1 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:48.032Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found the following profiles \n /Common/udp { }", - "[2023-04-27T20:22:48.032Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:48.032Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found snat configuration \n type automap", - "[2023-04-27T20:22:48.032Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found the following persistence \n /Common/source_addr {\n default yes\n }", - "[2023-04-27T20:22:48.032Z] [INFO]: digging vs config for /hue-infra/hue-up/hue-up.benlab.io_t80_vs", - "[2023-04-27T20:22:48.032Z] [DEBUG]: digging pool config for /hue-infra/hue-up/hue-up.benlab.io_t80_pool", - "[2023-04-27T20:22:48.032Z] [DEBUG]: Pool /hue-infra/hue-up/hue-up.benlab.io_t80_pool members found: null", - "[2023-04-27T20:22:48.032Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found the following pool /hue-infra/hue-up/hue-up.benlab.io_t80_pool", - "[2023-04-27T20:22:48.032Z] [DEBUG]: profile references found: [ '/Common/f5-tcp-progressive', '/Common/http' ]", - "[2023-04-27T20:22:48.032Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:48.032Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found the following profiles \n /Common/f5-tcp-progressive { }\n /Common/http { }", - "[2023-04-27T20:22:48.032Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:48.032Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found snat configuration \n type automap", - "[2023-04-27T20:22:48.032Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found the following persistence \n /Common/cookie {\n default yes\n }", - "[2023-04-27T20:22:48.032Z] [INFO]: digging vs config for /hue-infra/hue-up/hue-up.benlab.io_t443_vs", - "[2023-04-27T20:22:48.032Z] [DEBUG]: digging pool config for /hue-infra/hue-up/hue-up.benlab.io_t443_pool", - "[2023-04-27T20:22:48.032Z] [DEBUG]: Pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool members found: null", - "[2023-04-27T20:22:48.032Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found the following pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool", - "[2023-04-27T20:22:48.033Z] [DEBUG]: profile references found: [ '/Common/f5-tcp-progressive', '/Common/http' ]", - "[2023-04-27T20:22:48.033Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:48.033Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found the following profiles \n /Common/f5-tcp-progressive { }\n /Common/http { }", - "[2023-04-27T20:22:48.033Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:48.033Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found snat configuration \n type automap", - "[2023-04-27T20:22:48.033Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found the following persistence \n /Common/cookie {\n default yes\n }", - "[2023-04-27T20:22:48.034Z] [INFO]: digging DO classes for base config info", - "[2023-04-27T20:22:48.034Z] [DEBUG]: no path \"cli global-settings\" in object", - "[2023-04-27T20:22:48.034Z] [DEBUG]: no path \"sys db\" in object", - "[2023-04-27T20:22:48.034Z] [DEBUG]: no path \"net trunk\" in object", - "[2023-04-27T20:22:48.034Z] [DEBUG]: no path \"net self\" in object", - "[2023-04-27T20:22:48.034Z] [DEBUG]: no path \"net route\" in object", - "[2023-04-27T20:22:48.034Z] [DEBUG]: no path \"net routing access-list\" in object", - "[2023-04-27T20:22:48.034Z] [DEBUG]: no path \"net routing as-path\" in object", - "[2023-04-27T20:22:48.034Z] [DEBUG]: no path \"net routing prefix-list\" in object", - "[2023-04-27T20:22:48.034Z] [DEBUG]: no path \"net routing route-map\" in object", - "[2023-04-27T20:22:48.034Z] [DEBUG]: no path \"net routing bgp\" in object", - "[2023-04-27T20:22:48.034Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", - "[2023-04-27T20:22:48.034Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", - "[2023-04-27T20:22:48.034Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", - "[2023-04-27T20:22:48.034Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", - "[2023-04-27T20:22:48.034Z] [DEBUG]: no path \"cm device-group\" in object", - "[2023-04-27T20:22:48.034Z] [DEBUG]: no path \"cm traffic-group\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"cm traffic-group\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"sys syslog\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"auth tacacs\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"auth remote-role role-info\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"auth ldap\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"sys snmp traps\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"sys snmp users\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"sys snmp communities\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"net dag-globals\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"ltm global-settings traffic-control\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"sys sshd\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"net tunnels vxlan\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"sys disk directory\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"gtm monitor http\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"gtm monitor https\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"gtm monitor gateway-icmp\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"gtm monitor tcp\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"gtm monitor udp\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"gtm prober-pool\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"security firewall policy\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"security firewall address-list\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"security firewall management-ip-rules\" in object", - "[2023-04-27T20:22:48.567Z] [DEBUG]: detected file: [/home/ted/f5-corkscrew/tests/artifacts/f5_corkscrew_test.qkview], size: [2580499]", - "[2023-04-27T20:22:48.569Z] [INFO]: config/profile_base.conf: default profile base file, stashing for later", - "[2023-04-27T20:22:48.569Z] [INFO]: config/low_profile_base.conf: default profile base file, stashing for later", - "[2023-04-27T20:22:48.570Z] [INFO]: Recieved .conf file of version: 15.1.8.2", - "[2023-04-27T20:22:48.841Z] [INFO]: digging vs config for /Common/app1_t80_vs", - "[2023-04-27T20:22:48.842Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:48.842Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:48.842Z] [DEBUG]: [/Common/app1_t80_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:48.842Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect' ]", - "[2023-04-27T20:22:48.842Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details", - "[2023-04-27T20:22:48.842Z] [DEBUG]: [/Common/app1_t80_vs] found the following rules \n /Common/_sys_https_redirect", - "[2023-04-27T20:22:48.842Z] [INFO]: digging vs config for /Common/app1_t443_vs", - "[2023-04-27T20:22:48.842Z] [DEBUG]: digging pool config for /Common/app1_t80_pool", - "[2023-04-27T20:22:48.843Z] [DEBUG]: Pool /Common/app1_t80_pool members found: [ '/Common/app1_Node1', '/Common/app1_Node2' ]", - "[2023-04-27T20:22:48.843Z] [DEBUG]: pool monitor references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:48.843Z] [DEBUG]: pool monitor configs found: []", - "[2023-04-27T20:22:48.843Z] [DEBUG]: [/Common/app1_t80_pool] references 2 system default monitors, compare previous arrays for details", - "[2023-04-27T20:22:48.843Z] [DEBUG]: [/Common/app1_t443_vs] found the following pool /Common/app1_t80_pool", - "[2023-04-27T20:22:48.843Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:48.843Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:48.843Z] [DEBUG]: [/Common/app1_t443_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:48.843Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:48.843Z] [DEBUG]: [/Common/app1_t443_vs] found snat configuration \n type automap", - "[2023-04-27T20:22:48.843Z] [INFO]: digging vs config for /Common/app2_t80_vs", - "[2023-04-27T20:22:48.843Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:48.843Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:48.843Z] [DEBUG]: [/Common/app2_t80_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:48.843Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect' ]", - "[2023-04-27T20:22:48.843Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details", - "[2023-04-27T20:22:48.843Z] [DEBUG]: [/Common/app2_t80_vs] found the following rules \n /Common/_sys_https_redirect", - "[2023-04-27T20:22:48.843Z] [INFO]: digging vs config for /Common/bigiq.benlab.io_t443_vs", - "[2023-04-27T20:22:48.843Z] [DEBUG]: digging pool config for /Common/bigiq.benlab.io_t443_pool", - "[2023-04-27T20:22:48.843Z] [DEBUG]: Pool /Common/bigiq.benlab.io_t443_pool members found: [ '/Common/10.200.244.15' ]", - "[2023-04-27T20:22:48.843Z] [DEBUG]: pool monitor references found: [ '/Common/https_head_f5' ]", - "[2023-04-27T20:22:48.843Z] [DEBUG]: pool monitor configs found: []", - "[2023-04-27T20:22:48.843Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_pool] references 1 system default monitors, compare previous arrays for details", - "[2023-04-27T20:22:48.843Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following pool /Common/bigiq.benlab.io_t443_pool", - "[2023-04-27T20:22:48.843Z] [DEBUG]: profile references found: [\n '/Common/ASM_basic_policy_1',\n '/Common/f5-tcp-progressive',\n '/Common/http',\n '/Common/websecurity'\n]", - "[2023-04-27T20:22:48.844Z] [DEBUG]: Found 4 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:48.844Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following profiles \n /Common/ASM_basic_policy_1 { }\n /Common/f5-tcp-progressive { }\n /Common/http { }\n /Common/websecurity { }", - "[2023-04-27T20:22:48.844Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:48.844Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found snat configuration \n type automap", - "[2023-04-27T20:22:48.844Z] [DEBUG]: policy references found: [ '/Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs' ]", - "[2023-04-27T20:22:48.844Z] [DEBUG]: policy found [/Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs]", - "[2023-04-27T20:22:48.844Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following policies \n /Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs { }", - "[2023-04-27T20:22:48.845Z] [INFO]: digging vs config for /Common/app2_t443_vs", - "[2023-04-27T20:22:48.845Z] [DEBUG]: digging pool config for /Common/app2_t80_pool", - "[2023-04-27T20:22:48.845Z] [DEBUG]: Pool /Common/app2_t80_pool members found: [ '/Common/app2_Node1', '/Common/app2_Node2' ]", - "[2023-04-27T20:22:48.845Z] [DEBUG]: pool monitor references found: [ '/Common/global_http_monitor', '/Common/global_https_monitor' ]", - "[2023-04-27T20:22:48.845Z] [DEBUG]: pool monitor configs found: [\n 'ltm monitor http /Common/global_http_monitor {\\n' +\n ' adaptive disabled\\n' +\n ' defaults-from /Common/http\\n' +\n ' interval 5\\n' +\n ' ip-dscp 0\\n' +\n ' recv \"ok 200\"\\n' +\n ' recv-disable none\\n' +\n ' send \"GET /anywebsite.com\\\\r\\\\n\"\\n' +\n ' time-until-up 0\\n' +\n ' timeout 16\\n' +\n '}',\n 'ltm monitor https /Common/global_https_monitor {\\n' +\n ' adaptive disabled\\n' +\n ' defaults-from /Common/https\\n' +\n ' interval 5\\n' +\n ' ip-dscp 0\\n' +\n ' recv \"201 continue\"\\n' +\n ' recv-disable none\\n' +\n ' send \"GET /any-secure-website.com\\\\r\\\\n\"\\n' +\n ' time-until-up 0\\n' +\n ' timeout 16\\n' +\n '}'\n]", - "[2023-04-27T20:22:48.845Z] [DEBUG]: [/Common/app2_t443_vs] found the following pool /Common/app2_t80_pool", - "[2023-04-27T20:22:48.845Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:48.845Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:48.845Z] [DEBUG]: [/Common/app2_t443_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:48.845Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:48.845Z] [DEBUG]: [/Common/app2_t443_vs] found snat configuration \n type automap", - "[2023-04-27T20:22:48.845Z] [INFO]: digging vs config for /Common/app3_t8443_vs", - "[2023-04-27T20:22:48.845Z] [DEBUG]: digging pool config for /Common/app3_t8443_pool", - "[2023-04-27T20:22:48.845Z] [DEBUG]: Pool /Common/app3_t8443_pool members found: [ '/Common/app3_Node1', '/Common/app3_Node2' ]", - "[2023-04-27T20:22:48.845Z] [DEBUG]: pool monitor references found: [\n '/Common/app1_tcp_half_open_quick_monitor',\n '/Common/http_head_f5',\n '/Common/http2_head_f5',\n '/Common/http',\n '/Common/tcp_half_open'\n]", - "[2023-04-27T20:22:48.845Z] [DEBUG]: pool monitor configs found: [\n 'ltm monitor tcp-half-open /Common/app1_tcp_half_open_quick_monitor {\\n' +\n ' defaults-from /Common/tcp_half_open\\n' +\n ' destination *:*\\n' +\n ' interval 1\\n' +\n ' time-until-up 0\\n' +\n ' timeout 4\\n' +\n '}'\n]", - "[2023-04-27T20:22:48.845Z] [DEBUG]: [/Common/app3_t8443_pool] references 4 system default monitors, compare previous arrays for details", - "[2023-04-27T20:22:48.845Z] [DEBUG]: [/Common/app3_t8443_vs] found the following pool /Common/app3_t8443_pool", - "[2023-04-27T20:22:48.845Z] [DEBUG]: profile references found: [\n '/Common/app3_clientssl',\n '/Common/app3_serverssl',\n '/Common/http',\n '/Common/tcp'\n]", - "[2023-04-27T20:22:48.845Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:48.845Z] [DEBUG]: [/Common/app3_t8443_vs] found the following profiles \n /Common/app3_clientssl {\n context clientside\n }\n /Common/app3_serverssl {\n context serverside\n }\n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:48.845Z] [DEBUG]: rule references found: [ '/Common/app3_rule', '/Common/app3_rule2', '/Common/app3_rule3' ]", - "[2023-04-27T20:22:48.846Z] [DEBUG]: [/Common/app3_t8443_vs] found the following rules \n /Common/app3_rule\n /Common/app3_rule2\n /Common/app3_rule3", - "[2023-04-27T20:22:48.846Z] [DEBUG]: [/Common/app3_t8443_vs] found snat configuration \n pool /Common/app3_snat_pool\n type snat", - "[2023-04-27T20:22:48.846Z] [DEBUG]: policy references found: [ '/Common/app3_ltm_policy' ]", - "[2023-04-27T20:22:48.846Z] [DEBUG]: policy found [/Common/app3_ltm_policy]", - "[2023-04-27T20:22:48.846Z] [DEBUG]: [/Common/app3_t8443_vs] found the following policies \n /Common/app3_ltm_policy { }", - "[2023-04-27T20:22:48.846Z] [DEBUG]: [/Common/app3_t8443_vs] found the following persistence \n /Common/app3_cookie {\n default yes\n }", - "[2023-04-27T20:22:48.846Z] [DEBUG]: [/Common/app3_t8443_vs] found the following persistence /Common/app3_srcAddr_persist", - "[2023-04-27T20:22:48.846Z] [INFO]: digging vs config for /Common/app4_t80_vs", - "[2023-04-27T20:22:48.846Z] [DEBUG]: digging pool config for /Common/app4_pool", - "[2023-04-27T20:22:48.846Z] [DEBUG]: Pool /Common/app4_pool members found: [ '/Common/api.chucknorris.io' ]", - "[2023-04-27T20:22:48.846Z] [DEBUG]: [/Common/app4_t80_vs] found the following pool /Common/app4_pool", - "[2023-04-27T20:22:48.846Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:48.846Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:48.846Z] [DEBUG]: [/Common/app4_t80_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:48.846Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect', '/Common/app4_pool_rule' ]", - "[2023-04-27T20:22:48.846Z] [DEBUG]: digging pool config for /Common/css_pool", - "[2023-04-27T20:22:48.846Z] [DEBUG]: digging pool config for /Common/jpg.pool", - "[2023-04-27T20:22:48.846Z] [DEBUG]: digging pool config for /Common/js.io_t80_pool", - "[2023-04-27T20:22:48.847Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details", - "[2023-04-27T20:22:48.847Z] [DEBUG]: [/Common/app4_t80_vs] found the following rules \n /Common/_sys_https_redirect\n /Common/app4_pool_rule", - "[2023-04-27T20:22:48.847Z] [DEBUG]: policy references found: [ '/Common/app4_ltPolicy' ]", - "[2023-04-27T20:22:48.847Z] [DEBUG]: policy found [/Common/app4_ltPolicy]", - "[2023-04-27T20:22:48.847Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/css_pool]", - "[2023-04-27T20:22:48.847Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/jpg.pool]", - "[2023-04-27T20:22:48.847Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/js.io_t80_pool]", - "[2023-04-27T20:22:48.847Z] [DEBUG]: [/Common/app4_t80_vs] found the following policies \n /Common/app4_ltPolicy { }", - "[2023-04-27T20:22:48.847Z] [INFO]: digging vs config for /Common/forwarder_net_0.0.0.0", - "[2023-04-27T20:22:48.847Z] [DEBUG]: profile references found: [ '/Common/fastl4_loose' ]", - "[2023-04-27T20:22:48.847Z] [DEBUG]: [/Common/forwarder_net_0.0.0.0] found the following profiles \n /Common/fastl4_loose { }", - "[2023-04-27T20:22:48.847Z] [INFO]: digging vs config for /foo/defaultsUDP_5555/serviceMain", - "[2023-04-27T20:22:48.847Z] [DEBUG]: digging pool config for /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1", - "[2023-04-27T20:22:48.847Z] [DEBUG]: Pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1 members found: [ '/foo/192.50.2.2' ]", - "[2023-04-27T20:22:48.847Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found the following pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1", - "[2023-04-27T20:22:48.847Z] [DEBUG]: profile references found: [ '/Common/udp' ]", - "[2023-04-27T20:22:48.847Z] [DEBUG]: Found 1 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:48.847Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found the following profiles \n /Common/udp { }", - "[2023-04-27T20:22:48.847Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:48.847Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found snat configuration \n type automap", - "[2023-04-27T20:22:48.847Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found the following persistence \n /Common/source_addr {\n default yes\n }", - "[2023-04-27T20:22:48.847Z] [INFO]: digging vs config for /hue-infra/hue-up/hue-up.benlab.io_t80_vs", - "[2023-04-27T20:22:48.847Z] [DEBUG]: digging pool config for /hue-infra/hue-up/hue-up.benlab.io_t80_pool", - "[2023-04-27T20:22:48.847Z] [DEBUG]: Pool /hue-infra/hue-up/hue-up.benlab.io_t80_pool members found: null", - "[2023-04-27T20:22:48.847Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found the following pool /hue-infra/hue-up/hue-up.benlab.io_t80_pool", - "[2023-04-27T20:22:48.847Z] [DEBUG]: profile references found: [ '/Common/f5-tcp-progressive', '/Common/http' ]", - "[2023-04-27T20:22:48.847Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:48.847Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found the following profiles \n /Common/f5-tcp-progressive { }\n /Common/http { }", - "[2023-04-27T20:22:48.847Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:48.847Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found snat configuration \n type automap", - "[2023-04-27T20:22:48.847Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found the following persistence \n /Common/cookie {\n default yes\n }", - "[2023-04-27T20:22:48.847Z] [INFO]: digging vs config for /hue-infra/hue-up/hue-up.benlab.io_t443_vs", - "[2023-04-27T20:22:48.847Z] [DEBUG]: digging pool config for /hue-infra/hue-up/hue-up.benlab.io_t443_pool", - "[2023-04-27T20:22:48.847Z] [DEBUG]: Pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool members found: null", - "[2023-04-27T20:22:48.847Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found the following pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool", - "[2023-04-27T20:22:48.847Z] [DEBUG]: profile references found: [ '/Common/f5-tcp-progressive', '/Common/http' ]", - "[2023-04-27T20:22:48.847Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:48.847Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found the following profiles \n /Common/f5-tcp-progressive { }\n /Common/http { }", - "[2023-04-27T20:22:48.847Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:48.847Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found snat configuration \n type automap", - "[2023-04-27T20:22:48.847Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found the following persistence \n /Common/cookie {\n default yes\n }", - "[2023-04-27T20:22:48.848Z] [INFO]: digging DO classes for base config info", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"cli global-settings\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"sys db\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"net trunk\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"net self\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"net route\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"net routing access-list\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"net routing as-path\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"net routing prefix-list\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"net routing route-map\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"net routing bgp\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"cm device-group\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"cm traffic-group\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"cm traffic-group\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"sys syslog\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"auth tacacs\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"auth remote-role role-info\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"auth ldap\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"sys snmp traps\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"sys snmp users\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"sys snmp communities\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"net dag-globals\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"ltm global-settings traffic-control\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"sys sshd\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"net tunnels vxlan\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"sys disk directory\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"gtm monitor http\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"gtm monitor https\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"gtm monitor gateway-icmp\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"gtm monitor tcp\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"gtm monitor udp\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"gtm prober-pool\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"security firewall policy\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"security firewall address-list\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"security firewall management-ip-rules\" in object", - "[2023-04-27T20:22:49.276Z] [DEBUG]: got .conf file [/home/ted/f5-corkscrew/tests/artifacts/f5_corkscrew_test.conf], size [76020]", - "[2023-04-27T20:22:49.276Z] [INFO]: Recieved .conf file of version: 15.1.8.2", - "[2023-04-27T20:22:49.293Z] [INFO]: digging vs config for /Common/app1_t80_vs", - "[2023-04-27T20:22:49.294Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:49.294Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:49.294Z] [DEBUG]: [/Common/app1_t80_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:49.294Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect' ]", - "[2023-04-27T20:22:49.294Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details", - "[2023-04-27T20:22:49.294Z] [DEBUG]: [/Common/app1_t80_vs] found the following rules \n /Common/_sys_https_redirect", - "[2023-04-27T20:22:49.294Z] [INFO]: digging vs config for /Common/app1_t443_vs", - "[2023-04-27T20:22:49.294Z] [DEBUG]: digging pool config for /Common/app1_t80_pool", - "[2023-04-27T20:22:49.294Z] [DEBUG]: Pool /Common/app1_t80_pool members found: [ '/Common/app1_Node1', '/Common/app1_Node2' ]", - "[2023-04-27T20:22:49.294Z] [DEBUG]: pool monitor references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:49.294Z] [DEBUG]: pool monitor configs found: []", - "[2023-04-27T20:22:49.294Z] [DEBUG]: [/Common/app1_t80_pool] references 2 system default monitors, compare previous arrays for details", - "[2023-04-27T20:22:49.294Z] [DEBUG]: [/Common/app1_t443_vs] found the following pool /Common/app1_t80_pool", - "[2023-04-27T20:22:49.294Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:49.294Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:49.294Z] [DEBUG]: [/Common/app1_t443_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:49.294Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:49.294Z] [DEBUG]: [/Common/app1_t443_vs] found snat configuration \n type automap", - "[2023-04-27T20:22:49.294Z] [INFO]: digging vs config for /Common/app2_t80_vs", - "[2023-04-27T20:22:49.294Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:49.294Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:49.294Z] [DEBUG]: [/Common/app2_t80_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:49.294Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect' ]", - "[2023-04-27T20:22:49.294Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details", - "[2023-04-27T20:22:49.294Z] [DEBUG]: [/Common/app2_t80_vs] found the following rules \n /Common/_sys_https_redirect", - "[2023-04-27T20:22:49.295Z] [INFO]: digging vs config for /Common/bigiq.benlab.io_t443_vs", - "[2023-04-27T20:22:49.295Z] [DEBUG]: digging pool config for /Common/bigiq.benlab.io_t443_pool", - "[2023-04-27T20:22:49.295Z] [DEBUG]: Pool /Common/bigiq.benlab.io_t443_pool members found: [ '/Common/10.200.244.15' ]", - "[2023-04-27T20:22:49.295Z] [DEBUG]: pool monitor references found: [ '/Common/https_head_f5' ]", - "[2023-04-27T20:22:49.295Z] [DEBUG]: pool monitor configs found: []", - "[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_pool] references 1 system default monitors, compare previous arrays for details", - "[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following pool /Common/bigiq.benlab.io_t443_pool", - "[2023-04-27T20:22:49.295Z] [DEBUG]: profile references found: [\n '/Common/ASM_basic_policy_1',\n '/Common/f5-tcp-progressive',\n '/Common/http',\n '/Common/websecurity'\n]", - "[2023-04-27T20:22:49.295Z] [DEBUG]: Found 4 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following profiles \n /Common/ASM_basic_policy_1 { }\n /Common/f5-tcp-progressive { }\n /Common/http { }\n /Common/websecurity { }", - "[2023-04-27T20:22:49.295Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found snat configuration \n type automap", - "[2023-04-27T20:22:49.295Z] [DEBUG]: policy references found: [ '/Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs' ]", - "[2023-04-27T20:22:49.295Z] [DEBUG]: policy found [/Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs]", - "[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following policies \n /Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs { }", - "[2023-04-27T20:22:49.295Z] [INFO]: digging vs config for /Common/app2_t443_vs", - "[2023-04-27T20:22:49.295Z] [DEBUG]: digging pool config for /Common/app2_t80_pool", - "[2023-04-27T20:22:49.295Z] [DEBUG]: Pool /Common/app2_t80_pool members found: [ '/Common/app2_Node1', '/Common/app2_Node2' ]", - "[2023-04-27T20:22:49.295Z] [DEBUG]: pool monitor references found: [ '/Common/global_http_monitor', '/Common/global_https_monitor' ]", - "[2023-04-27T20:22:49.295Z] [DEBUG]: pool monitor configs found: [\n 'ltm monitor http /Common/global_http_monitor {\\n' +\n ' adaptive disabled\\n' +\n ' defaults-from /Common/http\\n' +\n ' interval 5\\n' +\n ' ip-dscp 0\\n' +\n ' recv \"ok 200\"\\n' +\n ' recv-disable none\\n' +\n ' send \"GET /anywebsite.com\\\\r\\\\n\"\\n' +\n ' time-until-up 0\\n' +\n ' timeout 16\\n' +\n '}',\n 'ltm monitor https /Common/global_https_monitor {\\n' +\n ' adaptive disabled\\n' +\n ' defaults-from /Common/https\\n' +\n ' interval 5\\n' +\n ' ip-dscp 0\\n' +\n ' recv \"201 continue\"\\n' +\n ' recv-disable none\\n' +\n ' send \"GET /any-secure-website.com\\\\r\\\\n\"\\n' +\n ' time-until-up 0\\n' +\n ' timeout 16\\n' +\n '}'\n]", - "[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/app2_t443_vs] found the following pool /Common/app2_t80_pool", - "[2023-04-27T20:22:49.295Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:49.295Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/app2_t443_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:49.295Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/app2_t443_vs] found snat configuration \n type automap", - "[2023-04-27T20:22:49.295Z] [INFO]: digging vs config for /Common/app3_t8443_vs", - "[2023-04-27T20:22:49.295Z] [DEBUG]: digging pool config for /Common/app3_t8443_pool", - "[2023-04-27T20:22:49.295Z] [DEBUG]: Pool /Common/app3_t8443_pool members found: [ '/Common/app3_Node1', '/Common/app3_Node2' ]", - "[2023-04-27T20:22:49.295Z] [DEBUG]: pool monitor references found: [\n '/Common/app1_tcp_half_open_quick_monitor',\n '/Common/http_head_f5',\n '/Common/http2_head_f5',\n '/Common/http',\n '/Common/tcp_half_open'\n]", - "[2023-04-27T20:22:49.295Z] [DEBUG]: pool monitor configs found: [\n 'ltm monitor tcp-half-open /Common/app1_tcp_half_open_quick_monitor {\\n' +\n ' defaults-from /Common/tcp_half_open\\n' +\n ' destination *:*\\n' +\n ' interval 1\\n' +\n ' time-until-up 0\\n' +\n ' timeout 4\\n' +\n '}'\n]", - "[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/app3_t8443_pool] references 4 system default monitors, compare previous arrays for details", - "[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/app3_t8443_vs] found the following pool /Common/app3_t8443_pool", - "[2023-04-27T20:22:49.295Z] [DEBUG]: profile references found: [\n '/Common/app3_clientssl',\n '/Common/app3_serverssl',\n '/Common/http',\n '/Common/tcp'\n]", - "[2023-04-27T20:22:49.295Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/app3_t8443_vs] found the following profiles \n /Common/app3_clientssl {\n context clientside\n }\n /Common/app3_serverssl {\n context serverside\n }\n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:49.295Z] [DEBUG]: rule references found: [ '/Common/app3_rule', '/Common/app3_rule2', '/Common/app3_rule3' ]", - "[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/app3_t8443_vs] found the following rules \n /Common/app3_rule\n /Common/app3_rule2\n /Common/app3_rule3", - "[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/app3_t8443_vs] found snat configuration \n pool /Common/app3_snat_pool\n type snat", - "[2023-04-27T20:22:49.296Z] [DEBUG]: policy references found: [ '/Common/app3_ltm_policy' ]", - "[2023-04-27T20:22:49.296Z] [DEBUG]: policy found [/Common/app3_ltm_policy]", - "[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/app3_t8443_vs] found the following policies \n /Common/app3_ltm_policy { }", - "[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/app3_t8443_vs] found the following persistence \n /Common/app3_cookie {\n default yes\n }", - "[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/app3_t8443_vs] found the following persistence /Common/app3_srcAddr_persist", - "[2023-04-27T20:22:49.296Z] [INFO]: digging vs config for /Common/app4_t80_vs", - "[2023-04-27T20:22:49.296Z] [DEBUG]: digging pool config for /Common/app4_pool", - "[2023-04-27T20:22:49.296Z] [DEBUG]: Pool /Common/app4_pool members found: [ '/Common/api.chucknorris.io' ]", - "[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/app4_t80_vs] found the following pool /Common/app4_pool", - "[2023-04-27T20:22:49.296Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:49.296Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/app4_t80_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:49.296Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect', '/Common/app4_pool_rule' ]", - "[2023-04-27T20:22:49.296Z] [DEBUG]: digging pool config for /Common/css_pool", - "[2023-04-27T20:22:49.296Z] [DEBUG]: digging pool config for /Common/jpg.pool", - "[2023-04-27T20:22:49.296Z] [DEBUG]: digging pool config for /Common/js.io_t80_pool", - "[2023-04-27T20:22:49.296Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details", - "[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/app4_t80_vs] found the following rules \n /Common/_sys_https_redirect\n /Common/app4_pool_rule", - "[2023-04-27T20:22:49.296Z] [DEBUG]: policy references found: [ '/Common/app4_ltPolicy' ]", - "[2023-04-27T20:22:49.296Z] [DEBUG]: policy found [/Common/app4_ltPolicy]", - "[2023-04-27T20:22:49.296Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/css_pool]", - "[2023-04-27T20:22:49.296Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/jpg.pool]", - "[2023-04-27T20:22:49.296Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/js.io_t80_pool]", - "[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/app4_t80_vs] found the following policies \n /Common/app4_ltPolicy { }", - "[2023-04-27T20:22:49.296Z] [INFO]: digging vs config for /Common/forwarder_net_0.0.0.0", - "[2023-04-27T20:22:49.296Z] [DEBUG]: profile references found: [ '/Common/fastl4_loose' ]", - "[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/forwarder_net_0.0.0.0] found the following profiles \n /Common/fastl4_loose { }", - "[2023-04-27T20:22:49.296Z] [INFO]: digging DO classes for base config info", - "[2023-04-27T20:22:49.296Z] [DEBUG]: no path \"sys global-settings\" in object", - "[2023-04-27T20:22:49.296Z] [DEBUG]: no path \"cli global-settings\" in object", - "[2023-04-27T20:22:49.296Z] [DEBUG]: no path \"sys db\" in object", - "[2023-04-27T20:22:49.296Z] [DEBUG]: no path \"sys management-ip\" in object", - "[2023-04-27T20:22:49.296Z] [DEBUG]: no path \"sys provision\" in object", - "[2023-04-27T20:22:49.296Z] [DEBUG]: no path \"sys ntp\" in object", - "[2023-04-27T20:22:49.296Z] [DEBUG]: no path \"sys dns\" in object", - "[2023-04-27T20:22:49.296Z] [DEBUG]: no path \"net trunk\" in object", - "[2023-04-27T20:22:49.296Z] [DEBUG]: no path \"net vlan\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"net self\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"net route\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"net routing access-list\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"net routing as-path\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"net routing prefix-list\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"net routing route-map\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"net routing bgp\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"cm device-group\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"cm traffic-group\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"cm traffic-group\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"sys management-route\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"sys syslog\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"auth tacacs\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"net route-domain\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"auth remote-role role-info\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"auth ldap\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"sys snmp\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"sys snmp traps\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"sys snmp\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"sys snmp users\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"sys snmp communities\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"net dag-globals\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"sys httpd\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"ltm global-settings traffic-control\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"sys sshd\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"net tunnels tunnel\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"net tunnels vxlan\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"sys disk directory\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"gtm global-settings general\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"gtm datacenter\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"gtm server\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"gtm monitor http\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"gtm monitor https\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"gtm monitor gateway-icmp\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"gtm monitor tcp\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"gtm monitor udp\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"gtm prober-pool\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"security firewall policy\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"security firewall address-list\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"security firewall port-list\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"security firewall management-ip-rules\" in object" + "[2023-05-24T01:12:41.404Z] DeBuG: 'regular date log message'", + "[5/23/2023, 6:12:41 PM] DeBuG: 'toLocalString date log message'", + "[Wed, 24 May 2023 01:12:41 GMT] DeBuG: 'to UTC date log message'", + "[2023-05-24T01:12:43.861Z] [ERROR]: >v19.0.0.0 tmos detected - this should never happen!!!", + "[2023-05-24T01:12:43.862Z] [ERROR]: v19.0.0.0 tmos detected - this should never happen!!! -[2023-04-27T20:22:47.058Z] [ERROR]: automap -[2023-04-27T20:22:48.027Z] [DEBUG]: [/Common/app1_t443_vs] found snat configuration - type automap -[2023-04-27T20:22:48.027Z] [INFO]: digging vs config for /Common/app2_t80_vs -[2023-04-27T20:22:48.027Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:48.028Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:48.028Z] [DEBUG]: [/Common/app2_t80_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:48.028Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect' ] -[2023-04-27T20:22:48.028Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details -[2023-04-27T20:22:48.028Z] [DEBUG]: [/Common/app2_t80_vs] found the following rules - /Common/_sys_https_redirect -[2023-04-27T20:22:48.028Z] [INFO]: digging vs config for /Common/bigiq.benlab.io_t443_vs -[2023-04-27T20:22:48.028Z] [DEBUG]: digging pool config for /Common/bigiq.benlab.io_t443_pool -[2023-04-27T20:22:48.028Z] [DEBUG]: Pool /Common/bigiq.benlab.io_t443_pool members found: [ '/Common/10.200.244.15' ] -[2023-04-27T20:22:48.028Z] [DEBUG]: pool monitor references found: [ '/Common/https_head_f5' ] -[2023-04-27T20:22:48.028Z] [DEBUG]: pool monitor configs found: [] -[2023-04-27T20:22:48.028Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_pool] references 1 system default monitors, compare previous arrays for details -[2023-04-27T20:22:48.028Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following pool /Common/bigiq.benlab.io_t443_pool -[2023-04-27T20:22:48.028Z] [DEBUG]: profile references found: [ - '/Common/ASM_basic_policy_1', - '/Common/f5-tcp-progressive', - '/Common/http', - '/Common/websecurity' -] -[2023-04-27T20:22:48.028Z] [DEBUG]: Found 4 system default profiles, compare previous arrays for details -[2023-04-27T20:22:48.028Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following profiles - /Common/ASM_basic_policy_1 { } - /Common/f5-tcp-progressive { } - /Common/http { } - /Common/websecurity { } -[2023-04-27T20:22:48.028Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:48.028Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found snat configuration - type automap -[2023-04-27T20:22:48.028Z] [DEBUG]: policy references found: [ '/Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs' ] -[2023-04-27T20:22:48.028Z] [DEBUG]: policy found [/Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs] -[2023-04-27T20:22:48.028Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following policies - /Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs { } -[2023-04-27T20:22:48.029Z] [INFO]: digging vs config for /Common/app2_t443_vs -[2023-04-27T20:22:48.029Z] [DEBUG]: digging pool config for /Common/app2_t80_pool -[2023-04-27T20:22:48.029Z] [DEBUG]: Pool /Common/app2_t80_pool members found: [ '/Common/app2_Node1', '/Common/app2_Node2' ] -[2023-04-27T20:22:48.029Z] [DEBUG]: pool monitor references found: [ '/Common/global_http_monitor', '/Common/global_https_monitor' ] -[2023-04-27T20:22:48.029Z] [DEBUG]: pool monitor configs found: [ - 'ltm monitor http /Common/global_http_monitor {\n' + - ' adaptive disabled\n' + - ' defaults-from /Common/http\n' + - ' interval 5\n' + - ' ip-dscp 0\n' + - ' recv "ok 200"\n' + - ' recv-disable none\n' + - ' send "GET /anywebsite.com\\r\\n"\n' + - ' time-until-up 0\n' + - ' timeout 16\n' + - '}', - 'ltm monitor https /Common/global_https_monitor {\n' + - ' adaptive disabled\n' + - ' defaults-from /Common/https\n' + - ' interval 5\n' + - ' ip-dscp 0\n' + - ' recv "201 continue"\n' + - ' recv-disable none\n' + - ' send "GET /any-secure-website.com\\r\\n"\n' + - ' time-until-up 0\n' + - ' timeout 16\n' + - '}' -] -[2023-04-27T20:22:48.029Z] [DEBUG]: [/Common/app2_t443_vs] found the following pool /Common/app2_t80_pool -[2023-04-27T20:22:48.029Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:48.029Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:48.029Z] [DEBUG]: [/Common/app2_t443_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:48.029Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:48.029Z] [DEBUG]: [/Common/app2_t443_vs] found snat configuration - type automap -[2023-04-27T20:22:48.029Z] [INFO]: digging vs config for /Common/app3_t8443_vs -[2023-04-27T20:22:48.029Z] [DEBUG]: digging pool config for /Common/app3_t8443_pool -[2023-04-27T20:22:48.029Z] [DEBUG]: Pool /Common/app3_t8443_pool members found: [ '/Common/app3_Node1', '/Common/app3_Node2' ] -[2023-04-27T20:22:48.029Z] [DEBUG]: pool monitor references found: [ - '/Common/app1_tcp_half_open_quick_monitor', - '/Common/http_head_f5', - '/Common/http2_head_f5', - '/Common/http', - '/Common/tcp_half_open' -] -[2023-04-27T20:22:48.030Z] [DEBUG]: pool monitor configs found: [ - 'ltm monitor tcp-half-open /Common/app1_tcp_half_open_quick_monitor {\n' + - ' defaults-from /Common/tcp_half_open\n' + - ' destination *:*\n' + - ' interval 1\n' + - ' time-until-up 0\n' + - ' timeout 4\n' + - '}' -] -[2023-04-27T20:22:48.030Z] [DEBUG]: [/Common/app3_t8443_pool] references 4 system default monitors, compare previous arrays for details -[2023-04-27T20:22:48.030Z] [DEBUG]: [/Common/app3_t8443_vs] found the following pool /Common/app3_t8443_pool -[2023-04-27T20:22:48.030Z] [DEBUG]: profile references found: [ - '/Common/app3_clientssl', - '/Common/app3_serverssl', - '/Common/http', - '/Common/tcp' -] -[2023-04-27T20:22:48.030Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:48.030Z] [DEBUG]: [/Common/app3_t8443_vs] found the following profiles - /Common/app3_clientssl { - context clientside - } - /Common/app3_serverssl { - context serverside - } - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:48.030Z] [DEBUG]: rule references found: [ '/Common/app3_rule', '/Common/app3_rule2', '/Common/app3_rule3' ] -[2023-04-27T20:22:48.030Z] [DEBUG]: [/Common/app3_t8443_vs] found the following rules - /Common/app3_rule - /Common/app3_rule2 - /Common/app3_rule3 -[2023-04-27T20:22:48.030Z] [DEBUG]: [/Common/app3_t8443_vs] found snat configuration - pool /Common/app3_snat_pool - type snat -[2023-04-27T20:22:48.030Z] [DEBUG]: policy references found: [ '/Common/app3_ltm_policy' ] -[2023-04-27T20:22:48.030Z] [DEBUG]: policy found [/Common/app3_ltm_policy] -[2023-04-27T20:22:48.031Z] [DEBUG]: [/Common/app3_t8443_vs] found the following policies - /Common/app3_ltm_policy { } -[2023-04-27T20:22:48.031Z] [DEBUG]: [/Common/app3_t8443_vs] found the following persistence - /Common/app3_cookie { - default yes - } -[2023-04-27T20:22:48.031Z] [DEBUG]: [/Common/app3_t8443_vs] found the following persistence /Common/app3_srcAddr_persist -[2023-04-27T20:22:48.031Z] [INFO]: digging vs config for /Common/app4_t80_vs -[2023-04-27T20:22:48.031Z] [DEBUG]: digging pool config for /Common/app4_pool -[2023-04-27T20:22:48.031Z] [DEBUG]: Pool /Common/app4_pool members found: [ '/Common/api.chucknorris.io' ] -[2023-04-27T20:22:48.031Z] [DEBUG]: [/Common/app4_t80_vs] found the following pool /Common/app4_pool -[2023-04-27T20:22:48.031Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:48.031Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:48.031Z] [DEBUG]: [/Common/app4_t80_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:48.031Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect', '/Common/app4_pool_rule' ] -[2023-04-27T20:22:48.031Z] [DEBUG]: digging pool config for /Common/css_pool -[2023-04-27T20:22:48.031Z] [DEBUG]: digging pool config for /Common/jpg.pool -[2023-04-27T20:22:48.031Z] [DEBUG]: digging pool config for /Common/js.io_t80_pool -[2023-04-27T20:22:48.031Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details -[2023-04-27T20:22:48.032Z] [DEBUG]: [/Common/app4_t80_vs] found the following rules - /Common/_sys_https_redirect - /Common/app4_pool_rule -[2023-04-27T20:22:48.032Z] [DEBUG]: policy references found: [ '/Common/app4_ltPolicy' ] -[2023-04-27T20:22:48.032Z] [DEBUG]: policy found [/Common/app4_ltPolicy] -[2023-04-27T20:22:48.032Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/css_pool] -[2023-04-27T20:22:48.032Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/jpg.pool] -[2023-04-27T20:22:48.032Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/js.io_t80_pool] -[2023-04-27T20:22:48.032Z] [DEBUG]: [/Common/app4_t80_vs] found the following policies - /Common/app4_ltPolicy { } -[2023-04-27T20:22:48.032Z] [INFO]: digging vs config for /Common/forwarder_net_0.0.0.0 -[2023-04-27T20:22:48.032Z] [DEBUG]: profile references found: [ '/Common/fastl4_loose' ] -[2023-04-27T20:22:48.032Z] [DEBUG]: [/Common/forwarder_net_0.0.0.0] found the following profiles - /Common/fastl4_loose { } -[2023-04-27T20:22:48.032Z] [INFO]: digging vs config for /foo/defaultsUDP_5555/serviceMain -[2023-04-27T20:22:48.032Z] [DEBUG]: digging pool config for /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1 -[2023-04-27T20:22:48.032Z] [DEBUG]: Pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1 members found: [ '/foo/192.50.2.2' ] -[2023-04-27T20:22:48.032Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found the following pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1 -[2023-04-27T20:22:48.032Z] [DEBUG]: profile references found: [ '/Common/udp' ] -[2023-04-27T20:22:48.032Z] [DEBUG]: Found 1 system default profiles, compare previous arrays for details -[2023-04-27T20:22:48.032Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found the following profiles - /Common/udp { } -[2023-04-27T20:22:48.032Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:48.032Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found snat configuration - type automap -[2023-04-27T20:22:48.032Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found the following persistence - /Common/source_addr { - default yes - } -[2023-04-27T20:22:48.032Z] [INFO]: digging vs config for /hue-infra/hue-up/hue-up.benlab.io_t80_vs -[2023-04-27T20:22:48.032Z] [DEBUG]: digging pool config for /hue-infra/hue-up/hue-up.benlab.io_t80_pool -[2023-04-27T20:22:48.032Z] [DEBUG]: Pool /hue-infra/hue-up/hue-up.benlab.io_t80_pool members found: null -[2023-04-27T20:22:48.032Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found the following pool /hue-infra/hue-up/hue-up.benlab.io_t80_pool -[2023-04-27T20:22:48.032Z] [DEBUG]: profile references found: [ '/Common/f5-tcp-progressive', '/Common/http' ] -[2023-04-27T20:22:48.032Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:48.032Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found the following profiles - /Common/f5-tcp-progressive { } - /Common/http { } -[2023-04-27T20:22:48.032Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:48.032Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found snat configuration - type automap -[2023-04-27T20:22:48.032Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found the following persistence - /Common/cookie { - default yes - } -[2023-04-27T20:22:48.032Z] [INFO]: digging vs config for /hue-infra/hue-up/hue-up.benlab.io_t443_vs -[2023-04-27T20:22:48.032Z] [DEBUG]: digging pool config for /hue-infra/hue-up/hue-up.benlab.io_t443_pool -[2023-04-27T20:22:48.032Z] [DEBUG]: Pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool members found: null -[2023-04-27T20:22:48.032Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found the following pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool -[2023-04-27T20:22:48.033Z] [DEBUG]: profile references found: [ '/Common/f5-tcp-progressive', '/Common/http' ] -[2023-04-27T20:22:48.033Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:48.033Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found the following profiles - /Common/f5-tcp-progressive { } - /Common/http { } -[2023-04-27T20:22:48.033Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:48.033Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found snat configuration - type automap -[2023-04-27T20:22:48.033Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found the following persistence - /Common/cookie { - default yes - } -[2023-04-27T20:22:48.034Z] [INFO]: digging DO classes for base config info -[2023-04-27T20:22:48.034Z] [DEBUG]: no path "cli global-settings" in object -[2023-04-27T20:22:48.034Z] [DEBUG]: no path "sys db" in object -[2023-04-27T20:22:48.034Z] [DEBUG]: no path "net trunk" in object -[2023-04-27T20:22:48.034Z] [DEBUG]: no path "net self" in object -[2023-04-27T20:22:48.034Z] [DEBUG]: no path "net route" in object -[2023-04-27T20:22:48.034Z] [DEBUG]: no path "net routing access-list" in object -[2023-04-27T20:22:48.034Z] [DEBUG]: no path "net routing as-path" in object -[2023-04-27T20:22:48.034Z] [DEBUG]: no path "net routing prefix-list" in object -[2023-04-27T20:22:48.034Z] [DEBUG]: no path "net routing route-map" in object -[2023-04-27T20:22:48.034Z] [DEBUG]: no path "net routing bgp" in object -[2023-04-27T20:22:48.034Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object -[2023-04-27T20:22:48.034Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object -[2023-04-27T20:22:48.034Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object -[2023-04-27T20:22:48.034Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object -[2023-04-27T20:22:48.034Z] [DEBUG]: no path "cm device-group" in object -[2023-04-27T20:22:48.034Z] [DEBUG]: no path "cm traffic-group" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "cm traffic-group" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "sys syslog" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "auth tacacs" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "auth remote-role role-info" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "auth ldap" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "sys snmp traps" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "sys snmp users" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "sys snmp communities" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "net dag-globals" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "ltm global-settings traffic-control" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "sys sshd" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "net tunnels vxlan" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "sys disk directory" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "gtm monitor http" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "gtm monitor https" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "gtm monitor gateway-icmp" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "gtm monitor tcp" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "gtm monitor udp" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "gtm prober-pool" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "security firewall policy" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "security firewall address-list" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "security firewall management-ip-rules" in object -[2023-04-27T20:22:48.567Z] [DEBUG]: detected file: [/home/ted/f5-corkscrew/tests/artifacts/f5_corkscrew_test.qkview], size: [2580499] -[2023-04-27T20:22:48.569Z] [INFO]: config/profile_base.conf: default profile base file, stashing for later -[2023-04-27T20:22:48.569Z] [INFO]: config/low_profile_base.conf: default profile base file, stashing for later -[2023-04-27T20:22:48.570Z] [INFO]: Recieved .conf file of version: 15.1.8.2 -[2023-04-27T20:22:48.841Z] [INFO]: digging vs config for /Common/app1_t80_vs -[2023-04-27T20:22:48.842Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:48.842Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:48.842Z] [DEBUG]: [/Common/app1_t80_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:48.842Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect' ] -[2023-04-27T20:22:48.842Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details -[2023-04-27T20:22:48.842Z] [DEBUG]: [/Common/app1_t80_vs] found the following rules - /Common/_sys_https_redirect -[2023-04-27T20:22:48.842Z] [INFO]: digging vs config for /Common/app1_t443_vs -[2023-04-27T20:22:48.842Z] [DEBUG]: digging pool config for /Common/app1_t80_pool -[2023-04-27T20:22:48.843Z] [DEBUG]: Pool /Common/app1_t80_pool members found: [ '/Common/app1_Node1', '/Common/app1_Node2' ] -[2023-04-27T20:22:48.843Z] [DEBUG]: pool monitor references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:48.843Z] [DEBUG]: pool monitor configs found: [] -[2023-04-27T20:22:48.843Z] [DEBUG]: [/Common/app1_t80_pool] references 2 system default monitors, compare previous arrays for details -[2023-04-27T20:22:48.843Z] [DEBUG]: [/Common/app1_t443_vs] found the following pool /Common/app1_t80_pool -[2023-04-27T20:22:48.843Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:48.843Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:48.843Z] [DEBUG]: [/Common/app1_t443_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:48.843Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:48.843Z] [DEBUG]: [/Common/app1_t443_vs] found snat configuration - type automap -[2023-04-27T20:22:48.843Z] [INFO]: digging vs config for /Common/app2_t80_vs -[2023-04-27T20:22:48.843Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:48.843Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:48.843Z] [DEBUG]: [/Common/app2_t80_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:48.843Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect' ] -[2023-04-27T20:22:48.843Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details -[2023-04-27T20:22:48.843Z] [DEBUG]: [/Common/app2_t80_vs] found the following rules - /Common/_sys_https_redirect -[2023-04-27T20:22:48.843Z] [INFO]: digging vs config for /Common/bigiq.benlab.io_t443_vs -[2023-04-27T20:22:48.843Z] [DEBUG]: digging pool config for /Common/bigiq.benlab.io_t443_pool -[2023-04-27T20:22:48.843Z] [DEBUG]: Pool /Common/bigiq.benlab.io_t443_pool members found: [ '/Common/10.200.244.15' ] -[2023-04-27T20:22:48.843Z] [DEBUG]: pool monitor references found: [ '/Common/https_head_f5' ] -[2023-04-27T20:22:48.843Z] [DEBUG]: pool monitor configs found: [] -[2023-04-27T20:22:48.843Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_pool] references 1 system default monitors, compare previous arrays for details -[2023-04-27T20:22:48.843Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following pool /Common/bigiq.benlab.io_t443_pool -[2023-04-27T20:22:48.843Z] [DEBUG]: profile references found: [ - '/Common/ASM_basic_policy_1', - '/Common/f5-tcp-progressive', - '/Common/http', - '/Common/websecurity' -] -[2023-04-27T20:22:48.844Z] [DEBUG]: Found 4 system default profiles, compare previous arrays for details -[2023-04-27T20:22:48.844Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following profiles - /Common/ASM_basic_policy_1 { } - /Common/f5-tcp-progressive { } - /Common/http { } - /Common/websecurity { } -[2023-04-27T20:22:48.844Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:48.844Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found snat configuration - type automap -[2023-04-27T20:22:48.844Z] [DEBUG]: policy references found: [ '/Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs' ] -[2023-04-27T20:22:48.844Z] [DEBUG]: policy found [/Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs] -[2023-04-27T20:22:48.844Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following policies - /Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs { } -[2023-04-27T20:22:48.845Z] [INFO]: digging vs config for /Common/app2_t443_vs -[2023-04-27T20:22:48.845Z] [DEBUG]: digging pool config for /Common/app2_t80_pool -[2023-04-27T20:22:48.845Z] [DEBUG]: Pool /Common/app2_t80_pool members found: [ '/Common/app2_Node1', '/Common/app2_Node2' ] -[2023-04-27T20:22:48.845Z] [DEBUG]: pool monitor references found: [ '/Common/global_http_monitor', '/Common/global_https_monitor' ] -[2023-04-27T20:22:48.845Z] [DEBUG]: pool monitor configs found: [ - 'ltm monitor http /Common/global_http_monitor {\n' + - ' adaptive disabled\n' + - ' defaults-from /Common/http\n' + - ' interval 5\n' + - ' ip-dscp 0\n' + - ' recv "ok 200"\n' + - ' recv-disable none\n' + - ' send "GET /anywebsite.com\\r\\n"\n' + - ' time-until-up 0\n' + - ' timeout 16\n' + - '}', - 'ltm monitor https /Common/global_https_monitor {\n' + - ' adaptive disabled\n' + - ' defaults-from /Common/https\n' + - ' interval 5\n' + - ' ip-dscp 0\n' + - ' recv "201 continue"\n' + - ' recv-disable none\n' + - ' send "GET /any-secure-website.com\\r\\n"\n' + - ' time-until-up 0\n' + - ' timeout 16\n' + - '}' -] -[2023-04-27T20:22:48.845Z] [DEBUG]: [/Common/app2_t443_vs] found the following pool /Common/app2_t80_pool -[2023-04-27T20:22:48.845Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:48.845Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:48.845Z] [DEBUG]: [/Common/app2_t443_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:48.845Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:48.845Z] [DEBUG]: [/Common/app2_t443_vs] found snat configuration - type automap -[2023-04-27T20:22:48.845Z] [INFO]: digging vs config for /Common/app3_t8443_vs -[2023-04-27T20:22:48.845Z] [DEBUG]: digging pool config for /Common/app3_t8443_pool -[2023-04-27T20:22:48.845Z] [DEBUG]: Pool /Common/app3_t8443_pool members found: [ '/Common/app3_Node1', '/Common/app3_Node2' ] -[2023-04-27T20:22:48.845Z] [DEBUG]: pool monitor references found: [ - '/Common/app1_tcp_half_open_quick_monitor', - '/Common/http_head_f5', - '/Common/http2_head_f5', - '/Common/http', - '/Common/tcp_half_open' -] -[2023-04-27T20:22:48.845Z] [DEBUG]: pool monitor configs found: [ - 'ltm monitor tcp-half-open /Common/app1_tcp_half_open_quick_monitor {\n' + - ' defaults-from /Common/tcp_half_open\n' + - ' destination *:*\n' + - ' interval 1\n' + - ' time-until-up 0\n' + - ' timeout 4\n' + - '}' -] -[2023-04-27T20:22:48.845Z] [DEBUG]: [/Common/app3_t8443_pool] references 4 system default monitors, compare previous arrays for details -[2023-04-27T20:22:48.845Z] [DEBUG]: [/Common/app3_t8443_vs] found the following pool /Common/app3_t8443_pool -[2023-04-27T20:22:48.845Z] [DEBUG]: profile references found: [ - '/Common/app3_clientssl', - '/Common/app3_serverssl', - '/Common/http', - '/Common/tcp' -] -[2023-04-27T20:22:48.845Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:48.845Z] [DEBUG]: [/Common/app3_t8443_vs] found the following profiles - /Common/app3_clientssl { - context clientside - } - /Common/app3_serverssl { - context serverside - } - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:48.845Z] [DEBUG]: rule references found: [ '/Common/app3_rule', '/Common/app3_rule2', '/Common/app3_rule3' ] -[2023-04-27T20:22:48.846Z] [DEBUG]: [/Common/app3_t8443_vs] found the following rules - /Common/app3_rule - /Common/app3_rule2 - /Common/app3_rule3 -[2023-04-27T20:22:48.846Z] [DEBUG]: [/Common/app3_t8443_vs] found snat configuration - pool /Common/app3_snat_pool - type snat -[2023-04-27T20:22:48.846Z] [DEBUG]: policy references found: [ '/Common/app3_ltm_policy' ] -[2023-04-27T20:22:48.846Z] [DEBUG]: policy found [/Common/app3_ltm_policy] -[2023-04-27T20:22:48.846Z] [DEBUG]: [/Common/app3_t8443_vs] found the following policies - /Common/app3_ltm_policy { } -[2023-04-27T20:22:48.846Z] [DEBUG]: [/Common/app3_t8443_vs] found the following persistence - /Common/app3_cookie { - default yes - } -[2023-04-27T20:22:48.846Z] [DEBUG]: [/Common/app3_t8443_vs] found the following persistence /Common/app3_srcAddr_persist -[2023-04-27T20:22:48.846Z] [INFO]: digging vs config for /Common/app4_t80_vs -[2023-04-27T20:22:48.846Z] [DEBUG]: digging pool config for /Common/app4_pool -[2023-04-27T20:22:48.846Z] [DEBUG]: Pool /Common/app4_pool members found: [ '/Common/api.chucknorris.io' ] -[2023-04-27T20:22:48.846Z] [DEBUG]: [/Common/app4_t80_vs] found the following pool /Common/app4_pool -[2023-04-27T20:22:48.846Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:48.846Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:48.846Z] [DEBUG]: [/Common/app4_t80_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:48.846Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect', '/Common/app4_pool_rule' ] -[2023-04-27T20:22:48.846Z] [DEBUG]: digging pool config for /Common/css_pool -[2023-04-27T20:22:48.846Z] [DEBUG]: digging pool config for /Common/jpg.pool -[2023-04-27T20:22:48.846Z] [DEBUG]: digging pool config for /Common/js.io_t80_pool -[2023-04-27T20:22:48.847Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details -[2023-04-27T20:22:48.847Z] [DEBUG]: [/Common/app4_t80_vs] found the following rules - /Common/_sys_https_redirect - /Common/app4_pool_rule -[2023-04-27T20:22:48.847Z] [DEBUG]: policy references found: [ '/Common/app4_ltPolicy' ] -[2023-04-27T20:22:48.847Z] [DEBUG]: policy found [/Common/app4_ltPolicy] -[2023-04-27T20:22:48.847Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/css_pool] -[2023-04-27T20:22:48.847Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/jpg.pool] -[2023-04-27T20:22:48.847Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/js.io_t80_pool] -[2023-04-27T20:22:48.847Z] [DEBUG]: [/Common/app4_t80_vs] found the following policies - /Common/app4_ltPolicy { } -[2023-04-27T20:22:48.847Z] [INFO]: digging vs config for /Common/forwarder_net_0.0.0.0 -[2023-04-27T20:22:48.847Z] [DEBUG]: profile references found: [ '/Common/fastl4_loose' ] -[2023-04-27T20:22:48.847Z] [DEBUG]: [/Common/forwarder_net_0.0.0.0] found the following profiles - /Common/fastl4_loose { } -[2023-04-27T20:22:48.847Z] [INFO]: digging vs config for /foo/defaultsUDP_5555/serviceMain -[2023-04-27T20:22:48.847Z] [DEBUG]: digging pool config for /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1 -[2023-04-27T20:22:48.847Z] [DEBUG]: Pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1 members found: [ '/foo/192.50.2.2' ] -[2023-04-27T20:22:48.847Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found the following pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1 -[2023-04-27T20:22:48.847Z] [DEBUG]: profile references found: [ '/Common/udp' ] -[2023-04-27T20:22:48.847Z] [DEBUG]: Found 1 system default profiles, compare previous arrays for details -[2023-04-27T20:22:48.847Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found the following profiles - /Common/udp { } -[2023-04-27T20:22:48.847Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:48.847Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found snat configuration - type automap -[2023-04-27T20:22:48.847Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found the following persistence - /Common/source_addr { - default yes - } -[2023-04-27T20:22:48.847Z] [INFO]: digging vs config for /hue-infra/hue-up/hue-up.benlab.io_t80_vs -[2023-04-27T20:22:48.847Z] [DEBUG]: digging pool config for /hue-infra/hue-up/hue-up.benlab.io_t80_pool -[2023-04-27T20:22:48.847Z] [DEBUG]: Pool /hue-infra/hue-up/hue-up.benlab.io_t80_pool members found: null -[2023-04-27T20:22:48.847Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found the following pool /hue-infra/hue-up/hue-up.benlab.io_t80_pool -[2023-04-27T20:22:48.847Z] [DEBUG]: profile references found: [ '/Common/f5-tcp-progressive', '/Common/http' ] -[2023-04-27T20:22:48.847Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:48.847Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found the following profiles - /Common/f5-tcp-progressive { } - /Common/http { } -[2023-04-27T20:22:48.847Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:48.847Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found snat configuration - type automap -[2023-04-27T20:22:48.847Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found the following persistence - /Common/cookie { - default yes - } -[2023-04-27T20:22:48.847Z] [INFO]: digging vs config for /hue-infra/hue-up/hue-up.benlab.io_t443_vs -[2023-04-27T20:22:48.847Z] [DEBUG]: digging pool config for /hue-infra/hue-up/hue-up.benlab.io_t443_pool -[2023-04-27T20:22:48.847Z] [DEBUG]: Pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool members found: null -[2023-04-27T20:22:48.847Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found the following pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool -[2023-04-27T20:22:48.847Z] [DEBUG]: profile references found: [ '/Common/f5-tcp-progressive', '/Common/http' ] -[2023-04-27T20:22:48.847Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:48.847Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found the following profiles - /Common/f5-tcp-progressive { } - /Common/http { } -[2023-04-27T20:22:48.847Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:48.847Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found snat configuration - type automap -[2023-04-27T20:22:48.847Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found the following persistence - /Common/cookie { - default yes - } -[2023-04-27T20:22:48.848Z] [INFO]: digging DO classes for base config info -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "cli global-settings" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "sys db" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "net trunk" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "net self" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "net route" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "net routing access-list" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "net routing as-path" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "net routing prefix-list" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "net routing route-map" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "net routing bgp" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "cm device-group" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "cm traffic-group" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "cm traffic-group" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "sys syslog" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "auth tacacs" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "auth remote-role role-info" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "auth ldap" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "sys snmp traps" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "sys snmp users" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "sys snmp communities" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "net dag-globals" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "ltm global-settings traffic-control" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "sys sshd" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "net tunnels vxlan" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "sys disk directory" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "gtm monitor http" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "gtm monitor https" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "gtm monitor gateway-icmp" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "gtm monitor tcp" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "gtm monitor udp" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "gtm prober-pool" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "security firewall policy" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "security firewall address-list" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "security firewall management-ip-rules" in object -[2023-04-27T20:22:49.276Z] [DEBUG]: got .conf file [/home/ted/f5-corkscrew/tests/artifacts/f5_corkscrew_test.conf], size [76020] -[2023-04-27T20:22:49.276Z] [INFO]: Recieved .conf file of version: 15.1.8.2 -[2023-04-27T20:22:49.293Z] [INFO]: digging vs config for /Common/app1_t80_vs -[2023-04-27T20:22:49.294Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:49.294Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:49.294Z] [DEBUG]: [/Common/app1_t80_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:49.294Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect' ] -[2023-04-27T20:22:49.294Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details -[2023-04-27T20:22:49.294Z] [DEBUG]: [/Common/app1_t80_vs] found the following rules - /Common/_sys_https_redirect -[2023-04-27T20:22:49.294Z] [INFO]: digging vs config for /Common/app1_t443_vs -[2023-04-27T20:22:49.294Z] [DEBUG]: digging pool config for /Common/app1_t80_pool -[2023-04-27T20:22:49.294Z] [DEBUG]: Pool /Common/app1_t80_pool members found: [ '/Common/app1_Node1', '/Common/app1_Node2' ] -[2023-04-27T20:22:49.294Z] [DEBUG]: pool monitor references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:49.294Z] [DEBUG]: pool monitor configs found: [] -[2023-04-27T20:22:49.294Z] [DEBUG]: [/Common/app1_t80_pool] references 2 system default monitors, compare previous arrays for details -[2023-04-27T20:22:49.294Z] [DEBUG]: [/Common/app1_t443_vs] found the following pool /Common/app1_t80_pool -[2023-04-27T20:22:49.294Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:49.294Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:49.294Z] [DEBUG]: [/Common/app1_t443_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:49.294Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:49.294Z] [DEBUG]: [/Common/app1_t443_vs] found snat configuration - type automap -[2023-04-27T20:22:49.294Z] [INFO]: digging vs config for /Common/app2_t80_vs -[2023-04-27T20:22:49.294Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:49.294Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:49.294Z] [DEBUG]: [/Common/app2_t80_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:49.294Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect' ] -[2023-04-27T20:22:49.294Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details -[2023-04-27T20:22:49.294Z] [DEBUG]: [/Common/app2_t80_vs] found the following rules - /Common/_sys_https_redirect -[2023-04-27T20:22:49.295Z] [INFO]: digging vs config for /Common/bigiq.benlab.io_t443_vs -[2023-04-27T20:22:49.295Z] [DEBUG]: digging pool config for /Common/bigiq.benlab.io_t443_pool -[2023-04-27T20:22:49.295Z] [DEBUG]: Pool /Common/bigiq.benlab.io_t443_pool members found: [ '/Common/10.200.244.15' ] -[2023-04-27T20:22:49.295Z] [DEBUG]: pool monitor references found: [ '/Common/https_head_f5' ] -[2023-04-27T20:22:49.295Z] [DEBUG]: pool monitor configs found: [] -[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_pool] references 1 system default monitors, compare previous arrays for details -[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following pool /Common/bigiq.benlab.io_t443_pool -[2023-04-27T20:22:49.295Z] [DEBUG]: profile references found: [ - '/Common/ASM_basic_policy_1', - '/Common/f5-tcp-progressive', - '/Common/http', - '/Common/websecurity' -] -[2023-04-27T20:22:49.295Z] [DEBUG]: Found 4 system default profiles, compare previous arrays for details -[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following profiles - /Common/ASM_basic_policy_1 { } - /Common/f5-tcp-progressive { } - /Common/http { } - /Common/websecurity { } -[2023-04-27T20:22:49.295Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found snat configuration - type automap -[2023-04-27T20:22:49.295Z] [DEBUG]: policy references found: [ '/Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs' ] -[2023-04-27T20:22:49.295Z] [DEBUG]: policy found [/Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs] -[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following policies - /Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs { } -[2023-04-27T20:22:49.295Z] [INFO]: digging vs config for /Common/app2_t443_vs -[2023-04-27T20:22:49.295Z] [DEBUG]: digging pool config for /Common/app2_t80_pool -[2023-04-27T20:22:49.295Z] [DEBUG]: Pool /Common/app2_t80_pool members found: [ '/Common/app2_Node1', '/Common/app2_Node2' ] -[2023-04-27T20:22:49.295Z] [DEBUG]: pool monitor references found: [ '/Common/global_http_monitor', '/Common/global_https_monitor' ] -[2023-04-27T20:22:49.295Z] [DEBUG]: pool monitor configs found: [ - 'ltm monitor http /Common/global_http_monitor {\n' + - ' adaptive disabled\n' + - ' defaults-from /Common/http\n' + - ' interval 5\n' + - ' ip-dscp 0\n' + - ' recv "ok 200"\n' + - ' recv-disable none\n' + - ' send "GET /anywebsite.com\\r\\n"\n' + - ' time-until-up 0\n' + - ' timeout 16\n' + - '}', - 'ltm monitor https /Common/global_https_monitor {\n' + - ' adaptive disabled\n' + - ' defaults-from /Common/https\n' + - ' interval 5\n' + - ' ip-dscp 0\n' + - ' recv "201 continue"\n' + - ' recv-disable none\n' + - ' send "GET /any-secure-website.com\\r\\n"\n' + - ' time-until-up 0\n' + - ' timeout 16\n' + - '}' -] -[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/app2_t443_vs] found the following pool /Common/app2_t80_pool -[2023-04-27T20:22:49.295Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:49.295Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/app2_t443_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:49.295Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/app2_t443_vs] found snat configuration - type automap -[2023-04-27T20:22:49.295Z] [INFO]: digging vs config for /Common/app3_t8443_vs -[2023-04-27T20:22:49.295Z] [DEBUG]: digging pool config for /Common/app3_t8443_pool -[2023-04-27T20:22:49.295Z] [DEBUG]: Pool /Common/app3_t8443_pool members found: [ '/Common/app3_Node1', '/Common/app3_Node2' ] -[2023-04-27T20:22:49.295Z] [DEBUG]: pool monitor references found: [ - '/Common/app1_tcp_half_open_quick_monitor', - '/Common/http_head_f5', - '/Common/http2_head_f5', - '/Common/http', - '/Common/tcp_half_open' -] -[2023-04-27T20:22:49.295Z] [DEBUG]: pool monitor configs found: [ - 'ltm monitor tcp-half-open /Common/app1_tcp_half_open_quick_monitor {\n' + - ' defaults-from /Common/tcp_half_open\n' + - ' destination *:*\n' + - ' interval 1\n' + - ' time-until-up 0\n' + - ' timeout 4\n' + - '}' -] -[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/app3_t8443_pool] references 4 system default monitors, compare previous arrays for details -[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/app3_t8443_vs] found the following pool /Common/app3_t8443_pool -[2023-04-27T20:22:49.295Z] [DEBUG]: profile references found: [ - '/Common/app3_clientssl', - '/Common/app3_serverssl', - '/Common/http', - '/Common/tcp' -] -[2023-04-27T20:22:49.295Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/app3_t8443_vs] found the following profiles - /Common/app3_clientssl { - context clientside - } - /Common/app3_serverssl { - context serverside - } - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:49.295Z] [DEBUG]: rule references found: [ '/Common/app3_rule', '/Common/app3_rule2', '/Common/app3_rule3' ] -[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/app3_t8443_vs] found the following rules - /Common/app3_rule - /Common/app3_rule2 - /Common/app3_rule3 -[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/app3_t8443_vs] found snat configuration - pool /Common/app3_snat_pool - type snat -[2023-04-27T20:22:49.296Z] [DEBUG]: policy references found: [ '/Common/app3_ltm_policy' ] -[2023-04-27T20:22:49.296Z] [DEBUG]: policy found [/Common/app3_ltm_policy] -[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/app3_t8443_vs] found the following policies - /Common/app3_ltm_policy { } -[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/app3_t8443_vs] found the following persistence - /Common/app3_cookie { - default yes - } -[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/app3_t8443_vs] found the following persistence /Common/app3_srcAddr_persist -[2023-04-27T20:22:49.296Z] [INFO]: digging vs config for /Common/app4_t80_vs -[2023-04-27T20:22:49.296Z] [DEBUG]: digging pool config for /Common/app4_pool -[2023-04-27T20:22:49.296Z] [DEBUG]: Pool /Common/app4_pool members found: [ '/Common/api.chucknorris.io' ] -[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/app4_t80_vs] found the following pool /Common/app4_pool -[2023-04-27T20:22:49.296Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:49.296Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/app4_t80_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:49.296Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect', '/Common/app4_pool_rule' ] -[2023-04-27T20:22:49.296Z] [DEBUG]: digging pool config for /Common/css_pool -[2023-04-27T20:22:49.296Z] [DEBUG]: digging pool config for /Common/jpg.pool -[2023-04-27T20:22:49.296Z] [DEBUG]: digging pool config for /Common/js.io_t80_pool -[2023-04-27T20:22:49.296Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details -[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/app4_t80_vs] found the following rules - /Common/_sys_https_redirect - /Common/app4_pool_rule -[2023-04-27T20:22:49.296Z] [DEBUG]: policy references found: [ '/Common/app4_ltPolicy' ] -[2023-04-27T20:22:49.296Z] [DEBUG]: policy found [/Common/app4_ltPolicy] -[2023-04-27T20:22:49.296Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/css_pool] -[2023-04-27T20:22:49.296Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/jpg.pool] -[2023-04-27T20:22:49.296Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/js.io_t80_pool] -[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/app4_t80_vs] found the following policies - /Common/app4_ltPolicy { } -[2023-04-27T20:22:49.296Z] [INFO]: digging vs config for /Common/forwarder_net_0.0.0.0 -[2023-04-27T20:22:49.296Z] [DEBUG]: profile references found: [ '/Common/fastl4_loose' ] -[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/forwarder_net_0.0.0.0] found the following profiles - /Common/fastl4_loose { } -[2023-04-27T20:22:49.296Z] [INFO]: digging DO classes for base config info -[2023-04-27T20:22:49.296Z] [DEBUG]: no path "sys global-settings" in object -[2023-04-27T20:22:49.296Z] [DEBUG]: no path "cli global-settings" in object -[2023-04-27T20:22:49.296Z] [DEBUG]: no path "sys db" in object -[2023-04-27T20:22:49.296Z] [DEBUG]: no path "sys management-ip" in object -[2023-04-27T20:22:49.296Z] [DEBUG]: no path "sys provision" in object -[2023-04-27T20:22:49.296Z] [DEBUG]: no path "sys ntp" in object -[2023-04-27T20:22:49.296Z] [DEBUG]: no path "sys dns" in object -[2023-04-27T20:22:49.296Z] [DEBUG]: no path "net trunk" in object -[2023-04-27T20:22:49.296Z] [DEBUG]: no path "net vlan" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "net self" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "net route" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "net routing access-list" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "net routing as-path" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "net routing prefix-list" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "net routing route-map" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "net routing bgp" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "cm device-group" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "cm traffic-group" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "cm traffic-group" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "sys management-route" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "sys syslog" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "auth tacacs" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "net route-domain" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "auth remote-role role-info" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "auth ldap" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "sys snmp" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "sys snmp traps" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "sys snmp" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "sys snmp users" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "sys snmp communities" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "net dag-globals" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "sys httpd" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "ltm global-settings traffic-control" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "sys sshd" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "net tunnels tunnel" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "net tunnels vxlan" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "sys disk directory" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "gtm global-settings general" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "gtm datacenter" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "gtm server" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "gtm monitor http" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "gtm monitor https" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "gtm monitor gateway-icmp" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "gtm monitor tcp" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "gtm monitor udp" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "gtm prober-pool" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "security firewall policy" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "security firewall address-list" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "security firewall port-list" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "security firewall management-ip-rules" in object -[2023-04-27T20:22:49.301Z] [INFO]: digging vs config for /Common/app4_t80_vs -[2023-04-27T20:22:49.301Z] [DEBUG]: digging pool config for /Common/app4_pool -[2023-04-27T20:22:49.301Z] [DEBUG]: Pool /Common/app4_pool members found: [ '/Common/api.chucknorris.io' ] -[2023-04-27T20:22:49.301Z] [DEBUG]: [/Common/app4_t80_vs] found the following pool /Common/app4_pool -[2023-04-27T20:22:49.301Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:49.301Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:49.301Z] [DEBUG]: [/Common/app4_t80_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:49.301Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect', '/Common/app4_pool_rule' ] -[2023-04-27T20:22:49.301Z] [DEBUG]: digging pool config for /Common/css_pool -[2023-04-27T20:22:49.301Z] [DEBUG]: digging pool config for /Common/jpg.pool -[2023-04-27T20:22:49.301Z] [DEBUG]: digging pool config for /Common/js.io_t80_pool -[2023-04-27T20:22:49.301Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details -[2023-04-27T20:22:49.301Z] [DEBUG]: [/Common/app4_t80_vs] found the following rules - /Common/_sys_https_redirect - /Common/app4_pool_rule -[2023-04-27T20:22:49.301Z] [DEBUG]: policy references found: [ '/Common/app4_ltPolicy' ] -[2023-04-27T20:22:49.301Z] [DEBUG]: policy found [/Common/app4_ltPolicy] -[2023-04-27T20:22:49.301Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/css_pool] -[2023-04-27T20:22:49.301Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/jpg.pool] -[2023-04-27T20:22:49.301Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/js.io_t80_pool] -[2023-04-27T20:22:49.301Z] [DEBUG]: [/Common/app4_t80_vs] found the following policies - /Common/app4_ltPolicy { } -[2023-04-27T20:22:49.302Z] [DEBUG]: detected file: [/home/ted/f5-corkscrew/tests/artifacts/badArchive1.tar.gz], size: [28643] -[2023-04-27T20:22:49.304Z] [INFO]: Recieved .conf file of version: 15.1.0.4 -[2023-04-27T20:22:49.304Z] [ERROR]: Parsing [config/partitions/bd1/bigip.conf], tmos version of this file does not match previous file [15.1.0.4] -[2023-04-27T20:22:49.304Z] [ERROR]: tmos version not detected -> meaning this probably is not a bigip.conf -[2023-04-27T20:22:49.305Z] [ERROR]: failed to extract any parent tmos matches from config/partitions/bd2/bigip.conf - might be a scripts file... -[2023-04-27T20:22:49.311Z] [INFO]: digging vs config for /bd1/defaultsUDP_444/serviceMain -[2023-04-27T20:22:49.311Z] [DEBUG]: digging pool config for /bd1/defaultsUDP_444/defaultsUDP_444_Pool1 -[2023-04-27T20:22:49.311Z] [DEBUG]: Pool /bd1/defaultsUDP_444/defaultsUDP_444_Pool1 members found: [ '/bd1/192.0.2.2' ] -[2023-04-27T20:22:49.311Z] [DEBUG]: [/bd1/defaultsUDP_444/serviceMain] found the following pool /bd1/defaultsUDP_444/defaultsUDP_444_Pool1 -[2023-04-27T20:22:49.311Z] [DEBUG]: profile references found: [ '/Common/udp' ] -[2023-04-27T20:22:49.311Z] [DEBUG]: Found 1 system default profiles, compare previous arrays for details -[2023-04-27T20:22:49.311Z] [DEBUG]: [/bd1/defaultsUDP_444/serviceMain] found the following profiles - /Common/udp { } -[2023-04-27T20:22:49.311Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:49.311Z] [DEBUG]: [/bd1/defaultsUDP_444/serviceMain] found snat configuration - type automap -[2023-04-27T20:22:49.311Z] [DEBUG]: [/bd1/defaultsUDP_444/serviceMain] found the following persistence - /Common/source_addr { - default yes - } -[2023-04-27T20:22:49.311Z] [INFO]: digging vs config for /Common/app1_t80_vs -[2023-04-27T20:22:49.311Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:49.311Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:49.311Z] [DEBUG]: [/Common/app1_t80_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:49.311Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect' ] -[2023-04-27T20:22:49.311Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details -[2023-04-27T20:22:49.311Z] [DEBUG]: [/Common/app1_t80_vs] found the following rules - /Common/_sys_https_redirect -[2023-04-27T20:22:49.311Z] [INFO]: digging vs config for /Common/app1_t443_vs -[2023-04-27T20:22:49.311Z] [DEBUG]: digging pool config for /Common/app1_t80_pool -[2023-04-27T20:22:49.311Z] [DEBUG]: Pool /Common/app1_t80_pool members found: [ '/Common/app1_Node1', '/Common/app1_Node2' ] -[2023-04-27T20:22:49.312Z] [DEBUG]: pool monitor references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:49.312Z] [DEBUG]: pool monitor configs found: [] -[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app1_t80_pool] references 2 system default monitors, compare previous arrays for details -[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app1_t443_vs] found the following pool /Common/app1_t80_pool -[2023-04-27T20:22:49.312Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:49.312Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app1_t443_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:49.312Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app1_t443_vs] found snat configuration - type automap -[2023-04-27T20:22:49.312Z] [INFO]: digging vs config for /Common/app2_t80_vs -[2023-04-27T20:22:49.312Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:49.312Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app2_t80_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:49.312Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect' ] -[2023-04-27T20:22:49.312Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details -[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app2_t80_vs] found the following rules - /Common/_sys_https_redirect -[2023-04-27T20:22:49.312Z] [INFO]: digging vs config for /Common/app2_t443_vs -[2023-04-27T20:22:49.312Z] [DEBUG]: digging pool config for /Common/app2_t80_pool -[2023-04-27T20:22:49.312Z] [DEBUG]: Pool /Common/app2_t80_pool members found: [ '/Common/app2_Node1', '/Common/app2_Node2' ] -[2023-04-27T20:22:49.312Z] [DEBUG]: pool monitor references found: [ '/Common/global_http_monitor', '/Common/global_https_monitor' ] -[2023-04-27T20:22:49.312Z] [DEBUG]: pool monitor configs found: [ - 'ltm monitor http /Common/global_http_monitor {\n' + - ' adaptive disabled\n' + - ' defaults-from /Common/http\n' + - ' interval 5\n' + - ' ip-dscp 0\n' + - ' recv "ok 200"\n' + - ' recv-disable none\n' + - ' send "GET /anywebsite.com\\r\\n"\n' + - ' time-until-up 0\n' + - ' timeout 16\n' + - '}', - 'ltm monitor https /Common/global_https_monitor {\n' + - ' adaptive disabled\n' + - ' defaults-from /Common/https\n' + - ' interval 5\n' + - ' ip-dscp 0\n' + - ' recv "201 continue"\n' + - ' recv-disable none\n' + - ' send "GET /any-secure-website.com\\r\\n"\n' + - ' time-until-up 0\n' + - ' timeout 16\n' + - '}' -] -[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app2_t443_vs] found the following pool /Common/app2_t80_pool -[2023-04-27T20:22:49.312Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:49.312Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app2_t443_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:49.312Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app2_t443_vs] found snat configuration - type automap -[2023-04-27T20:22:49.312Z] [INFO]: digging vs config for /Common/app3_t8443_vs -[2023-04-27T20:22:49.312Z] [DEBUG]: digging pool config for /Common/app3_t8443_pool -[2023-04-27T20:22:49.312Z] [DEBUG]: Pool /Common/app3_t8443_pool members found: [ '/Common/app3_Node1', '/Common/app3_Node2' ] -[2023-04-27T20:22:49.312Z] [DEBUG]: pool monitor references found: [ - '/Common/app1_tcp_half_open_quick_monitor', - '/Common/http_head_f5', - '/Common/http2_head_f5', - '/Common/http', - '/Common/tcp_half_open' -] -[2023-04-27T20:22:49.312Z] [DEBUG]: pool monitor configs found: [ - 'ltm monitor tcp-half-open /Common/app1_tcp_half_open_quick_monitor {\n' + - ' defaults-from /Common/tcp_half_open\n' + - ' destination *:*\n' + - ' interval 1\n' + - ' time-until-up 0\n' + - ' timeout 4\n' + - '}' -] -[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app3_t8443_pool] references 4 system default monitors, compare previous arrays for details -[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app3_t8443_vs] found the following pool /Common/app3_t8443_pool -[2023-04-27T20:22:49.312Z] [DEBUG]: profile references found: [ - '/Common/app3_clientssl', - '/Common/app3_serverssl', - '/Common/http', - '/Common/tcp' -] -[2023-04-27T20:22:49.312Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app3_t8443_vs] found the following profiles - /Common/app3_clientssl { - context clientside - } - /Common/app3_serverssl { - context serverside - } - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:49.312Z] [DEBUG]: rule references found: [ '/Common/app3_rule', '/Common/app3_rule2', '/Common/app3_rule3' ] -[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app3_t8443_vs] found the following rules - /Common/app3_rule - /Common/app3_rule2 - /Common/app3_rule3 -[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app3_t8443_vs] found snat configuration - pool /Common/app3_snat_pool - type snat -[2023-04-27T20:22:49.312Z] [DEBUG]: policy references found: [ '/Common/app3_ltm_policy' ] -[2023-04-27T20:22:49.312Z] [DEBUG]: policy found [/Common/app3_ltm_policy] -[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app3_t8443_vs] found the following policies - /Common/app3_ltm_policy { } -[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app3_t8443_vs] found the following persistence - /Common/app3_cookie { - default yes - } -[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app3_t8443_vs] found the following persistence /Common/app3_srcAddr_persist -[2023-04-27T20:22:49.313Z] [INFO]: digging vs config for /Common/app4_t80_vs -[2023-04-27T20:22:49.313Z] [DEBUG]: digging pool config for /Common/app4_pool -[2023-04-27T20:22:49.313Z] [DEBUG]: Pool /Common/app4_pool members found: [ '/Common/api.chucknorris.io' ] -[2023-04-27T20:22:49.313Z] [DEBUG]: [/Common/app4_t80_vs] found the following pool /Common/app4_pool -[2023-04-27T20:22:49.313Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:49.313Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:49.313Z] [DEBUG]: [/Common/app4_t80_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:49.313Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect', '/Common/app4_pool_rule' ] -[2023-04-27T20:22:49.313Z] [DEBUG]: digging pool config for /Common/css_pool -[2023-04-27T20:22:49.313Z] [DEBUG]: digging pool config for /Common/jpg.pool -[2023-04-27T20:22:49.313Z] [DEBUG]: digging pool config for /Common/js.io_t80_pool -[2023-04-27T20:22:49.313Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details -[2023-04-27T20:22:49.313Z] [DEBUG]: [/Common/app4_t80_vs] found the following rules - /Common/_sys_https_redirect - /Common/app4_pool_rule -[2023-04-27T20:22:49.313Z] [DEBUG]: policy references found: [ '/Common/app4_ltPolicy' ] -[2023-04-27T20:22:49.313Z] [DEBUG]: policy found [/Common/app4_ltPolicy] -[2023-04-27T20:22:49.313Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/css_pool] -[2023-04-27T20:22:49.313Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/jpg.pool] -[2023-04-27T20:22:49.313Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/js.io_t80_pool] -[2023-04-27T20:22:49.313Z] [DEBUG]: [/Common/app4_t80_vs] found the following policies - /Common/app4_ltPolicy { } -[2023-04-27T20:22:49.313Z] [INFO]: digging vs config for /Common/forwarder_net_0.0.0.0 -[2023-04-27T20:22:49.313Z] [DEBUG]: profile references found: [ '/Common/fastl4_loose' ] -[2023-04-27T20:22:49.313Z] [DEBUG]: [/Common/forwarder_net_0.0.0.0] found the following profiles - /Common/fastl4_loose { } -[2023-04-27T20:22:49.313Z] [INFO]: digging DO classes for base config info -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "sys global-settings" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "cli global-settings" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "sys db" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "sys management-ip" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "sys provision" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "sys ntp" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "sys dns" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "net trunk" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "net vlan" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "net self" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "net route" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "net routing access-list" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "net routing as-path" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "net routing prefix-list" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "net routing route-map" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "net routing bgp" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "cm device-group" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "cm traffic-group" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "cm traffic-group" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "sys management-route" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "sys syslog" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "auth tacacs" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "net route-domain" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "auth remote-role role-info" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "auth ldap" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "sys snmp" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "sys snmp traps" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "sys snmp" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "sys snmp users" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "sys snmp communities" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "net dag-globals" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "sys httpd" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "ltm global-settings traffic-control" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "sys sshd" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "net tunnels tunnel" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "net tunnels vxlan" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "sys disk directory" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "gtm global-settings general" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "gtm datacenter" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "gtm server" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "gtm monitor http" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "gtm monitor https" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "gtm monitor gateway-icmp" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "gtm monitor tcp" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "gtm monitor udp" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "gtm prober-pool" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "security firewall policy" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "security firewall address-list" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "security firewall port-list" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "security firewall management-ip-rules" in object -[2023-04-27T20:22:49.336Z] [DEBUG]: detected file: [/home/ted/f5-corkscrew/tests/artifacts/f5_corkscrew_test.ucs], size: [43567] -[2023-04-27T20:22:49.338Z] [INFO]: Recieved .conf file of version: 15.1.8.2 -[2023-04-27T20:22:49.362Z] [INFO]: digging vs config for /Common/app1_t80_vs -[2023-04-27T20:22:49.362Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:49.362Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:49.362Z] [DEBUG]: [/Common/app1_t80_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:49.362Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect' ] -[2023-04-27T20:22:49.362Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details -[2023-04-27T20:22:49.362Z] [DEBUG]: [/Common/app1_t80_vs] found the following rules - /Common/_sys_https_redirect -[2023-04-27T20:22:49.362Z] [INFO]: digging vs config for /Common/app1_t443_vs -[2023-04-27T20:22:49.362Z] [DEBUG]: digging pool config for /Common/app1_t80_pool -[2023-04-27T20:22:49.362Z] [DEBUG]: Pool /Common/app1_t80_pool members found: [ '/Common/app1_Node1', '/Common/app1_Node2' ] -[2023-04-27T20:22:49.362Z] [DEBUG]: pool monitor references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:49.362Z] [DEBUG]: pool monitor configs found: [] -[2023-04-27T20:22:49.362Z] [DEBUG]: [/Common/app1_t80_pool] references 2 system default monitors, compare previous arrays for details -[2023-04-27T20:22:49.362Z] [DEBUG]: [/Common/app1_t443_vs] found the following pool /Common/app1_t80_pool -[2023-04-27T20:22:49.362Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:49.362Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:49.362Z] [DEBUG]: [/Common/app1_t443_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:49.362Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:49.362Z] [DEBUG]: [/Common/app1_t443_vs] found snat configuration - type automap -[2023-04-27T20:22:49.362Z] [INFO]: digging vs config for /Common/app2_t80_vs -[2023-04-27T20:22:49.362Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:49.362Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:49.362Z] [DEBUG]: [/Common/app2_t80_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:49.362Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect' ] -[2023-04-27T20:22:49.362Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details -[2023-04-27T20:22:49.362Z] [DEBUG]: [/Common/app2_t80_vs] found the following rules - /Common/_sys_https_redirect -[2023-04-27T20:22:49.362Z] [INFO]: digging vs config for /Common/bigiq.benlab.io_t443_vs -[2023-04-27T20:22:49.362Z] [DEBUG]: digging pool config for /Common/bigiq.benlab.io_t443_pool -[2023-04-27T20:22:49.362Z] [DEBUG]: Pool /Common/bigiq.benlab.io_t443_pool members found: [ '/Common/10.200.244.15' ] -[2023-04-27T20:22:49.362Z] [DEBUG]: pool monitor references found: [ '/Common/https_head_f5' ] -[2023-04-27T20:22:49.363Z] [DEBUG]: pool monitor configs found: [] -[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_pool] references 1 system default monitors, compare previous arrays for details -[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following pool /Common/bigiq.benlab.io_t443_pool -[2023-04-27T20:22:49.363Z] [DEBUG]: profile references found: [ - '/Common/ASM_basic_policy_1', - '/Common/f5-tcp-progressive', - '/Common/http', - '/Common/websecurity' -] -[2023-04-27T20:22:49.363Z] [DEBUG]: Found 4 system default profiles, compare previous arrays for details -[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following profiles - /Common/ASM_basic_policy_1 { } - /Common/f5-tcp-progressive { } - /Common/http { } - /Common/websecurity { } -[2023-04-27T20:22:49.363Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found snat configuration - type automap -[2023-04-27T20:22:49.363Z] [DEBUG]: policy references found: [ '/Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs' ] -[2023-04-27T20:22:49.363Z] [DEBUG]: policy found [/Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs] -[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following policies - /Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs { } -[2023-04-27T20:22:49.363Z] [INFO]: digging vs config for /Common/app2_t443_vs -[2023-04-27T20:22:49.363Z] [DEBUG]: digging pool config for /Common/app2_t80_pool -[2023-04-27T20:22:49.363Z] [DEBUG]: Pool /Common/app2_t80_pool members found: [ '/Common/app2_Node1', '/Common/app2_Node2' ] -[2023-04-27T20:22:49.363Z] [DEBUG]: pool monitor references found: [ '/Common/global_http_monitor', '/Common/global_https_monitor' ] -[2023-04-27T20:22:49.363Z] [DEBUG]: pool monitor configs found: [ - 'ltm monitor http /Common/global_http_monitor {\n' + - ' adaptive disabled\n' + - ' defaults-from /Common/http\n' + - ' interval 5\n' + - ' ip-dscp 0\n' + - ' recv "ok 200"\n' + - ' recv-disable none\n' + - ' send "GET /anywebsite.com\\r\\n"\n' + - ' time-until-up 0\n' + - ' timeout 16\n' + - '}', - 'ltm monitor https /Common/global_https_monitor {\n' + - ' adaptive disabled\n' + - ' defaults-from /Common/https\n' + - ' interval 5\n' + - ' ip-dscp 0\n' + - ' recv "201 continue"\n' + - ' recv-disable none\n' + - ' send "GET /any-secure-website.com\\r\\n"\n' + - ' time-until-up 0\n' + - ' timeout 16\n' + - '}' -] -[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/app2_t443_vs] found the following pool /Common/app2_t80_pool -[2023-04-27T20:22:49.363Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:49.363Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/app2_t443_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:49.363Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/app2_t443_vs] found snat configuration - type automap -[2023-04-27T20:22:49.363Z] [INFO]: digging vs config for /Common/app3_t8443_vs -[2023-04-27T20:22:49.363Z] [DEBUG]: digging pool config for /Common/app3_t8443_pool -[2023-04-27T20:22:49.363Z] [DEBUG]: Pool /Common/app3_t8443_pool members found: [ '/Common/app3_Node1', '/Common/app3_Node2' ] -[2023-04-27T20:22:49.363Z] [DEBUG]: pool monitor references found: [ - '/Common/app1_tcp_half_open_quick_monitor', - '/Common/http_head_f5', - '/Common/http2_head_f5', - '/Common/http', - '/Common/tcp_half_open' -] -[2023-04-27T20:22:49.363Z] [DEBUG]: pool monitor configs found: [ - 'ltm monitor tcp-half-open /Common/app1_tcp_half_open_quick_monitor {\n' + - ' defaults-from /Common/tcp_half_open\n' + - ' destination *:*\n' + - ' interval 1\n' + - ' time-until-up 0\n' + - ' timeout 4\n' + - '}' -] -[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/app3_t8443_pool] references 4 system default monitors, compare previous arrays for details -[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/app3_t8443_vs] found the following pool /Common/app3_t8443_pool -[2023-04-27T20:22:49.363Z] [DEBUG]: profile references found: [ - '/Common/app3_clientssl', - '/Common/app3_serverssl', - '/Common/http', - '/Common/tcp' -] -[2023-04-27T20:22:49.363Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/app3_t8443_vs] found the following profiles - /Common/app3_clientssl { - context clientside - } - /Common/app3_serverssl { - context serverside - } - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:49.363Z] [DEBUG]: rule references found: [ '/Common/app3_rule', '/Common/app3_rule2', '/Common/app3_rule3' ] -[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/app3_t8443_vs] found the following rules - /Common/app3_rule - /Common/app3_rule2 - /Common/app3_rule3 -[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/app3_t8443_vs] found snat configuration - pool /Common/app3_snat_pool - type snat -[2023-04-27T20:22:49.363Z] [DEBUG]: policy references found: [ '/Common/app3_ltm_policy' ] -[2023-04-27T20:22:49.363Z] [DEBUG]: policy found [/Common/app3_ltm_policy] -[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/app3_t8443_vs] found the following policies - /Common/app3_ltm_policy { } -[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/app3_t8443_vs] found the following persistence - /Common/app3_cookie { - default yes - } -[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/app3_t8443_vs] found the following persistence /Common/app3_srcAddr_persist -[2023-04-27T20:22:49.363Z] [INFO]: digging vs config for /Common/app4_t80_vs -[2023-04-27T20:22:49.363Z] [DEBUG]: digging pool config for /Common/app4_pool -[2023-04-27T20:22:49.363Z] [DEBUG]: Pool /Common/app4_pool members found: [ '/Common/api.chucknorris.io' ] -[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/app4_t80_vs] found the following pool /Common/app4_pool -[2023-04-27T20:22:49.363Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:49.363Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/app4_t80_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:49.363Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect', '/Common/app4_pool_rule' ] -[2023-04-27T20:22:49.364Z] [DEBUG]: digging pool config for /Common/css_pool -[2023-04-27T20:22:49.364Z] [DEBUG]: digging pool config for /Common/jpg.pool -[2023-04-27T20:22:49.364Z] [DEBUG]: digging pool config for /Common/js.io_t80_pool -[2023-04-27T20:22:49.364Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details -[2023-04-27T20:22:49.364Z] [DEBUG]: [/Common/app4_t80_vs] found the following rules - /Common/_sys_https_redirect - /Common/app4_pool_rule -[2023-04-27T20:22:49.364Z] [DEBUG]: policy references found: [ '/Common/app4_ltPolicy' ] -[2023-04-27T20:22:49.364Z] [DEBUG]: policy found [/Common/app4_ltPolicy] -[2023-04-27T20:22:49.364Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/css_pool] -[2023-04-27T20:22:49.364Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/jpg.pool] -[2023-04-27T20:22:49.364Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/js.io_t80_pool] -[2023-04-27T20:22:49.364Z] [DEBUG]: [/Common/app4_t80_vs] found the following policies - /Common/app4_ltPolicy { } -[2023-04-27T20:22:49.364Z] [INFO]: digging vs config for /Common/forwarder_net_0.0.0.0 -[2023-04-27T20:22:49.364Z] [DEBUG]: profile references found: [ '/Common/fastl4_loose' ] -[2023-04-27T20:22:49.364Z] [DEBUG]: [/Common/forwarder_net_0.0.0.0] found the following profiles - /Common/fastl4_loose { } -[2023-04-27T20:22:49.364Z] [INFO]: digging vs config for /foo/defaultsUDP_5555/serviceMain -[2023-04-27T20:22:49.364Z] [DEBUG]: digging pool config for /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1 -[2023-04-27T20:22:49.364Z] [DEBUG]: Pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1 members found: [ '/foo/192.50.2.2' ] -[2023-04-27T20:22:49.364Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found the following pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1 -[2023-04-27T20:22:49.364Z] [DEBUG]: profile references found: [ '/Common/udp' ] -[2023-04-27T20:22:49.364Z] [DEBUG]: Found 1 system default profiles, compare previous arrays for details -[2023-04-27T20:22:49.364Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found the following profiles - /Common/udp { } -[2023-04-27T20:22:49.364Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:49.364Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found snat configuration - type automap -[2023-04-27T20:22:49.364Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found the following persistence - /Common/source_addr { - default yes - } -[2023-04-27T20:22:49.364Z] [INFO]: digging vs config for /hue-infra/hue-up/hue-up.benlab.io_t80_vs -[2023-04-27T20:22:49.364Z] [DEBUG]: digging pool config for /hue-infra/hue-up/hue-up.benlab.io_t80_pool -[2023-04-27T20:22:49.364Z] [DEBUG]: Pool /hue-infra/hue-up/hue-up.benlab.io_t80_pool members found: null -[2023-04-27T20:22:49.364Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found the following pool /hue-infra/hue-up/hue-up.benlab.io_t80_pool -[2023-04-27T20:22:49.364Z] [DEBUG]: profile references found: [ '/Common/f5-tcp-progressive', '/Common/http' ] -[2023-04-27T20:22:49.364Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:49.364Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found the following profiles - /Common/f5-tcp-progressive { } - /Common/http { } -[2023-04-27T20:22:49.364Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:49.364Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found snat configuration - type automap -[2023-04-27T20:22:49.364Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found the following persistence - /Common/cookie { - default yes - } -[2023-04-27T20:22:49.364Z] [INFO]: digging vs config for /hue-infra/hue-up/hue-up.benlab.io_t443_vs -[2023-04-27T20:22:49.364Z] [DEBUG]: digging pool config for /hue-infra/hue-up/hue-up.benlab.io_t443_pool -[2023-04-27T20:22:49.364Z] [DEBUG]: Pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool members found: null -[2023-04-27T20:22:49.364Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found the following pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool -[2023-04-27T20:22:49.364Z] [DEBUG]: profile references found: [ '/Common/f5-tcp-progressive', '/Common/http' ] -[2023-04-27T20:22:49.364Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:49.364Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found the following profiles - /Common/f5-tcp-progressive { } - /Common/http { } -[2023-04-27T20:22:49.364Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:49.364Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found snat configuration - type automap -[2023-04-27T20:22:49.364Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found the following persistence - /Common/cookie { - default yes - } -[2023-04-27T20:22:49.365Z] [INFO]: digging DO classes for base config info -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "cli global-settings" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "sys db" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "net trunk" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "net self" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "net route" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "net routing access-list" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "net routing as-path" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "net routing prefix-list" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "net routing route-map" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "net routing bgp" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "cm device-group" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "cm traffic-group" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "cm traffic-group" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "sys syslog" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "auth tacacs" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "auth remote-role role-info" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "auth ldap" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "sys snmp traps" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "sys snmp users" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "sys snmp communities" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "net dag-globals" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "ltm global-settings traffic-control" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "sys sshd" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "net tunnels vxlan" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "sys disk directory" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "gtm monitor http" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "gtm monitor https" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "gtm monitor gateway-icmp" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "gtm monitor tcp" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "gtm monitor udp" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "gtm prober-pool" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "security firewall policy" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "security firewall address-list" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "security firewall management-ip-rules" in object -[2023-04-27T20:22:49.375Z] [INFO]: digging vs config for /Common/app4_t80_vs -[2023-04-27T20:22:49.375Z] [DEBUG]: digging pool config for /Common/app4_pool -[2023-04-27T20:22:49.375Z] [DEBUG]: Pool /Common/app4_pool members found: [ '/Common/api.chucknorris.io' ] -[2023-04-27T20:22:49.375Z] [DEBUG]: [/Common/app4_t80_vs] found the following pool /Common/app4_pool -[2023-04-27T20:22:49.375Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:49.375Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:49.375Z] [DEBUG]: [/Common/app4_t80_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:49.375Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect', '/Common/app4_pool_rule' ] -[2023-04-27T20:22:49.375Z] [DEBUG]: digging pool config for /Common/css_pool -[2023-04-27T20:22:49.375Z] [DEBUG]: digging pool config for /Common/jpg.pool -[2023-04-27T20:22:49.375Z] [DEBUG]: digging pool config for /Common/js.io_t80_pool -[2023-04-27T20:22:49.375Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details -[2023-04-27T20:22:49.375Z] [DEBUG]: [/Common/app4_t80_vs] found the following rules - /Common/_sys_https_redirect - /Common/app4_pool_rule -[2023-04-27T20:22:49.375Z] [DEBUG]: policy references found: [ '/Common/app4_ltPolicy' ] -[2023-04-27T20:22:49.375Z] [DEBUG]: policy found [/Common/app4_ltPolicy] -[2023-04-27T20:22:49.375Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/css_pool] -[2023-04-27T20:22:49.375Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/jpg.pool] -[2023-04-27T20:22:49.375Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/js.io_t80_pool] -[2023-04-27T20:22:49.375Z] [DEBUG]: [/Common/app4_t80_vs] found the following policies - /Common/app4_ltPolicy { } -[2023-04-27T20:22:49.918Z] [DEBUG]: detected file: [/home/ted/f5-corkscrew/tests/artifacts/f5_corkscrew_test.qkview], size: [2580499] -[2023-04-27T20:22:49.921Z] [INFO]: config/profile_base.conf: default profile base file, stashing for later -[2023-04-27T20:22:49.921Z] [INFO]: config/low_profile_base.conf: default profile base file, stashing for later -[2023-04-27T20:22:49.922Z] [INFO]: Recieved .conf file of version: 15.1.8.2 -[2023-04-27T20:22:50.161Z] [INFO]: digging vs config for /Common/app1_t80_vs -[2023-04-27T20:22:50.161Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:50.161Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:50.161Z] [DEBUG]: [/Common/app1_t80_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:50.161Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect' ] -[2023-04-27T20:22:50.161Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details -[2023-04-27T20:22:50.161Z] [DEBUG]: [/Common/app1_t80_vs] found the following rules - /Common/_sys_https_redirect -[2023-04-27T20:22:50.161Z] [INFO]: digging vs config for /Common/app1_t443_vs -[2023-04-27T20:22:50.161Z] [DEBUG]: digging pool config for /Common/app1_t80_pool -[2023-04-27T20:22:50.161Z] [DEBUG]: Pool /Common/app1_t80_pool members found: [ '/Common/app1_Node1', '/Common/app1_Node2' ] -[2023-04-27T20:22:50.162Z] [DEBUG]: pool monitor references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:50.162Z] [DEBUG]: pool monitor configs found: [] -[2023-04-27T20:22:50.162Z] [DEBUG]: [/Common/app1_t80_pool] references 2 system default monitors, compare previous arrays for details -[2023-04-27T20:22:50.162Z] [DEBUG]: [/Common/app1_t443_vs] found the following pool /Common/app1_t80_pool -[2023-04-27T20:22:50.162Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:50.162Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:50.162Z] [DEBUG]: [/Common/app1_t443_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:50.162Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:50.162Z] [DEBUG]: [/Common/app1_t443_vs] found snat configuration - type automap -[2023-04-27T20:22:50.162Z] [INFO]: digging vs config for /Common/app2_t80_vs -[2023-04-27T20:22:50.162Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:50.162Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:50.162Z] [DEBUG]: [/Common/app2_t80_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:50.162Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect' ] -[2023-04-27T20:22:50.162Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details -[2023-04-27T20:22:50.162Z] [DEBUG]: [/Common/app2_t80_vs] found the following rules - /Common/_sys_https_redirect -[2023-04-27T20:22:50.162Z] [INFO]: digging vs config for /Common/bigiq.benlab.io_t443_vs -[2023-04-27T20:22:50.162Z] [DEBUG]: digging pool config for /Common/bigiq.benlab.io_t443_pool -[2023-04-27T20:22:50.162Z] [DEBUG]: Pool /Common/bigiq.benlab.io_t443_pool members found: [ '/Common/10.200.244.15' ] -[2023-04-27T20:22:50.162Z] [DEBUG]: pool monitor references found: [ '/Common/https_head_f5' ] -[2023-04-27T20:22:50.162Z] [DEBUG]: pool monitor configs found: [] -[2023-04-27T20:22:50.162Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_pool] references 1 system default monitors, compare previous arrays for details -[2023-04-27T20:22:50.162Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following pool /Common/bigiq.benlab.io_t443_pool -[2023-04-27T20:22:50.162Z] [DEBUG]: profile references found: [ - '/Common/ASM_basic_policy_1', - '/Common/f5-tcp-progressive', - '/Common/http', - '/Common/websecurity' -] -[2023-04-27T20:22:50.162Z] [DEBUG]: Found 4 system default profiles, compare previous arrays for details -[2023-04-27T20:22:50.162Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following profiles - /Common/ASM_basic_policy_1 { } - /Common/f5-tcp-progressive { } - /Common/http { } - /Common/websecurity { } -[2023-04-27T20:22:50.162Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:50.162Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found snat configuration - type automap -[2023-04-27T20:22:50.162Z] [DEBUG]: policy references found: [ '/Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs' ] -[2023-04-27T20:22:50.162Z] [DEBUG]: policy found [/Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs] -[2023-04-27T20:22:50.162Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following policies - /Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs { } -[2023-04-27T20:22:50.162Z] [INFO]: digging vs config for /Common/app2_t443_vs -[2023-04-27T20:22:50.162Z] [DEBUG]: digging pool config for /Common/app2_t80_pool -[2023-04-27T20:22:50.162Z] [DEBUG]: Pool /Common/app2_t80_pool members found: [ '/Common/app2_Node1', '/Common/app2_Node2' ] -[2023-04-27T20:22:50.162Z] [DEBUG]: pool monitor references found: [ '/Common/global_http_monitor', '/Common/global_https_monitor' ] -[2023-04-27T20:22:50.162Z] [DEBUG]: pool monitor configs found: [ - 'ltm monitor http /Common/global_http_monitor {\n' + - ' adaptive disabled\n' + - ' defaults-from /Common/http\n' + - ' interval 5\n' + - ' ip-dscp 0\n' + - ' recv "ok 200"\n' + - ' recv-disable none\n' + - ' send "GET /anywebsite.com\\r\\n"\n' + - ' time-until-up 0\n' + - ' timeout 16\n' + - '}', - 'ltm monitor https /Common/global_https_monitor {\n' + - ' adaptive disabled\n' + - ' defaults-from /Common/https\n' + - ' interval 5\n' + - ' ip-dscp 0\n' + - ' recv "201 continue"\n' + - ' recv-disable none\n' + - ' send "GET /any-secure-website.com\\r\\n"\n' + - ' time-until-up 0\n' + - ' timeout 16\n' + - '}' -] -[2023-04-27T20:22:50.162Z] [DEBUG]: [/Common/app2_t443_vs] found the following pool /Common/app2_t80_pool -[2023-04-27T20:22:50.162Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:50.162Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:50.162Z] [DEBUG]: [/Common/app2_t443_vs] found the following profiles - /Common/http { } +#### +ltm virtual /foo/t1.lab.io_80vs { + creation-time 2023-04-29:13:02:55 + destination /foo/10.2.3.4:80 + ip-protocol tcp + last-modified-time 2023-04-29:13:02:55 + mask 255.255.255.255 + profiles { /Common/tcp { } -[2023-04-27T20:22:50.162Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:50.162Z] [DEBUG]: [/Common/app2_t443_vs] found snat configuration - type automap -[2023-04-27T20:22:50.162Z] [INFO]: digging vs config for /Common/app3_t8443_vs -[2023-04-27T20:22:50.162Z] [DEBUG]: digging pool config for /Common/app3_t8443_pool -[2023-04-27T20:22:50.163Z] [DEBUG]: Pool /Common/app3_t8443_pool members found: [ '/Common/app3_Node1', '/Common/app3_Node2' ] -[2023-04-27T20:22:50.163Z] [DEBUG]: pool monitor references found: [ - '/Common/app1_tcp_half_open_quick_monitor', - '/Common/http_head_f5', - '/Common/http2_head_f5', - '/Common/http', - '/Common/tcp_half_open' -] -[2023-04-27T20:22:50.163Z] [DEBUG]: pool monitor configs found: [ - 'ltm monitor tcp-half-open /Common/app1_tcp_half_open_quick_monitor {\n' + - ' defaults-from /Common/tcp_half_open\n' + - ' destination *:*\n' + - ' interval 1\n' + - ' time-until-up 0\n' + - ' timeout 4\n' + - '}' -] -[2023-04-27T20:22:50.163Z] [DEBUG]: [/Common/app3_t8443_pool] references 4 system default monitors, compare previous arrays for details -[2023-04-27T20:22:50.163Z] [DEBUG]: [/Common/app3_t8443_vs] found the following pool /Common/app3_t8443_pool -[2023-04-27T20:22:50.163Z] [DEBUG]: profile references found: [ - '/Common/app3_clientssl', - '/Common/app3_serverssl', - '/Common/http', - '/Common/tcp' -] -[2023-04-27T20:22:50.163Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:50.163Z] [DEBUG]: [/Common/app3_t8443_vs] found the following profiles - /Common/app3_clientssl { - context clientside - } - /Common/app3_serverssl { - context serverside - } + } + serverssl-use-sni disabled + source 0.0.0.0/0 + source-address-translation { + pool /Common/testSnat1_pool + type snat + } + translate-address enabled + translate-port enabled +} +ltm snatpool /Common/testSnat1_pool { undefined } +################################################ + +################################################ +#### app name: wiffle_redirect_vs + +#### +ltm virtual /foo/wiffle_redirect_vs { + creation-time 2023-02-02:13:10:03 + description "wiffle waffle baffle" + ip-protocol tcp + last-modified-time 2023-03-29:14:27:19 + profiles { /Common/http { } /Common/tcp { } -[2023-04-27T20:22:50.163Z] [DEBUG]: rule references found: [ '/Common/app3_rule', '/Common/app3_rule2', '/Common/app3_rule3' ] -[2023-04-27T20:22:50.163Z] [DEBUG]: [/Common/app3_t8443_vs] found the following rules - /Common/app3_rule - /Common/app3_rule2 - /Common/app3_rule3 -[2023-04-27T20:22:50.163Z] [DEBUG]: [/Common/app3_t8443_vs] found snat configuration - pool /Common/app3_snat_pool - type snat -[2023-04-27T20:22:50.163Z] [DEBUG]: policy references found: [ '/Common/app3_ltm_policy' ] -[2023-04-27T20:22:50.163Z] [DEBUG]: policy found [/Common/app3_ltm_policy] -[2023-04-27T20:22:50.163Z] [DEBUG]: [/Common/app3_t8443_vs] found the following policies - /Common/app3_ltm_policy { } -[2023-04-27T20:22:50.163Z] [DEBUG]: [/Common/app3_t8443_vs] found the following persistence - /Common/app3_cookie { - default yes - } -[2023-04-27T20:22:50.163Z] [DEBUG]: [/Common/app3_t8443_vs] found the following persistence /Common/app3_srcAddr_persist -[2023-04-27T20:22:50.163Z] [INFO]: digging vs config for /Common/app4_t80_vs -[2023-04-27T20:22:50.163Z] [DEBUG]: digging pool config for /Common/app4_pool -[2023-04-27T20:22:50.163Z] [DEBUG]: Pool /Common/app4_pool members found: [ '/Common/api.chucknorris.io' ] -[2023-04-27T20:22:50.163Z] [DEBUG]: [/Common/app4_t80_vs] found the following pool /Common/app4_pool -[2023-04-27T20:22:50.163Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:50.163Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:50.163Z] [DEBUG]: [/Common/app4_t80_vs] found the following profiles + } + rules { + /foo/HTTP-redirect-to-HTTPS + } + traffic-matching-criteria /foo/wiffle_redirect_trafficMatchCriteria + translate-address enabled + translate-port enabled +} +ltm rule /foo/HTTP-redirect-to-HTTPS { +when HTTP_REQUEST { HTTP::redirect https://[HTTP::host][HTTP::uri] } +} +################################################ + +################################################ +#### app name: app8_80vs + +#### +ltm virtual /foo/app8_80vs { + creation-time 2021-03-04:18:40:06 + destination /foo/1.19.8.18:80 + ip-protocol tcp + last-modified-time 2021-03-04:18:40:06 + mask 255.255.255.255 + pool /foo/app8_pool + profiles { /Common/http { } /Common/tcp { } -[2023-04-27T20:22:50.163Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect', '/Common/app4_pool_rule' ] -[2023-04-27T20:22:50.163Z] [DEBUG]: digging pool config for /Common/css_pool -[2023-04-27T20:22:50.163Z] [DEBUG]: digging pool config for /Common/jpg.pool -[2023-04-27T20:22:50.163Z] [DEBUG]: digging pool config for /Common/js.io_t80_pool -[2023-04-27T20:22:50.163Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details -[2023-04-27T20:22:50.163Z] [DEBUG]: [/Common/app4_t80_vs] found the following rules - /Common/_sys_https_redirect - /Common/app4_pool_rule -[2023-04-27T20:22:50.163Z] [DEBUG]: policy references found: [ '/Common/app4_ltPolicy' ] -[2023-04-27T20:22:50.163Z] [DEBUG]: policy found [/Common/app4_ltPolicy] -[2023-04-27T20:22:50.163Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/css_pool] -[2023-04-27T20:22:50.163Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/jpg.pool] -[2023-04-27T20:22:50.163Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/js.io_t80_pool] -[2023-04-27T20:22:50.163Z] [DEBUG]: [/Common/app4_t80_vs] found the following policies - /Common/app4_ltPolicy { } -[2023-04-27T20:22:50.164Z] [INFO]: digging vs config for /Common/forwarder_net_0.0.0.0 -[2023-04-27T20:22:50.164Z] [DEBUG]: profile references found: [ '/Common/fastl4_loose' ] -[2023-04-27T20:22:50.164Z] [DEBUG]: [/Common/forwarder_net_0.0.0.0] found the following profiles - /Common/fastl4_loose { } -[2023-04-27T20:22:50.164Z] [INFO]: digging vs config for /foo/defaultsUDP_5555/serviceMain -[2023-04-27T20:22:50.164Z] [DEBUG]: digging pool config for /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1 -[2023-04-27T20:22:50.164Z] [DEBUG]: Pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1 members found: [ '/foo/192.50.2.2' ] -[2023-04-27T20:22:50.164Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found the following pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1 -[2023-04-27T20:22:50.164Z] [DEBUG]: profile references found: [ '/Common/udp' ] -[2023-04-27T20:22:50.164Z] [DEBUG]: Found 1 system default profiles, compare previous arrays for details -[2023-04-27T20:22:50.164Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found the following profiles - /Common/udp { } -[2023-04-27T20:22:50.164Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:50.164Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found snat configuration + } + source 0.0.0.0/0 + source-address-translation { type automap -[2023-04-27T20:22:50.164Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found the following persistence - /Common/source_addr { + } + translate-address enabled + translate-port enabled +} +ltm pool /foo/app8_pool { + monitor /Common/http +} +################################################ + +################################################ +#### app name: hue-up.benlab.io_t80_vs + +#### +ltm virtual /hue-infra/hue-up/hue-up.benlab.io_t80_vs { + description hue-up + destination /hue-infra/192.168.200.29:80 + ip-protocol tcp + last-modified-time 2022-04-03:14:25:43 + mask 255.255.255.255 + persist { + /Common/cookie { default yes } -[2023-04-27T20:22:50.164Z] [INFO]: digging vs config for /hue-infra/hue-up/hue-up.benlab.io_t80_vs -[2023-04-27T20:22:50.164Z] [DEBUG]: digging pool config for /hue-infra/hue-up/hue-up.benlab.io_t80_pool -[2023-04-27T20:22:50.164Z] [DEBUG]: Pool /hue-infra/hue-up/hue-up.benlab.io_t80_pool members found: null -[2023-04-27T20:22:50.164Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found the following pool /hue-infra/hue-up/hue-up.benlab.io_t80_pool -[2023-04-27T20:22:50.164Z] [DEBUG]: profile references found: [ '/Common/f5-tcp-progressive', '/Common/http' ] -[2023-04-27T20:22:50.164Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:50.164Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found the following profiles + } + pool /hue-infra/hue-up/hue-up.benlab.io_t80_pool + profiles { /Common/f5-tcp-progressive { } /Common/http { } -[2023-04-27T20:22:50.164Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:50.164Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found snat configuration + } + serverssl-use-sni disabled + service-down-immediate-action reset + source 0.0.0.0/0 + source-address-translation { type automap -[2023-04-27T20:22:50.164Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found the following persistence + } + translate-address enabled + translate-port enabled +} +ltm pool /hue-infra/hue-up/hue-up.benlab.io_t80_pool { + members { + /hue-infra/10.200.30.29:80 { + address 10.200.30.29 + metadata { + source { + value declaration + } + } + } + } + min-active-members 1 + monitor min 1 of { /Common/http } +} +ltm node /hue-infra/10.200.30.29 { + address 10.200.30.29 +} +################################################ + +################################################ +#### app name: hue-up.benlab.io_t443_vs + +#### +ltm virtual /hue-infra/hue-up/hue-up.benlab.io_t443_vs { + description hue-up + destination /hue-infra/192.168.200.29:443 + ip-protocol tcp + last-modified-time 2021-04-06:17:55:27 + mask 255.255.255.255 + persist { /Common/cookie { default yes } -[2023-04-27T20:22:50.164Z] [INFO]: digging vs config for /hue-infra/hue-up/hue-up.benlab.io_t443_vs -[2023-04-27T20:22:50.164Z] [DEBUG]: digging pool config for /hue-infra/hue-up/hue-up.benlab.io_t443_pool -[2023-04-27T20:22:50.164Z] [DEBUG]: Pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool members found: null -[2023-04-27T20:22:50.164Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found the following pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool -[2023-04-27T20:22:50.164Z] [DEBUG]: profile references found: [ '/Common/f5-tcp-progressive', '/Common/http' ] -[2023-04-27T20:22:50.164Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:50.164Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found the following profiles + } + pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool + profiles { /Common/f5-tcp-progressive { } /Common/http { } -[2023-04-27T20:22:50.164Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:50.164Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found snat configuration + } + serverssl-use-sni disabled + service-down-immediate-action reset + source 0.0.0.0/0 + source-address-translation { type automap -[2023-04-27T20:22:50.164Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found the following persistence - /Common/cookie { - default yes + } + translate-address enabled + translate-port enabled +} +ltm pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool { + members { + /hue-infra/10.200.30.29:443 { + address 10.200.30.29 + metadata { + source { + value declaration + } + } } -[2023-04-27T20:22:50.164Z] [INFO]: digging DO classes for base config info -[2023-04-27T20:22:50.164Z] [DEBUG]: no path "cli global-settings" in object -[2023-04-27T20:22:50.164Z] [DEBUG]: no path "sys db" in object -[2023-04-27T20:22:50.164Z] [DEBUG]: no path "net trunk" in object -[2023-04-27T20:22:50.164Z] [DEBUG]: no path "net self" in object -[2023-04-27T20:22:50.164Z] [DEBUG]: no path "net route" in object -[2023-04-27T20:22:50.164Z] [DEBUG]: no path "net routing access-list" in object -[2023-04-27T20:22:50.164Z] [DEBUG]: no path "net routing as-path" in object -[2023-04-27T20:22:50.164Z] [DEBUG]: no path "net routing prefix-list" in object -[2023-04-27T20:22:50.165Z] [DEBUG]: no path "net routing route-map" in object -[2023-04-27T20:22:50.165Z] [DEBUG]: no path "net routing bgp" in object -[2023-04-27T20:22:50.165Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object -[2023-04-27T20:22:50.165Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object -[2023-04-27T20:22:50.165Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object -[2023-04-27T20:22:50.165Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object -[2023-04-27T20:22:50.165Z] [DEBUG]: no path "cm device-group" in object -[2023-04-27T20:22:50.165Z] [DEBUG]: no path "cm traffic-group" in object -[2023-04-27T20:22:50.165Z] [DEBUG]: no path "cm traffic-group" in object -[2023-04-27T20:22:50.165Z] [DEBUG]: no path "sys syslog" in object -[2023-04-27T20:22:50.165Z] [DEBUG]: no path "auth tacacs" in object -[2023-04-27T20:22:50.165Z] [DEBUG]: no path "auth remote-role role-info" in object -[2023-04-27T20:22:50.165Z] [DEBUG]: no path "auth ldap" in object -[2023-04-27T20:22:50.165Z] [DEBUG]: no path "sys snmp traps" in object -[2023-04-27T20:22:50.165Z] [DEBUG]: no path "sys snmp users" in object -[2023-04-27T20:22:50.165Z] [DEBUG]: no path "sys snmp communities" in object -[2023-04-27T20:22:50.165Z] [DEBUG]: no path "net dag-globals" in object -[2023-04-27T20:22:50.165Z] [DEBUG]: no path "ltm global-settings traffic-control" in object -[2023-04-27T20:22:50.165Z] [DEBUG]: no path "sys sshd" in object -[2023-04-27T20:22:50.165Z] [DEBUG]: no path "net tunnels vxlan" in object -[2023-04-27T20:22:50.165Z] [DEBUG]: no path "sys disk directory" in object -[2023-04-27T20:22:50.165Z] [DEBUG]: no path "gtm monitor http" in object -[2023-04-27T20:22:50.165Z] [DEBUG]: no path "gtm monitor https" in object -[2023-04-27T20:22:50.165Z] [DEBUG]: no path "gtm monitor gateway-icmp" in object -[2023-04-27T20:22:50.165Z] [DEBUG]: no path "gtm monitor tcp" in object -[2023-04-27T20:22:50.165Z] [DEBUG]: no path "gtm monitor udp" in object -[2023-04-27T20:22:50.165Z] [DEBUG]: no path "gtm prober-pool" in object -[2023-04-27T20:22:50.165Z] [DEBUG]: no path "security firewall policy" in object -[2023-04-27T20:22:50.165Z] [DEBUG]: no path "security firewall address-list" in object -[2023-04-27T20:22:50.165Z] [DEBUG]: no path "security firewall management-ip-rules" in object + } + min-active-members 1 + monitor min 1 of { /Common/https } +} +ltm node /hue-infra/10.200.30.29 { + address 10.200.30.29 +} +################################################ + + +####################################### +### conversion log #################### +[2023-05-24T01:12:41.404Z] DeBuG: 'regular date log message' +[5/23/2023, 6:12:41 PM] DeBuG: 'toLocalString date log message' +[Wed, 24 May 2023 01:12:41 GMT] DeBuG: 'to UTC date log message' +[2023-05-24T01:12:43.861Z] [ERROR]: >v19.0.0.0 tmos detected - this should never happen!!! +[2023-05-24T01:12:43.862Z] [ERROR]: meaning this probably is not a bigip.conf +[2023-05-24T01:12:48.528Z] [ERROR]: failed to extract any parent tmos matches from config/partitions/bd2/bigip.conf - might be a scripts file... +[2023-05-24T01:12:48.539Z] [INFO]: digging vs config for /bd1/defaultsUDP_444/serviceMain +[2023-05-24T01:12:48.539Z] [ERROR]: findValueFromKey function expected object, got: undefined +[2023-05-24T01:12:48.540Z] [INFO]: digging vs config for /Common/app1_t80_vs +[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined +[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined +[2023-05-24T01:12:48.540Z] [INFO]: digging vs config for /Common/app1_t443_vs +[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined +[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined +[2023-05-24T01:12:48.540Z] [INFO]: digging vs config for /Common/app2_t80_vs +[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined +[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined +[2023-05-24T01:12:48.540Z] [INFO]: digging vs config for /Common/app2_t443_vs +[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined +[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined +[2023-05-24T01:12:48.540Z] [INFO]: digging vs config for /Common/app3_t8443_vs +[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined +[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined +[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined +[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined +[2023-05-24T01:12:48.540Z] [INFO]: digging vs config for /Common/app4_t80_vs +[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined +[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined +[2023-05-24T01:12:48.540Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [css_pool] +[2023-05-24T01:12:48.540Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [jpg.pool] +[2023-05-24T01:12:48.540Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [js.io_t80_pool] +[2023-05-24T01:12:48.540Z] [INFO]: digging vs config for /Common/forwarder_net_0.0.0.0 +[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined +[2023-05-24T01:12:48.540Z] [INFO]: digging DO classes for base config info +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "sys global-settings" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "cli global-settings" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "sys db" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "sys management-ip" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "sys provision" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "sys ntp" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "sys dns" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "net trunk" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "net vlan" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "net self" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "net route" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "net routing access-list" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "net routing as-path" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "net routing prefix-list" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "net routing route-map" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "net routing bgp" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "cm device-group" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "cm traffic-group" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "cm traffic-group" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "sys management-route" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "sys syslog" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "auth tacacs" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "net route-domain" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "auth remote-role role-info" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "auth ldap" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "sys snmp" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "sys snmp traps" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "sys snmp" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "sys snmp users" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "sys snmp communities" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "net dag-globals" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "sys httpd" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "ltm global-settings traffic-control" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "sys sshd" in object +[2023-05-24T01:12:48.541Z] [DEBUG]: no path "net tunnels tunnel" in object +[2023-05-24T01:12:48.541Z] [DEBUG]: no path "net tunnels vxlan" in object +[2023-05-24T01:12:48.541Z] [DEBUG]: no path "sys disk directory" in object +[2023-05-24T01:12:48.541Z] [DEBUG]: no path "gtm global-settings general" in object +[2023-05-24T01:12:48.541Z] [DEBUG]: no path "gtm datacenter" in object +[2023-05-24T01:12:48.541Z] [DEBUG]: no path "gtm server" in object +[2023-05-24T01:12:48.541Z] [DEBUG]: no path "gtm monitor http" in object +[2023-05-24T01:12:48.541Z] [DEBUG]: no path "gtm monitor https" in object +[2023-05-24T01:12:48.541Z] [DEBUG]: no path "gtm monitor gateway-icmp" in object +[2023-05-24T01:12:48.541Z] [DEBUG]: no path "gtm monitor tcp" in object +[2023-05-24T01:12:48.541Z] [DEBUG]: no path "gtm monitor udp" in object +[2023-05-24T01:12:48.541Z] [DEBUG]: no path "gtm prober-pool" in object +[2023-05-24T01:12:48.541Z] [DEBUG]: no path "security firewall policy" in object +[2023-05-24T01:12:48.541Z] [DEBUG]: no path "security firewall address-list" in object +[2023-05-24T01:12:48.541Z] [DEBUG]: no path "security firewall port-list" in object +[2023-05-24T01:12:48.541Z] [DEBUG]: no path "security firewall management-ip-rules" in object +[2023-05-24T01:12:48.565Z] [DEBUG]: detected file: [/home/ted/f5-corkscrew/tests/artifacts/f5_corkscrew_test.ucs], size: [45827] +[2023-05-24T01:12:48.566Z] [INFO]: Recieved .conf file of version: 15.1.8.2 +[2023-05-24T01:12:48.614Z] [INFO]: digging vs config for /Common/app1_t80_vs +[2023-05-24T01:12:48.614Z] [INFO]: digging vs config for /Common/app1_t443_vs +[2023-05-24T01:12:48.614Z] [INFO]: digging vs config for /Common/app2_t80_vs +[2023-05-24T01:12:48.614Z] [INFO]: digging vs config for /Common/bigiq.benlab.io_t443_vs +[2023-05-24T01:12:48.614Z] [INFO]: digging vs config for /Common/app2_t443_vs +[2023-05-24T01:12:48.614Z] [INFO]: digging vs config for /Common/persistTest_80_vs +[2023-05-24T01:12:48.614Z] [INFO]: digging vs config for /Common/app3_t8443_vs +[2023-05-24T01:12:48.615Z] [INFO]: digging vs config for /Common/app4_t80_vs +[2023-05-24T01:12:48.615Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [css_pool] +[2023-05-24T01:12:48.615Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [jpg.pool] +[2023-05-24T01:12:48.615Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [js.io_t80_pool] +[2023-05-24T01:12:48.615Z] [INFO]: digging vs config for /Common/forwarder_net_0.0.0.0 +[2023-05-24T01:12:48.615Z] [INFO]: digging vs config for /foo/defaultsUDP_5555/serviceMain +[2023-05-24T01:12:48.615Z] [INFO]: digging vs config for /foo/t1.lab.io_80vs +[2023-05-24T01:12:48.615Z] [INFO]: digging vs config for /foo/wiffle_redirect_vs +[2023-05-24T01:12:48.615Z] [INFO]: digging vs config for /foo/app8_80vs +[2023-05-24T01:12:48.615Z] [INFO]: digging vs config for /hue-infra/hue-up/hue-up.benlab.io_t80_vs +[2023-05-24T01:12:48.615Z] [INFO]: digging vs config for /hue-infra/hue-up/hue-up.benlab.io_t443_vs +[2023-05-24T01:12:48.616Z] [INFO]: digging DO classes for base config info +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "cli global-settings" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "sys db" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "net trunk" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "net self" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "net route" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "net routing access-list" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "net routing as-path" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "net routing prefix-list" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "net routing route-map" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "net routing bgp" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "cm device-group" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "cm traffic-group" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "cm traffic-group" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "sys syslog" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "auth tacacs" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "auth remote-role role-info" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "auth ldap" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "sys snmp traps" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "sys snmp users" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "sys snmp communities" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "net dag-globals" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "ltm global-settings traffic-control" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "sys sshd" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "net tunnels vxlan" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "sys disk directory" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "gtm monitor http" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "gtm monitor https" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "gtm monitor gateway-icmp" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "gtm monitor tcp" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "gtm monitor udp" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "gtm prober-pool" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "security firewall policy" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "security firewall address-list" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "security firewall management-ip-rules" in object +[2023-05-24T01:12:48.626Z] [INFO]: digging vs config for /Common/app4_t80_vs +[2023-05-24T01:12:48.626Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [css_pool] +[2023-05-24T01:12:48.626Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [jpg.pool] +[2023-05-24T01:12:48.626Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [js.io_t80_pool] +[2023-05-24T01:12:49.172Z] [DEBUG]: detected file: [/home/ted/f5-corkscrew/tests/artifacts/f5_corkscrew_test.qkview], size: [2582699] +[2023-05-24T01:12:49.174Z] [INFO]: config/profile_base.conf: default profile base file, stashing for later +[2023-05-24T01:12:49.174Z] [INFO]: config/low_profile_base.conf: default profile base file, stashing for later +[2023-05-24T01:12:49.174Z] [INFO]: Recieved .conf file of version: 15.1.8.2 +[2023-05-24T01:12:49.457Z] [INFO]: digging vs config for /Common/app1_t80_vs +[2023-05-24T01:12:49.457Z] [INFO]: digging vs config for /Common/app1_t443_vs +[2023-05-24T01:12:49.458Z] [INFO]: digging vs config for /Common/app2_t80_vs +[2023-05-24T01:12:49.458Z] [INFO]: digging vs config for /Common/bigiq.benlab.io_t443_vs +[2023-05-24T01:12:49.458Z] [INFO]: digging vs config for /Common/app2_t443_vs +[2023-05-24T01:12:49.459Z] [INFO]: digging vs config for /Common/persistTest_80_vs +[2023-05-24T01:12:49.459Z] [INFO]: digging vs config for /Common/app3_t8443_vs +[2023-05-24T01:12:49.459Z] [INFO]: digging vs config for /Common/app4_t80_vs +[2023-05-24T01:12:49.460Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [css_pool] +[2023-05-24T01:12:49.460Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [jpg.pool] +[2023-05-24T01:12:49.460Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [js.io_t80_pool] +[2023-05-24T01:12:49.460Z] [INFO]: digging vs config for /Common/forwarder_net_0.0.0.0 +[2023-05-24T01:12:49.460Z] [INFO]: digging vs config for /foo/defaultsUDP_5555/serviceMain +[2023-05-24T01:12:49.460Z] [INFO]: digging vs config for /foo/t1.lab.io_80vs +[2023-05-24T01:12:49.460Z] [INFO]: digging vs config for /foo/wiffle_redirect_vs +[2023-05-24T01:12:49.460Z] [INFO]: digging vs config for /foo/app8_80vs +[2023-05-24T01:12:49.460Z] [INFO]: digging vs config for /hue-infra/hue-up/hue-up.benlab.io_t80_vs +[2023-05-24T01:12:49.460Z] [INFO]: digging vs config for /hue-infra/hue-up/hue-up.benlab.io_t443_vs +[2023-05-24T01:12:49.461Z] [INFO]: digging DO classes for base config info +[2023-05-24T01:12:49.461Z] [DEBUG]: no path "cli global-settings" in object +[2023-05-24T01:12:49.461Z] [DEBUG]: no path "sys db" in object +[2023-05-24T01:12:49.461Z] [DEBUG]: no path "net trunk" in object +[2023-05-24T01:12:49.461Z] [DEBUG]: no path "net self" in object +[2023-05-24T01:12:49.461Z] [DEBUG]: no path "net route" in object +[2023-05-24T01:12:49.461Z] [DEBUG]: no path "net routing access-list" in object +[2023-05-24T01:12:49.461Z] [DEBUG]: no path "net routing as-path" in object +[2023-05-24T01:12:49.461Z] [DEBUG]: no path "net routing prefix-list" in object +[2023-05-24T01:12:49.461Z] [DEBUG]: no path "net routing route-map" in object +[2023-05-24T01:12:49.461Z] [DEBUG]: no path "net routing bgp" in object +[2023-05-24T01:12:49.461Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object +[2023-05-24T01:12:49.461Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object +[2023-05-24T01:12:49.461Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object +[2023-05-24T01:12:49.461Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object +[2023-05-24T01:12:49.461Z] [DEBUG]: no path "cm device-group" in object +[2023-05-24T01:12:49.461Z] [DEBUG]: no path "cm traffic-group" in object +[2023-05-24T01:12:49.461Z] [DEBUG]: no path "cm traffic-group" in object +[2023-05-24T01:12:49.461Z] [DEBUG]: no path "sys syslog" in object +[2023-05-24T01:12:49.461Z] [DEBUG]: no path "auth tacacs" in object +[2023-05-24T01:12:49.461Z] [DEBUG]: no path "auth remote-role role-info" in object +[2023-05-24T01:12:49.461Z] [DEBUG]: no path "auth ldap" in object +[2023-05-24T01:12:49.461Z] [DEBUG]: no path "sys snmp traps" in object +[2023-05-24T01:12:49.461Z] [DEBUG]: no path "sys snmp users" in object +[2023-05-24T01:12:49.461Z] [DEBUG]: no path "sys snmp communities" in object +[2023-05-24T01:12:49.461Z] [DEBUG]: no path "net dag-globals" in object +[2023-05-24T01:12:49.461Z] [DEBUG]: no path "ltm global-settings traffic-control" in object +[2023-05-24T01:12:49.461Z] [DEBUG]: no path "sys sshd" in object +[2023-05-24T01:12:49.461Z] [DEBUG]: no path "net tunnels vxlan" in object +[2023-05-24T01:12:49.461Z] [DEBUG]: no path "sys disk directory" in object +[2023-05-24T01:12:49.461Z] [DEBUG]: no path "gtm monitor http" in object +[2023-05-24T01:12:49.461Z] [DEBUG]: no path "gtm monitor https" in object +[2023-05-24T01:12:49.461Z] [DEBUG]: no path "gtm monitor gateway-icmp" in object +[2023-05-24T01:12:49.461Z] [DEBUG]: no path "gtm monitor tcp" in object +[2023-05-24T01:12:49.461Z] [DEBUG]: no path "gtm monitor udp" in object +[2023-05-24T01:12:49.461Z] [DEBUG]: no path "gtm prober-pool" in object +[2023-05-24T01:12:49.461Z] [DEBUG]: no path "security firewall policy" in object +[2023-05-24T01:12:49.461Z] [DEBUG]: no path "security firewall address-list" in object +[2023-05-24T01:12:49.462Z] [DEBUG]: no path "security firewall management-ip-rules" in object ####################################### ### configMultiLevelObjects ########### @@ -2716,8 +1799,8 @@ ltm pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool { "a": { "/Common/benlab.io": { "line": "\n pools {\n /Common/portal.benlab.io_a_pool {\n order 0\n }\n }\n", - "fqdn": "portal.benlab.io_a_pool", - "partition": "/Common/", + "fqdn": "benlab.io", + "partition": "Common", "type": "a", "pools": [ { @@ -2727,10 +1810,11 @@ ltm pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool { ] }, "/Common/bigiq.benlab.io": { - "line": "\n aliases {\n bq.benlab.io\n bq2.benlab.io\n burger.queen.no\n }\n last-resort-pool a /Common/bigiq.benlab.io_pool\n persistence enabled\n pool-lb-mode global-availability\n pools {\n /Common/bigiq.benlab.io_pool {\n order 0\n }\n /Common/esxi01.benlab.io {\n order 2\n ratio 4\n }\n /Common/esxi02.benlab.io {\n order 1\n }\n }\n rules {\n /Common/test_dns_rule\n }\n", - "fqdn": "bigiq.benlab.io_pool", - "partition": "/Common/", + "line": "\n aliases {\n bq.benlab.io\n bq2.benlab.io\n burger.queen.no\n }\n description \"complicated widip\"\n last-resort-pool a /Common/bigiq.benlab.io_pool\n persistence enabled\n pool-lb-mode global-availability\n pools {\n /Common/bigiq.benlab.io_pool {\n order 0\n }\n /Common/esxi01.benlab.io {\n order 2\n ratio 4\n }\n /Common/esxi02.benlab.io {\n order 1\n }\n }\n rules {\n /Common/test_dns_rule\n }\n", + "fqdn": "bigiq.benlab.io", + "partition": "Common", "type": "a", + "description": "complicated widip", "last-resort-pool": { "type": "a", "value": "/Common/bigiq.benlab.io_pool" @@ -2762,8 +1846,8 @@ ltm pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool { }, "/Common/devCloud01.benlab.io": { "line": "\n pools {\n /Common/devCloud01.benlab.io_pool {\n order 0\n }\n }\n", - "fqdn": "devCloud01.benlab.io_pool", - "partition": "/Common/", + "fqdn": "devCloud01.benlab.io", + "partition": "Common", "type": "a", "pools": [ { @@ -2772,10 +1856,21 @@ ltm pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool { } ] }, + "/Common/piTime314a.int.sci.com": { + "line": "\n aliases {\n piTime314a.td.sci.com\n piTime314a.it.io\n }\n description \"wideip with no pool/destination\"\n", + "fqdn": "piTime314a.int.sci.com", + "partition": "Common", + "type": "a", + "description": "wideip with no pool/destination", + "aliases": [ + "piTime314a.td.sci.com", + "piTime314a.it.io" + ] + }, "/Common/unifi.benlab.io": { "line": "\n pools {\n /Common/unifi.benlab.io_pool {\n order 0\n }\n }\n", - "fqdn": "unifi.benlab.io_pool", - "partition": "/Common/", + "fqdn": "unifi.benlab.io", + "partition": "Common", "type": "a", "pools": [ { @@ -2786,8 +1881,9 @@ ltm pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool { }, "/hue-infra/hue-up/hue-up.benlab.io": { "line": "\n aliases {\n hueUp.benlab.io\n }\n pools {\n /hue-infra/hue-up/hue-up.benlab.io_pool {\n order 0\n }\n }\n", - "fqdn": "hue-up.benlab.io_pool", - "partition": "/hue-infra/hue-up/", + "fqdn": "hue-up.benlab.io", + "partition": "hue-infra", + "folder": "hue-up", "type": "a", "aliases": [ "hueUp.benlab.io" @@ -2818,7 +1914,10 @@ ltm pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool { "/Common/cist": "\n interfaces {\n 1.0 {\n external-path-cost 500\n internal-path-cost 500\n }\n }\n vlans {\n /Common/internal\n }\n" }, "vlan": { - "/Common/internal": "\n interfaces {\n 1.0 { }\n }\n tag 4094\n" + "/Common/internal": "\n interfaces {\n 1.0 { }\n }\n tag 4094\n", + "/Common/vlan255_f5peer": "\n tag 255\n", + "/Common/vlan245": "\n tag 245\n", + "/Common/vlan230": "\n tag 230\n" }, "fdb": { "tunnel": { @@ -2842,6 +1941,9 @@ ltm pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool { "ike-daemon": { "/Common/ikedaemon": "\n log-publisher /Common/default-ipsec-log-publisher\n" } + }, + "address-list": { + "/foo/wiffle_address_list": "\n addresses {\n 192.168.5.0/24 { }\n 192.168.6.0/24 { }\n 10.40.0.0/16 { }\n 6.6.6.6/32 { }\n }\n description \"wiffle_address_list Address List\"\n" } }, "security": { @@ -2915,6 +2017,40 @@ ltm pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool { } }, "dos": { + "profile": { + "/Common/app50_dos": { + "line": "\n app-service none\n application {\n app50_dos {\n bot-defense {\n browser-legit-captcha disabled\n browser-legit-enabled disabled\n }\n captcha-response {\n failure {\n body \"You have entered an invalid answer for the question. Please, try again.\n
\n%DOSL7.captcha.image% %DOSL7.captcha.audio% %DOSL7.captcha.change%\n
\nWhat code is in the image\\?\n%DOSL7.captcha.solution%\n
\n%DOSL7.captcha.submit%\n
\n
\nYour support ID is: %DOSL7.captcha.support_id%.\"\n }\n first {\n body \"This question is for testing whether you are a human visitor and to prevent automated spam submission.\n
\n%DOSL7.captcha.image% %DOSL7.captcha.audio% %DOSL7.captcha.change%\n
\nWhat code is in the image\\?\n%DOSL7.captcha.solution%\n
\n%DOSL7.captcha.submit%\n
\n
\nYour support ID is: %DOSL7.captcha.support_id%.\"\n }\n }\n heavy-urls {\n automatic-detection disabled\n protection disabled\n }\n mobile-detection {\n allow-any-android-package false\n allow-any-ios-package false\n }\n stress-based {\n behavioral {\n mitigation-mode none\n }\n ip-rate-limiting disabled\n url-enable-heavy disabled\n url-rate-limiting disabled\n }\n tps-based {\n ip-rate-limiting disabled\n mode off\n url-enable-heavy disabled\n url-rate-limiting disabled\n }\n }\n }\n creation-time 2023-05-09:06:11:09\n creation-user admin\n description \"app #50 sample dos profile\"\n dos-network {\n app50_dos { }\n }\n http-whitelist none\n last-modified-time 2023-05-09:06:11:10\n modify-user admin\n protocol-dns {\n app50_dos { }\n }\n protocol-sip {\n app50_dos { }\n }\n threshold-sensitivity high\n", + "name": "app50_dos", + "partition": "Common", + "application": { + "app50_dos": { + "bot-defense": "\n browser-legit-captcha disabled\n browser-legit-enabled disabled\n ", + "captcha-response": "\n failure {\n body \"You have entered an invalid answer for the question. Please, try again.\n
\n%DOSL7.captcha.image% %DOSL7.captcha.audio% %DOSL7.captcha.change%\n
\nWhat code is in the image\\?\n%DOSL7.captcha.solution%\n
\n%DOSL7.captcha.submit%\n
\n
\nYour support ID is: %DOSL7.captcha.support_id%.\"\n }\n first {\n body \"This question is for testing whether you are a human visitor and to prevent automated spam submission.\n
\n%DOSL7.captcha.image% %DOSL7.captcha.audio% %DOSL7.captcha.change%\n
\nWhat code is in the image\\?\n%DOSL7.captcha.solution%\n
\n%DOSL7.captcha.submit%\n
\n
\nYour support ID is: %DOSL7.captcha.support_id%.\"\n }\n ", + "heavy-urls": "\n automatic-detection disabled\n protection disabled\n ", + "mobile-detection": "\n allow-any-android-package false\n allow-any-ios-package false\n ", + "stress-based": "\n behavioral {\n mitigation-mode none\n }\n ip-rate-limiting disabled\n url-enable-heavy disabled\n url-rate-limiting disabled\n ", + "tps-based": "\n ip-rate-limiting disabled\n mode off\n url-enable-heavy disabled\n url-rate-limiting disabled\n " + } + }, + "dos-network": { + "app50_dos": {} + }, + "protocol-dns": { + "app50_dos": {} + }, + "protocol-sip": { + "app50_dos": {} + }, + "app-service": "none", + "creation-time": "2023-05-09:06:11:09", + "creation-user": "admin", + "description": "app #50 sample dos profile", + "http-whitelist": "none", + "last-modified-time": "2023-05-09:06:11:10", + "modify-user": "admin", + "threshold-sensitivity": "high" + } + }, "ipv6-ext-hdr": { "/Common/dos-ipv6-ext-hdr": "\n frame-types { auth dstopt esp frag hbh mobility route }\n" }, @@ -2922,6 +2058,68 @@ ltm pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool { "/Common/dos-udp-portlist": "\n list-type exclude-listed-ports\n" } }, + "bot-defense": { + "profile": { + "/Common/app51_bot": { + "line": "\n allow-browser-access enabled\n api-access-strict-mitigation enabled\n app-service none\n blocking-page {\n body \"Request RejectedThe requested URL was rejected. Please consult with your administrator.

Your support ID is: <%BOTDEFENSE.support_id%>

[Go Back]\"\n headers \"Cache-Control: no-store, must-revalidate, no-cache\nPragma: no-cache\nConnection: close\"\n status-code 200\n type default\n }\n browser-mitigation-action block\n captcha-response {\n failure {\n body \"You have entered an invalid answer for the question. Please, try again.\n
\n%BOTDEFENSE.captcha.image% %BOTDEFENSE.captcha.audio% %BOTDEFENSE.captcha.change%\n
\nWhat code is in the image\\?\n%BOTDEFENSE.captcha.solution%\n
\n%BOTDEFENSE.captcha.submit%\n
\n
\nYour support ID is: %BOTDEFENSE.captcha.support_id%.\"\n type default\n }\n first {\n body \"This question is for testing whether you are a human visitor and to prevent automated spam submission.\n
\n%BOTDEFENSE.captcha.image% %BOTDEFENSE.captcha.audio% %BOTDEFENSE.captcha.change%\n
\nWhat code is in the image\\?\n%BOTDEFENSE.captcha.solution%\n
\n%BOTDEFENSE.captcha.submit%\n
\n
\nYour support ID is: %BOTDEFENSE.captcha.support_id%.\"\n type default\n }\n }\n cross-domain-requests allow-all\n description \"some example bot profile\"\n deviceid-mode generate-before-access\n dos-attack-strict-mitigation enabled\n enforcement-mode blocking\n enforcement-readiness-period 9\n grace-period 300\n honeypot-page {\n body \n headers \"Cache-Control: no-store, must-revalidate, no-cache\nPragma: no-cache\nConnection: close\"\n status-code 200\n type default\n }\n mobile-detection {\n allow-android-rooted-device disabled\n allow-any-android-package enabled\n allow-any-ios-package enabled\n allow-emulators disabled\n allow-jailbroken-devices disabled\n block-debugger-enabled-device enabled\n client-side-challenge-mode pass\n }\n perform-challenge-in-transparent disabled\n redirect-to-pool-name /Common/allOptionsPool\n signature-staging-upon-update enabled\n single-page-application disabled\n template strict\n whitelist {\n apple_touch_1 {\n match-order 2\n url /apple-touch-icon*.png\n }\n favicon_1 {\n match-order 1\n url /favicon.ico\n }\n }\n", + "name": "app51_bot", + "partition": "Common", + "blocking-page": { + "headers": [ + "Cache-Control: no-store, must-revalidate, no-cache", + "Pragma: no-cache", + "Connection: close" + ], + "body": "Request RejectedThe requested URL was rejected. Please consult with your administrator.

Your support ID is: <%BOTDEFENSE.support_id%>

[Go Back]", + "status-code": "200", + "type": "default" + }, + "captcha-response": { + "failure": "\n body \"You have entered an invalid answer for the question. Please, try again.\n
\n%BOTDEFENSE.captcha.image% %BOTDEFENSE.captcha.audio% %BOTDEFENSE.captcha.change%\n
\nWhat code is in the image\\?\n%BOTDEFENSE.captcha.solution%\n
\n%BOTDEFENSE.captcha.submit%\n
\n
\nYour support ID is: %BOTDEFENSE.captcha.support_id%.\"\n type default\n ", + "first": "\n body \"This question is for testing whether you are a human visitor and to prevent automated spam submission.\n
\n%BOTDEFENSE.captcha.image% %BOTDEFENSE.captcha.audio% %BOTDEFENSE.captcha.change%\n
\nWhat code is in the image\\?\n%BOTDEFENSE.captcha.solution%\n
\n%BOTDEFENSE.captcha.submit%\n
\n
\nYour support ID is: %BOTDEFENSE.captcha.support_id%.\"\n type default\n " + }, + "honeypot-page": { + "headers": [ + "Cache-Control: no-store, must-revalidate, no-cache", + "Pragma: no-cache", + "Connection: close" + ], + "body": "", + "status-code": "200", + "type": "default" + }, + "mobile-detection": { + "allow-android-rooted-device": "disabled", + "allow-any-android-package": "enabled", + "allow-any-ios-package": "enabled", + "allow-emulators": "disabled", + "allow-jailbroken-devices": "disabled", + "block-debugger-enabled-device": "enabled", + "client-side-challenge-mode": "pass" + }, + "whitelist": { + "apple_touch_1": "\n match-order 2\n url /apple-touch-icon*.png\n ", + "favicon_1": "\n match-order 1\n url /favicon.ico\n " + }, + "allow-browser-access": "enabled", + "api-access-strict-mitigation": "enabled", + "app-service": "none", + "browser-mitigation-action": "block", + "cross-domain-requests": "allow-all", + "description": "some example bot profile", + "deviceid-mode": "generate-before-access", + "dos-attack-strict-mitigation": "enabled", + "enforcement-mode": "blocking", + "enforcement-readiness-period": "9", + "grace-period": "300", + "perform-challenge-in-transparent": "disabled", + "redirect-to-pool-name": "/Common/allOptionsPool", + "signature-staging-upon-update": "enabled", + "single-page-application": "disabled", + "template": "strict" + } + } + }, "protocol-inspection": { "compliance-map": { "/Common/map_10426": "\n insp-id 10426\n key-type int\n value-type vector-string\n" @@ -2977,9 +2175,15 @@ ltm pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool { }, "policy": { "access-policy": { - "/Common/adminAuth_local_aPolicy": "\n default-ending /Common/adminAuth_local_aPolicy_end_deny\n items {\n /Common/adminAuth_local_aPolicy_act_localdb_auth { }\n /Common/adminAuth_local_aPolicy_act_logon_page { }\n /Common/adminAuth_local_aPolicy_end_allow { }\n /Common/adminAuth_local_aPolicy_end_deny { }\n /Common/adminAuth_local_aPolicy_ent { }\n }\n start-item /Common/adminAuth_local_aPolicy_ent\n", - "/Common/radiusServer": "\n default-ending /Common/radiusServer_end_deny\n items {\n /Common/radiusServer_act_radius_auth { }\n /Common/radiusServer_end_allow { }\n /Common/radiusServer_end_deny { }\n /Common/radiusServer_ent { }\n }\n start-item /Common/radiusServer_ent\n", - "/Common/sslvpn_network_access": "\n default-ending /Common/sslvpn_network_access_end_deny\n items {\n /Common/sslvpn_network_access_act_full_resource_assign { }\n /Common/sslvpn_network_access_act_localdb_auth { }\n /Common/sslvpn_network_access_act_logon_page { }\n /Common/sslvpn_network_access_end_allow { }\n /Common/sslvpn_network_access_end_deny { }\n /Common/sslvpn_network_access_ent { }\n }\n start-item /Common/sslvpn_network_access_ent\n" + "/Common/adminAuth_local_aPolicy": { + "line": "\n default-ending /Common/adminAuth_local_aPolicy_end_deny\n items {\n /Common/adminAuth_local_aPolicy_act_localdb_auth { }\n /Common/adminAuth_local_aPolicy_act_logon_page { }\n /Common/adminAuth_local_aPolicy_end_allow { }\n /Common/adminAuth_local_aPolicy_end_deny { }\n /Common/adminAuth_local_aPolicy_ent { }\n }\n start-item /Common/adminAuth_local_aPolicy_ent\n" + }, + "/Common/radiusServer": { + "line": "\n default-ending /Common/radiusServer_end_deny\n items {\n /Common/radiusServer_act_radius_auth { }\n /Common/radiusServer_end_allow { }\n /Common/radiusServer_end_deny { }\n /Common/radiusServer_ent { }\n }\n start-item /Common/radiusServer_ent\n" + }, + "/Common/sslvpn_network_access": { + "line": "\n default-ending /Common/sslvpn_network_access_end_deny\n items {\n /Common/sslvpn_network_access_act_full_resource_assign { }\n /Common/sslvpn_network_access_act_localdb_auth { }\n /Common/sslvpn_network_access_act_logon_page { }\n /Common/sslvpn_network_access_end_allow { }\n /Common/sslvpn_network_access_end_deny { }\n /Common/sslvpn_network_access_ent { }\n }\n start-item /Common/sslvpn_network_access_ent\n" + } }, "customization-group": { "/Common/adminAuth_local_aPolicy_act_logon_page_ag": "\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_act_logon_page_ag_65223_2\n revision 2\n source /Common/modern\n", @@ -3056,9 +2260,112 @@ ltm pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool { }, "profile": { "access": { - "/Common/adminAuth_local_aPolicy": "\n accept-languages { en }\n access-policy /Common/adminAuth_local_aPolicy\n app-service none\n customization-group /Common/adminAuth_local_aPolicy_logout\n customization-key 22ac0aeb0346bcebf5e867279edf9d7b\n default-language en\n domain-cookie none\n eps-group /Common/adminAuth_local_aPolicy_eps\n errormap-group /Common/adminAuth_local_aPolicy_errormap\n exchange-profile none\n framework-installation-group /Common/adminAuth_local_aPolicy_framework_installation\n general-ui-group /Common/adminAuth_local_aPolicy_general_ui\n generation 4\n generation-action noop\n httponly-cookie false\n log-settings {\n /Common/default-log-setting\n }\n logout-uri-include none\n logout-uri-timeout 5\n modified-since-last-policy-sync true\n named-scope none\n persistent-cookie false\n scope profile\n secure-cookie true\n sso-name none\n type system-authentication\n user-identity-method http\n", - "/Common/radiusServer": "\n accept-languages { en }\n access-policy /Common/radiusServer\n app-service none\n customization-group /Common/radiusServer_logout\n customization-key c649c57de3b753f9764ae640df53f6cb\n default-language en\n domain-cookie none\n eps-group /Common/radiusServer_eps\n errormap-group /Common/radiusServer_errormap\n exchange-profile none\n framework-installation-group /Common/radiusServer_frameworkinstallation\n general-ui-group /Common/radiusServer_general_ui\n generation 1\n generation-action noop\n httponly-cookie false\n log-settings {\n /Common/default-log-setting\n }\n logout-uri-include none\n logout-uri-timeout 5\n modified-since-last-policy-sync true\n oauth-profile none\n persistent-cookie false\n scope profile\n secure-cookie true\n sso-name none\n type all\n user-identity-method http\n", - "/Common/sslvpn_network_access": "\n accept-languages { en }\n access-policy /Common/sslvpn_network_access\n app-service none\n customization-group /Common/sslvpn_network_access_logout\n customization-key c0595c63f1a549ebf25e99e683989536\n default-language en\n domain-cookie none\n eps-group /Common/sslvpn_network_access_eps\n errormap-group /Common/sslvpn_network_access_errormap\n exchange-profile none\n framework-installation-group /Common/sslvpn_network_access_frameworkinstallation\n general-ui-group /Common/sslvpn_network_access_general_ui\n generation 2\n generation-action noop\n httponly-cookie false\n log-settings {\n /Common/default-log-setting\n }\n logout-uri-include none\n logout-uri-timeout 5\n modified-since-last-policy-sync true\n oauth-profile none\n persistent-cookie false\n scope profile\n secure-cookie true\n sso-name none\n type all\n user-identity-method http\n" + "/Common/adminAuth_local_aPolicy": { + "line": "\n accept-languages { en }\n access-policy /Common/adminAuth_local_aPolicy\n app-service none\n customization-group /Common/adminAuth_local_aPolicy_logout\n customization-key 22ac0aeb0346bcebf5e867279edf9d7b\n default-language en\n domain-cookie none\n eps-group /Common/adminAuth_local_aPolicy_eps\n errormap-group /Common/adminAuth_local_aPolicy_errormap\n exchange-profile none\n framework-installation-group /Common/adminAuth_local_aPolicy_framework_installation\n general-ui-group /Common/adminAuth_local_aPolicy_general_ui\n generation 4\n generation-action noop\n httponly-cookie false\n log-settings {\n /Common/default-log-setting\n }\n logout-uri-include none\n logout-uri-timeout 5\n modified-since-last-policy-sync true\n named-scope none\n persistent-cookie false\n scope profile\n secure-cookie true\n sso-name none\n type system-authentication\n user-identity-method http\n", + "name": "adminAuth_local_aPolicy", + "partition": "Common", + "accept-languages": [ + "en" + ], + "access-policy": "/Common/adminAuth_local_aPolicy", + "log-settings": [ + "/Common/default-log-setting" + ], + "app-service": "none", + "customization-group": "/Common/adminAuth_local_aPolicy_logout", + "customization-key": "22ac0aeb0346bcebf5e867279edf9d7b", + "default-language": "en", + "domain-cookie": "none", + "eps-group": "/Common/adminAuth_local_aPolicy_eps", + "errormap-group": "/Common/adminAuth_local_aPolicy_errormap", + "exchange-profile": "none", + "framework-installation-group": "/Common/adminAuth_local_aPolicy_framework_installation", + "general-ui-group": "/Common/adminAuth_local_aPolicy_general_ui", + "generation": "4", + "generation-action": "noop", + "httponly-cookie": "false", + "logout-uri-timeout": "5", + "modified-since-last-policy-sync": "true", + "named-scope": "none", + "persistent-cookie": "false", + "scope": "profile", + "secure-cookie": "true", + "sso-name": "none", + "type": "system-authentication", + "user-identity-method": "http" + }, + "/Common/radiusServer": { + "line": "\n accept-languages { en }\n access-policy /Common/radiusServer\n app-service none\n customization-group /Common/radiusServer_logout\n customization-key c649c57de3b753f9764ae640df53f6cb\n default-language en\n domain-cookie none\n eps-group /Common/radiusServer_eps\n errormap-group /Common/radiusServer_errormap\n exchange-profile none\n framework-installation-group /Common/radiusServer_frameworkinstallation\n general-ui-group /Common/radiusServer_general_ui\n generation 1\n generation-action noop\n httponly-cookie false\n log-settings {\n /Common/default-log-setting\n }\n logout-uri-include none\n logout-uri-timeout 5\n modified-since-last-policy-sync true\n oauth-profile none\n persistent-cookie false\n scope profile\n secure-cookie true\n sso-name none\n type all\n user-identity-method http\n", + "name": "radiusServer", + "partition": "Common", + "accept-languages": [ + "en" + ], + "access-policy": "/Common/radiusServer", + "log-settings": [ + "/Common/default-log-setting" + ], + "app-service": "none", + "customization-group": "/Common/radiusServer_logout", + "customization-key": "c649c57de3b753f9764ae640df53f6cb", + "default-language": "en", + "domain-cookie": "none", + "eps-group": "/Common/radiusServer_eps", + "errormap-group": "/Common/radiusServer_errormap", + "exchange-profile": "none", + "framework-installation-group": "/Common/radiusServer_frameworkinstallation", + "general-ui-group": "/Common/radiusServer_general_ui", + "generation": "1", + "generation-action": "noop", + "httponly-cookie": "false", + "logout-uri-timeout": "5", + "modified-since-last-policy-sync": "true", + "oauth-profile": "none", + "persistent-cookie": "false", + "scope": "profile", + "secure-cookie": "true", + "sso-name": "none", + "type": "all", + "user-identity-method": "http" + }, + "/Common/sslvpn_network_access": { + "line": "\n accept-languages { en es fr }\n access-policy /Common/sslvpn_network_access\n app-service none\n customization-group /Common/sslvpn_network_access_logout\n customization-key c0595c63f1a549ebf25e99e683989536\n default-language en\n domain-cookie none\n eps-group /Common/sslvpn_network_access_eps\n errormap-group /Common/sslvpn_network_access_errormap\n exchange-profile none\n framework-installation-group /Common/sslvpn_network_access_frameworkinstallation\n general-ui-group /Common/sslvpn_network_access_general_ui\n generation 3\n generation-action noop\n httponly-cookie false\n log-settings {\n /Common/default-log-setting\n /Common/default-sslo-log-setting\n }\n logout-uri-include { /some/logout.html }\n logout-uri-timeout 5\n modified-since-last-policy-sync true\n named-scope none\n oauth-profile none\n persistent-cookie false\n scope profile\n secure-cookie true\n sso-name none\n type all\n user-identity-method http\n", + "name": "sslvpn_network_access", + "partition": "Common", + "accept-languages": [ + "en", + "es", + "fr" + ], + "access-policy": "/Common/sslvpn_network_access", + "log-settings": [ + "/Common/default-log-setting", + "/Common/default-sslo-log-setting" + ], + "app-service": "none", + "customization-group": "/Common/sslvpn_network_access_logout", + "customization-key": "c0595c63f1a549ebf25e99e683989536", + "default-language": "en", + "domain-cookie": "none", + "eps-group": "/Common/sslvpn_network_access_eps", + "errormap-group": "/Common/sslvpn_network_access_errormap", + "exchange-profile": "none", + "framework-installation-group": "/Common/sslvpn_network_access_frameworkinstallation", + "general-ui-group": "/Common/sslvpn_network_access_general_ui", + "generation": "3", + "generation-action": "noop", + "httponly-cookie": "false", + "logout-uri-timeout": "5", + "modified-since-last-policy-sync": "true", + "named-scope": "none", + "oauth-profile": "none", + "persistent-cookie": "false", + "scope": "profile", + "secure-cookie": "true", + "sso-name": "none", + "type": "all", + "user-identity-method": "http" + } }, "connectivity": { "/Common/sslvpn_connectivity_profile": "\n adaptive-compression enabled\n app-service none\n citrix-client-bundle /Common/default-citrix-client-bundle\n client-policy {\n sslvpn_connectivity_profile_clientPolicy { }\n }\n compress-buffer-size 4096\n compress-cpu-saver true\n compress-cpu-saver-high 90\n compress-cpu-saver-low 75\n compress-gzip-level 6\n compress-gzip-memlevel 8192\n compress-gzip-window-size 16384\n compress-ingress false\n compress-preferred-method zlib\n compression enabled\n compression-codecs { deflate lzo bzip2 }\n customization-group /Common/sslvpn_connectivity_profile_secure_access_client_customization\n defaults-from /Common/connectivity\n deflate-compression-level 1\n description none\n fec-name none\n location-specific false\n tunnel-name /Common/sslvpn_connectivity_profile\n" @@ -3098,7 +2405,8 @@ ltm pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool { "line": "\n active\n blocking-mode enabled\n description 'some description'\n encoding utf-8\n policy-builder enabled\n policy-template POLICY_TEMPLATE_RAPID_DEPLOYMENT\n policy-type security\n parent-policy some-.other_policy1\n", "status": "active", "blocking-mode": "enabled", - "description": "'some description'", + "description": "some description", + "encoding": "utf-8", "policy-builder": "enabled", "policy-template": "POLICY_TEMPLATE_RAPID_DEPLOYMENT", "policy-type": "security", @@ -3159,19 +2467,89 @@ ltm pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool { "ltm": { "default-node-monitor": "\n rule none\n", "node": { - "/Common/10.200.244.15": "\n address 10.200.244.15\n description bigiq01\n", - "/Common/10.10.10.1": "\n address 10.10.10.1\n", - "/Common/192.168.200.42": "\n address 192.168.200.42\n", - "/Common/api.chucknorris.io": "\n fqdn {\n address-family all\n autopopulate enabled\n name api.chucknorris.io\n }\n", - "/Common/app1_Node1": "\n address 192.168.1.22\n", - "/Common/app1_Node2": "\n address 192.168.1.23\n", - "/Common/app2_Node1": "\n address 192.168.2.22\n description app2_Node1\n", - "/Common/app2_Node2": "\n address 192.168.2.23\n description app2_Node2\n", - "/Common/app3_Node1": "\n address 192.168.1.52\n", - "/Common/app3_Node2": "\n address 192.168.1.53\n", - "/Common/app5_Node5": "\n address 192.168.10.23\n", - "/foo/192.50.2.2": "\n address 192.50.2.2\n", - "/hue-infra/10.200.30.29": "\n address 10.200.30.29\n" + "/Common/10.200.244.15": { + "line": "\n address 10.200.244.15\n description bigiq01\n", + "name": "10.200.244.15", + "partition": "Common", + "address": "10.200.244.15", + "description": "bigiq01" + }, + "/Common/10.10.10.1": { + "line": "\n address 10.10.10.1\n", + "name": "10.10.10.1", + "partition": "Common", + "address": "10.10.10.1" + }, + "/Common/192.168.200.42": { + "line": "\n address 192.168.200.42\n", + "name": "192.168.200.42", + "partition": "Common", + "address": "192.168.200.42" + }, + "/Common/api.chucknorris.io": { + "line": "\n fqdn {\n address-family all\n autopopulate enabled\n name api.chucknorris.io\n }\n", + "name": "api.chucknorris.io", + "partition": "Common", + "address-family": "all", + "autopopulate": "enabled", + "fqdn": "api.chucknorris.io" + }, + "/Common/app1_Node1": { + "line": "\n address 192.168.1.22\n", + "name": "app1_Node1", + "partition": "Common", + "address": "192.168.1.22" + }, + "/Common/app1_Node2": { + "line": "\n address 192.168.1.23\n", + "name": "app1_Node2", + "partition": "Common", + "address": "192.168.1.23" + }, + "/Common/app2_Node1": { + "line": "\n address 192.168.2.22\n description app2_Node1\n", + "name": "app2_Node1", + "partition": "Common", + "address": "192.168.2.22", + "description": "app2_Node1" + }, + "/Common/app2_Node2": { + "line": "\n address 192.168.2.23\n description app2_Node2\n", + "name": "app2_Node2", + "partition": "Common", + "address": "192.168.2.23", + "description": "app2_Node2" + }, + "/Common/app3_Node1": { + "line": "\n address 192.168.1.52\n", + "name": "app3_Node1", + "partition": "Common", + "address": "192.168.1.52" + }, + "/Common/app3_Node2": { + "line": "\n address 192.168.1.53\n", + "name": "app3_Node2", + "partition": "Common", + "address": "192.168.1.53" + }, + "/Common/app5_Node5": { + "line": "\n address 192.168.10.23\n", + "name": "app5_Node5", + "partition": "Common", + "address": "192.168.10.23" + }, + "/foo/192.50.2.2": { + "line": "\n address 192.50.2.2\n", + "name": "192.50.2.2", + "partition": "foo", + "address": "192.50.2.2" + }, + "/hue-infra/10.200.30.29": { + "line": "\n address 10.200.30.29\n", + "name": "10.200.30.29", + "partition": "hue-infra", + "address": "10.200.30.29" + } }, "policy": { "/Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs": "\n controls { asm }\n requires { http }\n rules {\n default {\n actions {\n 1 {\n asm\n enable\n policy /Common/basic_policy_1\n }\n }\n ordinal 1\n }\n }\n strategy /Common/first-match\n", @@ -3179,43 +2557,550 @@ ltm pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool { "/Common/app4_ltPolicy": "\n controls { forwarding }\n description \"testing for pool extraction function\"\n requires { http }\n rules {\n css_pool_rule {\n actions {\n 0 {\n forward\n select\n pool /Common/css_pool\n }\n }\n conditions {\n 0 {\n http-uri\n scheme\n ends-with\n values { .css }\n }\n }\n }\n jpg_pool_rule {\n actions {\n 0 {\n forward\n select\n pool /Common/jpg.pool\n }\n }\n conditions {\n 0 {\n http-uri\n query-string\n ends-with\n values { .jpg }\n }\n }\n ordinal 1\n }\n js_pool_rule {\n actions {\n 0 {\n forward\n select\n pool /Common/js.io_t80_pool\n }\n }\n conditions {\n 0 {\n http-uri\n scheme\n ends-with\n values { .js }\n }\n }\n ordinal 2\n }\n txt_node {\n actions {\n 0 {\n forward\n select\n node 10.10.10.1\n }\n }\n conditions {\n 0 {\n http-uri\n scheme\n ends-with\n values { .txt }\n }\n }\n ordinal 3\n }\n }\n strategy /Common/first-match\n" }, "pool": { - "/Common/bigiq.benlab.io_t443_pool": "\n members {\n /Common/10.200.244.15:443 {\n address 10.200.244.15\n }\n }\n monitor /Common/https_head_f5\n", - "/Common/app1_t80_pool": "\n members {\n /Common/app1_Node1:80 {\n address 192.168.1.22\n }\n /Common/app1_Node2:80 {\n address 192.168.1.23\n }\n }\n monitor /Common/http and /Common/tcp\n", - "/Common/app2_t80_pool": "\n load-balancing-mode least-connections-member\n members {\n /Common/app2_Node1:80 {\n address 192.168.2.22\n }\n /Common/app2_Node2:80 {\n address 192.168.2.23\n }\n }\n monitor /Common/global_http_monitor and /Common/global_https_monitor\n", - "/Common/app3_t8443_pool": "\n load-balancing-mode least-connections-member\n members {\n /Common/app3_Node1:8443 {\n address 192.168.1.52\n }\n /Common/app3_Node2:8443 {\n address 192.168.1.53\n }\n }\n monitor /Common/app1_tcp_half_open_quick_monitor and /Common/http_head_f5 and /Common/http2_head_f5 and /Common/http and /Common/tcp_half_open\n", - "/Common/app4_pool": "\n members {\n /Common/api.chucknorris.io:443 {\n fqdn {\n autopopulate enabled\n name api.chucknorris.io\n }\n }\n }\n", - "/Common/css_pool": " ", - "/Common/jpg.pool": " ", - "/Common/js.io_t80_pool": " ", - "/foo/defaultsUDP_5555/defaultsUDP_5555_Pool1": "\n members {\n /foo/192.50.2.2:5555 {\n address 192.50.2.2\n metadata {\n source {\n value declaration\n }\n }\n }\n }\n min-active-members 1\n monitor min 1 of { /Common/gateway_icmp }\n", - "/hue-infra/hue-up/hue-up.benlab.io_t80_pool": "\n members {\n /hue-infra/10.200.30.29:80 {\n address 10.200.30.29\n metadata {\n source {\n value declaration\n }\n }\n }\n }\n min-active-members 1\n monitor min 1 of { /Common/http }\n", - "/hue-infra/hue-up/hue-up.benlab.io_t443_pool": "\n members {\n /hue-infra/10.200.30.29:443 {\n address 10.200.30.29\n metadata {\n source {\n value declaration\n }\n }\n }\n }\n min-active-members 1\n monitor min 1 of { /Common/https }\n" + "/Common/bigiq.benlab.io_t443_pool": { + "line": "\n members {\n /Common/10.200.244.15:443 {\n address 10.200.244.15\n }\n }\n monitor /Common/https_head_f5\n", + "name": "bigiq.benlab.io_t443_pool", + "partition": "Common", + "members": { + "/Common/10.200.244.15:443": { + "address": "10.200.244.15" + } + }, + "monitor": [ + "/Common/https_head_f5" + ] + }, + "/Common/app1_t80_pool": { + "line": "\n members {\n /Common/app1_Node1:80 {\n address 192.168.1.22\n }\n /Common/app1_Node2:80 {\n address 192.168.1.23\n }\n }\n monitor /Common/http and /Common/tcp\n", + "name": "app1_t80_pool", + "partition": "Common", + "members": { + "/Common/app1_Node1:80": { + "address": "192.168.1.22" + }, + "/Common/app1_Node2:80": { + "address": "192.168.1.23" + } + }, + "monitor": "/Common/http" + }, + "/Common/app2_t80_pool": { + "line": "\n load-balancing-mode least-connections-member\n members {\n /Common/app2_Node1:80 {\n address 192.168.2.22\n }\n /Common/app2_Node2:80 {\n address 192.168.2.23\n }\n }\n monitor /Common/global_http_monitor and /Common/global_https_monitor\n", + "name": "app2_t80_pool", + "partition": "Common", + "members": { + "/Common/app2_Node1:80": { + "address": "192.168.2.22" + }, + "/Common/app2_Node2:80": { + "address": "192.168.2.23" + } + }, + "load-balancing-mode": "least-connections-member", + "monitor": "/Common/global_http_monitor" + }, + "/Common/app3_t8443_pool": { + "line": "\n load-balancing-mode least-connections-member\n members {\n /Common/app3_Node1:8443 {\n address 192.168.1.52\n }\n /Common/app3_Node2:8443 {\n address 192.168.1.53\n }\n }\n monitor /Common/app1_tcp_half_open_quick_monitor and /Common/http_head_f5 and /Common/http2_head_f5 and /Common/http and /Common/tcp_half_open\n", + "name": "app3_t8443_pool", + "partition": "Common", + "members": { + "/Common/app3_Node1:8443": { + "address": "192.168.1.52" + }, + "/Common/app3_Node2:8443": { + "address": "192.168.1.53" + } + }, + "load-balancing-mode": "least-connections-member", + "monitor": "/Common/app1_tcp_half_open_quick_monitor" + }, + "/Common/manyOptions_pool": { + "line": "\n allow-nat no\n allow-snat no\n description \"yabba dappa doo!\"\n ignore-persisted-weight enabled\n ip-tos-to-client mimic\n ip-tos-to-server mimic\n link-qos-to-client 5\n link-qos-to-server 6\n load-balancing-mode observed-member\n members {\n /Common/10.3.110.10:80 {\n address 10.3.110.10\n }\n /Common/10.3.110.10:443 {\n address 10.3.110.10\n }\n /Common/10.3.110.10:8443 {\n address 10.3.110.10\n }\n /Common/dw1.lab.io:8443 {\n fqdn {\n autopopulate enabled\n name dude1.where.io\n }\n }\n /Common/dw2.lab.io:443 {\n description asfd\n monitor /Common/http\n fqdn {\n name dude2.where.io\n }\n }\n }\n monitor min 2 of { /Common/gateway_icmp /Common/http /Common/http2 }\n profiles {\n /Common/nvgre\n }\n queue-depth-limit 66\n queue-time-limit 88\n reselect-tries 7\n service-down-action reset\n slow-ramp-time 300\n", + "name": "manyOptions_pool", + "partition": "Common", + "members": { + "/Common/10.3.110.10:80": { + "address": "10.3.110.10" + }, + "/Common/10.3.110.10:443": { + "address": "10.3.110.10" + }, + "/Common/10.3.110.10:8443": { + "address": "10.3.110.10" + }, + "/Common/dw1.lab.io:8443": { + "autopopulate": "enabled", + "fqdn": "dude1.where.io" + }, + "/Common/dw2.lab.io:443": { + "fqdn": "dude2.where.io", + "description": "asfd", + "monitor": "/Common/http" + } + }, + "monitorQualifier": "min 2 of", + "monitor": [ + "/Common/gateway_icmp", + "/Common/http", + "/Common/http2" + ], + "allow-nat": "no", + "allow-snat": "no", + "description": "yabba dappa doo!", + "ignore-persisted-weight": "enabled", + "ip-tos-to-client": "mimic", + "ip-tos-to-server": "mimic", + "link-qos-to-client": "5", + "link-qos-to-server": "6", + "load-balancing-mode": "observed-member", + "queue-depth-limit": "66", + "queue-time-limit": "88", + "reselect-tries": "7", + "service-down-action": "reset", + "slow-ramp-time": "300" + }, + "/Common/app4_pool": { + "line": "\n members {\n /Common/api.chucknorris.io:443 {\n fqdn {\n autopopulate enabled\n name api.chucknorris.io\n }\n }\n }\n", + "name": "app4_pool", + "partition": "Common", + "members": { + "/Common/api.chucknorris.io:443": { + "autopopulate": "enabled", + "fqdn": "api.chucknorris.io" + } + } + }, + "/Common/css_pool": { + "line": " ", + "name": "css_pool", + "partition": "Common" + }, + "/Common/jpg.pool": { + "line": " ", + "name": "jpg.pool", + "partition": "Common" + }, + "/Common/js.io_t80_pool": { + "line": " ", + "name": "js.io_t80_pool", + "partition": "Common" + }, + "/foo/defaultsUDP_5555/defaultsUDP_5555_Pool1": { + "line": "\n members {\n /foo/192.50.2.2:5555 {\n address 192.50.2.2\n metadata {\n source {\n value declaration\n }\n }\n }\n }\n min-active-members 1\n monitor min 1 of { /Common/gateway_icmp }\n", + "name": "defaultsUDP_5555_Pool1", + "partition": "foo", + "folder": "defaultsUDP_5555", + "members": { + "/foo/192.50.2.2:5555": { + "address": "192.50.2.2" + } + }, + "monitorQualifier": "min 1 of", + "monitor": [ + "/Common/gateway_icmp" + ], + "min-active-members": "1" + }, + "/foo/app8_pool": { + "line": "\n monitor /Common/http\n", + "name": "app8_pool", + "partition": "foo", + "monitor": [ + "/Common/http" + ] + }, + "/hue-infra/hue-up/hue-up.benlab.io_t80_pool": { + "line": "\n members {\n /hue-infra/10.200.30.29:80 {\n address 10.200.30.29\n metadata {\n source {\n value declaration\n }\n }\n }\n }\n min-active-members 1\n monitor min 1 of { /Common/http }\n", + "name": "hue-up.benlab.io_t80_pool", + "partition": "hue-infra", + "folder": "hue-up", + "members": { + "/hue-infra/10.200.30.29:80": { + "address": "10.200.30.29" + } + }, + "monitorQualifier": "min 1 of", + "monitor": [ + "/Common/http" + ], + "min-active-members": "1" + }, + "/hue-infra/hue-up/hue-up.benlab.io_t443_pool": { + "line": "\n members {\n /hue-infra/10.200.30.29:443 {\n address 10.200.30.29\n metadata {\n source {\n value declaration\n }\n }\n }\n }\n min-active-members 1\n monitor min 1 of { /Common/https }\n", + "name": "hue-up.benlab.io_t443_pool", + "partition": "hue-infra", + "folder": "hue-up", + "members": { + "/hue-infra/10.200.30.29:443": { + "address": "10.200.30.29" + } + }, + "monitorQualifier": "min 1 of", + "monitor": [ + "/Common/https" + ], + "min-active-members": "1" + } }, "rule": { "/Common/app3_rule": "\n#comment\n\nwhen HTTP_REQUEST {\n # add more here\n}\n", "/Common/app3_rule2": "\n#comment\n\nwhen HTTP_REQUEST {\n # ben test 444\n}\n", "/Common/app3_rule3": "\n# app3_rule3 header\n\nwhen SERVERSSL_DATA {\n # got something from server\n}\n", "/Common/app4_pool_rule": "\n### test rule for corkscrew\n\n # \n\nwhen HTTP_REQUEST {\n\n # pool reference by variable declaration\n set html-pool web1Pool\n\n if { [HTTP::path] ends_with \"*.css\" }{\n\n # regular pool refernce\n pool css_pool\n\n } elseif { [HTTP::path] ends_with \"*.jpg\" }{\n\n # pool member refernce\n pool jpg.pool member 10.10.10.1 80\n\n } elseif { [HTTP::path] ends_with \"*.js\" }{\n\n # another pool reference with special characters\n pool js.io_t80_pool \n\n } elseif { [HTTP::path] ends_with \"*.xx\" }{\n\n # pool reference not in tmos config\n ### *** seems the gui won't let you attach an irule to a vs with a pool that doesn't exist\n #pool missing_pool\n\n } elseif { [HTTP::path] ends_with \"*.txt\" }{\n\n # node reference\n node 10.10.10.1 80\n\n } else {\n\n # pool referenced by variable\n pool $html-pool\n\n }\n}\n", - "/Common/app4_pool_rule2": "\n\n" + "/Common/app4_pool_rule2": "\n\n", + "/foo/HTTP-redirect-to-HTTPS": "\nwhen HTTP_REQUEST { HTTP::redirect https://[HTTP::host][HTTP::uri] }\n" }, "snat-translation": { "/Common/192.168.1.51": "\n address 192.168.1.51\n inherited-traffic-group true\n traffic-group /Common/traffic-group-1\n" }, "snatpool": { - "/Common/app3_snat_pool": "\n members {\n /Common/192.168.1.51\n }\n" + "/Common/app3_snat_pool": { + "line": "\n members {\n /Common/192.168.1.51\n }\n", + "name": "app3_snat_pool", + "partition": "Common", + "members": [ + "192.168.1.51" + ] + }, + "/Common/testSnat1_pool": { + "line": "\n members {\n /Common/1.1.1.1\n /Common/1.1.1.2\n /Common/1.1.1.3\n /Common/1.1.1.4\n }\n", + "name": "testSnat1_pool", + "partition": "Common", + "members": [ + "1.1.1.1", + "1.1.1.2", + "1.1.1.3", + "1.1.1.4" + ] + } }, "virtual": { - "/Common/app1_t80_vs": "\n creation-time 2020-09-17:08:50:22\n destination /Common/192.168.1.21:80\n ip-protocol tcp\n last-modified-time 2020-09-17:08:51:07\n mask 255.255.255.255\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/_sys_https_redirect\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address enabled\n translate-port enabled\n", - "/Common/app1_t443_vs": "\n destination /Common/192.168.1.21:443\n ip-protocol tcp\n last-modified-time 2020-09-18:10:05:54\n mask 255.255.255.255\n pool /Common/app1_t80_pool\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n", - "/Common/app2_t80_vs": "\n creation-time 2020-09-17:08:50:22\n destination /Common/192.168.2.21:80\n ip-protocol tcp\n last-modified-time 2020-09-17:08:51:07\n mask 255.255.255.255\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/_sys_https_redirect\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address enabled\n translate-port enabled\n", - "/Common/bigiq.benlab.io_t443_vs": "\n creation-time 2019-10-01:17:59:21\n description \"not flowing traffic, just used for GTM\"\n destination /Common/10.200.244.15:443\n ip-protocol tcp\n last-modified-time 2019-10-01:18:11:46\n mask 255.255.255.255\n policies {\n /Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs { }\n }\n pool /Common/bigiq.benlab.io_t443_pool\n profiles {\n /Common/ASM_basic_policy_1 { }\n /Common/f5-tcp-progressive { }\n /Common/http { }\n /Common/websecurity { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n vlans {\n /Common/vlan255_f5peer\n }\n vlans-enabled\n", - "/Common/app2_t443_vs": "\n destination /Common/192.168.2.21:443\n ip-protocol tcp\n last-modified-time 2020-09-18:10:05:47\n mask 255.255.255.255\n pool /Common/app2_t80_pool\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n", - "/Common/app3_t8443_vs": "\n destination /Common/192.168.1.51:8443\n fallback-persistence /Common/app3_srcAddr_persist\n ip-protocol tcp\n last-modified-time 2020-09-17:12:45:40\n mask 255.255.255.255\n persist {\n /Common/app3_cookie {\n default yes\n }\n }\n policies {\n /Common/app3_ltm_policy { }\n }\n pool /Common/app3_t8443_pool\n profiles {\n /Common/app3_clientssl {\n context clientside\n }\n /Common/app3_serverssl {\n context serverside\n }\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/app3_rule\n /Common/app3_rule2\n /Common/app3_rule3\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n pool /Common/app3_snat_pool\n type snat\n }\n translate-address enabled\n translate-port enabled\n", - "/Common/app4_t80_vs": "\n description \"test pool references in irule extration and ltp\"\n destination /Common/192.168.2.25:80\n ip-protocol tcp\n last-modified-time 2020-10-07:07:28:35\n mask 255.255.255.255\n policies {\n /Common/app4_ltPolicy { }\n }\n pool /Common/app4_pool\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/_sys_https_redirect\n /Common/app4_pool_rule\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address enabled\n translate-port enabled\n", - "/Common/forwarder_net_0.0.0.0": "\n destination /Common/0.0.0.0:0\n ip-forward\n mask any\n profiles {\n /Common/fastl4_loose { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address disabled\n translate-port disabled\n", - "/foo/defaultsUDP_5555/serviceMain": "\n creation-time 2020-10-06:13:27:20\n description defaultsUDP_5555\n destination /foo/192.50.2.1:5555\n ip-protocol udp\n last-modified-time 2020-10-06:13:27:20\n mask 255.255.255.255\n persist {\n /Common/source_addr {\n default yes\n }\n }\n pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1\n profiles {\n /Common/udp { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n", - "/hue-infra/hue-up/hue-up.benlab.io_t80_vs": "\n description hue-up\n destination /hue-infra/192.168.200.29:80\n ip-protocol tcp\n last-modified-time 2022-04-03:14:25:43\n mask 255.255.255.255\n persist {\n /Common/cookie {\n default yes\n }\n }\n pool /hue-infra/hue-up/hue-up.benlab.io_t80_pool\n profiles {\n /Common/f5-tcp-progressive { }\n /Common/http { }\n }\n serverssl-use-sni disabled\n service-down-immediate-action reset\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n", - "/hue-infra/hue-up/hue-up.benlab.io_t443_vs": "\n description hue-up\n destination /hue-infra/192.168.200.29:443\n ip-protocol tcp\n last-modified-time 2021-04-06:17:55:27\n mask 255.255.255.255\n persist {\n /Common/cookie {\n default yes\n }\n }\n pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool\n profiles {\n /Common/f5-tcp-progressive { }\n /Common/http { }\n }\n serverssl-use-sni disabled\n service-down-immediate-action reset\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n" + "/Common/app1_t80_vs": { + "line": "\n creation-time 2020-09-17:08:50:22\n destination /Common/192.168.1.21:80\n ip-protocol tcp\n last-modified-time 2020-09-17:08:51:07\n mask 255.255.255.255\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/_sys_https_redirect\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address enabled\n translate-port enabled\n", + "name": "app1_t80_vs", + "partition": "Common", + "destination": "192.168.1.21:80", + "profiles": [ + "/Common/http", + "/Common/tcp" + ], + "rules": [ + "/Common/_sys_https_redirect" + ], + "creation-time": "2020-09-17:08:50:22", + "ip-protocol": "tcp", + "last-modified-time": "2020-09-17:08:51:07", + "mask": "255.255.255.255", + "serverssl-use-sni": "disabled", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled" + }, + "/Common/app1_t443_vs": { + "line": "\n destination /Common/192.168.1.21:443\n ip-protocol tcp\n last-modified-time 2020-09-18:10:05:54\n mask 255.255.255.255\n pool /Common/app1_t80_pool\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n", + "name": "app1_t443_vs", + "partition": "Common", + "destination": "192.168.1.21:443", + "pool": "/Common/app1_t80_pool", + "profiles": [ + "/Common/http", + "/Common/tcp" + ], + "snat": "automap", + "ip-protocol": "tcp", + "last-modified-time": "2020-09-18:10:05:54", + "mask": "255.255.255.255", + "serverssl-use-sni": "disabled", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled" + }, + "/Common/app2_t80_vs": { + "line": "\n creation-time 2020-09-17:08:50:22\n destination /Common/192.168.2.21:80\n ip-protocol tcp\n last-modified-time 2020-09-17:08:51:07\n mask 255.255.255.255\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/_sys_https_redirect\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address enabled\n translate-port enabled\n", + "name": "app2_t80_vs", + "partition": "Common", + "destination": "192.168.2.21:80", + "profiles": [ + "/Common/http", + "/Common/tcp" + ], + "rules": [ + "/Common/_sys_https_redirect" + ], + "creation-time": "2020-09-17:08:50:22", + "ip-protocol": "tcp", + "last-modified-time": "2020-09-17:08:51:07", + "mask": "255.255.255.255", + "serverssl-use-sni": "disabled", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled" + }, + "/Common/bigiq.benlab.io_t443_vs": { + "line": "\n creation-time 2019-10-01:17:59:21\n description \"not flowing traffic, just used for GTM\"\n destination /Common/10.200.244.15:443\n ip-protocol tcp\n last-modified-time 2019-10-01:18:11:46\n mask 255.255.255.255\n policies {\n /Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs { }\n }\n pool /Common/bigiq.benlab.io_t443_pool\n profiles {\n /Common/ASM_basic_policy_1 { }\n /Common/f5-tcp-progressive { }\n /Common/http { }\n /Common/websecurity { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n vlans {\n /Common/vlan255_f5peer\n /Common/vlan245\n /Common/vlan230\n }\n vlans-enabled\n", + "name": "bigiq.benlab.io_t443_vs", + "partition": "Common", + "destination": "10.200.244.15:443", + "pool": "/Common/bigiq.benlab.io_t443_pool", + "profiles": [ + "/Common/ASM_basic_policy_1", + "/Common/f5-tcp-progressive", + "/Common/http", + "/Common/websecurity" + ], + "snat": "automap", + "policies": [ + "/Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs" + ], + "vlans": [ + "/Common/vlan255_f5peer", + "/Common/vlan245", + "/Common/vlan230" + ], + "creation-time": "2019-10-01:17:59:21", + "description": "not flowing traffic, just used for GTM", + "ip-protocol": "tcp", + "last-modified-time": "2019-10-01:18:11:46", + "mask": "255.255.255.255", + "serverssl-use-sni": "disabled", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled" + }, + "/Common/app2_t443_vs": { + "line": "\n destination /Common/192.168.2.21:443\n ip-protocol tcp\n last-modified-time 2020-09-18:10:05:47\n mask 255.255.255.255\n pool /Common/app2_t80_pool\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n", + "name": "app2_t443_vs", + "partition": "Common", + "destination": "192.168.2.21:443", + "pool": "/Common/app2_t80_pool", + "profiles": [ + "/Common/http", + "/Common/tcp" + ], + "snat": "automap", + "ip-protocol": "tcp", + "last-modified-time": "2020-09-18:10:05:47", + "mask": "255.255.255.255", + "serverssl-use-sni": "disabled", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled" + }, + "/Common/persistTest_80_vs": { + "line": "\n creation-time 2023-05-09:11:25:01\n description \"vs to explore persist configs - both default/fallback are single entries\"\n destination /Common/10.6.3.4:80\n fallback-persistence /Common/source_addr\n ip-protocol tcp\n last-modified-time 2023-05-09:11:25:01\n mask 255.255.255.255\n persist {\n /Common/cookie {\n default yes\n }\n }\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address enabled\n translate-port enabled\n", + "name": "persistTest_80_vs", + "partition": "Common", + "destination": "10.6.3.4:80", + "profiles": [ + "/Common/http", + "/Common/tcp" + ], + "persist": "/Common/cookie", + "fallback-persistence": "/Common/source_addr", + "creation-time": "2023-05-09:11:25:01", + "description": "vs to explore persist configs - both default/fallback are single entries", + "ip-protocol": "tcp", + "last-modified-time": "2023-05-09:11:25:01", + "mask": "255.255.255.255", + "serverssl-use-sni": "disabled", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled" + }, + "/Common/app3_t8443_vs": { + "line": "\n destination /Common/192.168.1.51:8443\n fallback-persistence /Common/app3_srcAddr_persist\n ip-protocol tcp\n last-modified-time 2020-09-17:12:45:40\n mask 255.255.255.255\n persist {\n /Common/app3_cookie {\n default yes\n }\n }\n policies {\n /Common/app3_ltm_policy { }\n }\n pool /Common/app3_t8443_pool\n profiles {\n /Common/app3_clientssl {\n context clientside\n }\n /Common/app3_serverssl {\n context serverside\n }\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/app3_rule\n /Common/app3_rule2\n /Common/app3_rule3\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n pool /Common/app3_snat_pool\n type snat\n }\n translate-address enabled\n translate-port enabled\n", + "name": "app3_t8443_vs", + "partition": "Common", + "destination": "192.168.1.51:8443", + "pool": "/Common/app3_t8443_pool", + "profiles": [ + "/Common/app3_clientssl", + "/Common/app3_serverssl", + "/Common/http", + "/Common/tcp" + ], + "rules": [ + "/Common/app3_rule", + "/Common/app3_rule2", + "/Common/app3_rule3" + ], + "snat": "/Common/app3_snat_pool", + "policies": [ + "/Common/app3_ltm_policy" + ], + "persist": "/Common/app3_cookie", + "fallback-persistence": "/Common/app3_srcAddr_persist", + "ip-protocol": "tcp", + "last-modified-time": "2020-09-17:12:45:40", + "mask": "255.255.255.255", + "serverssl-use-sni": "disabled", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled" + }, + "/Common/app4_t80_vs": { + "line": "\n description \"test pool references in irule extration and ltp\"\n destination /Common/192.168.2.25:80\n ip-protocol tcp\n last-modified-time 2020-10-07:07:28:35\n mask 255.255.255.255\n policies {\n /Common/app4_ltPolicy { }\n }\n pool /Common/app4_pool\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/_sys_https_redirect\n /Common/app4_pool_rule\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address enabled\n translate-port enabled\n", + "name": "app4_t80_vs", + "partition": "Common", + "destination": "192.168.2.25:80", + "description": "test pool references in irule extration and ltp", + "pool": "/Common/app4_pool", + "profiles": [ + "/Common/http", + "/Common/tcp" + ], + "rules": [ + "/Common/_sys_https_redirect", + "/Common/app4_pool_rule" + ], + "policies": [ + "/Common/app4_ltPolicy" + ], + "ip-protocol": "tcp", + "last-modified-time": "2020-10-07:07:28:35", + "mask": "255.255.255.255", + "serverssl-use-sni": "disabled", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled" + }, + "/Common/forwarder_net_0.0.0.0": { + "line": "\n destination /Common/0.0.0.0:0\n ip-forward\n mask any\n profiles {\n /Common/fastl4_loose { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address disabled\n translate-port disabled\n", + "name": "forwarder_net_0.0.0.0", + "partition": "Common", + "destination": "0.0.0.0:0", + "profiles": [ + "/Common/fastl4_loose" + ], + "mask": "any", + "serverssl-use-sni": "disabled", + "source": "0.0.0.0/0", + "translate-address": "disabled", + "translate-port": "disabled" + }, + "/foo/defaultsUDP_5555/serviceMain": { + "line": "\n creation-time 2020-10-06:13:27:20\n description defaultsUDP_5555\n destination /foo/192.50.2.1:5555\n ip-protocol udp\n last-modified-time 2020-10-06:13:27:20\n mask 255.255.255.255\n persist {\n /Common/source_addr {\n default yes\n }\n }\n pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1\n profiles {\n /Common/udp { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n", + "name": "serviceMain", + "partition": "foo", + "folder": "defaultsUDP_5555", + "destination": "192.50.2.1:5555", + "pool": "/foo/defaultsUDP_5555/defaultsUDP_5555_Pool1", + "profiles": [ + "/Common/udp" + ], + "snat": "automap", + "persist": "/Common/source_addr", + "creation-time": "2020-10-06:13:27:20", + "description": "defaultsUDP_5555", + "ip-protocol": "udp", + "last-modified-time": "2020-10-06:13:27:20", + "mask": "255.255.255.255", + "serverssl-use-sni": "disabled", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled" + }, + "/foo/t1.lab.io_80vs": { + "line": "\n creation-time 2023-04-29:13:02:55\n destination /foo/10.2.3.4:80\n ip-protocol tcp\n last-modified-time 2023-04-29:13:02:55\n mask 255.255.255.255\n profiles {\n /Common/tcp { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n pool /Common/testSnat1_pool\n type snat\n }\n translate-address enabled\n translate-port enabled\n", + "name": "t1.lab.io_80vs", + "partition": "foo", + "destination": "10.2.3.4:80", + "profiles": [ + "/Common/tcp" + ], + "snat": "/Common/testSnat1_pool", + "creation-time": "2023-04-29:13:02:55", + "ip-protocol": "tcp", + "last-modified-time": "2023-04-29:13:02:55", + "mask": "255.255.255.255", + "serverssl-use-sni": "disabled", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled" + }, + "/foo/wiffle_redirect_vs": { + "line": "\n creation-time 2023-02-02:13:10:03\n description \"wiffle waffle baffle\"\n ip-protocol tcp\n last-modified-time 2023-03-29:14:27:19\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /foo/HTTP-redirect-to-HTTPS\n }\n traffic-matching-criteria /foo/wiffle_redirect_trafficMatchCriteria\n translate-address enabled\n translate-port enabled\n", + "name": "wiffle_redirect_vs", + "partition": "foo", + "description": "wiffle waffle baffle", + "profiles": [ + "/Common/http", + "/Common/tcp" + ], + "rules": [ + "/foo/HTTP-redirect-to-HTTPS" + ], + "creation-time": "2023-02-02:13:10:03", + "last-modified-time": "2023-03-29:14:27:19", + "traffic-matching-criteria": "/foo/wiffle_redirect_trafficMatchCriteria", + "translate-address": "enabled", + "translate-port": "enabled" + }, + "/foo/app8_80vs": { + "line": "\n creation-time 2021-03-04:18:40:06\n destination /foo/1.19.8.18:80\n ip-protocol tcp\n last-modified-time 2021-03-04:18:40:06\n mask 255.255.255.255\n pool /foo/app8_pool\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n", + "name": "app8_80vs", + "partition": "foo", + "destination": "1.19.8.18:80", + "pool": "/foo/app8_pool", + "profiles": [ + "/Common/http", + "/Common/tcp" + ], + "snat": "automap", + "creation-time": "2021-03-04:18:40:06", + "ip-protocol": "tcp", + "last-modified-time": "2021-03-04:18:40:06", + "mask": "255.255.255.255", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled" + }, + "/hue-infra/hue-up/hue-up.benlab.io_t80_vs": { + "line": "\n description hue-up\n destination /hue-infra/192.168.200.29:80\n ip-protocol tcp\n last-modified-time 2022-04-03:14:25:43\n mask 255.255.255.255\n persist {\n /Common/cookie {\n default yes\n }\n }\n pool /hue-infra/hue-up/hue-up.benlab.io_t80_pool\n profiles {\n /Common/f5-tcp-progressive { }\n /Common/http { }\n }\n serverssl-use-sni disabled\n service-down-immediate-action reset\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n", + "name": "hue-up.benlab.io_t80_vs", + "partition": "hue-infra", + "folder": "hue-up", + "destination": "192.168.200.29:80", + "pool": "/hue-infra/hue-up/hue-up.benlab.io_t80_pool", + "profiles": [ + "/Common/f5-tcp-progressive", + "/Common/http" + ], + "snat": "automap", + "persist": "/Common/cookie", + "description": "hue-up", + "ip-protocol": "tcp", + "last-modified-time": "2022-04-03:14:25:43", + "mask": "255.255.255.255", + "serverssl-use-sni": "disabled", + "service-down-immediate-action": "reset", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled" + }, + "/hue-infra/hue-up/hue-up.benlab.io_t443_vs": { + "line": "\n description hue-up\n destination /hue-infra/192.168.200.29:443\n ip-protocol tcp\n last-modified-time 2021-04-06:17:55:27\n mask 255.255.255.255\n persist {\n /Common/cookie {\n default yes\n }\n }\n pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool\n profiles {\n /Common/f5-tcp-progressive { }\n /Common/http { }\n }\n serverssl-use-sni disabled\n service-down-immediate-action reset\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n", + "name": "hue-up.benlab.io_t443_vs", + "partition": "hue-infra", + "folder": "hue-up", + "destination": "192.168.200.29:443", + "pool": "/hue-infra/hue-up/hue-up.benlab.io_t443_pool", + "profiles": [ + "/Common/f5-tcp-progressive", + "/Common/http" + ], + "snat": "automap", + "persist": "/Common/cookie", + "description": "hue-up", + "ip-protocol": "tcp", + "last-modified-time": "2021-04-06:17:55:27", + "mask": "255.255.255.255", + "serverssl-use-sni": "disabled", + "service-down-immediate-action": "reset", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled" + } }, "virtual-address": { "/Common/0.0.0.0": "\n address any\n arp disabled\n icmp-echo disabled\n mask any\n traffic-group /Common/traffic-group-1\n", @@ -3224,6 +3109,7 @@ ltm pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool { "/Common/192.168.2.21": "\n address 192.168.2.21\n arp enabled\n mask 255.255.255.255\n traffic-group /Common/traffic-group-1\n", "/Common/192.168.2.25": "\n address 192.168.2.25\n arp enabled\n mask 255.255.255.255\n traffic-group /Common/traffic-group-1\n", "/foo/192.50.2.1": "\n address 192.50.2.1\n arp enabled\n inherited-traffic-group true\n mask 255.255.255.255\n traffic-group /Common/traffic-group-1\n", + "/foo/10.2.3.4": "\n address 10.2.3.4\n arp enabled\n icmp-echo enabled\n mask 255.255.255.255\n traffic-group /Common/traffic-group-1\n", "/hue-infra/192.168.200.29": "\n address 192.168.200.29\n arp enabled\n icmp-echo enabled\n inherited-traffic-group true\n mask 255.255.255.255\n traffic-group /Common/traffic-group-1\n" }, "auth": { @@ -3251,22 +3137,97 @@ ltm pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool { }, "monitor": { "dns": { - "/Common/dubNameTst1_monitor": "\n accept-rcode no-error\n adaptive disabled\n answer-contains query-type\n defaults-from /Common/dns\n interval 5\n qname query.test.com\n qtype a\n recv none\n time-until-up 0\n timeout 16\n" + "/Common/dubNameTst1_monitor": { + "line": "\n accept-rcode no-error\n adaptive disabled\n answer-contains query-type\n defaults-from /Common/dns\n interval 5\n qname query.test.com\n qtype a\n recv none\n time-until-up 0\n timeout 16\n", + "name": "dubNameTst1_monitor", + "partition": "Common", + "accept-rcode": "no-error", + "adaptive": "disabled", + "answer-contains": "query-type", + "defaults-from": "/Common/dns", + "interval": "5", + "qname": "query.test.com", + "qtype": "a", + "recv": "none", + "time-until-up": "0", + "timeout": "16" + } }, "http": { - "/Common/global_http_monitor": "\n adaptive disabled\n defaults-from /Common/http\n interval 5\n ip-dscp 0\n recv \"ok 200\"\n recv-disable none\n send \"GET /anywebsite.com\\r\\n\"\n time-until-up 0\n timeout 16\n" + "/Common/global_http_monitor": { + "line": "\n adaptive disabled\n defaults-from /Common/http\n interval 5\n ip-dscp 0\n recv \"ok 200\"\n recv-disable none\n send \"GET /anywebsite.com\\r\\n\"\n time-until-up 0\n timeout 16\n", + "name": "global_http_monitor", + "partition": "Common", + "adaptive": "disabled", + "defaults-from": "/Common/http", + "interval": "5", + "ip-dscp": "0", + "recv": "ok 200", + "recv-disable": "none", + "send": "GET /anywebsite.com\\r\\n", + "time-until-up": "0", + "timeout": "16" + } }, "https": { - "/Common/global_https_monitor": "\n adaptive disabled\n defaults-from /Common/https\n interval 5\n ip-dscp 0\n recv \"201 continue\"\n recv-disable none\n send \"GET /any-secure-website.com\\r\\n\"\n time-until-up 0\n timeout 16\n" + "/Common/global_https_monitor": { + "line": "\n adaptive disabled\n defaults-from /Common/https\n interval 5\n ip-dscp 0\n recv \"201 continue\"\n recv-disable none\n send \"GET /any-secure-website.com\\r\\n\"\n time-until-up 0\n timeout 16\n", + "name": "global_https_monitor", + "partition": "Common", + "adaptive": "disabled", + "defaults-from": "/Common/https", + "interval": "5", + "ip-dscp": "0", + "recv": "201 continue", + "recv-disable": "none", + "send": "GET /any-secure-website.com\\r\\n", + "time-until-up": "0", + "timeout": "16" + } }, "tcp": { - "/Common/test_tcp_monitor": "\n adaptive disabled\n defaults-from /Common/tcp\n interval 5\n ip-dscp 0\n recv \"receive a tcp string\"\n recv-disable none\n send \"send a tcp string\"\n time-until-up 0\n timeout 16\n" + "/Common/test_tcp_monitor": { + "line": "\n adaptive disabled\n defaults-from /Common/tcp\n interval 5\n ip-dscp 0\n recv \"receive a tcp string\"\n recv-disable none\n send \"send a tcp string\"\n time-until-up 0\n timeout 16\n", + "name": "test_tcp_monitor", + "partition": "Common", + "adaptive": "disabled", + "defaults-from": "/Common/tcp", + "interval": "5", + "ip-dscp": "0", + "recv": "receive a tcp string", + "recv-disable": "none", + "send": "send a tcp string", + "time-until-up": "0", + "timeout": "16" + } }, "tcp-half-open": { - "/Common/app1_tcp_half_open_quick_monitor": "\n defaults-from /Common/tcp_half_open\n destination *:*\n interval 1\n time-until-up 0\n timeout 4\n" + "/Common/app1_tcp_half_open_quick_monitor": { + "line": "\n defaults-from /Common/tcp_half_open\n destination *:*\n interval 1\n time-until-up 0\n timeout 4\n", + "name": "app1_tcp_half_open_quick_monitor", + "partition": "Common", + "defaults-from": "/Common/tcp_half_open", + "destination": "*:*", + "interval": "1", + "time-until-up": "0", + "timeout": "4" + } }, "udp": { - "/Common/test_udp_monitor": "\n adaptive disabled\n debug no\n defaults-from /Common/udp\n interval 5\n recv recieve-what?\n recv-disable none\n send \"default send string\"\n time-until-up 0\n timeout 16\n" + "/Common/test_udp_monitor": { + "line": "\n adaptive disabled\n debug no\n defaults-from /Common/udp\n interval 5\n recv recieve-what?\n recv-disable none\n send \"default send string\"\n time-until-up 0\n timeout 16\n", + "name": "test_udp_monitor", + "partition": "Common", + "adaptive": "disabled", + "debug": "no", + "defaults-from": "/Common/udp", + "interval": "5", + "recv": "recieve-what?", + "recv-disable": "none", + "send": "default send string", + "time-until-up": "0", + "timeout": "16" + } } }, "persistence": { @@ -3299,6 +3260,9 @@ ltm pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool { "/Common/app3_serverssl": "\n app-service none\n defaults-from /Common/serverssl\n", "/Common/test2": "\n app-service none\n defaults-from /Common/serverssl\n" } + }, + "traffic-matching-criteria": { + "/foo/wiffle_redirect_trafficMatchCriteria": "\n destination-address-inline 10.1.1.9\n destination-port-inline 80\n protocol tcp\n source-address-inline 0.0.0.0\n source-address-list /foo/wiffle_address_list\n" } }, "pem": { diff --git a/tests/artifacts/f5_corkscrew_test.qkview.log.json b/tests/artifacts/f5_corkscrew_test.qkview.log.json index 55da2c3..c67fff2 100644 --- a/tests/artifacts/f5_corkscrew_test.qkview.log.json +++ b/tests/artifacts/f5_corkscrew_test.qkview.log.json @@ -1,6 +1,6 @@ { - "id": "4d1bc2a7-5258-4283-9cac-bf969ba82543", - "dateTime": "2023-04-27T20:22:50.165Z", + "id": "3e964872-0d16-4439-9fc0-531c7c071cfe", + "dateTime": "2023-05-24T01:12:49.462Z", "hostname": "devCloud01.benlab.io", "inputFileType": ".qkview", "config": { @@ -17,23 +17,28 @@ }, { "fileName": "config/bigip_gtm.conf", - "size": 10015, - "content": "#TMSH-VERSION: 15.1.8.2\n\ngtm datacenter /Common/home_dc {\n description main\n}\ngtm region /Common/eastCoast {\n region-members {\n region /Common/int_rfc1918 { }\n }\n}\ngtm region /Common/int_rfc1918 {\n region-members {\n subnet 10.0.0.0/8 { }\n subnet 172.16.0.0/12 { }\n subnet 192.168.0.0/16 { }\n }\n}\ngtm region /Common/tn_store5590_10.230.41.0_24 {\n region-members {\n subnet 10.230.41.0/24 { }\n }\n}\ngtm rule /Common/test_dns_rule {\n# https://clouddocs.f5.com/api/irules/DNS_REQUEST.html\nwhen DNS_REQUEST {\n # Log query details\n log local0. \"\\[DNS::question name\\]: [DNS::question name],\\\n \\[DNS::question class\\]: [DNS::question class],\n \\[DNS::question type\\]: [DNS::question type]\"\n}\n}\ngtm server /Common/bigiq01 {\n datacenter /Common/home_dc\n devices {\n bigiq01 {\n addresses {\n 10.200.244.15 { }\n }\n }\n }\n product generic-host\n virtual-servers {\n bigiq01.benlab.io {\n destination 10.200.244.15:443\n monitor /Common/https\n }\n }\n}\ngtm server /Common/coreltm01_02 {\n datacenter /Common/home_dc\n devices {\n coreltm01 {\n addresses {\n 1.1.1.1 {\n translation 2.2.2.2\n }\n 10.200.30.5 { }\n }\n }\n coreltm02 {\n addresses {\n 10.200.30.6 { }\n }\n }\n }\n monitor /Common/bigip\n product bigip\n virtual-server-discovery enabled\n virtual-servers {\n /Common/bigiq.benlab.io_t443_vs {\n destination 10.200.244.15:443\n }\n /Common/dns_listener_coreltm2_tcp53_vs {\n destination 192.168.200.8:53\n }\n /Common/dns_listener_coreltm2_udp53_vs {\n destination 192.168.200.8:53\n }\n /Common/ipv6_listener {\n destination 2001:db8:200::7.53\n }\n /Common/russ.app/russ_iqdash_t80_vs {\n destination 192.168.200.160:80\n }\n /Common/sslvpn_tcp80_vs {\n destination 192.168.200.10:80\n }\n /Common/sslvpn_tcp443_vs {\n destination 192.168.200.10:443\n }\n /Common/test_listener_u53_vs {\n destination 192.168.200.7:53\n }\n /Sample_01/A1/serviceMain {\n destination 10.44.1.10:80\n }\n /com-load/Shared/loadhost-chd.openapi.starbucks.com_80 {\n destination 10.12.20.110:80\n }\n /com-load/Shared/loadhost-chd.openapi.starbucks.com_443 {\n destination 10.12.20.110:443\n }\n /core1_epic_01/epic/serviceMain {\n destination 10.0.1.10:80\n }\n /core1_pizza_02/pizza/serviceMain {\n destination 10.0.2.10:80\n }\n /external_proxy/extProxy/extExplicit_proxy_t8888_vs {\n destination 192.168.200.11:8888\n }\n /hue-infra/hue-up/hue-up.benlab.io_t80_vs {\n destination 192.168.200.29:80\n }\n /hue-infra/hue-up/hue-up.benlab.io_t443_vs {\n destination 192.168.200.29:443\n }\n /iqt1/iqt1/serviceMain {\n destination 192.168.200.164:443\n }\n /iqt1/iqt1/serviceMain-Redirect- {\n destination 192.168.200.164:80\n }\n /nas-infra/nas01/nas01_t0_vs {\n destination 192.168.200.27:0\n }\n /ntp-infra/ntp_vip/ntp_u123_vs {\n destination 192.168.200.9:123\n }\n /sap/main/ssl_bridge_443_vs {\n destination 172.24.82.67:443\n }\n /sap/main/ssl_bridge_443_vs-Redirect- {\n destination 172.24.82.67:80\n }\n /tenant_1/Shared/app1_443_vs {\n destination 172.24.80.163:443\n }\n /tenant_2/app_2/app2_443_vs {\n destination 172.24.80.217:443\n }\n /tenant_2/app_2/app2_443_vs-Redirect- {\n destination 172.24.80.217:80\n }\n /tenn1/app1/app1_t80_vs {\n destination 192.168.1.21:80\n }\n /tenn1/app1/app1_t443_vs {\n destination 192.168.1.21:443\n }\n /vcenter-infra/vcenter/vcenter.benlab.io_t443_vs {\n destination 192.168.200.50:443\n }\n test1 {\n depends-on {\n /Common/coreltm01_02:/Common/bigiq.benlab.io_t443_vs { }\n }\n destination 5.5.5.5:555\n monitor /Common/bigip\n translation-address 6.6.6.6\n translation-port 666\n }\n }\n}\ngtm server /Common/gtm_coreltm01 {\n datacenter /Common/home_dc\n devices {\n gtm_coreltm01 {\n addresses {\n 192.168.200.5 { }\n }\n }\n }\n monitor /Common/bigip\n product bigip\n}\ngtm server /Common/gtm_coreltm02 {\n datacenter /Common/home_dc\n devices {\n gtm_coreltm02 {\n addresses {\n 192.168.200.6 { }\n }\n }\n }\n monitor /Common/bigip\n product bigip\n}\ngtm server /Common/intouch01_02 {\n datacenter /Common/home_dc\n devices {\n intouch01 {\n addresses {\n 192.168.200.101 { }\n }\n }\n intouch02 {\n addresses {\n 192.168.200.102 { }\n }\n }\n }\n monitor /Common/bigip\n product bigip\n virtual-server-discovery enabled\n virtual-servers {\n /Common/cloverleaf_0_vs {\n destination 192.168.200.120:0\n }\n /Common/sldc_clvf_dev02.app/sldc_clvf_dev02_buffer_mgmt_t80_vs {\n destination 192.168.200.136:80\n }\n /Common/sldc_clvf_dev02.app/sldc_clvf_dev02_buffer_t8442_vs {\n destination 192.168.200.136:8442\n }\n /Common/sldc_clvf_dev02.app/sldc_clvf_dev02_main_t0_vs {\n destination 192.168.200.136:0\n }\n /Common/sldc_clvf_dev02.app/sldc_clvf_dev02_waterpark_t8443_vs {\n destination 192.168.200.136:8443\n }\n /Common/tiki_web_t80_vs {\n destination 192.168.200.120:80\n }\n }\n}\ngtm topology ldns: region /Common/int_rfc1918 server: datacenter /Common/home_dc {\n order 1\n}\ngtm topology ldns: region /Common/int_rfc1918 server: pool /Common/devCloud01.benlab.io_pool {\n order 2\n}\ngtm global-settings general {\n synchronization yes\n synchronization-group-name benlab_gtm_sync_group\n synchronize-zone-files yes\n}\ngtm global-settings metrics {\n metrics-collection-protocols { icmp }\n}\ngtm global-settings metrics-exclusions {\n addresses none\n}\ngtm pool a /Common/ansible.benlab.io {\n alternate-mode fallback-ip\n fallback-ip 10.200.30.42\n fallback-mode fallback-ip\n load-balancing-mode fallback-ip\n}\ngtm pool a /Common/bigiq.benlab.io_pool {\n alternate-mode fallback-ip\n fallback-ip 10.200.244.15\n fallback-mode fallback-ip\n load-balancing-mode global-availability\n members {\n /Common/coreltm01_02:/Common/bigiq.benlab.io_t443_vs {\n member-order 0\n }\n /Common/intouch01_02:/Common/tiki_web_t80_vs {\n member-order 1\n ratio 6\n }\n }\n verify-member-availability disabled\n}\ngtm pool a /Common/dc1vcenter01.benlab.io {\n alternate-mode fallback-ip\n fallback-ip 10.200.210.20\n fallback-mode fallback-ip\n load-balancing-mode fallback-ip\n}\ngtm pool a /Common/devCloud01.benlab.io_pool {\n fallback-ip 10.200.244.110\n fallback-mode fallback-ip\n load-balancing-mode fallback-ip\n}\ngtm pool a /Common/esxi01.benlab.io {\n alternate-mode none\n fallback-ip 10.200.210.21\n fallback-mode fallback-ip\n load-balancing-mode fallback-ip\n}\ngtm pool a /Common/esxi02.benlab.io {\n alternate-mode none\n fallback-ip 10.200.210.22\n fallback-mode fallback-ip\n load-balancing-mode fallback-ip\n}\ngtm pool a /Common/fms.intouchreports.com_pool { }\ngtm pool a /Common/git.benlab.io {\n alternate-mode none\n fallback-ip 10.200.30.43\n fallback-mode fallback-ip\n load-balancing-mode fallback-ip\n}\ngtm pool a /Common/intouch_mgmt_pool {\n alternate-mode none\n fallback-ip 10.200.244.100\n fallback-mode fallback-ip\n load-balancing-mode fallback-ip\n}\ngtm pool a /Common/ltmcore1_a_pool {\n fallback-ip 192.168.200.5\n}\ngtm pool a /Common/ntp.castleroc.io_pool {\n fallback-ip 192.168.200.7\n load-balancing-mode fallback-ip\n monitor /Common/gateway_icmp\n}\ngtm pool a /Common/portal.benlab.io_a_pool {\n fallback-ip 75.55.157.193\n fallback-mode fallback-ip\n members {\n /Common/coreltm01_02:/Common/sslvpn_tcp443_vs {\n member-order 0\n }\n }\n}\ngtm pool a /Common/portal.intouchcustomer.com_pool { }\ngtm pool a /Common/testzone.io_pool {\n fallback-ip 1.1.1.1\n load-balancing-mode fallback-ip\n}\ngtm pool a /Common/unifi.benlab.io_pool {\n fallback-ip 192.168.200.1\n fallback-mode fallback-ip\n load-balancing-mode fallback-ip\n}\ngtm pool a /Common/unifi_a_pool {\n alternate-mode fallback-ip\n fallback-ip 192.168.200.25\n fallback-mode fallback-ip\n load-balancing-mode fallback-ip\n}\ngtm wideip a /Common/benlab.io {\n pools {\n /Common/portal.benlab.io_a_pool {\n order 0\n }\n }\n}\ngtm wideip a /Common/bigiq.benlab.io {\n aliases {\n bq.benlab.io\n bq2.benlab.io\n burger.queen.no\n }\n last-resort-pool a /Common/bigiq.benlab.io_pool\n persistence enabled\n pool-lb-mode global-availability\n pools {\n /Common/bigiq.benlab.io_pool {\n order 0\n }\n /Common/esxi01.benlab.io {\n order 2\n ratio 4\n }\n /Common/esxi02.benlab.io {\n order 1\n }\n }\n rules {\n /Common/test_dns_rule\n }\n}\ngtm wideip a /Common/devCloud01.benlab.io {\n pools {\n /Common/devCloud01.benlab.io_pool {\n order 0\n }\n }\n}\ngtm wideip a /Common/unifi.benlab.io {\n pools {\n /Common/unifi.benlab.io_pool {\n order 0\n }\n }\n}\n" + "size": 10224, + "content": "#TMSH-VERSION: 15.1.8.2\n\ngtm datacenter /Common/home_dc {\n description main\n}\ngtm region /Common/eastCoast {\n region-members {\n region /Common/int_rfc1918 { }\n }\n}\ngtm region /Common/int_rfc1918 {\n region-members {\n subnet 10.0.0.0/8 { }\n subnet 172.16.0.0/12 { }\n subnet 192.168.0.0/16 { }\n }\n}\ngtm region /Common/tn_store5590_10.230.41.0_24 {\n region-members {\n subnet 10.230.41.0/24 { }\n }\n}\ngtm rule /Common/test_dns_rule {\n# https://clouddocs.f5.com/api/irules/DNS_REQUEST.html\nwhen DNS_REQUEST {\n # Log query details\n log local0. \"\\[DNS::question name\\]: [DNS::question name],\\\n \\[DNS::question class\\]: [DNS::question class],\n \\[DNS::question type\\]: [DNS::question type]\"\n}\n}\ngtm server /Common/bigiq01 {\n datacenter /Common/home_dc\n devices {\n bigiq01 {\n addresses {\n 10.200.244.15 { }\n }\n }\n }\n product generic-host\n virtual-servers {\n bigiq01.benlab.io {\n destination 10.200.244.15:443\n monitor /Common/https\n }\n }\n}\ngtm server /Common/coreltm01_02 {\n datacenter /Common/home_dc\n devices {\n coreltm01 {\n addresses {\n 1.1.1.1 {\n translation 2.2.2.2\n }\n 10.200.30.5 { }\n }\n }\n coreltm02 {\n addresses {\n 10.200.30.6 { }\n }\n }\n }\n monitor /Common/bigip\n product bigip\n virtual-server-discovery enabled\n virtual-servers {\n /Common/bigiq.benlab.io_t443_vs {\n destination 10.200.244.15:443\n }\n /Common/dns_listener_coreltm2_tcp53_vs {\n destination 192.168.200.8:53\n }\n /Common/dns_listener_coreltm2_udp53_vs {\n destination 192.168.200.8:53\n }\n /Common/ipv6_listener {\n destination 2001:db8:200::7.53\n }\n /Common/russ.app/russ_iqdash_t80_vs {\n destination 192.168.200.160:80\n }\n /Common/sslvpn_tcp80_vs {\n destination 192.168.200.10:80\n }\n /Common/sslvpn_tcp443_vs {\n destination 192.168.200.10:443\n }\n /Common/test_listener_u53_vs {\n destination 192.168.200.7:53\n }\n /Sample_01/A1/serviceMain {\n destination 10.44.1.10:80\n }\n /com-load/Shared/loadhost-chd.openapi.starbucks.com_80 {\n destination 10.12.20.110:80\n }\n /com-load/Shared/loadhost-chd.openapi.starbucks.com_443 {\n destination 10.12.20.110:443\n }\n /core1_epic_01/epic/serviceMain {\n destination 10.0.1.10:80\n }\n /core1_pizza_02/pizza/serviceMain {\n destination 10.0.2.10:80\n }\n /external_proxy/extProxy/extExplicit_proxy_t8888_vs {\n destination 192.168.200.11:8888\n }\n /hue-infra/hue-up/hue-up.benlab.io_t80_vs {\n destination 192.168.200.29:80\n }\n /hue-infra/hue-up/hue-up.benlab.io_t443_vs {\n destination 192.168.200.29:443\n }\n /iqt1/iqt1/serviceMain {\n destination 192.168.200.164:443\n }\n /iqt1/iqt1/serviceMain-Redirect- {\n destination 192.168.200.164:80\n }\n /nas-infra/nas01/nas01_t0_vs {\n destination 192.168.200.27:0\n }\n /ntp-infra/ntp_vip/ntp_u123_vs {\n destination 192.168.200.9:123\n }\n /sap/main/ssl_bridge_443_vs {\n destination 172.24.82.67:443\n }\n /sap/main/ssl_bridge_443_vs-Redirect- {\n destination 172.24.82.67:80\n }\n /tenant_1/Shared/app1_443_vs {\n destination 172.24.80.163:443\n }\n /tenant_2/app_2/app2_443_vs {\n destination 172.24.80.217:443\n }\n /tenant_2/app_2/app2_443_vs-Redirect- {\n destination 172.24.80.217:80\n }\n /tenn1/app1/app1_t80_vs {\n destination 192.168.1.21:80\n }\n /tenn1/app1/app1_t443_vs {\n destination 192.168.1.21:443\n }\n /vcenter-infra/vcenter/vcenter.benlab.io_t443_vs {\n destination 192.168.200.50:443\n }\n test1 {\n depends-on {\n /Common/coreltm01_02:/Common/bigiq.benlab.io_t443_vs { }\n }\n destination 5.5.5.5:555\n monitor /Common/bigip\n translation-address 6.6.6.6\n translation-port 666\n }\n }\n}\ngtm server /Common/gtm_coreltm01 {\n datacenter /Common/home_dc\n devices {\n gtm_coreltm01 {\n addresses {\n 192.168.200.5 { }\n }\n }\n }\n monitor /Common/bigip\n product bigip\n}\ngtm server /Common/gtm_coreltm02 {\n datacenter /Common/home_dc\n devices {\n gtm_coreltm02 {\n addresses {\n 192.168.200.6 { }\n }\n }\n }\n monitor /Common/bigip\n product bigip\n}\ngtm server /Common/intouch01_02 {\n datacenter /Common/home_dc\n devices {\n intouch01 {\n addresses {\n 192.168.200.101 { }\n }\n }\n intouch02 {\n addresses {\n 192.168.200.102 { }\n }\n }\n }\n monitor /Common/bigip\n product bigip\n virtual-server-discovery enabled\n virtual-servers {\n /Common/cloverleaf_0_vs {\n destination 192.168.200.120:0\n }\n /Common/sldc_clvf_dev02.app/sldc_clvf_dev02_buffer_mgmt_t80_vs {\n destination 192.168.200.136:80\n }\n /Common/sldc_clvf_dev02.app/sldc_clvf_dev02_buffer_t8442_vs {\n destination 192.168.200.136:8442\n }\n /Common/sldc_clvf_dev02.app/sldc_clvf_dev02_main_t0_vs {\n destination 192.168.200.136:0\n }\n /Common/sldc_clvf_dev02.app/sldc_clvf_dev02_waterpark_t8443_vs {\n destination 192.168.200.136:8443\n }\n /Common/tiki_web_t80_vs {\n destination 192.168.200.120:80\n }\n }\n}\ngtm topology ldns: region /Common/int_rfc1918 server: datacenter /Common/home_dc {\n order 1\n}\ngtm topology ldns: region /Common/int_rfc1918 server: pool /Common/devCloud01.benlab.io_pool {\n order 2\n}\ngtm global-settings general {\n synchronization yes\n synchronization-group-name benlab_gtm_sync_group\n synchronize-zone-files yes\n}\ngtm global-settings metrics {\n metrics-collection-protocols { icmp }\n}\ngtm global-settings metrics-exclusions {\n addresses none\n}\ngtm pool a /Common/ansible.benlab.io {\n alternate-mode fallback-ip\n fallback-ip 10.200.30.42\n fallback-mode fallback-ip\n load-balancing-mode fallback-ip\n}\ngtm pool a /Common/bigiq.benlab.io_pool {\n alternate-mode fallback-ip\n fallback-ip 10.200.244.15\n fallback-mode fallback-ip\n load-balancing-mode global-availability\n members {\n /Common/coreltm01_02:/Common/bigiq.benlab.io_t443_vs {\n member-order 0\n }\n /Common/intouch01_02:/Common/tiki_web_t80_vs {\n member-order 1\n ratio 6\n }\n }\n verify-member-availability disabled\n}\ngtm pool a /Common/dc1vcenter01.benlab.io {\n alternate-mode fallback-ip\n fallback-ip 10.200.210.20\n fallback-mode fallback-ip\n load-balancing-mode fallback-ip\n}\ngtm pool a /Common/devCloud01.benlab.io_pool {\n fallback-ip 10.200.244.110\n fallback-mode fallback-ip\n load-balancing-mode fallback-ip\n}\ngtm pool a /Common/esxi01.benlab.io {\n alternate-mode none\n fallback-ip 10.200.210.21\n fallback-mode fallback-ip\n load-balancing-mode fallback-ip\n}\ngtm pool a /Common/esxi02.benlab.io {\n alternate-mode none\n fallback-ip 10.200.210.22\n fallback-mode fallback-ip\n load-balancing-mode fallback-ip\n}\ngtm pool a /Common/fms.intouchreports.com_pool { }\ngtm pool a /Common/git.benlab.io {\n alternate-mode none\n fallback-ip 10.200.30.43\n fallback-mode fallback-ip\n load-balancing-mode fallback-ip\n}\ngtm pool a /Common/intouch_mgmt_pool {\n alternate-mode none\n fallback-ip 10.200.244.100\n fallback-mode fallback-ip\n load-balancing-mode fallback-ip\n}\ngtm pool a /Common/ltmcore1_a_pool {\n fallback-ip 192.168.200.5\n}\ngtm pool a /Common/ntp.castleroc.io_pool {\n fallback-ip 192.168.200.7\n load-balancing-mode fallback-ip\n monitor /Common/gateway_icmp\n}\ngtm pool a /Common/portal.benlab.io_a_pool {\n fallback-ip 75.55.157.193\n fallback-mode fallback-ip\n members {\n /Common/coreltm01_02:/Common/sslvpn_tcp443_vs {\n member-order 0\n }\n }\n}\ngtm pool a /Common/portal.intouchcustomer.com_pool { }\ngtm pool a /Common/testzone.io_pool {\n fallback-ip 1.1.1.1\n load-balancing-mode fallback-ip\n}\ngtm pool a /Common/unifi.benlab.io_pool {\n fallback-ip 192.168.200.1\n fallback-mode fallback-ip\n load-balancing-mode fallback-ip\n}\ngtm pool a /Common/unifi_a_pool {\n alternate-mode fallback-ip\n fallback-ip 192.168.200.25\n fallback-mode fallback-ip\n load-balancing-mode fallback-ip\n}\ngtm wideip a /Common/benlab.io {\n pools {\n /Common/portal.benlab.io_a_pool {\n order 0\n }\n }\n}\ngtm wideip a /Common/bigiq.benlab.io {\n aliases {\n bq.benlab.io\n bq2.benlab.io\n burger.queen.no\n }\n description \"complicated widip\"\n last-resort-pool a /Common/bigiq.benlab.io_pool\n persistence enabled\n pool-lb-mode global-availability\n pools {\n /Common/bigiq.benlab.io_pool {\n order 0\n }\n /Common/esxi01.benlab.io {\n order 2\n ratio 4\n }\n /Common/esxi02.benlab.io {\n order 1\n }\n }\n rules {\n /Common/test_dns_rule\n }\n}\ngtm wideip a /Common/devCloud01.benlab.io {\n pools {\n /Common/devCloud01.benlab.io_pool {\n order 0\n }\n }\n}\ngtm wideip a /Common/piTime314a.int.sci.com {\n aliases {\n piTime314a.td.sci.com\n piTime314a.it.io\n }\n description \"wideip with no pool/destination\"\n}\ngtm wideip a /Common/unifi.benlab.io {\n pools {\n /Common/unifi.benlab.io_pool {\n order 0\n }\n }\n}\n" }, { "fileName": "config/bigip_base.conf", - "size": 14543, - "content": "#TMSH-VERSION: 15.1.8.2\n\nauth partition Common {\n description \"Updated by AS3 at Thu, 17 Sep 2020 15:14:36 GMT\"\n}\nauth partition foo {\n description \"Updated by AS3 at Tue, 06 Oct 2020 18:27:20 GMT\"\n}\nauth partition test { }\nauth password-policy {\n lockout-duration 10\n manual-unlock-disabled true\n policy-enforcement disabled\n}\ncli global-settings {\n idle-timeout 20\n}\ncm cert /Common/dtca-bundle.crt {\n cache-path /config/filestore/files_d/Common_d/trust_certificate_d/:Common:dtca-bundle.crt_62982_2\n checksum SHA1:3389:19284e0ef6ad87b29507ec301eae079e0b59db5f\n revision 2\n}\ncm cert /Common/dtca.crt {\n cache-path /config/filestore/files_d/Common_d/trust_certificate_d/:Common:dtca.crt_62978_1\n checksum SHA1:1289:fff6e3324bb50dc77143169cbafcd2d79bbed17d\n revision 1\n}\ncm cert /Common/dtdi.crt {\n cache-path /config/filestore/files_d/Common_d/trust_certificate_d/:Common:dtdi.crt_62974_1\n checksum SHA1:1220:f989b434582f4bb9e185c5d816dc0ff75d16698a\n revision 1\n}\ncm device /Common/devCloud01.benlab.io {\n active-modules { \"APM, Base, VE GBB (500 CCU, 2500 Access Sessions)|MEYUYAE-LYUGYGN|Anti-Virus Checks|Base Endpoint Security Checks|Firewall Checks|Network Access|Secure Virtual Keyboard|APM, Web Application|Machine Certificate Checks|Protected Workspace|Remote Desktop|App Tunnel\" \"Best Bundle, VE-5G|COTNXDC-CXZIFUK|Rate Shaping|DNSSEC|GTM Licensed Objects, Unlimited|DNS Licensed Objects, Unlimited|DNS Rate Fallback, 250K|GTM Rate Fallback, 250K|GTM Rate, 250K|DNS Rate Limit, 250K QPS|Routing Bundle, VE|ASM, VE|DNS-GTM, Base, 5Gbps|SSL, VE|Max Compression, VE|AFM, VE|Exclusive Version, v12.1.X - 18.X|VE, Carrier Grade NAT (AFM ONLY)|PSM, VE\" }\n base-mac 00:50:56:96:f4:cb\n build 0.0.6\n cert /Common/dtdi.crt\n chassis-id 42167068-f586-7b5f-1e7aac1ada72\n edition \"Point Release 4\"\n hostname devCloud01.benlab.io\n key /Common/dtdi.key\n management-ip 10.200.244.110\n marketing-name \"BIG-IP Virtual Edition\"\n optional-modules { \"Advanced Protocols, VE\" \"App Mode (TMSH Only, No Root/Bash)\" \"ASM to AWF Upgrade, VE-3G\" \"Best, 5 Gbps -10 Gbps Upgrade\" \"BIG-IP VE, Multicast Routing\" \"BIG-IP VE, Privileged User Access, 100 Endpoints\" \"BIG-IP VE, Privileged User Access, 1000 Endpoints\" \"BIG-IP VE, Privileged User Access, 250 Endpoints\" \"BIG-IP VE, Privileged User Access, 50 Endpoints\" \"BIG-IP VE, Privileged User Access, 500 Endpoints\" \"CGN, ADD-VE, 5G\" \"Concurrent Users and Access Sessions, VE\" \"DataSafe, VE-5G\" \"DNS and GTM (250 QPS), VE\" \"External Interface and Network HSM, VE\" \"FIPS 140-2 Level 1, BIG-IP VE-1G to 10G\" \"Intrusion Prevention System, VE-5G\" \"IP Intelligence, 1Yr, VE-1G/VE-3G/VE-5G\" \"IP Intelligence, 3Yr, VE-1G/VE-3G/VE-5G\" \"IPS, 1Yr, VE-1G / VE-3G / VE-5G\" \"IPS, 3Yr, VE-1G / VE-3G / VE-5G\" \"PEM, ADD-VE, 5G\" \"Secure Web Gateway, VE-3G-10G, 10000 Sessions, 1Yr\" \"Secure Web Gateway, VE-3G-10G, 10000 Sessions, 3Yr\" \"Secure Web Gateway, VE-3G-10G, 5000 Sessions, 1Yr\" \"Secure Web Gateway, VE-3G-10G, 5000 Sessions, 3Yr\" \"SSL Orchestrator, VE (3G/5G/10G)\" \"URL Filtering, VE-3G-10G, 10000 Sessions, 1Yr\" \"URL Filtering, VE-3G-10G, 10000 Sessions, 3Yr\" \"URL Filtering, VE-3G-10G, 5000 Sessions, 1Yr\" \"URL Filtering, VE-3G-10G, 5000 Sessions, 3Yr\" \"VE SSL Compression Offload, Medium\" \"VPN Users\" }\n platform-id Z100\n product BIG-IP\n self-device true\n time-zone US/Central\n version 15.1.8.2\n}\ncm device-group /Common/device_trust_group {\n auto-sync enabled\n devices {\n /Common/devCloud01.benlab.io { }\n }\n hidden true\n network-failover disabled\n}\ncm device-group /Common/gtm {\n devices {\n /Common/devCloud01.benlab.io { }\n }\n hidden true\n network-failover disabled\n}\ncm key /Common/dtca.key {\n cache-path /config/filestore/files_d/Common_d/trust_certificate_key_d/:Common:dtca.key_62980_1\n checksum SHA1:1704:d108f95e23990ea14a618354af37dcf35dfb3561\n revision 1\n}\ncm key /Common/dtdi.key {\n cache-path /config/filestore/files_d/Common_d/trust_certificate_key_d/:Common:dtdi.key_62976_1\n checksum SHA1:1704:a9772d8ba23f474da7881461c1c5900ea74bd21e\n revision 1\n}\ncm traffic-group /Common/traffic-group-1 {\n unit-id 1\n}\ncm traffic-group /Common/traffic-group-local-only { }\ncm trust-domain /Common/Root {\n ca-cert /Common/dtca.crt\n ca-cert-bundle /Common/dtca-bundle.crt\n ca-devices { /Common/devCloud01.benlab.io }\n ca-key /Common/dtca.key\n guid ce731326-5456-423a-a14900505696f4cb\n status standalone\n trust-group /Common/device_trust_group\n}\nnet interface 1.0 {\n media-fixed 10000T-FD\n}\nnet port-list /Common/_sys_self_allow_tcp_defaults {\n ports {\n 22 { }\n 53 { }\n 161 { }\n 443 { }\n 1029-1043 { }\n 4353 { }\n }\n}\nnet port-list /Common/_sys_self_allow_udp_defaults {\n ports {\n 53 { }\n 161 { }\n 520 { }\n 1026 { }\n 4353 { }\n }\n}\nnet route-domain /Common/0 {\n id 0\n vlans {\n /Common/http-tunnel\n /Common/socks-tunnel\n /Common/internal\n }\n}\nnet self-allow {\n defaults {\n igmp:0\n ospf:0\n pim:0\n tcp:161\n tcp:22\n tcp:4353\n tcp:53\n tcp:8443\n udp:1026\n udp:161\n udp:4353\n udp:520\n udp:53\n }\n}\nnet stp /Common/cist {\n interfaces {\n 1.0 {\n external-path-cost 500\n internal-path-cost 500\n }\n }\n vlans {\n /Common/internal\n }\n}\nnet vlan /Common/internal {\n interfaces {\n 1.0 { }\n }\n tag 4094\n}\nnet fdb tunnel /Common/http-tunnel { }\nnet fdb tunnel /Common/socks-tunnel { }\nnet fdb vlan /Common/internal { }\nnet tunnels tunnel /Common/http-tunnel {\n description \"Tunnel for http-explicit profile\"\n profile /Common/tcp-forward\n}\nnet tunnels tunnel /Common/socks-tunnel {\n description \"Tunnel for socks profile\"\n profile /Common/tcp-forward\n}\nsecurity device-id attribute /Common/att01 {\n id 1\n}\nsecurity device-id attribute /Common/att02 {\n id 2\n}\nsecurity device-id attribute /Common/att03 {\n id 3\n}\nsecurity device-id attribute /Common/att04 {\n id 4\n}\nsecurity device-id attribute /Common/att05 {\n id 5\n}\nsecurity device-id attribute /Common/att06 {\n id 6\n}\nsecurity device-id attribute /Common/att07 {\n id 7\n}\nsecurity device-id attribute /Common/att08 {\n id 8\n}\nsecurity device-id attribute /Common/att09 {\n id 9\n}\nsecurity device-id attribute /Common/att10 {\n id 10\n}\nsecurity device-id attribute /Common/att11 {\n id 11\n}\nsecurity device-id attribute /Common/att12 {\n id 12\n}\nsecurity device-id attribute /Common/att13 {\n id 13\n}\nsecurity device-id attribute /Common/att14 {\n id 14\n}\nsecurity device-id attribute /Common/att15 {\n id 15\n}\nsecurity device-id attribute /Common/att16 {\n id 16\n}\nsecurity device-id attribute /Common/att17 {\n id 17\n}\nsecurity device-id attribute /Common/att18 {\n id 18\n}\nsecurity device-id attribute /Common/att19 {\n id 19\n}\nsecurity device-id attribute /Common/att20 {\n id 20\n}\nsecurity device-id attribute /Common/att21 {\n id 21\n}\nsecurity device-id attribute /Common/att22 {\n id 22\n}\nsecurity device-id attribute /Common/att23 {\n id 23\n}\nsecurity device-id attribute /Common/att24 {\n id 24\n}\nsecurity device-id attribute /Common/att25 {\n id 25\n}\nsecurity device-id attribute /Common/att26 {\n id 26\n}\nsecurity device-id attribute /Common/att27 {\n id 27\n}\nsecurity device-id attribute /Common/att28 {\n id 28\n}\nsecurity device-id attribute /Common/att29 {\n id 29\n}\nsecurity device-id attribute /Common/att30 {\n id 30\n}\nsecurity device-id attribute /Common/att31 {\n id 31\n}\nsecurity device-id attribute /Common/att32 {\n id 32\n}\nsecurity device-id attribute /Common/att33 {\n id 33\n}\nsecurity device-id attribute /Common/att34 {\n id 34\n}\nsecurity device-id attribute /Common/att35 {\n id 35\n}\nsecurity device-id attribute /Common/att36 {\n id 36\n}\nsecurity device-id attribute /Common/att37 {\n id 37\n}\nsecurity device-id attribute /Common/att38 {\n id 38\n}\nsecurity device-id attribute /Common/att39 {\n id 39\n}\nsecurity firewall config-entity-id /Common/uuid_entity_id {\n entity-id 7402404740565079421\n}\nsecurity firewall port-list /Common/_sys_self_allow_tcp_defaults {\n ports {\n 22 { }\n 53 { }\n 161 { }\n 443 { }\n 1029-1043 { }\n 4353 { }\n }\n}\nsecurity firewall port-list /Common/_sys_self_allow_udp_defaults {\n ports {\n 53 { }\n 161 { }\n 520 { }\n 1026 { }\n 4353 { }\n }\n}\nsecurity firewall rule-list /Common/_sys_self_allow_all {\n rules {\n _sys_allow_all {\n action accept\n ip-protocol any\n }\n }\n}\nsecurity firewall rule-list /Common/_sys_self_allow_defaults {\n rules {\n _sys_allow_tcp_defaults {\n action accept\n ip-protocol tcp\n destination {\n port-lists {\n /Common/_sys_self_allow_tcp_defaults\n }\n }\n }\n _sys_allow_udp_defaults {\n action accept\n ip-protocol udp\n destination {\n port-lists {\n /Common/_sys_self_allow_udp_defaults\n }\n }\n }\n _sys_allow_ospf_defaults {\n action accept\n ip-protocol ospf\n }\n _sys_allow_pim_defaults {\n action accept\n ip-protocol pim\n }\n _sys_allow_igmp_defaults {\n action accept\n ip-protocol igmp\n }\n }\n}\nsecurity firewall rule-list /Common/_sys_self_allow_management {\n rules {\n _sys_allow_ssh {\n action accept\n ip-protocol tcp\n destination {\n ports {\n 22 { }\n }\n }\n }\n _sys_allow_web {\n action accept\n ip-protocol tcp\n destination {\n ports {\n 443 { }\n }\n }\n }\n }\n}\nsecurity ip-intelligence policy /Common/ip-intelligence { }\nsecurity shared-objects port-list /Common/_sys_self_allow_tcp_defaults {\n ports {\n 22 { }\n 53 { }\n 161 { }\n 443 { }\n 1029-1043 { }\n 4353 { }\n }\n}\nsecurity shared-objects port-list /Common/_sys_self_allow_udp_defaults {\n ports {\n 53 { }\n 161 { }\n 520 { }\n 1026 { }\n 4353 { }\n }\n}\nsys dns {\n description configured-by-dhcp\n name-servers { 192.168.200.7 192.168.200.8 }\n search { benlab.io }\n}\nsys folder / {\n device-group none\n hidden false\n inherited-devicegroup false\n inherited-traffic-group false\n traffic-group /Common/traffic-group-1\n}\nsys folder /Common {\n device-group none\n hidden false\n inherited-devicegroup true\n inherited-traffic-group true\n traffic-group /Common/traffic-group-1\n}\nsys folder /Common/Drafts {\n device-group none\n hidden false\n inherited-devicegroup true\n inherited-traffic-group true\n traffic-group /Common/traffic-group-1\n}\nsys folder /Common/EPSEC {\n device-group none\n hidden false\n inherited-devicegroup true\n inherited-traffic-group true\n traffic-group /Common/traffic-group-1\n}\nsys folder /Common/EPSEC/Status {\n device-group none\n hidden false\n inherited-devicegroup true\n inherited-traffic-group true\n traffic-group /Common/traffic-group-1\n}\nsys folder /Common/appsvcs {\n device-group none\n hidden false\n inherited-devicegroup true\n inherited-traffic-group true\n traffic-group /Common/traffic-group-1\n}\nsys folder /Common/atgTeem {\n device-group none\n hidden false\n inherited-devicegroup true\n inherited-traffic-group true\n traffic-group /Common/traffic-group-1\n}\nsys folder /Common/f5-appsvcs-templates {\n device-group none\n hidden false\n inherited-devicegroup true\n inherited-traffic-group true\n traffic-group /Common/traffic-group-1\n}\nsys folder /foo {\n device-group none\n hidden false\n inherited-devicegroup true\n inherited-traffic-group true\n traffic-group /Common/traffic-group-1\n}\nsys folder /foo/defaultsUDP_5555 {\n device-group none\n hidden false\n inherited-devicegroup true\n inherited-traffic-group true\n traffic-group /Common/traffic-group-1\n}\nsys folder /test {\n device-group none\n hidden false\n inherited-devicegroup true\n inherited-traffic-group true\n traffic-group /Common/traffic-group-1\n}\nsys global-settings {\n console-inactivity-timeout 1200\n file-whitelist-path-prefix \"{/var/local/scf} {/tmp/} {/shared/} {/config/} {/usr/share/aws/} {/var/config/rest/downloads/appsvcs_update.cli}\"\n gui-setup disabled\n hostname devCloud01.benlab.io\n mgmt-dhcp dhcpv6\n}\nsys httpd {\n auth-pam-idle-timeout 12000\n ssl-port 8443\n}\nsys management-dhcp /Common/sys-mgmt-dhcp-config {\n request-options { subnet-mask broadcast-address routers domain-name domain-name-servers ntp-servers interface-mtu }\n}\nsys management-ip 10.200.244.110/24 {\n description configured-statically\n}\nsys management-route /Common/default {\n description configured-statically\n gateway 10.200.244.1\n network default\n}\nsys ntp {\n timezone US/Central\n}\nsys provision apm {\n level nominal\n}\nsys provision avr {\n level nominal\n}\nsys provision ltm {\n level nominal\n}\nsys snmp {\n agent-addresses { tcp6:161 udp6:161 }\n communities {\n /Common/comm-public {\n community-name public\n source default\n }\n }\n disk-monitors {\n /Common/root {\n minspace 2000\n path /\n }\n /Common/var {\n minspace 10000\n path /var\n }\n }\n process-monitors {\n /Common/bigd {\n max-processes infinity\n process bigd\n }\n /Common/chmand {\n process chmand\n }\n /Common/httpd {\n max-processes infinity\n process httpd\n }\n /Common/mcpd {\n process mcpd\n }\n /Common/sod {\n process sod\n }\n /Common/tmm {\n max-processes infinity\n process tmm\n }\n }\n}\nsys dynad settings {\n development-mode false\n}\nsys fpga firmware-config {\n type standard-balanced-fpga\n}\nsys sflow global-settings http { }\nsys sflow global-settings vlan { }\nsys turboflex profile-config {\n type turboflex-adc\n}\n" + "size": 14673, + "content": "#TMSH-VERSION: 15.1.8.2\n\nauth partition Common {\n description \"Updated by AS3 at Thu, 17 Sep 2020 15:14:36 GMT\"\n}\nauth partition foo {\n description \"Updated by AS3 at Tue, 06 Oct 2020 18:27:20 GMT\"\n}\nauth partition test { }\nauth password-policy {\n lockout-duration 10\n manual-unlock-disabled true\n policy-enforcement disabled\n}\ncli global-settings {\n idle-timeout 20\n}\ncm cert /Common/dtca-bundle.crt {\n cache-path /config/filestore/files_d/Common_d/trust_certificate_d/:Common:dtca-bundle.crt_62982_2\n checksum SHA1:3389:19284e0ef6ad87b29507ec301eae079e0b59db5f\n revision 2\n}\ncm cert /Common/dtca.crt {\n cache-path /config/filestore/files_d/Common_d/trust_certificate_d/:Common:dtca.crt_62978_1\n checksum SHA1:1289:fff6e3324bb50dc77143169cbafcd2d79bbed17d\n revision 1\n}\ncm cert /Common/dtdi.crt {\n cache-path /config/filestore/files_d/Common_d/trust_certificate_d/:Common:dtdi.crt_62974_1\n checksum SHA1:1220:f989b434582f4bb9e185c5d816dc0ff75d16698a\n revision 1\n}\ncm device /Common/devCloud01.benlab.io {\n active-modules { \"APM, Base, VE GBB (500 CCU, 2500 Access Sessions)|MEYUYAE-LYUGYGN|Anti-Virus Checks|Base Endpoint Security Checks|Firewall Checks|Network Access|Secure Virtual Keyboard|APM, Web Application|Machine Certificate Checks|Protected Workspace|Remote Desktop|App Tunnel\" \"Best Bundle, VE-5G|COTNXDC-CXZIFUK|Rate Shaping|DNSSEC|GTM Licensed Objects, Unlimited|DNS Licensed Objects, Unlimited|DNS Rate Fallback, 250K|GTM Rate Fallback, 250K|GTM Rate, 250K|DNS Rate Limit, 250K QPS|Routing Bundle, VE|ASM, VE|DNS-GTM, Base, 5Gbps|SSL, VE|Max Compression, VE|AFM, VE|Exclusive Version, v12.1.X - 18.X|VE, Carrier Grade NAT (AFM ONLY)|PSM, VE\" }\n base-mac 00:50:56:96:f4:cb\n build 0.0.6\n cert /Common/dtdi.crt\n chassis-id 42167068-f586-7b5f-1e7aac1ada72\n edition \"Point Release 4\"\n hostname devCloud01.benlab.io\n key /Common/dtdi.key\n management-ip 10.200.244.110\n marketing-name \"BIG-IP Virtual Edition\"\n optional-modules { \"Advanced Protocols, VE\" \"App Mode (TMSH Only, No Root/Bash)\" \"ASM to AWF Upgrade, VE-3G\" \"Best, 5 Gbps -10 Gbps Upgrade\" \"BIG-IP VE, Multicast Routing\" \"BIG-IP VE, Privileged User Access, 100 Endpoints\" \"BIG-IP VE, Privileged User Access, 1000 Endpoints\" \"BIG-IP VE, Privileged User Access, 250 Endpoints\" \"BIG-IP VE, Privileged User Access, 50 Endpoints\" \"BIG-IP VE, Privileged User Access, 500 Endpoints\" \"CGN, ADD-VE, 5G\" \"Concurrent Users and Access Sessions, VE\" \"DataSafe, VE-5G\" \"DNS and GTM (250 QPS), VE\" \"External Interface and Network HSM, VE\" \"FIPS 140-2 Level 1, BIG-IP VE-1G to 10G\" \"Intrusion Prevention System, VE-5G\" \"IP Intelligence, 1Yr, VE-1G/VE-3G/VE-5G\" \"IP Intelligence, 3Yr, VE-1G/VE-3G/VE-5G\" \"IPS, 1Yr, VE-1G / VE-3G / VE-5G\" \"IPS, 3Yr, VE-1G / VE-3G / VE-5G\" \"PEM, ADD-VE, 5G\" \"Secure Web Gateway, VE-3G-10G, 10000 Sessions, 1Yr\" \"Secure Web Gateway, VE-3G-10G, 10000 Sessions, 3Yr\" \"Secure Web Gateway, VE-3G-10G, 5000 Sessions, 1Yr\" \"Secure Web Gateway, VE-3G-10G, 5000 Sessions, 3Yr\" \"SSL Orchestrator, VE (3G/5G/10G)\" \"URL Filtering, VE-3G-10G, 10000 Sessions, 1Yr\" \"URL Filtering, VE-3G-10G, 10000 Sessions, 3Yr\" \"URL Filtering, VE-3G-10G, 5000 Sessions, 1Yr\" \"URL Filtering, VE-3G-10G, 5000 Sessions, 3Yr\" \"VE SSL Compression Offload, Medium\" \"VPN Users\" }\n platform-id Z100\n product BIG-IP\n self-device true\n time-zone US/Central\n version 15.1.8.2\n}\ncm device-group /Common/device_trust_group {\n auto-sync enabled\n devices {\n /Common/devCloud01.benlab.io { }\n }\n hidden true\n network-failover disabled\n}\ncm device-group /Common/gtm {\n devices {\n /Common/devCloud01.benlab.io { }\n }\n hidden true\n network-failover disabled\n}\ncm key /Common/dtca.key {\n cache-path /config/filestore/files_d/Common_d/trust_certificate_key_d/:Common:dtca.key_62980_1\n checksum SHA1:1704:d108f95e23990ea14a618354af37dcf35dfb3561\n revision 1\n}\ncm key /Common/dtdi.key {\n cache-path /config/filestore/files_d/Common_d/trust_certificate_key_d/:Common:dtdi.key_62976_1\n checksum SHA1:1704:a9772d8ba23f474da7881461c1c5900ea74bd21e\n revision 1\n}\ncm traffic-group /Common/traffic-group-1 {\n unit-id 1\n}\ncm traffic-group /Common/traffic-group-local-only { }\ncm trust-domain /Common/Root {\n ca-cert /Common/dtca.crt\n ca-cert-bundle /Common/dtca-bundle.crt\n ca-devices { /Common/devCloud01.benlab.io }\n ca-key /Common/dtca.key\n guid ce731326-5456-423a-a14900505696f4cb\n status standalone\n trust-group /Common/device_trust_group\n}\nnet interface 1.0 {\n media-fixed 10000T-FD\n}\nnet port-list /Common/_sys_self_allow_tcp_defaults {\n ports {\n 22 { }\n 53 { }\n 161 { }\n 443 { }\n 1029-1043 { }\n 4353 { }\n }\n}\nnet port-list /Common/_sys_self_allow_udp_defaults {\n ports {\n 53 { }\n 161 { }\n 520 { }\n 1026 { }\n 4353 { }\n }\n}\nnet route-domain /Common/0 {\n id 0\n vlans {\n /Common/http-tunnel\n /Common/socks-tunnel\n /Common/internal\n }\n}\nnet self-allow {\n defaults {\n igmp:0\n ospf:0\n pim:0\n tcp:161\n tcp:22\n tcp:4353\n tcp:53\n tcp:8443\n udp:1026\n udp:161\n udp:4353\n udp:520\n udp:53\n }\n}\nnet stp /Common/cist {\n interfaces {\n 1.0 {\n external-path-cost 500\n internal-path-cost 500\n }\n }\n vlans {\n /Common/internal\n }\n}\nnet vlan /Common/internal {\n interfaces {\n 1.0 { }\n }\n tag 4094\n}\nnet vlan /Common/vlan255_f5peer {\n tag 255\n}\nnet vlan /Common/vlan245 {\n tag 245\n}\nnet vlan /Common/vlan230 {\n tag 230\n}\nnet fdb tunnel /Common/http-tunnel { }\nnet fdb tunnel /Common/socks-tunnel { }\nnet fdb vlan /Common/internal { }\nnet tunnels tunnel /Common/http-tunnel {\n description \"Tunnel for http-explicit profile\"\n profile /Common/tcp-forward\n}\nnet tunnels tunnel /Common/socks-tunnel {\n description \"Tunnel for socks profile\"\n profile /Common/tcp-forward\n}\nsecurity device-id attribute /Common/att01 {\n id 1\n}\nsecurity device-id attribute /Common/att02 {\n id 2\n}\nsecurity device-id attribute /Common/att03 {\n id 3\n}\nsecurity device-id attribute /Common/att04 {\n id 4\n}\nsecurity device-id attribute /Common/att05 {\n id 5\n}\nsecurity device-id attribute /Common/att06 {\n id 6\n}\nsecurity device-id attribute /Common/att07 {\n id 7\n}\nsecurity device-id attribute /Common/att08 {\n id 8\n}\nsecurity device-id attribute /Common/att09 {\n id 9\n}\nsecurity device-id attribute /Common/att10 {\n id 10\n}\nsecurity device-id attribute /Common/att11 {\n id 11\n}\nsecurity device-id attribute /Common/att12 {\n id 12\n}\nsecurity device-id attribute /Common/att13 {\n id 13\n}\nsecurity device-id attribute /Common/att14 {\n id 14\n}\nsecurity device-id attribute /Common/att15 {\n id 15\n}\nsecurity device-id attribute /Common/att16 {\n id 16\n}\nsecurity device-id attribute /Common/att17 {\n id 17\n}\nsecurity device-id attribute /Common/att18 {\n id 18\n}\nsecurity device-id attribute /Common/att19 {\n id 19\n}\nsecurity device-id attribute /Common/att20 {\n id 20\n}\nsecurity device-id attribute /Common/att21 {\n id 21\n}\nsecurity device-id attribute /Common/att22 {\n id 22\n}\nsecurity device-id attribute /Common/att23 {\n id 23\n}\nsecurity device-id attribute /Common/att24 {\n id 24\n}\nsecurity device-id attribute /Common/att25 {\n id 25\n}\nsecurity device-id attribute /Common/att26 {\n id 26\n}\nsecurity device-id attribute /Common/att27 {\n id 27\n}\nsecurity device-id attribute /Common/att28 {\n id 28\n}\nsecurity device-id attribute /Common/att29 {\n id 29\n}\nsecurity device-id attribute /Common/att30 {\n id 30\n}\nsecurity device-id attribute /Common/att31 {\n id 31\n}\nsecurity device-id attribute /Common/att32 {\n id 32\n}\nsecurity device-id attribute /Common/att33 {\n id 33\n}\nsecurity device-id attribute /Common/att34 {\n id 34\n}\nsecurity device-id attribute /Common/att35 {\n id 35\n}\nsecurity device-id attribute /Common/att36 {\n id 36\n}\nsecurity device-id attribute /Common/att37 {\n id 37\n}\nsecurity device-id attribute /Common/att38 {\n id 38\n}\nsecurity device-id attribute /Common/att39 {\n id 39\n}\nsecurity firewall config-entity-id /Common/uuid_entity_id {\n entity-id 7402404740565079421\n}\nsecurity firewall port-list /Common/_sys_self_allow_tcp_defaults {\n ports {\n 22 { }\n 53 { }\n 161 { }\n 443 { }\n 1029-1043 { }\n 4353 { }\n }\n}\nsecurity firewall port-list /Common/_sys_self_allow_udp_defaults {\n ports {\n 53 { }\n 161 { }\n 520 { }\n 1026 { }\n 4353 { }\n }\n}\nsecurity firewall rule-list /Common/_sys_self_allow_all {\n rules {\n _sys_allow_all {\n action accept\n ip-protocol any\n }\n }\n}\nsecurity firewall rule-list /Common/_sys_self_allow_defaults {\n rules {\n _sys_allow_tcp_defaults {\n action accept\n ip-protocol tcp\n destination {\n port-lists {\n /Common/_sys_self_allow_tcp_defaults\n }\n }\n }\n _sys_allow_udp_defaults {\n action accept\n ip-protocol udp\n destination {\n port-lists {\n /Common/_sys_self_allow_udp_defaults\n }\n }\n }\n _sys_allow_ospf_defaults {\n action accept\n ip-protocol ospf\n }\n _sys_allow_pim_defaults {\n action accept\n ip-protocol pim\n }\n _sys_allow_igmp_defaults {\n action accept\n ip-protocol igmp\n }\n }\n}\nsecurity firewall rule-list /Common/_sys_self_allow_management {\n rules {\n _sys_allow_ssh {\n action accept\n ip-protocol tcp\n destination {\n ports {\n 22 { }\n }\n }\n }\n _sys_allow_web {\n action accept\n ip-protocol tcp\n destination {\n ports {\n 443 { }\n }\n }\n }\n }\n}\nsecurity ip-intelligence policy /Common/ip-intelligence { }\nsecurity shared-objects port-list /Common/_sys_self_allow_tcp_defaults {\n ports {\n 22 { }\n 53 { }\n 161 { }\n 443 { }\n 1029-1043 { }\n 4353 { }\n }\n}\nsecurity shared-objects port-list /Common/_sys_self_allow_udp_defaults {\n ports {\n 53 { }\n 161 { }\n 520 { }\n 1026 { }\n 4353 { }\n }\n}\nsys dns {\n description configured-by-dhcp\n name-servers { 192.168.200.7 192.168.200.8 }\n search { benlab.io }\n}\nsys folder / {\n device-group none\n hidden false\n inherited-devicegroup false\n inherited-traffic-group false\n traffic-group /Common/traffic-group-1\n}\nsys folder /Common {\n device-group none\n hidden false\n inherited-devicegroup true\n inherited-traffic-group true\n traffic-group /Common/traffic-group-1\n}\nsys folder /Common/Drafts {\n device-group none\n hidden false\n inherited-devicegroup true\n inherited-traffic-group true\n traffic-group /Common/traffic-group-1\n}\nsys folder /Common/EPSEC {\n device-group none\n hidden false\n inherited-devicegroup true\n inherited-traffic-group true\n traffic-group /Common/traffic-group-1\n}\nsys folder /Common/EPSEC/Status {\n device-group none\n hidden false\n inherited-devicegroup true\n inherited-traffic-group true\n traffic-group /Common/traffic-group-1\n}\nsys folder /Common/appsvcs {\n device-group none\n hidden false\n inherited-devicegroup true\n inherited-traffic-group true\n traffic-group /Common/traffic-group-1\n}\nsys folder /Common/atgTeem {\n device-group none\n hidden false\n inherited-devicegroup true\n inherited-traffic-group true\n traffic-group /Common/traffic-group-1\n}\nsys folder /Common/f5-appsvcs-templates {\n device-group none\n hidden false\n inherited-devicegroup true\n inherited-traffic-group true\n traffic-group /Common/traffic-group-1\n}\nsys folder /foo {\n device-group none\n hidden false\n inherited-devicegroup true\n inherited-traffic-group true\n traffic-group /Common/traffic-group-1\n}\nsys folder /foo/defaultsUDP_5555 {\n device-group none\n hidden false\n inherited-devicegroup true\n inherited-traffic-group true\n traffic-group /Common/traffic-group-1\n}\nsys folder /test {\n device-group none\n hidden false\n inherited-devicegroup true\n inherited-traffic-group true\n traffic-group /Common/traffic-group-1\n}\nsys global-settings {\n console-inactivity-timeout 1200\n file-whitelist-path-prefix \"{/var/local/scf} {/tmp/} {/shared/} {/config/} {/usr/share/aws/} {/var/config/rest/downloads/appsvcs_update.cli}\"\n gui-setup disabled\n hostname devCloud01.benlab.io\n mgmt-dhcp dhcpv6\n}\nsys httpd {\n auth-pam-idle-timeout 12000\n ssl-port 8443\n}\nsys management-dhcp /Common/sys-mgmt-dhcp-config {\n request-options { subnet-mask broadcast-address routers domain-name domain-name-servers ntp-servers interface-mtu }\n}\nsys management-ip 10.200.244.110/24 {\n description configured-statically\n}\nsys management-route /Common/default {\n description configured-statically\n gateway 10.200.244.1\n network default\n}\nsys ntp {\n timezone US/Central\n}\nsys provision apm {\n level nominal\n}\nsys provision avr {\n level nominal\n}\nsys provision ltm {\n level nominal\n}\nsys snmp {\n agent-addresses { tcp6:161 udp6:161 }\n communities {\n /Common/comm-public {\n community-name public\n source default\n }\n }\n disk-monitors {\n /Common/root {\n minspace 2000\n path /\n }\n /Common/var {\n minspace 10000\n path /var\n }\n }\n process-monitors {\n /Common/bigd {\n max-processes infinity\n process bigd\n }\n /Common/chmand {\n process chmand\n }\n /Common/httpd {\n max-processes infinity\n process httpd\n }\n /Common/mcpd {\n process mcpd\n }\n /Common/sod {\n process sod\n }\n /Common/tmm {\n max-processes infinity\n process tmm\n }\n }\n}\nsys dynad settings {\n development-mode false\n}\nsys fpga firmware-config {\n type standard-balanced-fpga\n}\nsys sflow global-settings http { }\nsys sflow global-settings vlan { }\nsys turboflex profile-config {\n type turboflex-adc\n}\n" }, { "fileName": "config/bigip.conf", - "size": 76020, - "content": "#TMSH-VERSION: 15.1.8.2\n\nanalytics global-settings { }\napm aaa localdb /Common/localDB { }\napm epsec epsec-package /Common/epsec-1.0.0-892.0.iso {\n cache-path /config/filestore/files_d/Common_d/epsec_package_d/:Common:epsec-1.0.0-892.0.iso_65040_1\n oesis-version 4.3.1158.0\n revision 1\n version 1.0.0-892.0\n}\napm policy access-policy /Common/adminAuth_local_aPolicy {\n default-ending /Common/adminAuth_local_aPolicy_end_deny\n items {\n /Common/adminAuth_local_aPolicy_act_localdb_auth { }\n /Common/adminAuth_local_aPolicy_act_logon_page { }\n /Common/adminAuth_local_aPolicy_end_allow { }\n /Common/adminAuth_local_aPolicy_end_deny { }\n /Common/adminAuth_local_aPolicy_ent { }\n }\n start-item /Common/adminAuth_local_aPolicy_ent\n}\napm policy customization-group /Common/adminAuth_local_aPolicy_act_logon_page_ag {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_act_logon_page_ag_65223_2\n revision 2\n source /Common/modern\n}\napm policy customization-group /Common/adminAuth_local_aPolicy_end_deny_ag {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_end_deny_ag_65134_1\n revision 1\n source /Common/modern\n type logout\n}\napm policy customization-group /Common/adminAuth_local_aPolicy_eps {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_eps_65170_1\n revision 1\n source /Common/modern\n type eps\n}\napm policy customization-group /Common/adminAuth_local_aPolicy_errormap {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_errormap_65167_1\n revision 1\n source /Common/modern\n type errormap\n}\napm policy customization-group /Common/adminAuth_local_aPolicy_framework_installation {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_framework_installation_65173_1\n revision 1\n source /Common/modern\n type framework-installation\n}\napm policy customization-group /Common/adminAuth_local_aPolicy_general_ui {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_general_ui_65124_1\n revision 1\n source /Common/modern\n type general-ui\n}\napm policy customization-group /Common/adminAuth_local_aPolicy_logout {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_logout_65164_1\n revision 1\n source /Common/modern\n type logout\n}\napm policy customization-source /Common/modern { }\napm policy customization-source /Common/standard { }\napm policy policy-item /Common/adminAuth_local_aPolicy_act_localdb_auth {\n agents {\n /Common/adminAuth_local_aPolicy_act_localdb_auth_ag {\n type aaa-localdb\n }\n }\n caption \"LocalDB Auth\"\n color 1\n item-type action\n rules {\n {\n caption Successful\n expression \"expr {[mcget {session.localdb.last.result}] == 1}\"\n next-item /Common/adminAuth_local_aPolicy_end_allow\n }\n {\n caption \"Locked User Out\"\n expression \"expr {[mcget {session.localdb.last.result}] == 2}\"\n next-item /Common/adminAuth_local_aPolicy_end_deny\n }\n {\n caption fallback\n next-item /Common/adminAuth_local_aPolicy_end_deny\n }\n }\n}\napm policy policy-item /Common/adminAuth_local_aPolicy_act_logon_page {\n agents {\n /Common/adminAuth_local_aPolicy_act_logon_page_ag {\n type logon-page\n }\n }\n caption \"Logon Page\"\n color 1\n item-type action\n rules {\n {\n caption fallback\n next-item /Common/adminAuth_local_aPolicy_act_localdb_auth\n }\n }\n}\napm policy policy-item /Common/adminAuth_local_aPolicy_end_allow {\n agents {\n /Common/adminAuth_local_aPolicy_end_allow_ag {\n type ending-allow\n }\n }\n caption Allow\n color 1\n item-type ending\n}\napm policy policy-item /Common/adminAuth_local_aPolicy_end_deny {\n agents {\n /Common/adminAuth_local_aPolicy_end_deny_ag {\n type ending-deny\n }\n }\n caption Deny\n color 2\n item-type ending\n}\napm policy policy-item /Common/adminAuth_local_aPolicy_ent {\n caption Start\n color 1\n rules {\n {\n caption fallback\n next-item /Common/adminAuth_local_aPolicy_act_logon_page\n }\n }\n}\napm policy agent aaa-localdb /Common/adminAuth_local_aPolicy_act_localdb_auth_ag {\n localdb-instance /Common/localDB\n}\napm policy agent ending-allow /Common/adminAuth_local_aPolicy_end_allow_ag { }\napm policy agent ending-deny /Common/adminAuth_local_aPolicy_end_deny_ag {\n customization-group /Common/adminAuth_local_aPolicy_end_deny_ag\n}\napm policy agent logon-page /Common/adminAuth_local_aPolicy_act_logon_page_ag {\n customization-group /Common/adminAuth_local_aPolicy_act_logon_page_ag\n}\napm profile access /Common/adminAuth_local_aPolicy {\n accept-languages { en }\n access-policy /Common/adminAuth_local_aPolicy\n app-service none\n customization-group /Common/adminAuth_local_aPolicy_logout\n customization-key 22ac0aeb0346bcebf5e867279edf9d7b\n default-language en\n domain-cookie none\n eps-group /Common/adminAuth_local_aPolicy_eps\n errormap-group /Common/adminAuth_local_aPolicy_errormap\n exchange-profile none\n framework-installation-group /Common/adminAuth_local_aPolicy_framework_installation\n general-ui-group /Common/adminAuth_local_aPolicy_general_ui\n generation 4\n generation-action noop\n httponly-cookie false\n log-settings {\n /Common/default-log-setting\n }\n logout-uri-include none\n logout-uri-timeout 5\n modified-since-last-policy-sync true\n named-scope none\n persistent-cookie false\n scope profile\n secure-cookie true\n sso-name none\n type system-authentication\n user-identity-method http\n}\napm report default-report {\n report-name sessionReports/sessionSummary\n user /Common/admin\n}\napm aaa localdb /Common/localDB { }\napm epsec epsec-package /Common/epsec-1.0.0-846.0.iso {\n cache-path /config/filestore/files_d/Common_d/epsec_package_d/:Common:epsec-1.0.0-846.0.iso_62973_1\n oesis-version 4.3.716.0\n revision 1\n version 1.0.0-846.0\n}\napm epsec epsec-package /Common/epsec-1.0.0-888.0.iso {\n cache-path /config/filestore/files_d/Common_d/epsec_package_d/:Common:epsec-1.0.0-888.0.iso_66742_1\n oesis-version 4.3.1103.0\n revision 1\n version 1.0.0-888.0\n}\napm epsec epsec-package /Common/epsec-1.0.0-1372.0.iso {\n cache-path /config/filestore/files_d/Common_d/epsec_package_d/:Common:epsec-1.0.0-1372.0.iso_68987_1\n oesis-version 4.3.3348.0\n revision 1\n version 1.0.0-1372.0\n}\napm policy access-policy /Common/radiusServer {\n default-ending /Common/radiusServer_end_deny\n items {\n /Common/radiusServer_act_radius_auth { }\n /Common/radiusServer_end_allow { }\n /Common/radiusServer_end_deny { }\n /Common/radiusServer_ent { }\n }\n start-item /Common/radiusServer_ent\n}\napm policy access-policy /Common/sslvpn_network_access {\n default-ending /Common/sslvpn_network_access_end_deny\n items {\n /Common/sslvpn_network_access_act_full_resource_assign { }\n /Common/sslvpn_network_access_act_localdb_auth { }\n /Common/sslvpn_network_access_act_logon_page { }\n /Common/sslvpn_network_access_end_allow { }\n /Common/sslvpn_network_access_end_deny { }\n /Common/sslvpn_network_access_ent { }\n }\n start-item /Common/sslvpn_network_access_ent\n}\napm policy customization-group /Common/radiusServer_end_deny_ag {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:radiusServer_end_deny_ag_216201_1\n revision 1\n source /Common/standard\n type logout\n}\napm policy customization-group /Common/radiusServer_eps {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:radiusServer_eps_216183_1\n revision 1\n source /Common/standard\n type eps\n}\napm policy customization-group /Common/radiusServer_errormap {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:radiusServer_errormap_216181_1\n revision 1\n source /Common/standard\n type errormap\n}\napm policy customization-group /Common/radiusServer_frameworkinstallation {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:radiusServer_frameworkinstallation_216185_1\n revision 1\n source /Common/standard\n type framework-installation\n}\napm policy customization-group /Common/radiusServer_general_ui {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:radiusServer_general_ui_216187_1\n revision 1\n source /Common/standard\n type general-ui\n}\napm policy customization-group /Common/radiusServer_logout {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:radiusServer_logout_216179_1\n revision 1\n source /Common/standard\n type logout\n}\napm policy customization-group /Common/ssl_webtop_customization {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:ssl_webtop_customization_103262_1\n revision 1\n source /Common/standard\n type webtop\n}\napm policy customization-group /Common/sslvpn_access_list_resource_network_access_customization {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:sslvpn_access_list_resource_network_access_customization_103276_1\n revision 1\n source /Common/standard\n type resource-network-access\n}\napm policy customization-group /Common/sslvpn_connectivity_profile_secure_access_client_customization {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:sslvpn_connectivity_profile_secure_access_client_customization_103292_1\n revision 1\n source /Common/standard\n type secure-access-client\n}\napm policy customization-group /Common/sslvpn_network_access_act_logon_page_ag {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:sslvpn_network_access_act_logon_page_ag_103365_2\n revision 2\n source /Common/standard\n}\napm policy customization-group /Common/sslvpn_network_access_end_deny_ag {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:sslvpn_network_access_end_deny_ag_103326_1\n revision 1\n source /Common/standard\n type logout\n}\napm policy customization-group /Common/sslvpn_network_access_eps {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:sslvpn_network_access_eps_103308_1\n revision 1\n source /Common/standard\n type eps\n}\napm policy customization-group /Common/sslvpn_network_access_errormap {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:sslvpn_network_access_errormap_103306_1\n revision 1\n source /Common/standard\n type errormap\n}\napm policy customization-group /Common/sslvpn_network_access_frameworkinstallation {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:sslvpn_network_access_frameworkinstallation_103310_1\n revision 1\n source /Common/standard\n type framework-installation\n}\napm policy customization-group /Common/sslvpn_network_access_general_ui {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:sslvpn_network_access_general_ui_103312_1\n revision 1\n source /Common/standard\n type general-ui\n}\napm policy customization-group /Common/sslvpn_network_access_logout {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:sslvpn_network_access_logout_103304_1\n revision 1\n source /Common/standard\n type logout\n}\napm policy customization-source /Common/modern { }\napm policy customization-source /Common/standard { }\napm policy policy-item /Common/radiusServer_act_radius_auth {\n agents {\n /Common/radiusServer_act_radius_auth_ag {\n type aaa-radius\n }\n }\n caption \"RADIUS Auth\"\n color 1\n item-type action\n rules {\n {\n caption Successful\n expression \"expr {[mcget {session.radius.last.result}] == 1}\"\n next-item /Common/radiusServer_end_deny\n }\n {\n caption fallback\n next-item /Common/radiusServer_end_deny\n }\n }\n}\napm policy policy-item /Common/radiusServer_end_allow {\n agents {\n /Common/radiusServer_end_allow_ag {\n type ending-allow\n }\n }\n caption Allow\n color 1\n item-type ending\n}\napm policy policy-item /Common/radiusServer_end_deny {\n agents {\n /Common/radiusServer_end_deny_ag {\n type ending-deny\n }\n }\n caption Deny\n color 2\n item-type ending\n}\napm policy policy-item /Common/radiusServer_ent {\n caption Start\n color 1\n rules {\n {\n caption fallback\n next-item /Common/radiusServer_act_radius_auth\n }\n }\n}\napm policy policy-item /Common/sslvpn_network_access_act_full_resource_assign {\n agents {\n /Common/sslvpn_network_access_act_full_resource_assign_ag {\n type resource-assign\n }\n }\n caption \"Advanced Resource Assign\"\n color 1\n item-type action\n rules {\n {\n caption fallback\n next-item /Common/sslvpn_network_access_end_allow\n }\n }\n}\napm policy policy-item /Common/sslvpn_network_access_act_localdb_auth {\n agents {\n /Common/sslvpn_network_access_act_localdb_auth_ag {\n type aaa-localdb\n }\n }\n caption \"LocalDB Auth\"\n color 1\n item-type action\n rules {\n {\n caption Successful\n expression \"expr {[mcget {session.localdb.last.result}] == 1}\"\n next-item /Common/sslvpn_network_access_act_full_resource_assign\n }\n {\n caption \"Locked User Out\"\n expression \"expr {[mcget {session.localdb.last.result}] == 2}\"\n next-item /Common/sslvpn_network_access_end_deny\n }\n {\n caption fallback\n next-item /Common/sslvpn_network_access_end_deny\n }\n }\n}\napm policy policy-item /Common/sslvpn_network_access_act_logon_page {\n agents {\n /Common/sslvpn_network_access_act_logon_page_ag {\n type logon-page\n }\n }\n caption \"Logon Page\"\n color 1\n item-type action\n rules {\n {\n caption fallback\n next-item /Common/sslvpn_network_access_act_localdb_auth\n }\n }\n}\napm policy policy-item /Common/sslvpn_network_access_end_allow {\n agents {\n /Common/sslvpn_network_access_end_allow_ag {\n type ending-allow\n }\n }\n caption Allow\n color 1\n item-type ending\n}\napm policy policy-item /Common/sslvpn_network_access_end_deny {\n agents {\n /Common/sslvpn_network_access_end_deny_ag {\n type ending-deny\n }\n }\n caption Deny\n color 2\n item-type ending\n}\napm policy policy-item /Common/sslvpn_network_access_ent {\n caption Start\n color 1\n rules {\n {\n caption fallback\n next-item /Common/sslvpn_network_access_act_logon_page\n }\n }\n}\napm policy agent aaa-localdb /Common/sslvpn_network_access_act_localdb_auth_ag {\n localdb-instance /Common/localDB\n}\napm policy agent aaa-radius /Common/radiusServer_act_radius_auth_ag {\n max-logon-attempt 5\n show-extended-error true\n}\napm policy agent ending-allow /Common/radiusServer_end_allow_ag { }\napm policy agent ending-allow /Common/sslvpn_network_access_end_allow_ag { }\napm policy agent ending-deny /Common/radiusServer_end_deny_ag {\n customization-group /Common/radiusServer_end_deny_ag\n}\napm policy agent ending-deny /Common/sslvpn_network_access_end_deny_ag {\n customization-group /Common/sslvpn_network_access_end_deny_ag\n}\napm policy agent logon-page /Common/sslvpn_network_access_act_logon_page_ag {\n customization-group /Common/sslvpn_network_access_act_logon_page_ag\n}\napm policy agent resource-assign /Common/sslvpn_network_access_act_full_resource_assign_ag {\n rules {\n {\n network-access-resources { /Common/sslvpn_access_list }\n webtop /Common/ssl_webtop\n }\n }\n}\napm profile access /Common/radiusServer {\n accept-languages { en }\n access-policy /Common/radiusServer\n app-service none\n customization-group /Common/radiusServer_logout\n customization-key c649c57de3b753f9764ae640df53f6cb\n default-language en\n domain-cookie none\n eps-group /Common/radiusServer_eps\n errormap-group /Common/radiusServer_errormap\n exchange-profile none\n framework-installation-group /Common/radiusServer_frameworkinstallation\n general-ui-group /Common/radiusServer_general_ui\n generation 1\n generation-action noop\n httponly-cookie false\n log-settings {\n /Common/default-log-setting\n }\n logout-uri-include none\n logout-uri-timeout 5\n modified-since-last-policy-sync true\n oauth-profile none\n persistent-cookie false\n scope profile\n secure-cookie true\n sso-name none\n type all\n user-identity-method http\n}\napm profile access /Common/sslvpn_network_access {\n accept-languages { en }\n access-policy /Common/sslvpn_network_access\n app-service none\n customization-group /Common/sslvpn_network_access_logout\n customization-key c0595c63f1a549ebf25e99e683989536\n default-language en\n domain-cookie none\n eps-group /Common/sslvpn_network_access_eps\n errormap-group /Common/sslvpn_network_access_errormap\n exchange-profile none\n framework-installation-group /Common/sslvpn_network_access_frameworkinstallation\n general-ui-group /Common/sslvpn_network_access_general_ui\n generation 2\n generation-action noop\n httponly-cookie false\n log-settings {\n /Common/default-log-setting\n }\n logout-uri-include none\n logout-uri-timeout 5\n modified-since-last-policy-sync true\n oauth-profile none\n persistent-cookie false\n scope profile\n secure-cookie true\n sso-name none\n type all\n user-identity-method http\n}\napm profile connectivity /Common/sslvpn_connectivity_profile {\n adaptive-compression enabled\n app-service none\n citrix-client-bundle /Common/default-citrix-client-bundle\n client-policy {\n sslvpn_connectivity_profile_clientPolicy { }\n }\n compress-buffer-size 4096\n compress-cpu-saver true\n compress-cpu-saver-high 90\n compress-cpu-saver-low 75\n compress-gzip-level 6\n compress-gzip-memlevel 8192\n compress-gzip-window-size 16384\n compress-ingress false\n compress-preferred-method zlib\n compression enabled\n compression-codecs { deflate lzo bzip2 }\n customization-group /Common/sslvpn_connectivity_profile_secure_access_client_customization\n defaults-from /Common/connectivity\n deflate-compression-level 1\n description none\n fec-name none\n location-specific false\n tunnel-name /Common/sslvpn_connectivity_profile\n}\napm report default-report {\n report-name sessionReports/sessionSummary\n user /Common/admin\n}\napm resource leasepool /Common/sslvpn_lease_pool {\n members {\n 10.10.10.10-10.10.10.20 { }\n }\n}\napm resource network-access /Common/sslvpn_access_list {\n address-space-include-dns-name { 192.168.200.7 192.168.200.8 }\n address-space-include-subnet {\n {\n subnet 10.200.0.0/16\n }\n {\n subnet 192.168.200.0/24\n }\n }\n customization-group /Common/sslvpn_access_list_resource_network_access_customization\n dns-primary 192.168.200.7\n dns-secondary 192.168.200.8\n dns-suffix benlab.io\n leasepool-name /Common/sslvpn_lease_pool\n split-tunneling true\n}\napm resource webtop /Common/ssl_webtop {\n customization-group /Common/ssl_webtop_customization\n webtop-type full\n}\nasm policy /Common/basic_policy_1 {\n active\n blocking-mode enabled\n description 'some description'\n encoding utf-8\n policy-builder enabled\n policy-template POLICY_TEMPLATE_RAPID_DEPLOYMENT\n policy-type security\n parent-policy some-.other_policy1\n}\nasm predefined-policy POLICY_TEMPLATE_ACTIVESYNC_V1_0_V2_0_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_ACTIVESYNC_V1_0_V2_0_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_API_SECURITY { }\nasm predefined-policy POLICY_TEMPLATE_BEHAVIORAL_WAF { }\nasm predefined-policy POLICY_TEMPLATE_COMPREHENSIVE { }\nasm predefined-policy POLICY_TEMPLATE_DRUPAL { }\nasm predefined-policy POLICY_TEMPLATE_DRUPAL_8 { }\nasm predefined-policy POLICY_TEMPLATE_FUNDAMENTAL { }\nasm predefined-policy POLICY_TEMPLATE_JOOMLA { }\nasm predefined-policy POLICY_TEMPLATE_LOTUSDOMINO_6_5_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_LOTUSDOMINO_6_5_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_ORACLE_10G_PORTAL_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_ORACLE_10G_PORTAL_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_ORACLE_APPLICATIONS_11I_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_ORACLE_APPLICATIONS_11I_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2003_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2003_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2003_WITH_ACTIVESYNC_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2003_WITH_ACTIVESYNC_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2007_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2007_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2007_WITH_ACTIVESYNC_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2007_WITH_ACTIVESYNC_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2010_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2010_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2016 { }\nasm predefined-policy POLICY_TEMPLATE_PASSIVE { }\nasm predefined-policy POLICY_TEMPLATE_PEOPLESOFT_PORTAL_9_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_PEOPLESOFT_PORTAL_9_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_RAPID_DEPLOYMENT { }\nasm predefined-policy POLICY_TEMPLATE_SAP_NETWEAVER { }\nasm predefined-policy POLICY_TEMPLATE_SAP_NETWEAVER_7_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_SAP_NETWEAVER_7_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_SHAREPOINT { }\nasm predefined-policy POLICY_TEMPLATE_SHAREPOINT_2003_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_SHAREPOINT_2003_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_SHAREPOINT_2007_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_SHAREPOINT_2007_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_SHAREPOINT_2010_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_SHAREPOINT_2010_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_SHAREPOINT_2016 { }\nasm predefined-policy POLICY_TEMPLATE_VULNERABILITY_ASSESSMENT { }\nasm predefined-policy POLICY_TEMPLATE_WORDPRESS { }\nasm predefined-policy POLICY_TEMPLATE_WORDPRESS_4_9 { }\nauth apm-auth /Common/system-auth {\n profile-access /Common/adminAuth_local_aPolicy\n}\nauth radius /Common/system-auth {\n servers {\n /Common/system_auth_name1\n }\n}\nauth radius-server /Common/system_auth_name1 {\n secret $M$mn$9uYx+bTjLD8YSGZAUEfFwHvpSDwZsL25kZxdn5NZmCI=\n server 10.200.244.1\n}\nauth remote-user {\n default-role admin\n remote-console-access tmsh\n}\nauth source {\n fallback true\n}\nilx global-settings {\n debug-port-blacklist { 47019 54321 60000 }\n}\nltm default-node-monitor {\n rule none\n}\nltm node /Common/10.200.244.15 {\n address 10.200.244.15\n description bigiq01\n}\nltm node /Common/10.10.10.1 {\n address 10.10.10.1\n}\nltm node /Common/192.168.200.42 {\n address 192.168.200.42\n}\nltm node /Common/api.chucknorris.io {\n fqdn {\n address-family all\n autopopulate enabled\n name api.chucknorris.io\n }\n}\nltm node /Common/app1_Node1 {\n address 192.168.1.22\n}\nltm node /Common/app1_Node2 {\n address 192.168.1.23\n}\nltm node /Common/app2_Node1 {\n address 192.168.2.22\n description app2_Node1\n}\nltm node /Common/app2_Node2 {\n address 192.168.2.23\n description app2_Node2\n}\nltm node /Common/app3_Node1 {\n address 192.168.1.52\n}\nltm node /Common/app3_Node2 {\n address 192.168.1.53\n}\nltm node /Common/app5_Node5 {\n address 192.168.10.23\n}\nltm policy /Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs {\n controls { asm }\n requires { http }\n rules {\n default {\n actions {\n 1 {\n asm\n enable\n policy /Common/basic_policy_1\n }\n }\n ordinal 1\n }\n }\n strategy /Common/first-match\n}\nltm policy /Common/app3_ltm_policy {\n rules {\n global_rule_1 { }\n }\n strategy /Common/first-match\n}\nltm policy /Common/app4_ltPolicy {\n controls { forwarding }\n description \"testing for pool extraction function\"\n requires { http }\n rules {\n css_pool_rule {\n actions {\n 0 {\n forward\n select\n pool /Common/css_pool\n }\n }\n conditions {\n 0 {\n http-uri\n scheme\n ends-with\n values { .css }\n }\n }\n }\n jpg_pool_rule {\n actions {\n 0 {\n forward\n select\n pool /Common/jpg.pool\n }\n }\n conditions {\n 0 {\n http-uri\n query-string\n ends-with\n values { .jpg }\n }\n }\n ordinal 1\n }\n js_pool_rule {\n actions {\n 0 {\n forward\n select\n pool /Common/js.io_t80_pool\n }\n }\n conditions {\n 0 {\n http-uri\n scheme\n ends-with\n values { .js }\n }\n }\n ordinal 2\n }\n txt_node {\n actions {\n 0 {\n forward\n select\n node 10.10.10.1\n }\n }\n conditions {\n 0 {\n http-uri\n scheme\n ends-with\n values { .txt }\n }\n }\n ordinal 3\n }\n }\n strategy /Common/first-match\n}\nltm pool /Common/bigiq.benlab.io_t443_pool {\n members {\n /Common/10.200.244.15:443 {\n address 10.200.244.15\n }\n }\n monitor /Common/https_head_f5\n}\nltm pool /Common/app1_t80_pool {\n members {\n /Common/app1_Node1:80 {\n address 192.168.1.22\n }\n /Common/app1_Node2:80 {\n address 192.168.1.23\n }\n }\n monitor /Common/http and /Common/tcp\n}\nltm pool /Common/app2_t80_pool {\n load-balancing-mode least-connections-member\n members {\n /Common/app2_Node1:80 {\n address 192.168.2.22\n }\n /Common/app2_Node2:80 {\n address 192.168.2.23\n }\n }\n monitor /Common/global_http_monitor and /Common/global_https_monitor\n}\nltm pool /Common/app3_t8443_pool {\n load-balancing-mode least-connections-member\n members {\n /Common/app3_Node1:8443 {\n address 192.168.1.52\n }\n /Common/app3_Node2:8443 {\n address 192.168.1.53\n }\n }\n monitor /Common/app1_tcp_half_open_quick_monitor and /Common/http_head_f5 and /Common/http2_head_f5 and /Common/http and /Common/tcp_half_open\n}\nltm pool /Common/app4_pool {\n members {\n /Common/api.chucknorris.io:443 {\n fqdn {\n autopopulate enabled\n name api.chucknorris.io\n }\n }\n }\n}\nltm pool /Common/css_pool { }\nltm pool /Common/jpg.pool { }\nltm pool /Common/js.io_t80_pool { }\nltm rule /Common/app3_rule {\n#comment\n\nwhen HTTP_REQUEST {\n # add more here\n}\n}\nltm rule /Common/app3_rule2 {\n#comment\n\nwhen HTTP_REQUEST {\n # ben test 444\n}\n}\nltm rule /Common/app3_rule3 {\n# app3_rule3 header\n\nwhen SERVERSSL_DATA {\n # got something from server\n}\n}\nltm rule /Common/app4_pool_rule {\n### test rule for corkscrew\n\n # \n\nwhen HTTP_REQUEST {\n\n # pool reference by variable declaration\n set html-pool web1Pool\n\n if { [HTTP::path] ends_with \"*.css\" }{\n\n # regular pool refernce\n pool css_pool\n\n } elseif { [HTTP::path] ends_with \"*.jpg\" }{\n\n # pool member refernce\n pool jpg.pool member 10.10.10.1 80\n\n } elseif { [HTTP::path] ends_with \"*.js\" }{\n\n # another pool reference with special characters\n pool js.io_t80_pool \n\n } elseif { [HTTP::path] ends_with \"*.xx\" }{\n\n # pool reference not in tmos config\n ### *** seems the gui won't let you attach an irule to a vs with a pool that doesn't exist\n #pool missing_pool\n\n } elseif { [HTTP::path] ends_with \"*.txt\" }{\n\n # node reference\n node 10.10.10.1 80\n\n } else {\n\n # pool referenced by variable\n pool $html-pool\n\n }\n}\n}\nltm rule /Common/app4_pool_rule2 {\n\n}\nltm snat-translation /Common/192.168.1.51 {\n address 192.168.1.51\n inherited-traffic-group true\n traffic-group /Common/traffic-group-1\n}\nltm snatpool /Common/app3_snat_pool {\n members {\n /Common/192.168.1.51\n }\n}\nltm virtual /Common/app1_t80_vs {\n creation-time 2020-09-17:08:50:22\n destination /Common/192.168.1.21:80\n ip-protocol tcp\n last-modified-time 2020-09-17:08:51:07\n mask 255.255.255.255\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/_sys_https_redirect\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address enabled\n translate-port enabled\n}\nltm virtual /Common/app1_t443_vs {\n destination /Common/192.168.1.21:443\n ip-protocol tcp\n last-modified-time 2020-09-18:10:05:54\n mask 255.255.255.255\n pool /Common/app1_t80_pool\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n}\nltm virtual /Common/app2_t80_vs {\n creation-time 2020-09-17:08:50:22\n destination /Common/192.168.2.21:80\n ip-protocol tcp\n last-modified-time 2020-09-17:08:51:07\n mask 255.255.255.255\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/_sys_https_redirect\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address enabled\n translate-port enabled\n}\nltm virtual /Common/bigiq.benlab.io_t443_vs {\n creation-time 2019-10-01:17:59:21\n description \"not flowing traffic, just used for GTM\"\n destination /Common/10.200.244.15:443\n ip-protocol tcp\n last-modified-time 2019-10-01:18:11:46\n mask 255.255.255.255\n policies {\n /Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs { }\n }\n pool /Common/bigiq.benlab.io_t443_pool\n profiles {\n /Common/ASM_basic_policy_1 { }\n /Common/f5-tcp-progressive { }\n /Common/http { }\n /Common/websecurity { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n vlans {\n /Common/vlan255_f5peer\n }\n vlans-enabled\n}\nltm virtual /Common/app2_t443_vs {\n destination /Common/192.168.2.21:443\n ip-protocol tcp\n last-modified-time 2020-09-18:10:05:47\n mask 255.255.255.255\n pool /Common/app2_t80_pool\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n}\nltm virtual /Common/app3_t8443_vs {\n destination /Common/192.168.1.51:8443\n fallback-persistence /Common/app3_srcAddr_persist\n ip-protocol tcp\n last-modified-time 2020-09-17:12:45:40\n mask 255.255.255.255\n persist {\n /Common/app3_cookie {\n default yes\n }\n }\n policies {\n /Common/app3_ltm_policy { }\n }\n pool /Common/app3_t8443_pool\n profiles {\n /Common/app3_clientssl {\n context clientside\n }\n /Common/app3_serverssl {\n context serverside\n }\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/app3_rule\n /Common/app3_rule2\n /Common/app3_rule3\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n pool /Common/app3_snat_pool\n type snat\n }\n translate-address enabled\n translate-port enabled\n}\nltm virtual /Common/app4_t80_vs {\n description \"test pool references in irule extration and ltp\"\n destination /Common/192.168.2.25:80\n ip-protocol tcp\n last-modified-time 2020-10-07:07:28:35\n mask 255.255.255.255\n policies {\n /Common/app4_ltPolicy { }\n }\n pool /Common/app4_pool\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/_sys_https_redirect\n /Common/app4_pool_rule\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address enabled\n translate-port enabled\n}\nltm virtual /Common/forwarder_net_0.0.0.0 {\n destination /Common/0.0.0.0:0\n ip-forward\n mask any\n profiles {\n /Common/fastl4_loose { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address disabled\n translate-port disabled\n}\nltm virtual-address /Common/0.0.0.0 {\n address any\n arp disabled\n icmp-echo disabled\n mask any\n traffic-group /Common/traffic-group-1\n}\nltm virtual-address /Common/192.168.1.21 {\n address 192.168.1.21\n arp enabled\n mask 255.255.255.255\n traffic-group /Common/traffic-group-1\n}\nltm virtual-address /Common/192.168.1.51 {\n address 192.168.1.51\n arp enabled\n mask 255.255.255.255\n traffic-group /Common/traffic-group-1\n}\nltm virtual-address /Common/192.168.2.21 {\n address 192.168.2.21\n arp enabled\n mask 255.255.255.255\n traffic-group /Common/traffic-group-1\n}\nltm virtual-address /Common/192.168.2.25 {\n address 192.168.2.25\n arp enabled\n mask 255.255.255.255\n traffic-group /Common/traffic-group-1\n}\nltm auth radius-server /Common/system_auth_name1 {\n secret $M$mn$9uYx+bTjLD8YSGZAUEfFwHvpSDwZsL25kZxdn5NZmCI=\n server 10.200.244.1\n}\nltm classification auto-update settings {\n auto-update-interval weekly\n enabled no\n}\nltm data-group internal /Common/____appsvcs_declaration-1601897418975 {\n description \"f5 AS3 declaration (see info in record 0)\"\n records {\n 0 {\n data \"date^2020-10-05T11:30:18.975Z|id^1601897415002|tenants^|blocks^1\"\n }\n 1 {\n data eNoNzL0OwyAMBOB38dwgm5TmZ6vatVvUoRsCS0GCEAHtEuXd6/G+O90BLtpaYYb78wEXqG7lZN9casibaK9QoXjwEuiGNE7DlQyiFvzu3jZ+Zc9SVo7sWvixFC5vreQotwfY4lbRJSSuzaZdpho1doQdmoVo7nGmUU2D+cB5/gEMbipT\n }\n }\n type integer\n}\nltm data-group internal /Common/____appsvcs_declaration-1601900242421 {\n description \"f5 AS3 declaration (see info in record 0)\"\n records {\n 0 {\n data \"date^2020-10-05T12:17:22.421Z|id^autogen_6c3dbac3-4624-47e2-8ed7-3932d3c1d9b2|tenants^foo|blocks^1\"\n }\n 1 {\n data eNp1kM1uwjAQhN/F5ySynQAlN1SuSEilPbRCkbEXsOQ/2Q4XlHfvmlYUVa2PM+Odb/dKpBEpkZ6s1s+kIkmewYo3iEl7h2rbcNpQNI7ek/56T+/ACZdRV3AUo8npdb0dZvgeQ6sQjJYil1EVyWCDERnQGFUoXRAvWsJGaPf46+VLHnAihi465lGYlVIRUgIMfBC25M2MNrxhZH9PbH3MpC8IFQneG5z0m23Yos7IVP3nPFAUAeutdzr7eKvV0oZSaMEe4CZdbztA/JuOl/D3kj90036akEArLBFj9idww1y26iBkW3dz3tXdAnj9BGpRt8uWq1YytTxwhBmDwvttvCo3TGBAZn0BNKR3OXqTygIiyjOqO20hZYHEPeGU05rRms52jPds0XPedJy9k2n6BPXOoeQ=\n }\n }\n type integer\n}\nltm data-group internal /Common/____appsvcs_declaration-1601900272772 {\n description \"f5 AS3 declaration (see info in record 0)\"\n records {\n 0 {\n data \"date^2020-10-05T12:17:52.772Z|id^1601900269131|tenants^|blocks^1\"\n }\n 1 {\n data eNoNzDELwyAQBeD/cnMjd4ZE4lbatVvo0E30IILGoLZLyH/vje97j3eCT641sHB/PuAGzW+c3Ztri2UXHRUqFI9BAs1IC6KeFxpJ8HsE1/lVAkvZOLHv8cdS+LL3WpLcnuCq30TXmLl1lw+ZatQ4EA44raQtGTtpZYz+wHX9AQqTKk0=\n }\n }\n type integer\n}\nltm data-group internal /Common/____appsvcs_declaration-1602008840967 {\n description \"f5 AS3 declaration (see info in record 0)\"\n records {\n 0 {\n data \"date^2020-10-06T18:27:20.967Z|id^autogen_411122fd-f96d-45e5-9f42-5231b42fb590|tenants^foo|blocks^1\"\n }\n 1 {\n data eNp1UctuwjAQ/Befkyg2CTS5oXJFQirtoRWKjL0BS37Jdrig/HvXtKKoan2cGe/M7F6J0DxG0pP15pkUJIozGP4GISpnEV1UrK5qJEbnSH+9q/dguU2ISxj5pFN83eyGFt+jaO29VoKnPKogCYzXPAESk/TZC8JFCdhyZR9/vXzBA05E0UWFNHG9ljJAjICCD0I7VrV1xSpKDnfFzoVE+hyhIN45jZN+Zxt2iFMyF/8xDykygPbGWZVcuNkqYXw2NGCOcIOutw4Q/k7Hsvi75E+6+TDPmEBJNOFTciewQ0MpZWyU5dgtZdm00Jbd2LCyZQt6bNh4bLt8g8lL3N/WybzDCBpEUhdAQjibgtMxF+BBnBHdKwMxcUzcE1azuqR1WS/39Klnqx5v2i1X72SePwG436Fo\n }\n }\n type integer\n}\nltm data-group internal /Common/__appsvcs_update {\n type string\n}\nltm data-group internal /Common/appsvcs/dataStore {\n records {\n as3_async_records0 {\n data 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\n }\n }\n type string\n}\nltm data-group internal /Common/atgTeem/datastore {\n type string\n}\nltm data-group internal /Common/f5-appsvcs-templates/config {\n records {\n config0 {\n data eNqrVkpJzUktSU0JSc0tyEksSQ1OLSlWsopWKkktLlGKrQUAx+YL5Q==\n }\n }\n type string\n}\nltm data-group internal /Common/f5-appsvcs-templates/dataStore {\n records {\n bigip-fast-templates0 {\n data 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\n }\n examples0 {\n data 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\n }\n goodFastTemplates0 {\n data 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\n }\n }\n type string\n}\nltm monitor dns /Common/dubNameTst1_monitor {\n accept-rcode no-error\n adaptive disabled\n answer-contains query-type\n defaults-from /Common/dns\n interval 5\n qname query.test.com\n qtype a\n recv none\n time-until-up 0\n timeout 16\n}\nltm monitor http /Common/global_http_monitor {\n adaptive disabled\n defaults-from /Common/http\n interval 5\n ip-dscp 0\n recv \"ok 200\"\n recv-disable none\n send \"GET /anywebsite.com\\r\\n\"\n time-until-up 0\n timeout 16\n}\nltm monitor https /Common/global_https_monitor {\n adaptive disabled\n defaults-from /Common/https\n interval 5\n ip-dscp 0\n recv \"201 continue\"\n recv-disable none\n send \"GET /any-secure-website.com\\r\\n\"\n time-until-up 0\n timeout 16\n}\nltm monitor tcp /Common/test_tcp_monitor {\n adaptive disabled\n defaults-from /Common/tcp\n interval 5\n ip-dscp 0\n recv \"receive a tcp string\"\n recv-disable none\n send \"send a tcp string\"\n time-until-up 0\n timeout 16\n}\nltm monitor tcp-half-open /Common/app1_tcp_half_open_quick_monitor {\n defaults-from /Common/tcp_half_open\n destination *:*\n interval 1\n time-until-up 0\n timeout 4\n}\nltm monitor udp /Common/test_udp_monitor {\n adaptive disabled\n debug no\n defaults-from /Common/udp\n interval 5\n recv recieve-what?\n recv-disable none\n send \"default send string\"\n time-until-up 0\n timeout 16\n}\nltm persistence cookie /Common/app3_cookie {\n always-send disabled\n app-service none\n cookie-encryption disabled\n cookie-name app3CustomeCookie\n defaults-from /Common/cookie\n encrypt-cookie-poolname disabled\n expiration 0\n httponly enabled\n method insert\n override-connection-limit disabled\n secure enabled\n}\nltm persistence source-addr /Common/app3_srcAddr_persist {\n app-service none\n defaults-from /Common/source_addr\n hash-algorithm default\n map-proxies enabled\n mask none\n match-across-pools disabled\n match-across-services disabled\n match-across-virtuals disabled\n override-connection-limit disabled\n timeout 180\n}\nltm profile client-ssl /Common/app2_clientssl {\n app-service none\n cert-key-chain {\n default {\n cert /Common/default.crt\n key /Common/default.key\n }\n }\n defaults-from /Common/clientssl\n inherit-ca-certkeychain true\n inherit-certkeychain true\n}\nltm profile client-ssl /Common/app3_clientssl {\n app-service none\n cert-key-chain {\n default {\n cert /Common/default.crt\n key /Common/default.key\n }\n }\n defaults-from /Common/clientssl\n inherit-ca-certkeychain true\n inherit-certkeychain true\n}\nltm profile client-ssl /Common/test1 {\n app-service none\n cert-key-chain {\n default {\n cert /Common/default.crt\n key /Common/default.key\n }\n }\n defaults-from /Common/clientssl\n inherit-ca-certkeychain true\n inherit-certkeychain true\n}\nltm profile fastl4 /Common/fastl4_loose {\n app-service none\n loose-close enabled\n loose-initialization enabled\n reset-on-timeout disabled\n syn-cookie-enable disabled\n}\nltm profile ftp /Common/global_http_monitor {\n app-service none\n defaults-from /Common/ftp\n}\nltm profile http /Common/dubNameTst1_profile {\n app-service none\n defaults-from /Common/http\n proxy-type reverse\n}\nltm profile http-compression /Common/dubName.Tst1_profile {\n app-service none\n defaults-from /Common/httpcompression\n}\nltm profile server-ssl /Common/app3_serverssl {\n app-service none\n defaults-from /Common/serverssl\n}\nltm profile server-ssl /Common/test2 {\n app-service none\n defaults-from /Common/serverssl\n}\nnet dns-resolver /Common/f5-aws-dns {\n forward-zones {\n amazonaws.com {\n nameservers {\n 8.8.8.8:53 { }\n }\n }\n idservice.net {\n nameservers {\n 8.8.8.8:53 { }\n }\n }\n }\n route-domain /Common/0\n}\nnet ipsec ike-daemon /Common/ikedaemon {\n log-publisher /Common/default-ipsec-log-publisher\n}\npem global-settings analytics { }\npem global-settings gx { }\npem global-settings policy { }\nsecurity dos ipv6-ext-hdr /Common/dos-ipv6-ext-hdr {\n frame-types { auth dstopt esp frag hbh mobility route }\n}\nsecurity dos udp-portlist /Common/dos-udp-portlist {\n list-type exclude-listed-ports\n}\nsecurity firewall config-change-log {\n log-publisher /Common/local-db-publisher\n}\nsecurity protocol-inspection compliance-map /Common/map_10426 {\n insp-id 10426\n key-type int\n value-type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/allowed_list {\n insp-id 10229\n type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/allowed_list {\n insp-id 10430\n type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/allowed_list {\n insp-id 10431\n type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/allowed_list {\n insp-id 10232\n type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/argument_len_max {\n insp-id 10905\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/command_argument_len_max {\n insp-id 10609\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/command_len_max {\n insp-id 10905\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/command_len_max {\n insp-id 10707\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/command_len_max {\n insp-id 10609\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/command_parameter_len_max {\n insp-id 10707\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/disallowed_list {\n insp-id 10229\n type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/disallowed_list {\n insp-id 10430\n type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/disallowed_list {\n insp-id 10431\n type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/disallowed_list {\n insp-id 10232\n type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/error_message_max {\n insp-id 10102\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/file_name_max {\n insp-id 10102\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/file_type_max {\n insp-id 10102\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/header_name_len_max {\n insp-id 11016\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/header_name_len_max {\n insp-id 11223\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/header_value_len_max {\n insp-id 11016\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/header_value_len_max {\n insp-id 11223\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/method_len_max {\n insp-id 11016\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/method_len_max {\n insp-id 11223\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/option_name_max {\n insp-id 10102\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/option_value_max {\n insp-id 10102\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/response_argument_len_max {\n insp-id 10609\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/response_code_len_max {\n insp-id 10609\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/response_parameter_len_max {\n insp-id 10707\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/status_code_len_max {\n insp-id 11016\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/status_code_len_max {\n insp-id 11223\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/status_len_max {\n insp-id 10707\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/status_reason_len_max {\n insp-id 11016\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/status_reason_len_max {\n insp-id 11223\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/tag_len_max {\n insp-id 10905\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/uri_len_max {\n insp-id 11016\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/uri_len_max {\n insp-id 11223\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/version_len_max {\n insp-id 11016\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/version_len_max {\n insp-id 11223\n type int\n}\nsecurity scrubber profile /Common/scrubber-profile-default {\n advertisement-ttl 300\n}\nsys compatibility-level {\n level 0\n}\nsys management-ovsdb {\n bfd-disabled\n bfd-route-domain none\n ca-cert-file none\n cert-file none\n cert-key-file none\n disabled\n flooding-type replicator\n log-level info\n logical-routing-type none\n tunnel-maintenance-mode active\n}\nsys diags ihealth {\n expiration 30\n no-ihealth false\n options none\n password none\n user none\n}\nsys ecm cloud-provider /Common/aws-ec2 {\n description \"The aws-ec2 parameters\"\n property-template {\n account { }\n availability-zone {\n valid-values { a b c d }\n }\n instance-type {\n valid-values { t2.micro t2.small t2.medium m3.medium m3.large m3.xlarge m3.2xlarge c3.large c3.xlarge c3.2xlarge c3.4xlarge c3.8xlarge r3.large r3.xlarge r3.2xlarge r3.4xlarge r3.8xlarge }\n }\n region {\n valid-values { us-east-1 us-west-1 us-west-2 sa-east-1 eu-west-1 eu-central-1 ap-southeast-2 ap-southeast-1 ap-northeast-1 }\n }\n }\n}\nsys ecm cloud-provider /Common/dnet {\n description \"The dnet parameters\"\n}\nsys ecm cloud-provider /Common/vsphere {\n description \"The vsphere parameters\"\n property-template {\n cloud-host-ip { }\n dhcp-network-name { }\n end-point-url { }\n node-name { }\n }\n}\nsys file ssl-key /Common/f5_api_com.key {\n cache-path /config/filestore/files_d/Common_d/certificate_key_d/:Common:f5_api_com.key_63136_1\n passphrase $M$dw$gJ3HaeiGt0skpPsA6hli9PsO/8yo5M6FkI1CHOPiN4GgC/h5Tln6v01SC2727mtleKP9Hw/Vnwio8eOiXi4umiV+IidOxMwtZinL8WYrqX0=\n revision 1\n source-path file:///config/ssl/ssl.key/f5_api_com.key\n}\nsys software update {\n auto-check enabled\n auto-phonehome disabled\n frequency weekly\n}\nwom endpoint-discovery { }\n" + "size": 82812, + "content": "#TMSH-VERSION: 15.1.8.2\n\nanalytics global-settings { }\napm aaa localdb /Common/localDB { }\napm epsec epsec-package /Common/epsec-1.0.0-892.0.iso {\n cache-path /config/filestore/files_d/Common_d/epsec_package_d/:Common:epsec-1.0.0-892.0.iso_65040_1\n oesis-version 4.3.1158.0\n revision 1\n version 1.0.0-892.0\n}\napm policy access-policy /Common/adminAuth_local_aPolicy {\n default-ending /Common/adminAuth_local_aPolicy_end_deny\n items {\n /Common/adminAuth_local_aPolicy_act_localdb_auth { }\n /Common/adminAuth_local_aPolicy_act_logon_page { }\n /Common/adminAuth_local_aPolicy_end_allow { }\n /Common/adminAuth_local_aPolicy_end_deny { }\n /Common/adminAuth_local_aPolicy_ent { }\n }\n start-item /Common/adminAuth_local_aPolicy_ent\n}\napm policy customization-group /Common/adminAuth_local_aPolicy_act_logon_page_ag {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_act_logon_page_ag_65223_2\n revision 2\n source /Common/modern\n}\napm policy customization-group /Common/adminAuth_local_aPolicy_end_deny_ag {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_end_deny_ag_65134_1\n revision 1\n source /Common/modern\n type logout\n}\napm policy customization-group /Common/adminAuth_local_aPolicy_eps {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_eps_65170_1\n revision 1\n source /Common/modern\n type eps\n}\napm policy customization-group /Common/adminAuth_local_aPolicy_errormap {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_errormap_65167_1\n revision 1\n source /Common/modern\n type errormap\n}\napm policy customization-group /Common/adminAuth_local_aPolicy_framework_installation {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_framework_installation_65173_1\n revision 1\n source /Common/modern\n type framework-installation\n}\napm policy customization-group /Common/adminAuth_local_aPolicy_general_ui {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_general_ui_65124_1\n revision 1\n source /Common/modern\n type general-ui\n}\napm policy customization-group /Common/adminAuth_local_aPolicy_logout {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_logout_65164_1\n revision 1\n source /Common/modern\n type logout\n}\napm policy customization-source /Common/modern { }\napm policy customization-source /Common/standard { }\napm policy policy-item /Common/adminAuth_local_aPolicy_act_localdb_auth {\n agents {\n /Common/adminAuth_local_aPolicy_act_localdb_auth_ag {\n type aaa-localdb\n }\n }\n caption \"LocalDB Auth\"\n color 1\n item-type action\n rules {\n {\n caption Successful\n expression \"expr {[mcget {session.localdb.last.result}] == 1}\"\n next-item /Common/adminAuth_local_aPolicy_end_allow\n }\n {\n caption \"Locked User Out\"\n expression \"expr {[mcget {session.localdb.last.result}] == 2}\"\n next-item /Common/adminAuth_local_aPolicy_end_deny\n }\n {\n caption fallback\n next-item /Common/adminAuth_local_aPolicy_end_deny\n }\n }\n}\napm policy policy-item /Common/adminAuth_local_aPolicy_act_logon_page {\n agents {\n /Common/adminAuth_local_aPolicy_act_logon_page_ag {\n type logon-page\n }\n }\n caption \"Logon Page\"\n color 1\n item-type action\n rules {\n {\n caption fallback\n next-item /Common/adminAuth_local_aPolicy_act_localdb_auth\n }\n }\n}\napm policy policy-item /Common/adminAuth_local_aPolicy_end_allow {\n agents {\n /Common/adminAuth_local_aPolicy_end_allow_ag {\n type ending-allow\n }\n }\n caption Allow\n color 1\n item-type ending\n}\napm policy policy-item /Common/adminAuth_local_aPolicy_end_deny {\n agents {\n /Common/adminAuth_local_aPolicy_end_deny_ag {\n type ending-deny\n }\n }\n caption Deny\n color 2\n item-type ending\n}\napm policy policy-item /Common/adminAuth_local_aPolicy_ent {\n caption Start\n color 1\n rules {\n {\n caption fallback\n next-item /Common/adminAuth_local_aPolicy_act_logon_page\n }\n }\n}\napm policy agent aaa-localdb /Common/adminAuth_local_aPolicy_act_localdb_auth_ag {\n localdb-instance /Common/localDB\n}\napm policy agent ending-allow /Common/adminAuth_local_aPolicy_end_allow_ag { }\napm policy agent ending-deny /Common/adminAuth_local_aPolicy_end_deny_ag {\n customization-group /Common/adminAuth_local_aPolicy_end_deny_ag\n}\napm policy agent logon-page /Common/adminAuth_local_aPolicy_act_logon_page_ag {\n customization-group /Common/adminAuth_local_aPolicy_act_logon_page_ag\n}\napm profile access /Common/adminAuth_local_aPolicy {\n accept-languages { en }\n access-policy /Common/adminAuth_local_aPolicy\n app-service none\n customization-group /Common/adminAuth_local_aPolicy_logout\n customization-key 22ac0aeb0346bcebf5e867279edf9d7b\n default-language en\n domain-cookie none\n eps-group /Common/adminAuth_local_aPolicy_eps\n errormap-group /Common/adminAuth_local_aPolicy_errormap\n exchange-profile none\n framework-installation-group /Common/adminAuth_local_aPolicy_framework_installation\n general-ui-group /Common/adminAuth_local_aPolicy_general_ui\n generation 4\n generation-action noop\n httponly-cookie false\n log-settings {\n /Common/default-log-setting\n }\n logout-uri-include none\n logout-uri-timeout 5\n modified-since-last-policy-sync true\n named-scope none\n persistent-cookie false\n scope profile\n secure-cookie true\n sso-name none\n type system-authentication\n user-identity-method http\n}\napm report default-report {\n report-name sessionReports/sessionSummary\n user /Common/admin\n}\napm aaa localdb /Common/localDB { }\napm epsec epsec-package /Common/epsec-1.0.0-846.0.iso {\n cache-path /config/filestore/files_d/Common_d/epsec_package_d/:Common:epsec-1.0.0-846.0.iso_62973_1\n oesis-version 4.3.716.0\n revision 1\n version 1.0.0-846.0\n}\napm epsec epsec-package /Common/epsec-1.0.0-888.0.iso {\n cache-path /config/filestore/files_d/Common_d/epsec_package_d/:Common:epsec-1.0.0-888.0.iso_66742_1\n oesis-version 4.3.1103.0\n revision 1\n version 1.0.0-888.0\n}\napm epsec epsec-package /Common/epsec-1.0.0-1372.0.iso {\n cache-path /config/filestore/files_d/Common_d/epsec_package_d/:Common:epsec-1.0.0-1372.0.iso_68987_1\n oesis-version 4.3.3348.0\n revision 1\n version 1.0.0-1372.0\n}\napm policy access-policy /Common/radiusServer {\n default-ending /Common/radiusServer_end_deny\n items {\n /Common/radiusServer_act_radius_auth { }\n /Common/radiusServer_end_allow { }\n /Common/radiusServer_end_deny { }\n /Common/radiusServer_ent { }\n }\n start-item /Common/radiusServer_ent\n}\napm policy access-policy /Common/sslvpn_network_access {\n default-ending /Common/sslvpn_network_access_end_deny\n items {\n /Common/sslvpn_network_access_act_full_resource_assign { }\n /Common/sslvpn_network_access_act_localdb_auth { }\n /Common/sslvpn_network_access_act_logon_page { }\n /Common/sslvpn_network_access_end_allow { }\n /Common/sslvpn_network_access_end_deny { }\n /Common/sslvpn_network_access_ent { }\n }\n start-item /Common/sslvpn_network_access_ent\n}\napm policy customization-group /Common/radiusServer_end_deny_ag {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:radiusServer_end_deny_ag_216201_1\n revision 1\n source /Common/standard\n type logout\n}\napm policy customization-group /Common/radiusServer_eps {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:radiusServer_eps_216183_1\n revision 1\n source /Common/standard\n type eps\n}\napm policy customization-group /Common/radiusServer_errormap {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:radiusServer_errormap_216181_1\n revision 1\n source /Common/standard\n type errormap\n}\napm policy customization-group /Common/radiusServer_frameworkinstallation {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:radiusServer_frameworkinstallation_216185_1\n revision 1\n source /Common/standard\n type framework-installation\n}\napm policy customization-group /Common/radiusServer_general_ui {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:radiusServer_general_ui_216187_1\n revision 1\n source /Common/standard\n type general-ui\n}\napm policy customization-group /Common/radiusServer_logout {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:radiusServer_logout_216179_1\n revision 1\n source /Common/standard\n type logout\n}\napm policy customization-group /Common/ssl_webtop_customization {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:ssl_webtop_customization_103262_1\n revision 1\n source /Common/standard\n type webtop\n}\napm policy customization-group /Common/sslvpn_access_list_resource_network_access_customization {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:sslvpn_access_list_resource_network_access_customization_103276_1\n revision 1\n source /Common/standard\n type resource-network-access\n}\napm policy customization-group /Common/sslvpn_connectivity_profile_secure_access_client_customization {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:sslvpn_connectivity_profile_secure_access_client_customization_103292_1\n revision 1\n source /Common/standard\n type secure-access-client\n}\napm policy customization-group /Common/sslvpn_network_access_act_logon_page_ag {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:sslvpn_network_access_act_logon_page_ag_103365_2\n revision 2\n source /Common/standard\n}\napm policy customization-group /Common/sslvpn_network_access_end_deny_ag {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:sslvpn_network_access_end_deny_ag_103326_1\n revision 1\n source /Common/standard\n type logout\n}\napm policy customization-group /Common/sslvpn_network_access_eps {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:sslvpn_network_access_eps_103308_1\n revision 1\n source /Common/standard\n type eps\n}\napm policy customization-group /Common/sslvpn_network_access_errormap {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:sslvpn_network_access_errormap_103306_1\n revision 1\n source /Common/standard\n type errormap\n}\napm policy customization-group /Common/sslvpn_network_access_frameworkinstallation {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:sslvpn_network_access_frameworkinstallation_103310_1\n revision 1\n source /Common/standard\n type framework-installation\n}\napm policy customization-group /Common/sslvpn_network_access_general_ui {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:sslvpn_network_access_general_ui_103312_1\n revision 1\n source /Common/standard\n type general-ui\n}\napm policy customization-group /Common/sslvpn_network_access_logout {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:sslvpn_network_access_logout_103304_1\n revision 1\n source /Common/standard\n type logout\n}\napm policy customization-source /Common/modern { }\napm policy customization-source /Common/standard { }\napm policy policy-item /Common/radiusServer_act_radius_auth {\n agents {\n /Common/radiusServer_act_radius_auth_ag {\n type aaa-radius\n }\n }\n caption \"RADIUS Auth\"\n color 1\n item-type action\n rules {\n {\n caption Successful\n expression \"expr {[mcget {session.radius.last.result}] == 1}\"\n next-item /Common/radiusServer_end_deny\n }\n {\n caption fallback\n next-item /Common/radiusServer_end_deny\n }\n }\n}\napm policy policy-item /Common/radiusServer_end_allow {\n agents {\n /Common/radiusServer_end_allow_ag {\n type ending-allow\n }\n }\n caption Allow\n color 1\n item-type ending\n}\napm policy policy-item /Common/radiusServer_end_deny {\n agents {\n /Common/radiusServer_end_deny_ag {\n type ending-deny\n }\n }\n caption Deny\n color 2\n item-type ending\n}\napm policy policy-item /Common/radiusServer_ent {\n caption Start\n color 1\n rules {\n {\n caption fallback\n next-item /Common/radiusServer_act_radius_auth\n }\n }\n}\napm policy policy-item /Common/sslvpn_network_access_act_full_resource_assign {\n agents {\n /Common/sslvpn_network_access_act_full_resource_assign_ag {\n type resource-assign\n }\n }\n caption \"Advanced Resource Assign\"\n color 1\n item-type action\n rules {\n {\n caption fallback\n next-item /Common/sslvpn_network_access_end_allow\n }\n }\n}\napm policy policy-item /Common/sslvpn_network_access_act_localdb_auth {\n agents {\n /Common/sslvpn_network_access_act_localdb_auth_ag {\n type aaa-localdb\n }\n }\n caption \"LocalDB Auth\"\n color 1\n item-type action\n rules {\n {\n caption Successful\n expression \"expr {[mcget {session.localdb.last.result}] == 1}\"\n next-item /Common/sslvpn_network_access_act_full_resource_assign\n }\n {\n caption \"Locked User Out\"\n expression \"expr {[mcget {session.localdb.last.result}] == 2}\"\n next-item /Common/sslvpn_network_access_end_deny\n }\n {\n caption fallback\n next-item /Common/sslvpn_network_access_end_deny\n }\n }\n}\napm policy policy-item /Common/sslvpn_network_access_act_logon_page {\n agents {\n /Common/sslvpn_network_access_act_logon_page_ag {\n type logon-page\n }\n }\n caption \"Logon Page\"\n color 1\n item-type action\n rules {\n {\n caption fallback\n next-item /Common/sslvpn_network_access_act_localdb_auth\n }\n }\n}\napm policy policy-item /Common/sslvpn_network_access_end_allow {\n agents {\n /Common/sslvpn_network_access_end_allow_ag {\n type ending-allow\n }\n }\n caption Allow\n color 1\n item-type ending\n}\napm policy policy-item /Common/sslvpn_network_access_end_deny {\n agents {\n /Common/sslvpn_network_access_end_deny_ag {\n type ending-deny\n }\n }\n caption Deny\n color 2\n item-type ending\n}\napm policy policy-item /Common/sslvpn_network_access_ent {\n caption Start\n color 1\n rules {\n {\n caption fallback\n next-item /Common/sslvpn_network_access_act_logon_page\n }\n }\n}\napm policy agent aaa-localdb /Common/sslvpn_network_access_act_localdb_auth_ag {\n localdb-instance /Common/localDB\n}\napm policy agent aaa-radius /Common/radiusServer_act_radius_auth_ag {\n max-logon-attempt 5\n show-extended-error true\n}\napm policy agent ending-allow /Common/radiusServer_end_allow_ag { }\napm policy agent ending-allow /Common/sslvpn_network_access_end_allow_ag { }\napm policy agent ending-deny /Common/radiusServer_end_deny_ag {\n customization-group /Common/radiusServer_end_deny_ag\n}\napm policy agent ending-deny /Common/sslvpn_network_access_end_deny_ag {\n customization-group /Common/sslvpn_network_access_end_deny_ag\n}\napm policy agent logon-page /Common/sslvpn_network_access_act_logon_page_ag {\n customization-group /Common/sslvpn_network_access_act_logon_page_ag\n}\napm policy agent resource-assign /Common/sslvpn_network_access_act_full_resource_assign_ag {\n rules {\n {\n network-access-resources { /Common/sslvpn_access_list }\n webtop /Common/ssl_webtop\n }\n }\n}\napm profile access /Common/radiusServer {\n accept-languages { en }\n access-policy /Common/radiusServer\n app-service none\n customization-group /Common/radiusServer_logout\n customization-key c649c57de3b753f9764ae640df53f6cb\n default-language en\n domain-cookie none\n eps-group /Common/radiusServer_eps\n errormap-group /Common/radiusServer_errormap\n exchange-profile none\n framework-installation-group /Common/radiusServer_frameworkinstallation\n general-ui-group /Common/radiusServer_general_ui\n generation 1\n generation-action noop\n httponly-cookie false\n log-settings {\n /Common/default-log-setting\n }\n logout-uri-include none\n logout-uri-timeout 5\n modified-since-last-policy-sync true\n oauth-profile none\n persistent-cookie false\n scope profile\n secure-cookie true\n sso-name none\n type all\n user-identity-method http\n}\napm profile access /Common/sslvpn_network_access {\n accept-languages { en es fr }\n access-policy /Common/sslvpn_network_access\n app-service none\n customization-group /Common/sslvpn_network_access_logout\n customization-key c0595c63f1a549ebf25e99e683989536\n default-language en\n domain-cookie none\n eps-group /Common/sslvpn_network_access_eps\n errormap-group /Common/sslvpn_network_access_errormap\n exchange-profile none\n framework-installation-group /Common/sslvpn_network_access_frameworkinstallation\n general-ui-group /Common/sslvpn_network_access_general_ui\n generation 3\n generation-action noop\n httponly-cookie false\n log-settings {\n /Common/default-log-setting\n /Common/default-sslo-log-setting\n }\n logout-uri-include { /some/logout.html }\n logout-uri-timeout 5\n modified-since-last-policy-sync true\n named-scope none\n oauth-profile none\n persistent-cookie false\n scope profile\n secure-cookie true\n sso-name none\n type all\n user-identity-method http\n}\napm profile connectivity /Common/sslvpn_connectivity_profile {\n adaptive-compression enabled\n app-service none\n citrix-client-bundle /Common/default-citrix-client-bundle\n client-policy {\n sslvpn_connectivity_profile_clientPolicy { }\n }\n compress-buffer-size 4096\n compress-cpu-saver true\n compress-cpu-saver-high 90\n compress-cpu-saver-low 75\n compress-gzip-level 6\n compress-gzip-memlevel 8192\n compress-gzip-window-size 16384\n compress-ingress false\n compress-preferred-method zlib\n compression enabled\n compression-codecs { deflate lzo bzip2 }\n customization-group /Common/sslvpn_connectivity_profile_secure_access_client_customization\n defaults-from /Common/connectivity\n deflate-compression-level 1\n description none\n fec-name none\n location-specific false\n tunnel-name /Common/sslvpn_connectivity_profile\n}\napm report default-report {\n report-name sessionReports/sessionSummary\n user /Common/admin\n}\napm resource leasepool /Common/sslvpn_lease_pool {\n members {\n 10.10.10.10-10.10.10.20 { }\n }\n}\napm resource network-access /Common/sslvpn_access_list {\n address-space-include-dns-name { 192.168.200.7 192.168.200.8 }\n address-space-include-subnet {\n {\n subnet 10.200.0.0/16\n }\n {\n subnet 192.168.200.0/24\n }\n }\n customization-group /Common/sslvpn_access_list_resource_network_access_customization\n dns-primary 192.168.200.7\n dns-secondary 192.168.200.8\n dns-suffix benlab.io\n leasepool-name /Common/sslvpn_lease_pool\n split-tunneling true\n}\napm resource webtop /Common/ssl_webtop {\n customization-group /Common/ssl_webtop_customization\n webtop-type full\n}\nasm policy /Common/basic_policy_1 {\n active\n blocking-mode enabled\n description 'some description'\n encoding utf-8\n policy-builder enabled\n policy-template POLICY_TEMPLATE_RAPID_DEPLOYMENT\n policy-type security\n parent-policy some-.other_policy1\n}\nasm predefined-policy POLICY_TEMPLATE_ACTIVESYNC_V1_0_V2_0_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_ACTIVESYNC_V1_0_V2_0_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_API_SECURITY { }\nasm predefined-policy POLICY_TEMPLATE_BEHAVIORAL_WAF { }\nasm predefined-policy POLICY_TEMPLATE_COMPREHENSIVE { }\nasm predefined-policy POLICY_TEMPLATE_DRUPAL { }\nasm predefined-policy POLICY_TEMPLATE_DRUPAL_8 { }\nasm predefined-policy POLICY_TEMPLATE_FUNDAMENTAL { }\nasm predefined-policy POLICY_TEMPLATE_JOOMLA { }\nasm predefined-policy POLICY_TEMPLATE_LOTUSDOMINO_6_5_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_LOTUSDOMINO_6_5_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_ORACLE_10G_PORTAL_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_ORACLE_10G_PORTAL_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_ORACLE_APPLICATIONS_11I_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_ORACLE_APPLICATIONS_11I_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2003_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2003_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2003_WITH_ACTIVESYNC_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2003_WITH_ACTIVESYNC_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2007_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2007_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2007_WITH_ACTIVESYNC_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2007_WITH_ACTIVESYNC_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2010_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2010_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2016 { }\nasm predefined-policy POLICY_TEMPLATE_PASSIVE { }\nasm predefined-policy POLICY_TEMPLATE_PEOPLESOFT_PORTAL_9_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_PEOPLESOFT_PORTAL_9_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_RAPID_DEPLOYMENT { }\nasm predefined-policy POLICY_TEMPLATE_SAP_NETWEAVER { }\nasm predefined-policy POLICY_TEMPLATE_SAP_NETWEAVER_7_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_SAP_NETWEAVER_7_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_SHAREPOINT { }\nasm predefined-policy POLICY_TEMPLATE_SHAREPOINT_2003_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_SHAREPOINT_2003_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_SHAREPOINT_2007_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_SHAREPOINT_2007_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_SHAREPOINT_2010_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_SHAREPOINT_2010_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_SHAREPOINT_2016 { }\nasm predefined-policy POLICY_TEMPLATE_VULNERABILITY_ASSESSMENT { }\nasm predefined-policy POLICY_TEMPLATE_WORDPRESS { }\nasm predefined-policy POLICY_TEMPLATE_WORDPRESS_4_9 { }\nauth apm-auth /Common/system-auth {\n profile-access /Common/adminAuth_local_aPolicy\n}\nauth radius /Common/system-auth {\n servers {\n /Common/system_auth_name1\n }\n}\nauth radius-server /Common/system_auth_name1 {\n secret $M$mn$9uYx+bTjLD8YSGZAUEfFwHvpSDwZsL25kZxdn5NZmCI=\n server 10.200.244.1\n}\nauth remote-user {\n default-role admin\n remote-console-access tmsh\n}\nauth source {\n fallback true\n}\nilx global-settings {\n debug-port-blacklist { 47019 54321 60000 }\n}\nltm default-node-monitor {\n rule none\n}\nltm node /Common/10.200.244.15 {\n address 10.200.244.15\n description bigiq01\n}\nltm node /Common/10.10.10.1 {\n address 10.10.10.1\n}\nltm node /Common/192.168.200.42 {\n address 192.168.200.42\n}\nltm node /Common/api.chucknorris.io {\n fqdn {\n address-family all\n autopopulate enabled\n name api.chucknorris.io\n }\n}\nltm node /Common/app1_Node1 {\n address 192.168.1.22\n}\nltm node /Common/app1_Node2 {\n address 192.168.1.23\n}\nltm node /Common/app2_Node1 {\n address 192.168.2.22\n description app2_Node1\n}\nltm node /Common/app2_Node2 {\n address 192.168.2.23\n description app2_Node2\n}\nltm node /Common/app3_Node1 {\n address 192.168.1.52\n}\nltm node /Common/app3_Node2 {\n address 192.168.1.53\n}\nltm node /Common/app5_Node5 {\n address 192.168.10.23\n}\nltm policy /Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs {\n controls { asm }\n requires { http }\n rules {\n default {\n actions {\n 1 {\n asm\n enable\n policy /Common/basic_policy_1\n }\n }\n ordinal 1\n }\n }\n strategy /Common/first-match\n}\nltm policy /Common/app3_ltm_policy {\n rules {\n global_rule_1 { }\n }\n strategy /Common/first-match\n}\nltm policy /Common/app4_ltPolicy {\n controls { forwarding }\n description \"testing for pool extraction function\"\n requires { http }\n rules {\n css_pool_rule {\n actions {\n 0 {\n forward\n select\n pool /Common/css_pool\n }\n }\n conditions {\n 0 {\n http-uri\n scheme\n ends-with\n values { .css }\n }\n }\n }\n jpg_pool_rule {\n actions {\n 0 {\n forward\n select\n pool /Common/jpg.pool\n }\n }\n conditions {\n 0 {\n http-uri\n query-string\n ends-with\n values { .jpg }\n }\n }\n ordinal 1\n }\n js_pool_rule {\n actions {\n 0 {\n forward\n select\n pool /Common/js.io_t80_pool\n }\n }\n conditions {\n 0 {\n http-uri\n scheme\n ends-with\n values { .js }\n }\n }\n ordinal 2\n }\n txt_node {\n actions {\n 0 {\n forward\n select\n node 10.10.10.1\n }\n }\n conditions {\n 0 {\n http-uri\n scheme\n ends-with\n values { .txt }\n }\n }\n ordinal 3\n }\n }\n strategy /Common/first-match\n}\nltm pool /Common/bigiq.benlab.io_t443_pool {\n members {\n /Common/10.200.244.15:443 {\n address 10.200.244.15\n }\n }\n monitor /Common/https_head_f5\n}\nltm pool /Common/app1_t80_pool {\n members {\n /Common/app1_Node1:80 {\n address 192.168.1.22\n }\n /Common/app1_Node2:80 {\n address 192.168.1.23\n }\n }\n monitor /Common/http and /Common/tcp\n}\nltm pool /Common/app2_t80_pool {\n load-balancing-mode least-connections-member\n members {\n /Common/app2_Node1:80 {\n address 192.168.2.22\n }\n /Common/app2_Node2:80 {\n address 192.168.2.23\n }\n }\n monitor /Common/global_http_monitor and /Common/global_https_monitor\n}\nltm pool /Common/app3_t8443_pool {\n load-balancing-mode least-connections-member\n members {\n /Common/app3_Node1:8443 {\n address 192.168.1.52\n }\n /Common/app3_Node2:8443 {\n address 192.168.1.53\n }\n }\n monitor /Common/app1_tcp_half_open_quick_monitor and /Common/http_head_f5 and /Common/http2_head_f5 and /Common/http and /Common/tcp_half_open\n}\nltm pool /Common/manyOptions_pool {\n allow-nat no\n allow-snat no\n description \"yabba dappa doo!\"\n ignore-persisted-weight enabled\n ip-tos-to-client mimic\n ip-tos-to-server mimic\n link-qos-to-client 5\n link-qos-to-server 6\n load-balancing-mode observed-member\n members {\n /Common/10.3.110.10:80 {\n address 10.3.110.10\n }\n /Common/10.3.110.10:443 {\n address 10.3.110.10\n }\n /Common/10.3.110.10:8443 {\n address 10.3.110.10\n }\n /Common/dw1.lab.io:8443 {\n fqdn {\n autopopulate enabled\n name dude1.where.io\n }\n }\n /Common/dw2.lab.io:443 {\n description asfd\n monitor /Common/http\n fqdn {\n name dude2.where.io\n }\n }\n }\n monitor min 2 of { /Common/gateway_icmp /Common/http /Common/http2 }\n profiles {\n /Common/nvgre\n }\n queue-depth-limit 66\n queue-time-limit 88\n reselect-tries 7\n service-down-action reset\n slow-ramp-time 300\n}\nltm pool /Common/app4_pool {\n members {\n /Common/api.chucknorris.io:443 {\n fqdn {\n autopopulate enabled\n name api.chucknorris.io\n }\n }\n }\n}\nltm pool /Common/css_pool { }\nltm pool /Common/jpg.pool { }\nltm pool /Common/js.io_t80_pool { }\nltm rule /Common/app3_rule {\n#comment\n\nwhen HTTP_REQUEST {\n # add more here\n}\n}\nltm rule /Common/app3_rule2 {\n#comment\n\nwhen HTTP_REQUEST {\n # ben test 444\n}\n}\nltm rule /Common/app3_rule3 {\n# app3_rule3 header\n\nwhen SERVERSSL_DATA {\n # got something from server\n}\n}\nltm rule /Common/app4_pool_rule {\n### test rule for corkscrew\n\n # \n\nwhen HTTP_REQUEST {\n\n # pool reference by variable declaration\n set html-pool web1Pool\n\n if { [HTTP::path] ends_with \"*.css\" }{\n\n # regular pool refernce\n pool css_pool\n\n } elseif { [HTTP::path] ends_with \"*.jpg\" }{\n\n # pool member refernce\n pool jpg.pool member 10.10.10.1 80\n\n } elseif { [HTTP::path] ends_with \"*.js\" }{\n\n # another pool reference with special characters\n pool js.io_t80_pool \n\n } elseif { [HTTP::path] ends_with \"*.xx\" }{\n\n # pool reference not in tmos config\n ### *** seems the gui won't let you attach an irule to a vs with a pool that doesn't exist\n #pool missing_pool\n\n } elseif { [HTTP::path] ends_with \"*.txt\" }{\n\n # node reference\n node 10.10.10.1 80\n\n } else {\n\n # pool referenced by variable\n pool $html-pool\n\n }\n}\n}\nltm rule /Common/app4_pool_rule2 {\n\n}\nltm snat-translation /Common/192.168.1.51 {\n address 192.168.1.51\n inherited-traffic-group true\n traffic-group /Common/traffic-group-1\n}\nltm snatpool /Common/app3_snat_pool {\n members {\n /Common/192.168.1.51\n }\n}\nltm snatpool /Common/testSnat1_pool {\n members {\n /Common/1.1.1.1\n /Common/1.1.1.2\n /Common/1.1.1.3\n /Common/1.1.1.4\n }\n}\nltm virtual /Common/app1_t80_vs {\n creation-time 2020-09-17:08:50:22\n destination /Common/192.168.1.21:80\n ip-protocol tcp\n last-modified-time 2020-09-17:08:51:07\n mask 255.255.255.255\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/_sys_https_redirect\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address enabled\n translate-port enabled\n}\nltm virtual /Common/app1_t443_vs {\n destination /Common/192.168.1.21:443\n ip-protocol tcp\n last-modified-time 2020-09-18:10:05:54\n mask 255.255.255.255\n pool /Common/app1_t80_pool\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n}\nltm virtual /Common/app2_t80_vs {\n creation-time 2020-09-17:08:50:22\n destination /Common/192.168.2.21:80\n ip-protocol tcp\n last-modified-time 2020-09-17:08:51:07\n mask 255.255.255.255\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/_sys_https_redirect\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address enabled\n translate-port enabled\n}\nltm virtual /Common/bigiq.benlab.io_t443_vs {\n creation-time 2019-10-01:17:59:21\n description \"not flowing traffic, just used for GTM\"\n destination /Common/10.200.244.15:443\n ip-protocol tcp\n last-modified-time 2019-10-01:18:11:46\n mask 255.255.255.255\n policies {\n /Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs { }\n }\n pool /Common/bigiq.benlab.io_t443_pool\n profiles {\n /Common/ASM_basic_policy_1 { }\n /Common/f5-tcp-progressive { }\n /Common/http { }\n /Common/websecurity { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n vlans {\n /Common/vlan255_f5peer\n /Common/vlan245\n /Common/vlan230\n }\n vlans-enabled\n}\nltm virtual /Common/app2_t443_vs {\n destination /Common/192.168.2.21:443\n ip-protocol tcp\n last-modified-time 2020-09-18:10:05:47\n mask 255.255.255.255\n pool /Common/app2_t80_pool\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n}\nltm virtual /Common/persistTest_80_vs {\n creation-time 2023-05-09:11:25:01\n description \"vs to explore persist configs - both default/fallback are single entries\"\n destination /Common/10.6.3.4:80\n fallback-persistence /Common/source_addr\n ip-protocol tcp\n last-modified-time 2023-05-09:11:25:01\n mask 255.255.255.255\n persist {\n /Common/cookie {\n default yes\n }\n }\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address enabled\n translate-port enabled\n}\nltm virtual /Common/app3_t8443_vs {\n destination /Common/192.168.1.51:8443\n fallback-persistence /Common/app3_srcAddr_persist\n ip-protocol tcp\n last-modified-time 2020-09-17:12:45:40\n mask 255.255.255.255\n persist {\n /Common/app3_cookie {\n default yes\n }\n }\n policies {\n /Common/app3_ltm_policy { }\n }\n pool /Common/app3_t8443_pool\n profiles {\n /Common/app3_clientssl {\n context clientside\n }\n /Common/app3_serverssl {\n context serverside\n }\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/app3_rule\n /Common/app3_rule2\n /Common/app3_rule3\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n pool /Common/app3_snat_pool\n type snat\n }\n translate-address enabled\n translate-port enabled\n}\nltm virtual /Common/app4_t80_vs {\n description \"test pool references in irule extration and ltp\"\n destination /Common/192.168.2.25:80\n ip-protocol tcp\n last-modified-time 2020-10-07:07:28:35\n mask 255.255.255.255\n policies {\n /Common/app4_ltPolicy { }\n }\n pool /Common/app4_pool\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/_sys_https_redirect\n /Common/app4_pool_rule\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address enabled\n translate-port enabled\n}\nltm virtual /Common/forwarder_net_0.0.0.0 {\n destination /Common/0.0.0.0:0\n ip-forward\n mask any\n profiles {\n /Common/fastl4_loose { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address disabled\n translate-port disabled\n}\nltm virtual-address /Common/0.0.0.0 {\n address any\n arp disabled\n icmp-echo disabled\n mask any\n traffic-group /Common/traffic-group-1\n}\nltm virtual-address /Common/192.168.1.21 {\n address 192.168.1.21\n arp enabled\n mask 255.255.255.255\n traffic-group /Common/traffic-group-1\n}\nltm virtual-address /Common/192.168.1.51 {\n address 192.168.1.51\n arp enabled\n mask 255.255.255.255\n traffic-group /Common/traffic-group-1\n}\nltm virtual-address /Common/192.168.2.21 {\n address 192.168.2.21\n arp enabled\n mask 255.255.255.255\n traffic-group /Common/traffic-group-1\n}\nltm virtual-address /Common/192.168.2.25 {\n address 192.168.2.25\n arp enabled\n mask 255.255.255.255\n traffic-group /Common/traffic-group-1\n}\nltm auth radius-server /Common/system_auth_name1 {\n secret $M$mn$9uYx+bTjLD8YSGZAUEfFwHvpSDwZsL25kZxdn5NZmCI=\n server 10.200.244.1\n}\nltm classification auto-update settings {\n auto-update-interval weekly\n enabled no\n}\nltm data-group internal /Common/____appsvcs_declaration-1601897418975 {\n description \"f5 AS3 declaration (see info in record 0)\"\n records {\n 0 {\n data \"date^2020-10-05T11:30:18.975Z|id^1601897415002|tenants^|blocks^1\"\n }\n 1 {\n data eNoNzL0OwyAMBOB38dwgm5TmZ6vatVvUoRsCS0GCEAHtEuXd6/G+O90BLtpaYYb78wEXqG7lZN9casibaK9QoXjwEuiGNE7DlQyiFvzu3jZ+Zc9SVo7sWvixFC5vreQotwfY4lbRJSSuzaZdpho1doQdmoVo7nGmUU2D+cB5/gEMbipT\n }\n }\n type integer\n}\nltm data-group internal /Common/____appsvcs_declaration-1601900242421 {\n description \"f5 AS3 declaration (see info in record 0)\"\n records {\n 0 {\n data \"date^2020-10-05T12:17:22.421Z|id^autogen_6c3dbac3-4624-47e2-8ed7-3932d3c1d9b2|tenants^foo|blocks^1\"\n }\n 1 {\n data eNp1kM1uwjAQhN/F5ySynQAlN1SuSEilPbRCkbEXsOQ/2Q4XlHfvmlYUVa2PM+Odb/dKpBEpkZ6s1s+kIkmewYo3iEl7h2rbcNpQNI7ek/56T+/ACZdRV3AUo8npdb0dZvgeQ6sQjJYil1EVyWCDERnQGFUoXRAvWsJGaPf46+VLHnAihi465lGYlVIRUgIMfBC25M2MNrxhZH9PbH3MpC8IFQneG5z0m23Yos7IVP3nPFAUAeutdzr7eKvV0oZSaMEe4CZdbztA/JuOl/D3kj90036akEArLBFj9idww1y26iBkW3dz3tXdAnj9BGpRt8uWq1YytTxwhBmDwvttvCo3TGBAZn0BNKR3OXqTygIiyjOqO20hZYHEPeGU05rRms52jPds0XPedJy9k2n6BPXOoeQ=\n }\n }\n type integer\n}\nltm data-group internal /Common/____appsvcs_declaration-1601900272772 {\n description \"f5 AS3 declaration (see info in record 0)\"\n records {\n 0 {\n data \"date^2020-10-05T12:17:52.772Z|id^1601900269131|tenants^|blocks^1\"\n }\n 1 {\n data eNoNzDELwyAQBeD/cnMjd4ZE4lbatVvo0E30IILGoLZLyH/vje97j3eCT641sHB/PuAGzW+c3Ztri2UXHRUqFI9BAs1IC6KeFxpJ8HsE1/lVAkvZOLHv8cdS+LL3WpLcnuCq30TXmLl1lw+ZatQ4EA44raQtGTtpZYz+wHX9AQqTKk0=\n }\n }\n type integer\n}\nltm data-group internal /Common/____appsvcs_declaration-1602008840967 {\n description \"f5 AS3 declaration (see info in record 0)\"\n records {\n 0 {\n data \"date^2020-10-06T18:27:20.967Z|id^autogen_411122fd-f96d-45e5-9f42-5231b42fb590|tenants^foo|blocks^1\"\n }\n 1 {\n data eNp1UctuwjAQ/Befkyg2CTS5oXJFQirtoRWKjL0BS37Jdrig/HvXtKKoan2cGe/M7F6J0DxG0pP15pkUJIozGP4GISpnEV1UrK5qJEbnSH+9q/dguU2ISxj5pFN83eyGFt+jaO29VoKnPKogCYzXPAESk/TZC8JFCdhyZR9/vXzBA05E0UWFNHG9ljJAjICCD0I7VrV1xSpKDnfFzoVE+hyhIN45jZN+Zxt2iFMyF/8xDykygPbGWZVcuNkqYXw2NGCOcIOutw4Q/k7Hsvi75E+6+TDPmEBJNOFTciewQ0MpZWyU5dgtZdm00Jbd2LCyZQt6bNh4bLt8g8lL3N/WybzDCBpEUhdAQjibgtMxF+BBnBHdKwMxcUzcE1azuqR1WS/39Klnqx5v2i1X72SePwG436Fo\n }\n }\n type integer\n}\nltm data-group internal /Common/__appsvcs_update {\n type string\n}\nltm data-group internal /Common/appsvcs/dataStore {\n records {\n as3_async_records0 {\n data eNrtWllv20gS/iuGntNK34fevM5iZjDJwnC8+zDjwOgzJkKRAkUlawT+71tNUkcUcZGZcXY1A/pBMNnd1XV89VV1S7NfP9/NKruMd7PF3YxQH7iOEYXkPeIkJmQ4pggTFxTFKWBr72Yv7mZtsYzr1i5XsIxITIlhCgumFYzB+3az7uT5erkqYxu7NU1cb8o2D3w+mEQx7sdWdbWO/aAv7boXcPnqqlu79g9xaf8Vm3VRV90Im1M8x91gquvjdbexslXbjYaYbN73n6+u7wX8fbXFalUW3rad4GxaBJ1t2ztkE1b9/rH5WPj4xhbV8fq3/dA9yO+mfiyadmPLyxDAqHXMk34Fzxo6F3hO5+Ru9m4/67puQMtF1gteruq67GQe63x/DSOw8unF+NiXWl13omD6sq6Ktm4GNQqfQ5YVWMali/3rz719sRnTmfZLBicc6Pz07ukp61SEblO7aev3sbrnhBBKU0DJyIC4iAKZxCkSlBHHaXLC9JHbrAJ4+k0dem+vYxl9W3zs8eLrqm3qcgCMbfwDjNweAO9uRjHFiGCE5S3RC6oATXMj1S/gqazYIbSTEjYRzZH1FiOutUTGM4x8IsaE5DzG8iS0sWJS5Y8J2hO0zxLaoA9mnDgUgwWdkuRIe2kRw9QFTbzycQzaRFOphJmgPUH7LKEtovTUW4qsFgRxRQKyJiWETSCCOquToWPQlpJwOTUkE7TPE9pOG4+ZFkiHZBHn1iCLhUOOBCqZU9IRdhraWGuuDZmgPUH7PKHtjfYpMYkcZxyOkVQAqkFF65yHfiM55uM4tLkQeIL2BO3z7LWNNcREi5yM0JBoR5EzXiDlHA82acW9G4U201Q/T6+9n5nd7nvL+4mw7dq+Hzyx8T7mUML7sqjiVb3JcF5QDi8e6nXbzSprb8v+qQNuj/nFkBF5702VHZYtgfx8etfBB0DSDHCfkm1KtmdKti+zLTKXKA0MsUQ8tP8YI8M0Q0qLJFLgkFRiLNuUoYb8nkLCv8q2w5Sq6osD7K8vEqRUGGwfspB/ZQZnkUmLkVYKzDAiIk2VhMeEccQi0KhPmUGM0QwTSthZmEFNYIl5hngCAuQqyXzPIFHEyXiHg6GenDYDY6o0NucRDQ6KMgF4EklBdxIixIVEh6TmworAE4lq1AxpsGBnQeH0d1I4NQL/EQrfMvjAH3vHEEaelyDELaELohaCzpWiJwkiYWk4cRr5mK++pKTIkoDzcQoLQrhmxo3Hkgk53epOxa+6l54FZzOzSQqUoCJFOgaFmGFQfTwJxtHvg21K55ySU52m5F47RgJSONMUhlpsuNFIBGhAA8FKqXG2BTuUnqA9Qfssoc0iB0WiQVEDYXNo1JBzwiOH4TXHlAoiRqHNjBHyz32IUoRMh6gp2b5bsh1dNEdNZXAcuXyog5aIIOOMQV5TYgnk3chtHNFGccqpkWfRtic4cAQjPSIugm8jw9DqEYZohD5esBhA11EzCBy69FmQBvsm0nhrs3L3mBxRB2OYP3Pz3rlHALE+OzDJguEF0XOjxElgWssjt4miGIiDiMLZWHNjEeikLPFcR+1HI4ol/p/+2ujIc5umWmw2RegiIihYzCwcQ7hkErKLWuSNDpRaZ4jokV1aF8uD4F4MsYWdmg/9+6J7/+Pt7fWF3ZPzxaeifbi4ublYbantAB2j7H9JfhPfP7TtNxN+VvC/MT64ak7mBPfkueP2lzu1X16Sl5+iu98Z9GVR0DlGq+z9NaQE6BLbhzoM0n1dfyjiILqpU1HGXp/MdHZd+EOBt4+rAcetrYJttpF4jA3v3re+t3qQdHt1PfBTs7TloT9e1Z+qn5bLGArw2KVvt8Co6qrH2/rBNvHQE8mW6wgDEBJXZi3aZpOfl/bfV3VVxU5GntjdilS23VWSTp7tRb3dIne7umiauimq91/uDjFqf6xXhzW0j3Fjq3UO8lVZxKodHLxVbTf69rAK7jc7Gh9WD4OgseR/74wLW5m5JO4D+02FuQfe6cK8r7kdJEZr9RZuLw4eh3bj2Pt+5/rXxbJoB/cDkcbtMyKZXh+BpQp/k7Mlk04/Z/f/qikgCO3jD029WQ0ybFgWVQ7XcOc3bLwP5ati7Wsw4HGLyHYAawedfwDl7mDTUXxZ2/A3W9rKQ7h3jNzkUoma2hV9FsOmxXKzfNM773Ig617j2NP3bVPEHdD2cD6J4rL+dANpuu1U8cEO+7CRp2PPPp1w9YDDm3rTwn7LnlCywHoFhA65XfjXtf/wc+wd0jd5z1t/qFkIOaec/dKv34Hxaiepc/T71/HjQM4x59c2d3JjdJgtPt7sS0cfqeOihr0ISYqEdPeLlUTyN/opIq8UowKaQCXdWFGDo42RfCpqf6Kitme7M+O+7Qnl+yXUV9DXjBtlAkPB6Yi4h87OJmuRCIqKZEzQIzdWHfSZ7K60//8duvhDHTrR/Dk79Cklp5T8bSl59NVjyHdtkI7YEYANpgIKkw6QolgYknBSeDQnieFEkrM4/APIjdHUowSfiDsukUsuII+dipg5G2MaNUNzIelf4fAvDH3+wz+4R1LxHQ7/VC6onmt2+qt9z5MNTjhEvQqIh0CQBkyihAM1xsmQ7Ojhn1AsxNQnTaR8jqRM8s9ahFhQPqdiS8rvZv8Bs5/C1w==\n }\n }\n type string\n}\nltm data-group internal /Common/atgTeem/datastore {\n type string\n}\nltm data-group internal /Common/f5-appsvcs-templates/config {\n records {\n config0 {\n data eNqrVkpJzUktSU0JSc0tyEksSQ1OLSlWsopWKkktLlGKrQUAx+YL5Q==\n }\n }\n type string\n}\nltm data-group internal /Common/f5-appsvcs-templates/dataStore {\n records {\n bigip-fast-templates0 {\n data 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\n }\n examples0 {\n data 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\n }\n goodFastTemplates0 {\n data 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\n }\n }\n type string\n}\nltm monitor dns /Common/dubNameTst1_monitor {\n accept-rcode no-error\n adaptive disabled\n answer-contains query-type\n defaults-from /Common/dns\n interval 5\n qname query.test.com\n qtype a\n recv none\n time-until-up 0\n timeout 16\n}\nltm monitor http /Common/global_http_monitor {\n adaptive disabled\n defaults-from /Common/http\n interval 5\n ip-dscp 0\n recv \"ok 200\"\n recv-disable none\n send \"GET /anywebsite.com\\r\\n\"\n time-until-up 0\n timeout 16\n}\nltm monitor https /Common/global_https_monitor {\n adaptive disabled\n defaults-from /Common/https\n interval 5\n ip-dscp 0\n recv \"201 continue\"\n recv-disable none\n send \"GET /any-secure-website.com\\r\\n\"\n time-until-up 0\n timeout 16\n}\nltm monitor tcp /Common/test_tcp_monitor {\n adaptive disabled\n defaults-from /Common/tcp\n interval 5\n ip-dscp 0\n recv \"receive a tcp string\"\n recv-disable none\n send \"send a tcp string\"\n time-until-up 0\n timeout 16\n}\nltm monitor tcp-half-open /Common/app1_tcp_half_open_quick_monitor {\n defaults-from /Common/tcp_half_open\n destination *:*\n interval 1\n time-until-up 0\n timeout 4\n}\nltm monitor udp /Common/test_udp_monitor {\n adaptive disabled\n debug no\n defaults-from /Common/udp\n interval 5\n recv recieve-what?\n recv-disable none\n send \"default send string\"\n time-until-up 0\n timeout 16\n}\nltm persistence cookie /Common/app3_cookie {\n always-send disabled\n app-service none\n cookie-encryption disabled\n cookie-name app3CustomeCookie\n defaults-from /Common/cookie\n encrypt-cookie-poolname disabled\n expiration 0\n httponly enabled\n method insert\n override-connection-limit disabled\n secure enabled\n}\nltm persistence source-addr /Common/app3_srcAddr_persist {\n app-service none\n defaults-from /Common/source_addr\n hash-algorithm default\n map-proxies enabled\n mask none\n match-across-pools disabled\n match-across-services disabled\n match-across-virtuals disabled\n override-connection-limit disabled\n timeout 180\n}\nltm profile client-ssl /Common/app2_clientssl {\n app-service none\n cert-key-chain {\n default {\n cert /Common/default.crt\n key /Common/default.key\n }\n }\n defaults-from /Common/clientssl\n inherit-ca-certkeychain true\n inherit-certkeychain true\n}\nltm profile client-ssl /Common/app3_clientssl {\n app-service none\n cert-key-chain {\n default {\n cert /Common/default.crt\n key /Common/default.key\n }\n }\n defaults-from /Common/clientssl\n inherit-ca-certkeychain true\n inherit-certkeychain true\n}\nltm profile client-ssl /Common/test1 {\n app-service none\n cert-key-chain {\n default {\n cert /Common/default.crt\n key /Common/default.key\n }\n }\n defaults-from /Common/clientssl\n inherit-ca-certkeychain true\n inherit-certkeychain true\n}\nltm profile fastl4 /Common/fastl4_loose {\n app-service none\n loose-close enabled\n loose-initialization enabled\n reset-on-timeout disabled\n syn-cookie-enable disabled\n}\nltm profile ftp /Common/global_http_monitor {\n app-service none\n defaults-from /Common/ftp\n}\nltm profile http /Common/dubNameTst1_profile {\n app-service none\n defaults-from /Common/http\n proxy-type reverse\n}\nltm profile http-compression /Common/dubName.Tst1_profile {\n app-service none\n defaults-from /Common/httpcompression\n}\nltm profile server-ssl /Common/app3_serverssl {\n app-service none\n defaults-from /Common/serverssl\n}\nltm profile server-ssl /Common/test2 {\n app-service none\n defaults-from /Common/serverssl\n}\nnet dns-resolver /Common/f5-aws-dns {\n forward-zones {\n amazonaws.com {\n nameservers {\n 8.8.8.8:53 { }\n }\n }\n idservice.net {\n nameservers {\n 8.8.8.8:53 { }\n }\n }\n }\n route-domain /Common/0\n}\nnet ipsec ike-daemon /Common/ikedaemon {\n log-publisher /Common/default-ipsec-log-publisher\n}\npem global-settings analytics { }\npem global-settings gx { }\npem global-settings policy { }\nsecurity dos profile /Common/app50_dos {\n app-service none\n application {\n app50_dos {\n bot-defense {\n browser-legit-captcha disabled\n browser-legit-enabled disabled\n }\n captcha-response {\n failure {\n body \"You have entered an invalid answer for the question. Please, try again.\n
\n%DOSL7.captcha.image% %DOSL7.captcha.audio% %DOSL7.captcha.change%\n
\nWhat code is in the image\\?\n%DOSL7.captcha.solution%\n
\n%DOSL7.captcha.submit%\n
\n
\nYour support ID is: %DOSL7.captcha.support_id%.\"\n }\n first {\n body \"This question is for testing whether you are a human visitor and to prevent automated spam submission.\n
\n%DOSL7.captcha.image% %DOSL7.captcha.audio% %DOSL7.captcha.change%\n
\nWhat code is in the image\\?\n%DOSL7.captcha.solution%\n
\n%DOSL7.captcha.submit%\n
\n
\nYour support ID is: %DOSL7.captcha.support_id%.\"\n }\n }\n heavy-urls {\n automatic-detection disabled\n protection disabled\n }\n mobile-detection {\n allow-any-android-package false\n allow-any-ios-package false\n }\n stress-based {\n behavioral {\n mitigation-mode none\n }\n ip-rate-limiting disabled\n url-enable-heavy disabled\n url-rate-limiting disabled\n }\n tps-based {\n ip-rate-limiting disabled\n mode off\n url-enable-heavy disabled\n url-rate-limiting disabled\n }\n }\n }\n creation-time 2023-05-09:06:11:09\n creation-user admin\n description \"app #50 sample dos profile\"\n dos-network {\n app50_dos { }\n }\n http-whitelist none\n last-modified-time 2023-05-09:06:11:10\n modify-user admin\n protocol-dns {\n app50_dos { }\n }\n protocol-sip {\n app50_dos { }\n }\n threshold-sensitivity high\n}\nsecurity bot-defense profile /Common/app51_bot {\n allow-browser-access enabled\n api-access-strict-mitigation enabled\n app-service none\n blocking-page {\n body \"Request RejectedThe requested URL was rejected. Please consult with your administrator.

Your support ID is: <%BOTDEFENSE.support_id%>

[Go Back]\"\n headers \"Cache-Control: no-store, must-revalidate, no-cache\nPragma: no-cache\nConnection: close\"\n status-code 200\n type default\n }\n browser-mitigation-action block\n captcha-response {\n failure {\n body \"You have entered an invalid answer for the question. Please, try again.\n
\n%BOTDEFENSE.captcha.image% %BOTDEFENSE.captcha.audio% %BOTDEFENSE.captcha.change%\n
\nWhat code is in the image\\?\n%BOTDEFENSE.captcha.solution%\n
\n%BOTDEFENSE.captcha.submit%\n
\n
\nYour support ID is: %BOTDEFENSE.captcha.support_id%.\"\n type default\n }\n first {\n body \"This question is for testing whether you are a human visitor and to prevent automated spam submission.\n
\n%BOTDEFENSE.captcha.image% %BOTDEFENSE.captcha.audio% %BOTDEFENSE.captcha.change%\n
\nWhat code is in the image\\?\n%BOTDEFENSE.captcha.solution%\n
\n%BOTDEFENSE.captcha.submit%\n
\n
\nYour support ID is: %BOTDEFENSE.captcha.support_id%.\"\n type default\n }\n }\n cross-domain-requests allow-all\n description \"some example bot profile\"\n deviceid-mode generate-before-access\n dos-attack-strict-mitigation enabled\n enforcement-mode blocking\n enforcement-readiness-period 9\n grace-period 300\n honeypot-page {\n body \n headers \"Cache-Control: no-store, must-revalidate, no-cache\nPragma: no-cache\nConnection: close\"\n status-code 200\n type default\n }\n mobile-detection {\n allow-android-rooted-device disabled\n allow-any-android-package enabled\n allow-any-ios-package enabled\n allow-emulators disabled\n allow-jailbroken-devices disabled\n block-debugger-enabled-device enabled\n client-side-challenge-mode pass\n }\n perform-challenge-in-transparent disabled\n redirect-to-pool-name /Common/allOptionsPool\n signature-staging-upon-update enabled\n single-page-application disabled\n template strict\n whitelist {\n apple_touch_1 {\n match-order 2\n url /apple-touch-icon*.png\n }\n favicon_1 {\n match-order 1\n url /favicon.ico\n }\n }\n}\nsecurity dos ipv6-ext-hdr /Common/dos-ipv6-ext-hdr {\n frame-types { auth dstopt esp frag hbh mobility route }\n}\nsecurity dos udp-portlist /Common/dos-udp-portlist {\n list-type exclude-listed-ports\n}\nsecurity firewall config-change-log {\n log-publisher /Common/local-db-publisher\n}\nsecurity protocol-inspection compliance-map /Common/map_10426 {\n insp-id 10426\n key-type int\n value-type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/allowed_list {\n insp-id 10229\n type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/allowed_list {\n insp-id 10430\n type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/allowed_list {\n insp-id 10431\n type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/allowed_list {\n insp-id 10232\n type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/argument_len_max {\n insp-id 10905\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/command_argument_len_max {\n insp-id 10609\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/command_len_max {\n insp-id 10905\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/command_len_max {\n insp-id 10707\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/command_len_max {\n insp-id 10609\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/command_parameter_len_max {\n insp-id 10707\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/disallowed_list {\n insp-id 10229\n type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/disallowed_list {\n insp-id 10430\n type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/disallowed_list {\n insp-id 10431\n type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/disallowed_list {\n insp-id 10232\n type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/error_message_max {\n insp-id 10102\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/file_name_max {\n insp-id 10102\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/file_type_max {\n insp-id 10102\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/header_name_len_max {\n insp-id 11016\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/header_name_len_max {\n insp-id 11223\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/header_value_len_max {\n insp-id 11016\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/header_value_len_max {\n insp-id 11223\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/method_len_max {\n insp-id 11016\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/method_len_max {\n insp-id 11223\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/option_name_max {\n insp-id 10102\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/option_value_max {\n insp-id 10102\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/response_argument_len_max {\n insp-id 10609\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/response_code_len_max {\n insp-id 10609\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/response_parameter_len_max {\n insp-id 10707\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/status_code_len_max {\n insp-id 11016\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/status_code_len_max {\n insp-id 11223\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/status_len_max {\n insp-id 10707\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/status_reason_len_max {\n insp-id 11016\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/status_reason_len_max {\n insp-id 11223\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/tag_len_max {\n insp-id 10905\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/uri_len_max {\n insp-id 11016\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/uri_len_max {\n insp-id 11223\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/version_len_max {\n insp-id 11016\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/version_len_max {\n insp-id 11223\n type int\n}\nsecurity scrubber profile /Common/scrubber-profile-default {\n advertisement-ttl 300\n}\nsys compatibility-level {\n level 0\n}\nsys management-ovsdb {\n bfd-disabled\n bfd-route-domain none\n ca-cert-file none\n cert-file none\n cert-key-file none\n disabled\n flooding-type replicator\n log-level info\n logical-routing-type none\n tunnel-maintenance-mode active\n}\nsys diags ihealth {\n expiration 30\n no-ihealth false\n options none\n password none\n user none\n}\nsys ecm cloud-provider /Common/aws-ec2 {\n description \"The aws-ec2 parameters\"\n property-template {\n account { }\n availability-zone {\n valid-values { a b c d }\n }\n instance-type {\n valid-values { t2.micro t2.small t2.medium m3.medium m3.large m3.xlarge m3.2xlarge c3.large c3.xlarge c3.2xlarge c3.4xlarge c3.8xlarge r3.large r3.xlarge r3.2xlarge r3.4xlarge r3.8xlarge }\n }\n region {\n valid-values { us-east-1 us-west-1 us-west-2 sa-east-1 eu-west-1 eu-central-1 ap-southeast-2 ap-southeast-1 ap-northeast-1 }\n }\n }\n}\nsys ecm cloud-provider /Common/dnet {\n description \"The dnet parameters\"\n}\nsys ecm cloud-provider /Common/vsphere {\n description \"The vsphere parameters\"\n property-template {\n cloud-host-ip { }\n dhcp-network-name { }\n end-point-url { }\n node-name { }\n }\n}\nsys file ssl-key /Common/f5_api_com.key {\n cache-path /config/filestore/files_d/Common_d/certificate_key_d/:Common:f5_api_com.key_63136_1\n passphrase $M$dw$gJ3HaeiGt0skpPsA6hli9PsO/8yo5M6FkI1CHOPiN4GgC/h5Tln6v01SC2727mtleKP9Hw/Vnwio8eOiXi4umiV+IidOxMwtZinL8WYrqX0=\n revision 1\n source-path file:///config/ssl/ssl.key/f5_api_com.key\n}\nsys software update {\n auto-check enabled\n auto-phonehome disabled\n frequency weekly\n}\nwom endpoint-discovery { }\n" }, { "fileName": "config/partitions/foo/bigip.conf", - "size": 1504, - "content": "#TMSH-VERSION: 15.1.8.2\n\napm client-packaging /foo/client-packaging { }\napm resource sandbox /foo/citrix-client-package {\n base-uri /foo/public/citrix\n description \"Sandbox for Citrix client package files\"\n}\napm resource sandbox /foo/hosted-content {\n base-uri /foo/public/share\n description \"Sandbox for static contents\"\n}\nltm node /foo/192.50.2.2 {\n address 192.50.2.2\n}\nltm pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1 {\n members {\n /foo/192.50.2.2:5555 {\n address 192.50.2.2\n metadata {\n source {\n value declaration\n }\n }\n }\n }\n min-active-members 1\n monitor min 1 of { /Common/gateway_icmp }\n}\nltm virtual /foo/defaultsUDP_5555/serviceMain {\n creation-time 2020-10-06:13:27:20\n description defaultsUDP_5555\n destination /foo/192.50.2.1:5555\n ip-protocol udp\n last-modified-time 2020-10-06:13:27:20\n mask 255.255.255.255\n persist {\n /Common/source_addr {\n default yes\n }\n }\n pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1\n profiles {\n /Common/udp { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n}\nltm virtual-address /foo/192.50.2.1 {\n address 192.50.2.1\n arp enabled\n inherited-traffic-group true\n mask 255.255.255.255\n traffic-group /Common/traffic-group-1\n}\n" + "size": 3376, + "content": "#TMSH-VERSION: 15.1.8.2\n\napm client-packaging /foo/client-packaging { }\napm resource sandbox /foo/citrix-client-package {\n base-uri /foo/public/citrix\n description \"Sandbox for Citrix client package files\"\n}\napm resource sandbox /foo/hosted-content {\n base-uri /foo/public/share\n description \"Sandbox for static contents\"\n}\nltm node /foo/192.50.2.2 {\n address 192.50.2.2\n}\nltm pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1 {\n members {\n /foo/192.50.2.2:5555 {\n address 192.50.2.2\n metadata {\n source {\n value declaration\n }\n }\n }\n }\n min-active-members 1\n monitor min 1 of { /Common/gateway_icmp }\n}\nltm virtual /foo/defaultsUDP_5555/serviceMain {\n creation-time 2020-10-06:13:27:20\n description defaultsUDP_5555\n destination /foo/192.50.2.1:5555\n ip-protocol udp\n last-modified-time 2020-10-06:13:27:20\n mask 255.255.255.255\n persist {\n /Common/source_addr {\n default yes\n }\n }\n pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1\n profiles {\n /Common/udp { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n}\nltm virtual-address /foo/192.50.2.1 {\n address 192.50.2.1\n arp enabled\n inherited-traffic-group true\n mask 255.255.255.255\n traffic-group /Common/traffic-group-1\n}\nltm virtual /foo/t1.lab.io_80vs {\n creation-time 2023-04-29:13:02:55\n destination /foo/10.2.3.4:80\n ip-protocol tcp\n last-modified-time 2023-04-29:13:02:55\n mask 255.255.255.255\n profiles {\n /Common/tcp { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n pool /Common/testSnat1_pool\n type snat\n }\n translate-address enabled\n translate-port enabled\n}\nltm virtual-address /foo/10.2.3.4 {\n address 10.2.3.4\n arp enabled\n icmp-echo enabled\n mask 255.255.255.255\n traffic-group /Common/traffic-group-1\n}\nltm traffic-matching-criteria /foo/wiffle_redirect_trafficMatchCriteria {\n destination-address-inline 10.1.1.9\n destination-port-inline 80\n protocol tcp\n source-address-inline 0.0.0.0\n source-address-list /foo/wiffle_address_list\n}\nltm rule /foo/HTTP-redirect-to-HTTPS {\nwhen HTTP_REQUEST { HTTP::redirect https://[HTTP::host][HTTP::uri] }\n}\nltm pool /foo/app8_pool {\n monitor /Common/http\n}\nltm virtual /foo/wiffle_redirect_vs {\n creation-time 2023-02-02:13:10:03\n description \"wiffle waffle baffle\"\n ip-protocol tcp\n last-modified-time 2023-03-29:14:27:19\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /foo/HTTP-redirect-to-HTTPS\n }\n traffic-matching-criteria /foo/wiffle_redirect_trafficMatchCriteria\n translate-address enabled\n translate-port enabled\n}\nltm virtual /foo/app8_80vs {\n creation-time 2021-03-04:18:40:06\n destination /foo/1.19.8.18:80\n ip-protocol tcp\n last-modified-time 2021-03-04:18:40:06\n mask 255.255.255.255\n pool /foo/app8_pool\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n}\n" + }, + { + "fileName": "config/partitions/foo/bigip_base.conf", + "size": 246, + "content": "#TMSH-VERSION: 15.1.8.2\n\nnet address-list /foo/wiffle_address_list {\n addresses {\n 192.168.5.0/24 { }\n 192.168.6.0/24 { }\n 10.40.0.0/16 { }\n 6.6.6.6/32 { }\n }\n description \"wiffle_address_list Address List\"\n}\n" }, { "fileName": "config/partitions/hue-infra/bigip.conf", @@ -67,6 +72,9 @@ "sys dns { \n description configured-by-dhcp\n name-servers { 192.168.200.7 192.168.200.8 }\n search { benlab.io }\n }", "net dns-resolver /Common/f5-aws-dns { \n forward-zones {\n amazonaws.com {\n nameservers {\n 8.8.8.8:53 { }\n }\n }\n idservice.net {\n nameservers {\n 8.8.8.8:53 { }\n }\n }\n }\n route-domain /Common/0\n }", "net vlan /Common/internal { \n interfaces {\n 1.0 { }\n }\n tag 4094\n }", + "net vlan /Common/vlan255_f5peer { \n tag 255\n }", + "net vlan /Common/vlan245 { \n tag 245\n }", + "net vlan /Common/vlan230 { \n tag 230\n }", "analytics global-settings { }", "sys management-route /Common/default { \n description configured-statically\n gateway 10.200.244.1\n network default\n }", "auth source { \n fallback true\n }", @@ -91,178 +99,525 @@ ], "apps": [ { - "name": "/Common/app1_t80_vs", - "configs": [ - "ltm virtual /Common/app1_t80_vs {\n creation-time 2020-09-17:08:50:22\n destination /Common/192.168.1.21:80\n ip-protocol tcp\n last-modified-time 2020-09-17:08:51:07\n mask 255.255.255.255\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/_sys_https_redirect\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address enabled\n translate-port enabled\n}" + "name": "app1_t80_vs", + "partition": "Common", + "destination": "192.168.1.21:80", + "profiles": [ + "/Common/http", + "/Common/tcp" + ], + "rules": [ + "/Common/_sys_https_redirect" ], - "map": { - "vsDest": "/Common/192.168.1.21:80" - } + "creation-time": "2020-09-17:08:50:22", + "ip-protocol": "tcp", + "last-modified-time": "2020-09-17:08:51:07", + "mask": "255.255.255.255", + "serverssl-use-sni": "disabled", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled", + "lines": [ + "ltm virtual /Common/app1_t80_vs {\n creation-time 2020-09-17:08:50:22\n destination /Common/192.168.1.21:80\n ip-protocol tcp\n last-modified-time 2020-09-17:08:51:07\n mask 255.255.255.255\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/_sys_https_redirect\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address enabled\n translate-port enabled\n}" + ] }, { - "name": "/Common/app1_t443_vs", - "configs": [ + "name": "app1_t443_vs", + "partition": "Common", + "destination": "192.168.1.21:443", + "pool": { + "name": "app1_t80_pool", + "partition": "Common", + "members": { + "/Common/app1_Node1:80": { + "address": "192.168.1.22" + }, + "/Common/app1_Node2:80": { + "address": "192.168.1.23" + } + }, + "monitor": "/Common/http" + }, + "profiles": [ + "/Common/http", + "/Common/tcp" + ], + "snat": "automap", + "ip-protocol": "tcp", + "last-modified-time": "2020-09-18:10:05:54", + "mask": "255.255.255.255", + "serverssl-use-sni": "disabled", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled", + "lines": [ "ltm virtual /Common/app1_t443_vs {\n destination /Common/192.168.1.21:443\n ip-protocol tcp\n last-modified-time 2020-09-18:10:05:54\n mask 255.255.255.255\n pool /Common/app1_t80_pool\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n}", "ltm pool /Common/app1_t80_pool {\n members {\n /Common/app1_Node1:80 {\n address 192.168.1.22\n }\n /Common/app1_Node2:80 {\n address 192.168.1.23\n }\n }\n monitor /Common/http and /Common/tcp\n}", "ltm node /Common/app1_Node1 {\n address 192.168.1.22\n}", "ltm node /Common/app1_Node2 {\n address 192.168.1.23\n}" - ], - "map": { - "vsDest": "/Common/192.168.1.21:443", - "pool": [ - "192.168.1.22:80", - "192.168.1.23:80" - ] - } + ] }, { - "name": "/Common/app2_t80_vs", - "configs": [ - "ltm virtual /Common/app2_t80_vs {\n creation-time 2020-09-17:08:50:22\n destination /Common/192.168.2.21:80\n ip-protocol tcp\n last-modified-time 2020-09-17:08:51:07\n mask 255.255.255.255\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/_sys_https_redirect\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address enabled\n translate-port enabled\n}" + "name": "app2_t80_vs", + "partition": "Common", + "destination": "192.168.2.21:80", + "profiles": [ + "/Common/http", + "/Common/tcp" ], - "map": { - "vsDest": "/Common/192.168.2.21:80" - } + "rules": [ + "/Common/_sys_https_redirect" + ], + "creation-time": "2020-09-17:08:50:22", + "ip-protocol": "tcp", + "last-modified-time": "2020-09-17:08:51:07", + "mask": "255.255.255.255", + "serverssl-use-sni": "disabled", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled", + "lines": [ + "ltm virtual /Common/app2_t80_vs {\n creation-time 2020-09-17:08:50:22\n destination /Common/192.168.2.21:80\n ip-protocol tcp\n last-modified-time 2020-09-17:08:51:07\n mask 255.255.255.255\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/_sys_https_redirect\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address enabled\n translate-port enabled\n}" + ] }, { - "name": "/Common/bigiq.benlab.io_t443_vs", - "configs": [ - "ltm virtual /Common/bigiq.benlab.io_t443_vs {\n creation-time 2019-10-01:17:59:21\n description \"not flowing traffic, just used for GTM\"\n destination /Common/10.200.244.15:443\n ip-protocol tcp\n last-modified-time 2019-10-01:18:11:46\n mask 255.255.255.255\n policies {\n /Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs { }\n }\n pool /Common/bigiq.benlab.io_t443_pool\n profiles {\n /Common/ASM_basic_policy_1 { }\n /Common/f5-tcp-progressive { }\n /Common/http { }\n /Common/websecurity { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n vlans {\n /Common/vlan255_f5peer\n }\n vlans-enabled\n}", + "name": "bigiq.benlab.io_t443_vs", + "partition": "Common", + "destination": "10.200.244.15:443", + "pool": { + "name": "bigiq.benlab.io_t443_pool", + "partition": "Common", + "members": { + "/Common/10.200.244.15:443": { + "address": "10.200.244.15" + } + }, + "monitor": [ + "/Common/https_head_f5" + ] + }, + "profiles": [ + "/Common/ASM_basic_policy_1", + "/Common/f5-tcp-progressive", + "/Common/http", + "/Common/websecurity" + ], + "snat": "automap", + "policies": [ + "/Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs" + ], + "vlans": [ + "/Common/vlan255_f5peer", + "/Common/vlan245", + "/Common/vlan230" + ], + "creation-time": "2019-10-01:17:59:21", + "description": "not flowing traffic, just used for GTM", + "ip-protocol": "tcp", + "last-modified-time": "2019-10-01:18:11:46", + "mask": "255.255.255.255", + "serverssl-use-sni": "disabled", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled", + "lines": [ + "ltm virtual /Common/bigiq.benlab.io_t443_vs {\n creation-time 2019-10-01:17:59:21\n description \"not flowing traffic, just used for GTM\"\n destination /Common/10.200.244.15:443\n ip-protocol tcp\n last-modified-time 2019-10-01:18:11:46\n mask 255.255.255.255\n policies {\n /Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs { }\n }\n pool /Common/bigiq.benlab.io_t443_pool\n profiles {\n /Common/ASM_basic_policy_1 { }\n /Common/f5-tcp-progressive { }\n /Common/http { }\n /Common/websecurity { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n vlans {\n /Common/vlan255_f5peer\n /Common/vlan245\n /Common/vlan230\n }\n vlans-enabled\n}", "ltm pool /Common/bigiq.benlab.io_t443_pool {\n members {\n /Common/10.200.244.15:443 {\n address 10.200.244.15\n }\n }\n monitor /Common/https_head_f5\n}", "ltm node /Common/10.200.244.15 {\n address 10.200.244.15\n description bigiq01\n}", "ltm policy /Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs {\n controls { asm }\n requires { http }\n rules {\n default {\n actions {\n 1 {\n asm\n enable\n policy /Common/basic_policy_1\n }\n }\n ordinal 1\n }\n }\n strategy /Common/first-match\n}" - ], - "map": { - "vsDest": "/Common/10.200.244.15:443", - "pool": [ - "10.200.244.15:443" - ] - } + ] }, { - "name": "/Common/app2_t443_vs", - "configs": [ + "name": "app2_t443_vs", + "partition": "Common", + "destination": "192.168.2.21:443", + "pool": { + "name": "app2_t80_pool", + "partition": "Common", + "members": { + "/Common/app2_Node1:80": { + "address": "192.168.2.22" + }, + "/Common/app2_Node2:80": { + "address": "192.168.2.23" + } + }, + "load-balancing-mode": "least-connections-member", + "monitor": "/Common/global_http_monitor" + }, + "profiles": [ + "/Common/http", + "/Common/tcp" + ], + "snat": "automap", + "ip-protocol": "tcp", + "last-modified-time": "2020-09-18:10:05:47", + "mask": "255.255.255.255", + "serverssl-use-sni": "disabled", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled", + "lines": [ "ltm virtual /Common/app2_t443_vs {\n destination /Common/192.168.2.21:443\n ip-protocol tcp\n last-modified-time 2020-09-18:10:05:47\n mask 255.255.255.255\n pool /Common/app2_t80_pool\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n}", "ltm pool /Common/app2_t80_pool {\n load-balancing-mode least-connections-member\n members {\n /Common/app2_Node1:80 {\n address 192.168.2.22\n }\n /Common/app2_Node2:80 {\n address 192.168.2.23\n }\n }\n monitor /Common/global_http_monitor and /Common/global_https_monitor\n}", "ltm node /Common/app2_Node1 {\n address 192.168.2.22\n description app2_Node1\n}", - "ltm node /Common/app2_Node2 {\n address 192.168.2.23\n description app2_Node2\n}", - "ltm monitor http /Common/global_http_monitor {\n adaptive disabled\n defaults-from /Common/http\n interval 5\n ip-dscp 0\n recv \"ok 200\"\n recv-disable none\n send \"GET /anywebsite.com\\r\\n\"\n time-until-up 0\n timeout 16\n}", - "ltm monitor https /Common/global_https_monitor {\n adaptive disabled\n defaults-from /Common/https\n interval 5\n ip-dscp 0\n recv \"201 continue\"\n recv-disable none\n send \"GET /any-secure-website.com\\r\\n\"\n time-until-up 0\n timeout 16\n}" + "ltm node /Common/app2_Node2 {\n address 192.168.2.23\n description app2_Node2\n}" + ] + }, + { + "name": "persistTest_80_vs", + "partition": "Common", + "destination": "10.6.3.4:80", + "profiles": [ + "/Common/http", + "/Common/tcp" ], - "map": { - "vsDest": "/Common/192.168.2.21:443", - "pool": [ - "192.168.2.22:80", - "192.168.2.23:80" - ] - } + "persist": "/Common/cookie", + "fallback-persistence": "/Common/source_addr", + "creation-time": "2023-05-09:11:25:01", + "description": "vs to explore persist configs - both default/fallback are single entries", + "ip-protocol": "tcp", + "last-modified-time": "2023-05-09:11:25:01", + "mask": "255.255.255.255", + "serverssl-use-sni": "disabled", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled", + "lines": [ + "ltm virtual /Common/persistTest_80_vs {\n creation-time 2023-05-09:11:25:01\n description \"vs to explore persist configs - both default/fallback are single entries\"\n destination /Common/10.6.3.4:80\n fallback-persistence /Common/source_addr\n ip-protocol tcp\n last-modified-time 2023-05-09:11:25:01\n mask 255.255.255.255\n persist {\n /Common/cookie {\n default yes\n }\n }\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address enabled\n translate-port enabled\n}" + ] }, { - "name": "/Common/app3_t8443_vs", - "configs": [ + "name": "app3_t8443_vs", + "partition": "Common", + "destination": "192.168.1.51:8443", + "pool": { + "name": "app3_t8443_pool", + "partition": "Common", + "members": { + "/Common/app3_Node1:8443": { + "address": "192.168.1.52" + }, + "/Common/app3_Node2:8443": { + "address": "192.168.1.53" + } + }, + "load-balancing-mode": "least-connections-member", + "monitor": "/Common/app1_tcp_half_open_quick_monitor" + }, + "profiles": [ + "/Common/app3_clientssl", + "/Common/app3_serverssl", + "/Common/http", + "/Common/tcp" + ], + "rules": [ + "/Common/app3_rule", + "/Common/app3_rule2", + "/Common/app3_rule3" + ], + "snat": { + "name": "app3_snat_pool", + "partition": "Common", + "members": [ + "192.168.1.51" + ] + }, + "policies": [ + "/Common/app3_ltm_policy" + ], + "persist": "/Common/app3_cookie", + "fallback-persistence": "/Common/app3_srcAddr_persist", + "ip-protocol": "tcp", + "last-modified-time": "2020-09-17:12:45:40", + "mask": "255.255.255.255", + "serverssl-use-sni": "disabled", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled", + "lines": [ "ltm virtual /Common/app3_t8443_vs {\n destination /Common/192.168.1.51:8443\n fallback-persistence /Common/app3_srcAddr_persist\n ip-protocol tcp\n last-modified-time 2020-09-17:12:45:40\n mask 255.255.255.255\n persist {\n /Common/app3_cookie {\n default yes\n }\n }\n policies {\n /Common/app3_ltm_policy { }\n }\n pool /Common/app3_t8443_pool\n profiles {\n /Common/app3_clientssl {\n context clientside\n }\n /Common/app3_serverssl {\n context serverside\n }\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/app3_rule\n /Common/app3_rule2\n /Common/app3_rule3\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n pool /Common/app3_snat_pool\n type snat\n }\n translate-address enabled\n translate-port enabled\n}", "ltm pool /Common/app3_t8443_pool {\n load-balancing-mode least-connections-member\n members {\n /Common/app3_Node1:8443 {\n address 192.168.1.52\n }\n /Common/app3_Node2:8443 {\n address 192.168.1.53\n }\n }\n monitor /Common/app1_tcp_half_open_quick_monitor and /Common/http_head_f5 and /Common/http2_head_f5 and /Common/http and /Common/tcp_half_open\n}", "ltm node /Common/app3_Node1 {\n address 192.168.1.52\n}", "ltm node /Common/app3_Node2 {\n address 192.168.1.53\n}", - "ltm monitor tcp-half-open /Common/app1_tcp_half_open_quick_monitor {\n defaults-from /Common/tcp_half_open\n destination *:*\n interval 1\n time-until-up 0\n timeout 4\n}", "ltm profile client-ssl /Common/app3_clientssl {\n app-service none\n cert-key-chain {\n default {\n cert /Common/default.crt\n key /Common/default.key\n }\n }\n defaults-from /Common/clientssl\n inherit-ca-certkeychain true\n inherit-certkeychain true\n}", "ltm profile server-ssl /Common/app3_serverssl {\n app-service none\n defaults-from /Common/serverssl\n}", "ltm rule /Common/app3_rule {\n#comment\n\nwhen HTTP_REQUEST {\n # add more here\n}\n}", "ltm rule /Common/app3_rule2 {\n#comment\n\nwhen HTTP_REQUEST {\n # ben test 444\n}\n}", "ltm rule /Common/app3_rule3 {\n# app3_rule3 header\n\nwhen SERVERSSL_DATA {\n # got something from server\n}\n}", - "ltm snatpool /Common/app3_snat_pool {\n members {\n /Common/192.168.1.51\n }\n}", + "ltm snatpool /Common/app3_snat_pool { undefined }", "ltm policy /Common/app3_ltm_policy {\n rules {\n global_rule_1 { }\n }\n strategy /Common/first-match\n}", "ltm persistence cookie /Common/app3_cookie {\n always-send disabled\n app-service none\n cookie-encryption disabled\n cookie-name app3CustomeCookie\n defaults-from /Common/cookie\n encrypt-cookie-poolname disabled\n expiration 0\n httponly enabled\n method insert\n override-connection-limit disabled\n secure enabled\n}", "ltm persistence source-addr /Common/app3_srcAddr_persist {\n app-service none\n defaults-from /Common/source_addr\n hash-algorithm default\n map-proxies enabled\n mask none\n match-across-pools disabled\n match-across-services disabled\n match-across-virtuals disabled\n override-connection-limit disabled\n timeout 180\n}" - ], - "map": { - "vsDest": "/Common/192.168.1.51:8443", - "pool": [ - "192.168.1.52:8443", - "192.168.1.53:8443" - ] - } + ] }, { - "name": "/Common/app4_t80_vs", - "configs": [ + "name": "app4_t80_vs", + "partition": "Common", + "destination": "192.168.2.25:80", + "description": "test pool references in irule extration and ltp", + "pool": { + "name": "app4_pool", + "partition": "Common", + "members": { + "/Common/api.chucknorris.io:443": { + "autopopulate": "enabled", + "fqdn": "api.chucknorris.io" + } + } + }, + "profiles": [ + "/Common/http", + "/Common/tcp" + ], + "rules": [ + "/Common/_sys_https_redirect", + "/Common/app4_pool_rule" + ], + "policies": [ + "/Common/app4_ltPolicy" + ], + "ip-protocol": "tcp", + "last-modified-time": "2020-10-07:07:28:35", + "mask": "255.255.255.255", + "serverssl-use-sni": "disabled", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled", + "lines": [ "ltm virtual /Common/app4_t80_vs {\n description \"test pool references in irule extration and ltp\"\n destination /Common/192.168.2.25:80\n ip-protocol tcp\n last-modified-time 2020-10-07:07:28:35\n mask 255.255.255.255\n policies {\n /Common/app4_ltPolicy { }\n }\n pool /Common/app4_pool\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/_sys_https_redirect\n /Common/app4_pool_rule\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address enabled\n translate-port enabled\n}", "ltm pool /Common/app4_pool {\n members {\n /Common/api.chucknorris.io:443 {\n fqdn {\n autopopulate enabled\n name api.chucknorris.io\n }\n }\n }\n}", "ltm node /Common/api.chucknorris.io {\n fqdn {\n address-family all\n autopopulate enabled\n name api.chucknorris.io\n }\n}", "ltm rule /Common/app4_pool_rule {\n### test rule for corkscrew\n\n # \n\nwhen HTTP_REQUEST {\n\n # pool reference by variable declaration\n set html-pool web1Pool\n\n if { [HTTP::path] ends_with \"*.css\" }{\n\n # regular pool refernce\n pool css_pool\n\n } elseif { [HTTP::path] ends_with \"*.jpg\" }{\n\n # pool member refernce\n pool jpg.pool member 10.10.10.1 80\n\n } elseif { [HTTP::path] ends_with \"*.js\" }{\n\n # another pool reference with special characters\n pool js.io_t80_pool \n\n } elseif { [HTTP::path] ends_with \"*.xx\" }{\n\n # pool reference not in tmos config\n ### *** seems the gui won't let you attach an irule to a vs with a pool that doesn't exist\n #pool missing_pool\n\n } elseif { [HTTP::path] ends_with \"*.txt\" }{\n\n # node reference\n node 10.10.10.1 80\n\n } else {\n\n # pool referenced by variable\n pool $html-pool\n\n }\n}\n}", - "ltm pool /Common/css_pool { }", - "ltm pool /Common/jpg.pool { }", - "ltm pool /Common/js.io_t80_pool { }", - "ltm policy /Common/app4_ltPolicy {\n controls { forwarding }\n description \"testing for pool extraction function\"\n requires { http }\n rules {\n css_pool_rule {\n actions {\n 0 {\n forward\n select\n pool /Common/css_pool\n }\n }\n conditions {\n 0 {\n http-uri\n scheme\n ends-with\n values { .css }\n }\n }\n }\n jpg_pool_rule {\n actions {\n 0 {\n forward\n select\n pool /Common/jpg.pool\n }\n }\n conditions {\n 0 {\n http-uri\n query-string\n ends-with\n values { .jpg }\n }\n }\n ordinal 1\n }\n js_pool_rule {\n actions {\n 0 {\n forward\n select\n pool /Common/js.io_t80_pool\n }\n }\n conditions {\n 0 {\n http-uri\n scheme\n ends-with\n values { .js }\n }\n }\n ordinal 2\n }\n txt_node {\n actions {\n 0 {\n forward\n select\n node 10.10.10.1\n }\n }\n conditions {\n 0 {\n http-uri\n scheme\n ends-with\n values { .txt }\n }\n }\n ordinal 3\n }\n }\n strategy /Common/first-match\n}" - ], - "map": { - "vsDest": "/Common/192.168.2.25:80", - "pool": [ - "/Common/api.chucknorris.io,/Common/api.chucknorris.io:443" - ], - "irule": { - "pools": [ - [ - "css_pool" - ], - [ - "jpg.pool", - "member", - "10.10.10.1", - "80" - ], - [ - "js.io_t80_pool" - ] - ] - } - } + "ltm policy /Common/app4_ltPolicy {\n controls { forwarding }\n description \"testing for pool extraction function\"\n requires { http }\n rules {\n css_pool_rule {\n actions {\n 0 {\n forward\n select\n pool /Common/css_pool\n }\n }\n conditions {\n 0 {\n http-uri\n scheme\n ends-with\n values { .css }\n }\n }\n }\n jpg_pool_rule {\n actions {\n 0 {\n forward\n select\n pool /Common/jpg.pool\n }\n }\n conditions {\n 0 {\n http-uri\n query-string\n ends-with\n values { .jpg }\n }\n }\n ordinal 1\n }\n js_pool_rule {\n actions {\n 0 {\n forward\n select\n pool /Common/js.io_t80_pool\n }\n }\n conditions {\n 0 {\n http-uri\n scheme\n ends-with\n values { .js }\n }\n }\n ordinal 2\n }\n txt_node {\n actions {\n 0 {\n forward\n select\n node 10.10.10.1\n }\n }\n conditions {\n 0 {\n http-uri\n scheme\n ends-with\n values { .txt }\n }\n }\n ordinal 3\n }\n }\n strategy /Common/first-match\n}", + "ltm pool css_pool { }", + "ltm pool jpg.pool { }", + "ltm pool js.io_t80_pool { }" + ] }, { - "name": "/Common/forwarder_net_0.0.0.0", - "configs": [ + "name": "forwarder_net_0.0.0.0", + "partition": "Common", + "destination": "0.0.0.0:0", + "profiles": [ + "/Common/fastl4_loose" + ], + "mask": "any", + "serverssl-use-sni": "disabled", + "source": "0.0.0.0/0", + "translate-address": "disabled", + "translate-port": "disabled", + "lines": [ "ltm virtual /Common/forwarder_net_0.0.0.0 {\n destination /Common/0.0.0.0:0\n ip-forward\n mask any\n profiles {\n /Common/fastl4_loose { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address disabled\n translate-port disabled\n}", "ltm profile fastl4 /Common/fastl4_loose {\n app-service none\n loose-close enabled\n loose-initialization enabled\n reset-on-timeout disabled\n syn-cookie-enable disabled\n}" - ], - "map": { - "vsDest": "/Common/0.0.0.0:0" - } + ] }, { - "name": "/foo/defaultsUDP_5555/serviceMain", - "configs": [ + "name": "serviceMain", + "partition": "foo", + "folder": "defaultsUDP_5555", + "destination": "192.50.2.1:5555", + "pool": { + "name": "defaultsUDP_5555_Pool1", + "partition": "foo", + "folder": "defaultsUDP_5555", + "members": { + "/foo/192.50.2.2:5555": { + "address": "192.50.2.2" + } + }, + "monitorQualifier": "min 1 of", + "monitor": [ + "/Common/gateway_icmp" + ], + "min-active-members": "1" + }, + "profiles": [ + "/Common/udp" + ], + "snat": "automap", + "persist": "/Common/source_addr", + "creation-time": "2020-10-06:13:27:20", + "description": "defaultsUDP_5555", + "ip-protocol": "udp", + "last-modified-time": "2020-10-06:13:27:20", + "mask": "255.255.255.255", + "serverssl-use-sni": "disabled", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled", + "lines": [ "ltm virtual /foo/defaultsUDP_5555/serviceMain {\n creation-time 2020-10-06:13:27:20\n description defaultsUDP_5555\n destination /foo/192.50.2.1:5555\n ip-protocol udp\n last-modified-time 2020-10-06:13:27:20\n mask 255.255.255.255\n persist {\n /Common/source_addr {\n default yes\n }\n }\n pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1\n profiles {\n /Common/udp { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n}", - "ltm pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1 {\n members {\n /foo/192.50.2.2:5555 {\n address 192.50.2.2\n metadata {\n source {\n value declaration\n }\n }\n }\n }\n min-active-members 1\n monitor min 1 of { /Common/gateway_icmp }\n}" + "ltm pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1 {\n members {\n /foo/192.50.2.2:5555 {\n address 192.50.2.2\n metadata {\n source {\n value declaration\n }\n }\n }\n }\n min-active-members 1\n monitor min 1 of { /Common/gateway_icmp }\n}", + "ltm node /foo/192.50.2.2 {\n address 192.50.2.2\n}" + ] + }, + { + "name": "t1.lab.io_80vs", + "partition": "foo", + "destination": "10.2.3.4:80", + "profiles": [ + "/Common/tcp" ], - "map": { - "vsDest": "/foo/192.50.2.1:5555" - } + "snat": { + "name": "testSnat1_pool", + "partition": "Common", + "members": [ + "1.1.1.1", + "1.1.1.2", + "1.1.1.3", + "1.1.1.4" + ] + }, + "creation-time": "2023-04-29:13:02:55", + "ip-protocol": "tcp", + "last-modified-time": "2023-04-29:13:02:55", + "mask": "255.255.255.255", + "serverssl-use-sni": "disabled", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled", + "lines": [ + "ltm virtual /foo/t1.lab.io_80vs {\n creation-time 2023-04-29:13:02:55\n destination /foo/10.2.3.4:80\n ip-protocol tcp\n last-modified-time 2023-04-29:13:02:55\n mask 255.255.255.255\n profiles {\n /Common/tcp { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n pool /Common/testSnat1_pool\n type snat\n }\n translate-address enabled\n translate-port enabled\n}", + "ltm snatpool /Common/testSnat1_pool { undefined }" + ] }, { - "name": "/hue-infra/hue-up/hue-up.benlab.io_t80_vs", - "configs": [ - "ltm virtual /hue-infra/hue-up/hue-up.benlab.io_t80_vs {\n description hue-up\n destination /hue-infra/192.168.200.29:80\n ip-protocol tcp\n last-modified-time 2022-04-03:14:25:43\n mask 255.255.255.255\n persist {\n /Common/cookie {\n default yes\n }\n }\n pool /hue-infra/hue-up/hue-up.benlab.io_t80_pool\n profiles {\n /Common/f5-tcp-progressive { }\n /Common/http { }\n }\n serverssl-use-sni disabled\n service-down-immediate-action reset\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n}", - "ltm pool /hue-infra/hue-up/hue-up.benlab.io_t80_pool {\n members {\n /hue-infra/10.200.30.29:80 {\n address 10.200.30.29\n metadata {\n source {\n value declaration\n }\n }\n }\n }\n min-active-members 1\n monitor min 1 of { /Common/http }\n}" + "name": "wiffle_redirect_vs", + "partition": "foo", + "description": "wiffle waffle baffle", + "profiles": [ + "/Common/http", + "/Common/tcp" + ], + "rules": [ + "/foo/HTTP-redirect-to-HTTPS" ], - "map": { - "vsDest": "" - } + "creation-time": "2023-02-02:13:10:03", + "last-modified-time": "2023-03-29:14:27:19", + "traffic-matching-criteria": "/foo/wiffle_redirect_trafficMatchCriteria", + "translate-address": "enabled", + "translate-port": "enabled", + "lines": [ + "ltm virtual /foo/wiffle_redirect_vs {\n creation-time 2023-02-02:13:10:03\n description \"wiffle waffle baffle\"\n ip-protocol tcp\n last-modified-time 2023-03-29:14:27:19\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /foo/HTTP-redirect-to-HTTPS\n }\n traffic-matching-criteria /foo/wiffle_redirect_trafficMatchCriteria\n translate-address enabled\n translate-port enabled\n}", + "ltm rule /foo/HTTP-redirect-to-HTTPS {\nwhen HTTP_REQUEST { HTTP::redirect https://[HTTP::host][HTTP::uri] }\n}" + ] }, { - "name": "/hue-infra/hue-up/hue-up.benlab.io_t443_vs", - "configs": [ - "ltm virtual /hue-infra/hue-up/hue-up.benlab.io_t443_vs {\n description hue-up\n destination /hue-infra/192.168.200.29:443\n ip-protocol tcp\n last-modified-time 2021-04-06:17:55:27\n mask 255.255.255.255\n persist {\n /Common/cookie {\n default yes\n }\n }\n pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool\n profiles {\n /Common/f5-tcp-progressive { }\n /Common/http { }\n }\n serverssl-use-sni disabled\n service-down-immediate-action reset\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n}", - "ltm pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool {\n members {\n /hue-infra/10.200.30.29:443 {\n address 10.200.30.29\n metadata {\n source {\n value declaration\n }\n }\n }\n }\n min-active-members 1\n monitor min 1 of { /Common/https }\n}" + "name": "app8_80vs", + "partition": "foo", + "destination": "1.19.8.18:80", + "pool": { + "name": "app8_pool", + "partition": "foo", + "monitor": [ + "/Common/http" + ] + }, + "profiles": [ + "/Common/http", + "/Common/tcp" + ], + "snat": "automap", + "creation-time": "2021-03-04:18:40:06", + "ip-protocol": "tcp", + "last-modified-time": "2021-03-04:18:40:06", + "mask": "255.255.255.255", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled", + "lines": [ + "ltm virtual /foo/app8_80vs {\n creation-time 2021-03-04:18:40:06\n destination /foo/1.19.8.18:80\n ip-protocol tcp\n last-modified-time 2021-03-04:18:40:06\n mask 255.255.255.255\n pool /foo/app8_pool\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n}", + "ltm pool /foo/app8_pool {\n monitor /Common/http\n}" + ] + }, + { + "name": "hue-up.benlab.io_t80_vs", + "partition": "hue-infra", + "folder": "hue-up", + "destination": "192.168.200.29:80", + "pool": { + "name": "hue-up.benlab.io_t80_pool", + "partition": "hue-infra", + "folder": "hue-up", + "members": { + "/hue-infra/10.200.30.29:80": { + "address": "10.200.30.29" + } + }, + "monitorQualifier": "min 1 of", + "monitor": [ + "/Common/http" + ], + "min-active-members": "1" + }, + "profiles": [ + "/Common/f5-tcp-progressive", + "/Common/http" + ], + "snat": "automap", + "persist": "/Common/cookie", + "description": "hue-up", + "ip-protocol": "tcp", + "last-modified-time": "2022-04-03:14:25:43", + "mask": "255.255.255.255", + "serverssl-use-sni": "disabled", + "service-down-immediate-action": "reset", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled", + "lines": [ + "ltm virtual /hue-infra/hue-up/hue-up.benlab.io_t80_vs {\n description hue-up\n destination /hue-infra/192.168.200.29:80\n ip-protocol tcp\n last-modified-time 2022-04-03:14:25:43\n mask 255.255.255.255\n persist {\n /Common/cookie {\n default yes\n }\n }\n pool /hue-infra/hue-up/hue-up.benlab.io_t80_pool\n profiles {\n /Common/f5-tcp-progressive { }\n /Common/http { }\n }\n serverssl-use-sni disabled\n service-down-immediate-action reset\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n}", + "ltm pool /hue-infra/hue-up/hue-up.benlab.io_t80_pool {\n members {\n /hue-infra/10.200.30.29:80 {\n address 10.200.30.29\n metadata {\n source {\n value declaration\n }\n }\n }\n }\n min-active-members 1\n monitor min 1 of { /Common/http }\n}", + "ltm node /hue-infra/10.200.30.29 {\n address 10.200.30.29\n}" + ] + }, + { + "name": "hue-up.benlab.io_t443_vs", + "partition": "hue-infra", + "folder": "hue-up", + "destination": "192.168.200.29:443", + "pool": { + "name": "hue-up.benlab.io_t443_pool", + "partition": "hue-infra", + "folder": "hue-up", + "members": { + "/hue-infra/10.200.30.29:443": { + "address": "10.200.30.29" + } + }, + "monitorQualifier": "min 1 of", + "monitor": [ + "/Common/https" + ], + "min-active-members": "1" + }, + "profiles": [ + "/Common/f5-tcp-progressive", + "/Common/http" ], - "map": { - "vsDest": "" - } + "snat": "automap", + "persist": "/Common/cookie", + "description": "hue-up", + "ip-protocol": "tcp", + "last-modified-time": "2021-04-06:17:55:27", + "mask": "255.255.255.255", + "serverssl-use-sni": "disabled", + "service-down-immediate-action": "reset", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled", + "lines": [ + "ltm virtual /hue-infra/hue-up/hue-up.benlab.io_t443_vs {\n description hue-up\n destination /hue-infra/192.168.200.29:443\n ip-protocol tcp\n last-modified-time 2021-04-06:17:55:27\n mask 255.255.255.255\n persist {\n /Common/cookie {\n default yes\n }\n }\n pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool\n profiles {\n /Common/f5-tcp-progressive { }\n /Common/http { }\n }\n serverssl-use-sni disabled\n service-down-immediate-action reset\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n}", + "ltm pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool {\n members {\n /hue-infra/10.200.30.29:443 {\n address 10.200.30.29\n metadata {\n source {\n value declaration\n }\n }\n }\n }\n min-active-members 1\n monitor min 1 of { /Common/https }\n}", + "ltm node /hue-infra/10.200.30.29 {\n address 10.200.30.29\n}" + ] } ], "gslb": [ { - "fqdn": "portal.benlab.io_a_pool", - "partition": "/Common/", + "fqdn": "benlab.io", + "partition": "Common", "type": "a", "pools": [ { @@ -285,12 +640,17 @@ "gtm wideip a /Common/benlab.io {\n pools {\n /Common/portal.benlab.io_a_pool {\n order 0\n }\n }\n}", "gtm pool a /Common/portal.benlab.io_a_pool { \n fallback-ip 75.55.157.193\n fallback-mode fallback-ip\n members {\n /Common/coreltm01_02:/Common/sslvpn_tcp443_vs {\n member-order 0\n }\n }\n }", "gtm server /Common/coreltm01_02 { \n datacenter /Common/home_dc\n devices {\n coreltm01 {\n addresses {\n 1.1.1.1 {\n translation 2.2.2.2\n }\n 10.200.30.5 { }\n }\n }\n coreltm02 {\n addresses {\n 10.200.30.6 { }\n }\n }\n }\n monitor /Common/bigip\n product bigip\n virtual-server-discovery enabled\n virtual-servers {\n /Common/bigiq.benlab.io_t443_vs {\n destination 10.200.244.15:443\n }\n /Common/dns_listener_coreltm2_tcp53_vs {\n destination 192.168.200.8:53\n }\n /Common/dns_listener_coreltm2_udp53_vs {\n destination 192.168.200.8:53\n }\n /Common/ipv6_listener {\n destination 2001:db8:200::7.53\n }\n /Common/russ.app/russ_iqdash_t80_vs {\n destination 192.168.200.160:80\n }\n /Common/sslvpn_tcp80_vs {\n destination 192.168.200.10:80\n }\n /Common/sslvpn_tcp443_vs {\n destination 192.168.200.10:443\n }\n /Common/test_listener_u53_vs {\n destination 192.168.200.7:53\n }\n /Sample_01/A1/serviceMain {\n destination 10.44.1.10:80\n }\n /com-load/Shared/loadhost-chd.openapi.starbucks.com_80 {\n destination 10.12.20.110:80\n }\n /com-load/Shared/loadhost-chd.openapi.starbucks.com_443 {\n destination 10.12.20.110:443\n }\n /core1_epic_01/epic/serviceMain {\n destination 10.0.1.10:80\n }\n /core1_pizza_02/pizza/serviceMain {\n destination 10.0.2.10:80\n }\n /external_proxy/extProxy/extExplicit_proxy_t8888_vs {\n destination 192.168.200.11:8888\n }\n /hue-infra/hue-up/hue-up.benlab.io_t80_vs {\n destination 192.168.200.29:80\n }\n /hue-infra/hue-up/hue-up.benlab.io_t443_vs {\n destination 192.168.200.29:443\n }\n /iqt1/iqt1/serviceMain {\n destination 192.168.200.164:443\n }\n /iqt1/iqt1/serviceMain-Redirect- {\n destination 192.168.200.164:80\n }\n /nas-infra/nas01/nas01_t0_vs {\n destination 192.168.200.27:0\n }\n /ntp-infra/ntp_vip/ntp_u123_vs {\n destination 192.168.200.9:123\n }\n /sap/main/ssl_bridge_443_vs {\n destination 172.24.82.67:443\n }\n /sap/main/ssl_bridge_443_vs-Redirect- {\n destination 172.24.82.67:80\n }\n /tenant_1/Shared/app1_443_vs {\n destination 172.24.80.163:443\n }\n /tenant_2/app_2/app2_443_vs {\n destination 172.24.80.217:443\n }\n /tenant_2/app_2/app2_443_vs-Redirect- {\n destination 172.24.80.217:80\n }\n /tenn1/app1/app1_t80_vs {\n destination 192.168.1.21:80\n }\n /tenn1/app1/app1_t443_vs {\n destination 192.168.1.21:443\n }\n /vcenter-infra/vcenter/vcenter.benlab.io_t443_vs {\n destination 192.168.200.50:443\n }\n test1 {\n depends-on {\n /Common/coreltm01_02:/Common/bigiq.benlab.io_t443_vs { }\n }\n destination 5.5.5.5:555\n monitor /Common/bigip\n translation-address 6.6.6.6\n translation-port 666\n }\n }\n }" + ], + "allPossibleDestinations": [ + "75.55.157.193", + "192.168.200.10:443" ] }, { - "fqdn": "bigiq.benlab.io_pool", - "partition": "/Common/", + "fqdn": "bigiq.benlab.io", + "partition": "Common", "type": "a", + "description": "complicated widip", "last-resort-pool": { "type": "a", "value": "/Common/bigiq.benlab.io_pool" @@ -351,17 +711,24 @@ } ], "lines": [ - "gtm wideip a /Common/bigiq.benlab.io {\n aliases {\n bq.benlab.io\n bq2.benlab.io\n burger.queen.no\n }\n last-resort-pool a /Common/bigiq.benlab.io_pool\n persistence enabled\n pool-lb-mode global-availability\n pools {\n /Common/bigiq.benlab.io_pool {\n order 0\n }\n /Common/esxi01.benlab.io {\n order 2\n ratio 4\n }\n /Common/esxi02.benlab.io {\n order 1\n }\n }\n rules {\n /Common/test_dns_rule\n }\n}", + "gtm wideip a /Common/bigiq.benlab.io {\n aliases {\n bq.benlab.io\n bq2.benlab.io\n burger.queen.no\n }\n description \"complicated widip\"\n last-resort-pool a /Common/bigiq.benlab.io_pool\n persistence enabled\n pool-lb-mode global-availability\n pools {\n /Common/bigiq.benlab.io_pool {\n order 0\n }\n /Common/esxi01.benlab.io {\n order 2\n ratio 4\n }\n /Common/esxi02.benlab.io {\n order 1\n }\n }\n rules {\n /Common/test_dns_rule\n }\n}", "gtm pool a /Common/bigiq.benlab.io_pool { \n alternate-mode fallback-ip\n fallback-ip 10.200.244.15\n fallback-mode fallback-ip\n load-balancing-mode global-availability\n members {\n /Common/coreltm01_02:/Common/bigiq.benlab.io_t443_vs {\n member-order 0\n }\n /Common/intouch01_02:/Common/tiki_web_t80_vs {\n member-order 1\n ratio 6\n }\n }\n verify-member-availability disabled\n }", "gtm server /Common/coreltm01_02 { \n datacenter /Common/home_dc\n devices {\n coreltm01 {\n addresses {\n 1.1.1.1 {\n translation 2.2.2.2\n }\n 10.200.30.5 { }\n }\n }\n coreltm02 {\n addresses {\n 10.200.30.6 { }\n }\n }\n }\n monitor /Common/bigip\n product bigip\n virtual-server-discovery enabled\n virtual-servers {\n /Common/bigiq.benlab.io_t443_vs {\n destination 10.200.244.15:443\n }\n /Common/dns_listener_coreltm2_tcp53_vs {\n destination 192.168.200.8:53\n }\n /Common/dns_listener_coreltm2_udp53_vs {\n destination 192.168.200.8:53\n }\n /Common/ipv6_listener {\n destination 2001:db8:200::7.53\n }\n /Common/russ.app/russ_iqdash_t80_vs {\n destination 192.168.200.160:80\n }\n /Common/sslvpn_tcp80_vs {\n destination 192.168.200.10:80\n }\n /Common/sslvpn_tcp443_vs {\n destination 192.168.200.10:443\n }\n /Common/test_listener_u53_vs {\n destination 192.168.200.7:53\n }\n /Sample_01/A1/serviceMain {\n destination 10.44.1.10:80\n }\n /com-load/Shared/loadhost-chd.openapi.starbucks.com_80 {\n destination 10.12.20.110:80\n }\n /com-load/Shared/loadhost-chd.openapi.starbucks.com_443 {\n destination 10.12.20.110:443\n }\n /core1_epic_01/epic/serviceMain {\n destination 10.0.1.10:80\n }\n /core1_pizza_02/pizza/serviceMain {\n destination 10.0.2.10:80\n }\n /external_proxy/extProxy/extExplicit_proxy_t8888_vs {\n destination 192.168.200.11:8888\n }\n /hue-infra/hue-up/hue-up.benlab.io_t80_vs {\n destination 192.168.200.29:80\n }\n /hue-infra/hue-up/hue-up.benlab.io_t443_vs {\n destination 192.168.200.29:443\n }\n /iqt1/iqt1/serviceMain {\n destination 192.168.200.164:443\n }\n /iqt1/iqt1/serviceMain-Redirect- {\n destination 192.168.200.164:80\n }\n /nas-infra/nas01/nas01_t0_vs {\n destination 192.168.200.27:0\n }\n /ntp-infra/ntp_vip/ntp_u123_vs {\n destination 192.168.200.9:123\n }\n /sap/main/ssl_bridge_443_vs {\n destination 172.24.82.67:443\n }\n /sap/main/ssl_bridge_443_vs-Redirect- {\n destination 172.24.82.67:80\n }\n /tenant_1/Shared/app1_443_vs {\n destination 172.24.80.163:443\n }\n /tenant_2/app_2/app2_443_vs {\n destination 172.24.80.217:443\n }\n /tenant_2/app_2/app2_443_vs-Redirect- {\n destination 172.24.80.217:80\n }\n /tenn1/app1/app1_t80_vs {\n destination 192.168.1.21:80\n }\n /tenn1/app1/app1_t443_vs {\n destination 192.168.1.21:443\n }\n /vcenter-infra/vcenter/vcenter.benlab.io_t443_vs {\n destination 192.168.200.50:443\n }\n test1 {\n depends-on {\n /Common/coreltm01_02:/Common/bigiq.benlab.io_t443_vs { }\n }\n destination 5.5.5.5:555\n monitor /Common/bigip\n translation-address 6.6.6.6\n translation-port 666\n }\n }\n }", "gtm server /Common/intouch01_02 { \n datacenter /Common/home_dc\n devices {\n intouch01 {\n addresses {\n 192.168.200.101 { }\n }\n }\n intouch02 {\n addresses {\n 192.168.200.102 { }\n }\n }\n }\n monitor /Common/bigip\n product bigip\n virtual-server-discovery enabled\n virtual-servers {\n /Common/cloverleaf_0_vs {\n destination 192.168.200.120:0\n }\n /Common/sldc_clvf_dev02.app/sldc_clvf_dev02_buffer_mgmt_t80_vs {\n destination 192.168.200.136:80\n }\n /Common/sldc_clvf_dev02.app/sldc_clvf_dev02_buffer_t8442_vs {\n destination 192.168.200.136:8442\n }\n /Common/sldc_clvf_dev02.app/sldc_clvf_dev02_main_t0_vs {\n destination 192.168.200.136:0\n }\n /Common/sldc_clvf_dev02.app/sldc_clvf_dev02_waterpark_t8443_vs {\n destination 192.168.200.136:8443\n }\n /Common/tiki_web_t80_vs {\n destination 192.168.200.120:80\n }\n }\n }", "gtm pool a /Common/esxi01.benlab.io { \n alternate-mode none\n fallback-ip 10.200.210.21\n fallback-mode fallback-ip\n load-balancing-mode fallback-ip\n }", "gtm pool a /Common/esxi02.benlab.io { \n alternate-mode none\n fallback-ip 10.200.210.22\n fallback-mode fallback-ip\n load-balancing-mode fallback-ip\n }" + ], + "allPossibleDestinations": [ + "10.200.244.15", + "10.200.244.15:443", + "192.168.200.120:80", + "10.200.210.21", + "10.200.210.22" ] }, { - "fqdn": "devCloud01.benlab.io_pool", - "partition": "/Common/", + "fqdn": "devCloud01.benlab.io", + "partition": "Common", "type": "a", "pools": [ { @@ -376,11 +743,28 @@ "lines": [ "gtm wideip a /Common/devCloud01.benlab.io {\n pools {\n /Common/devCloud01.benlab.io_pool {\n order 0\n }\n }\n}", "gtm pool a /Common/devCloud01.benlab.io_pool { \n fallback-ip 10.200.244.110\n fallback-mode fallback-ip\n load-balancing-mode fallback-ip\n }" + ], + "allPossibleDestinations": [ + "10.200.244.110" ] }, { - "fqdn": "unifi.benlab.io_pool", - "partition": "/Common/", + "fqdn": "piTime314a.int.sci.com", + "partition": "Common", + "type": "a", + "description": "wideip with no pool/destination", + "aliases": [ + "piTime314a.td.sci.com", + "piTime314a.it.io" + ], + "lines": [ + "gtm wideip a /Common/piTime314a.int.sci.com {\n aliases {\n piTime314a.td.sci.com\n piTime314a.it.io\n }\n description \"wideip with no pool/destination\"\n}" + ], + "allPossibleDestinations": [] + }, + { + "fqdn": "unifi.benlab.io", + "partition": "Common", "type": "a", "pools": [ { @@ -395,11 +779,15 @@ "lines": [ "gtm wideip a /Common/unifi.benlab.io {\n pools {\n /Common/unifi.benlab.io_pool {\n order 0\n }\n }\n}", "gtm pool a /Common/unifi.benlab.io_pool { \n fallback-ip 192.168.200.1\n fallback-mode fallback-ip\n load-balancing-mode fallback-ip\n }" + ], + "allPossibleDestinations": [ + "192.168.200.1" ] }, { - "fqdn": "hue-up.benlab.io_pool", - "partition": "/hue-infra/hue-up/", + "fqdn": "hue-up.benlab.io", + "partition": "hue-infra", + "folder": "hue-up", "type": "a", "aliases": [ "hueUp.benlab.io" @@ -426,1044 +814,704 @@ "gtm wideip a /hue-infra/hue-up/hue-up.benlab.io {\n aliases {\n hueUp.benlab.io\n }\n pools {\n /hue-infra/hue-up/hue-up.benlab.io_pool {\n order 0\n }\n }\n}", "gtm pool a /hue-infra/hue-up/hue-up.benlab.io_pool { \n fallback-ip 10.200.30.29\n fallback-mode fallback-ip\n load-balancing-mode global-availability\n members {\n /Common/coreltm01_02:/hue-infra/hue-up/hue-up.benlab.io_t443_vs {\n member-order 0\n }\n }\n }", "gtm server /Common/coreltm01_02 { \n datacenter /Common/home_dc\n devices {\n coreltm01 {\n addresses {\n 1.1.1.1 {\n translation 2.2.2.2\n }\n 10.200.30.5 { }\n }\n }\n coreltm02 {\n addresses {\n 10.200.30.6 { }\n }\n }\n }\n monitor /Common/bigip\n product bigip\n virtual-server-discovery enabled\n virtual-servers {\n /Common/bigiq.benlab.io_t443_vs {\n destination 10.200.244.15:443\n }\n /Common/dns_listener_coreltm2_tcp53_vs {\n destination 192.168.200.8:53\n }\n /Common/dns_listener_coreltm2_udp53_vs {\n destination 192.168.200.8:53\n }\n /Common/ipv6_listener {\n destination 2001:db8:200::7.53\n }\n /Common/russ.app/russ_iqdash_t80_vs {\n destination 192.168.200.160:80\n }\n /Common/sslvpn_tcp80_vs {\n destination 192.168.200.10:80\n }\n /Common/sslvpn_tcp443_vs {\n destination 192.168.200.10:443\n }\n /Common/test_listener_u53_vs {\n destination 192.168.200.7:53\n }\n /Sample_01/A1/serviceMain {\n destination 10.44.1.10:80\n }\n /com-load/Shared/loadhost-chd.openapi.starbucks.com_80 {\n destination 10.12.20.110:80\n }\n /com-load/Shared/loadhost-chd.openapi.starbucks.com_443 {\n destination 10.12.20.110:443\n }\n /core1_epic_01/epic/serviceMain {\n destination 10.0.1.10:80\n }\n /core1_pizza_02/pizza/serviceMain {\n destination 10.0.2.10:80\n }\n /external_proxy/extProxy/extExplicit_proxy_t8888_vs {\n destination 192.168.200.11:8888\n }\n /hue-infra/hue-up/hue-up.benlab.io_t80_vs {\n destination 192.168.200.29:80\n }\n /hue-infra/hue-up/hue-up.benlab.io_t443_vs {\n destination 192.168.200.29:443\n }\n /iqt1/iqt1/serviceMain {\n destination 192.168.200.164:443\n }\n /iqt1/iqt1/serviceMain-Redirect- {\n destination 192.168.200.164:80\n }\n /nas-infra/nas01/nas01_t0_vs {\n destination 192.168.200.27:0\n }\n /ntp-infra/ntp_vip/ntp_u123_vs {\n destination 192.168.200.9:123\n }\n /sap/main/ssl_bridge_443_vs {\n destination 172.24.82.67:443\n }\n /sap/main/ssl_bridge_443_vs-Redirect- {\n destination 172.24.82.67:80\n }\n /tenant_1/Shared/app1_443_vs {\n destination 172.24.80.163:443\n }\n /tenant_2/app_2/app2_443_vs {\n destination 172.24.80.217:443\n }\n /tenant_2/app_2/app2_443_vs-Redirect- {\n destination 172.24.80.217:80\n }\n /tenn1/app1/app1_t80_vs {\n destination 192.168.1.21:80\n }\n /tenn1/app1/app1_t443_vs {\n destination 192.168.1.21:443\n }\n /vcenter-infra/vcenter/vcenter.benlab.io_t443_vs {\n destination 192.168.200.50:443\n }\n test1 {\n depends-on {\n /Common/coreltm01_02:/Common/bigiq.benlab.io_t443_vs { }\n }\n destination 5.5.5.5:555\n monitor /Common/bigip\n translation-address 6.6.6.6\n translation-port 666\n }\n }\n }" + ], + "allPossibleDestinations": [ + "10.200.30.29", + "192.168.200.29:443" ] } ] }, "stats": { - "objectCount": 406, - "sourceSize": 2580499, + "objectCount": 423, + "sourceSize": 2582699, "objects": { - "virtuals": 11, + "virtuals": 15, "profiles": 6, "policies": 3, - "pools": 11, - "irules": 5, + "pools": 13, + "irules": 6, "monitors": 6, "nodes": 13, - "snatPools": 1, + "snatPools": 2, "gtm": { "datacenters": 1, "regions": 3, "servers": 5, "pools": 17, - "wideips": 5 + "wideips": 6 }, "apmPolicies": 3, "apmProfiles": 3, - "asmPolicies": 1 + "asmPolicies": 1, + "botProfiles": 1, + "dosProfiles": 3 }, "sourceTmosVersion": "15.1.8.2", - "parseTime": 242.3629, - "appTime": 3.4136, - "fqdnTime": 0.3822, - "packTime": 0.5402 + "parseTime": 285.622, + "appTime": 3.4398, + "fqdnTime": 0.3702, + "packTime": 0.7195 }, "logs": [ - "[2023-04-27T20:22:44.883Z] DeBuG: 'regular date log message'", - "[4/27/2023, 3:22:44 PM] DeBuG: 'toLocalString date log message'", - "[Thu, 27 Apr 2023 20:22:44 GMT] DeBuG: 'to UTC date log message'", - "[2023-04-27T20:22:47.057Z] [ERROR]: >v19.0.0.0 tmos detected - this should never happen!!!", - "[2023-04-27T20:22:47.058Z] [ERROR]: automap", - "[2023-04-27T20:22:48.027Z] [DEBUG]: [/Common/app1_t443_vs] found snat configuration \n type automap", - "[2023-04-27T20:22:48.027Z] [INFO]: digging vs config for /Common/app2_t80_vs", - "[2023-04-27T20:22:48.027Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:48.028Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:48.028Z] [DEBUG]: [/Common/app2_t80_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:48.028Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect' ]", - "[2023-04-27T20:22:48.028Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details", - "[2023-04-27T20:22:48.028Z] [DEBUG]: [/Common/app2_t80_vs] found the following rules \n /Common/_sys_https_redirect", - "[2023-04-27T20:22:48.028Z] [INFO]: digging vs config for /Common/bigiq.benlab.io_t443_vs", - "[2023-04-27T20:22:48.028Z] [DEBUG]: digging pool config for /Common/bigiq.benlab.io_t443_pool", - "[2023-04-27T20:22:48.028Z] [DEBUG]: Pool /Common/bigiq.benlab.io_t443_pool members found: [ '/Common/10.200.244.15' ]", - "[2023-04-27T20:22:48.028Z] [DEBUG]: pool monitor references found: [ '/Common/https_head_f5' ]", - "[2023-04-27T20:22:48.028Z] [DEBUG]: pool monitor configs found: []", - "[2023-04-27T20:22:48.028Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_pool] references 1 system default monitors, compare previous arrays for details", - "[2023-04-27T20:22:48.028Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following pool /Common/bigiq.benlab.io_t443_pool", - "[2023-04-27T20:22:48.028Z] [DEBUG]: profile references found: [\n '/Common/ASM_basic_policy_1',\n '/Common/f5-tcp-progressive',\n '/Common/http',\n '/Common/websecurity'\n]", - "[2023-04-27T20:22:48.028Z] [DEBUG]: Found 4 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:48.028Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following profiles \n /Common/ASM_basic_policy_1 { }\n /Common/f5-tcp-progressive { }\n /Common/http { }\n /Common/websecurity { }", - "[2023-04-27T20:22:48.028Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:48.028Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found snat configuration \n type automap", - "[2023-04-27T20:22:48.028Z] [DEBUG]: policy references found: [ '/Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs' ]", - "[2023-04-27T20:22:48.028Z] [DEBUG]: policy found [/Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs]", - "[2023-04-27T20:22:48.028Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following policies \n /Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs { }", - "[2023-04-27T20:22:48.029Z] [INFO]: digging vs config for /Common/app2_t443_vs", - "[2023-04-27T20:22:48.029Z] [DEBUG]: digging pool config for /Common/app2_t80_pool", - "[2023-04-27T20:22:48.029Z] [DEBUG]: Pool /Common/app2_t80_pool members found: [ '/Common/app2_Node1', '/Common/app2_Node2' ]", - "[2023-04-27T20:22:48.029Z] [DEBUG]: pool monitor references found: [ '/Common/global_http_monitor', '/Common/global_https_monitor' ]", - "[2023-04-27T20:22:48.029Z] [DEBUG]: pool monitor configs found: [\n 'ltm monitor http /Common/global_http_monitor {\\n' +\n ' adaptive disabled\\n' +\n ' defaults-from /Common/http\\n' +\n ' interval 5\\n' +\n ' ip-dscp 0\\n' +\n ' recv \"ok 200\"\\n' +\n ' recv-disable none\\n' +\n ' send \"GET /anywebsite.com\\\\r\\\\n\"\\n' +\n ' time-until-up 0\\n' +\n ' timeout 16\\n' +\n '}',\n 'ltm monitor https /Common/global_https_monitor {\\n' +\n ' adaptive disabled\\n' +\n ' defaults-from /Common/https\\n' +\n ' interval 5\\n' +\n ' ip-dscp 0\\n' +\n ' recv \"201 continue\"\\n' +\n ' recv-disable none\\n' +\n ' send \"GET /any-secure-website.com\\\\r\\\\n\"\\n' +\n ' time-until-up 0\\n' +\n ' timeout 16\\n' +\n '}'\n]", - "[2023-04-27T20:22:48.029Z] [DEBUG]: [/Common/app2_t443_vs] found the following pool /Common/app2_t80_pool", - "[2023-04-27T20:22:48.029Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:48.029Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:48.029Z] [DEBUG]: [/Common/app2_t443_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:48.029Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:48.029Z] [DEBUG]: [/Common/app2_t443_vs] found snat configuration \n type automap", - "[2023-04-27T20:22:48.029Z] [INFO]: digging vs config for /Common/app3_t8443_vs", - "[2023-04-27T20:22:48.029Z] [DEBUG]: digging pool config for /Common/app3_t8443_pool", - "[2023-04-27T20:22:48.029Z] [DEBUG]: Pool /Common/app3_t8443_pool members found: [ '/Common/app3_Node1', '/Common/app3_Node2' ]", - "[2023-04-27T20:22:48.029Z] [DEBUG]: pool monitor references found: [\n '/Common/app1_tcp_half_open_quick_monitor',\n '/Common/http_head_f5',\n '/Common/http2_head_f5',\n '/Common/http',\n '/Common/tcp_half_open'\n]", - "[2023-04-27T20:22:48.030Z] [DEBUG]: pool monitor configs found: [\n 'ltm monitor tcp-half-open /Common/app1_tcp_half_open_quick_monitor {\\n' +\n ' defaults-from /Common/tcp_half_open\\n' +\n ' destination *:*\\n' +\n ' interval 1\\n' +\n ' time-until-up 0\\n' +\n ' timeout 4\\n' +\n '}'\n]", - "[2023-04-27T20:22:48.030Z] [DEBUG]: [/Common/app3_t8443_pool] references 4 system default monitors, compare previous arrays for details", - "[2023-04-27T20:22:48.030Z] [DEBUG]: [/Common/app3_t8443_vs] found the following pool /Common/app3_t8443_pool", - "[2023-04-27T20:22:48.030Z] [DEBUG]: profile references found: [\n '/Common/app3_clientssl',\n '/Common/app3_serverssl',\n '/Common/http',\n '/Common/tcp'\n]", - "[2023-04-27T20:22:48.030Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:48.030Z] [DEBUG]: [/Common/app3_t8443_vs] found the following profiles \n /Common/app3_clientssl {\n context clientside\n }\n /Common/app3_serverssl {\n context serverside\n }\n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:48.030Z] [DEBUG]: rule references found: [ '/Common/app3_rule', '/Common/app3_rule2', '/Common/app3_rule3' ]", - "[2023-04-27T20:22:48.030Z] [DEBUG]: [/Common/app3_t8443_vs] found the following rules \n /Common/app3_rule\n /Common/app3_rule2\n /Common/app3_rule3", - "[2023-04-27T20:22:48.030Z] [DEBUG]: [/Common/app3_t8443_vs] found snat configuration \n pool /Common/app3_snat_pool\n type snat", - "[2023-04-27T20:22:48.030Z] [DEBUG]: policy references found: [ '/Common/app3_ltm_policy' ]", - "[2023-04-27T20:22:48.030Z] [DEBUG]: policy found [/Common/app3_ltm_policy]", - "[2023-04-27T20:22:48.031Z] [DEBUG]: [/Common/app3_t8443_vs] found the following policies \n /Common/app3_ltm_policy { }", - "[2023-04-27T20:22:48.031Z] [DEBUG]: [/Common/app3_t8443_vs] found the following persistence \n /Common/app3_cookie {\n default yes\n }", - "[2023-04-27T20:22:48.031Z] [DEBUG]: [/Common/app3_t8443_vs] found the following persistence /Common/app3_srcAddr_persist", - "[2023-04-27T20:22:48.031Z] [INFO]: digging vs config for /Common/app4_t80_vs", - "[2023-04-27T20:22:48.031Z] [DEBUG]: digging pool config for /Common/app4_pool", - "[2023-04-27T20:22:48.031Z] [DEBUG]: Pool /Common/app4_pool members found: [ '/Common/api.chucknorris.io' ]", - "[2023-04-27T20:22:48.031Z] [DEBUG]: [/Common/app4_t80_vs] found the following pool /Common/app4_pool", - "[2023-04-27T20:22:48.031Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:48.031Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:48.031Z] [DEBUG]: [/Common/app4_t80_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:48.031Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect', '/Common/app4_pool_rule' ]", - "[2023-04-27T20:22:48.031Z] [DEBUG]: digging pool config for /Common/css_pool", - "[2023-04-27T20:22:48.031Z] [DEBUG]: digging pool config for /Common/jpg.pool", - "[2023-04-27T20:22:48.031Z] [DEBUG]: digging pool config for /Common/js.io_t80_pool", - "[2023-04-27T20:22:48.031Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details", - "[2023-04-27T20:22:48.032Z] [DEBUG]: [/Common/app4_t80_vs] found the following rules \n /Common/_sys_https_redirect\n /Common/app4_pool_rule", - "[2023-04-27T20:22:48.032Z] [DEBUG]: policy references found: [ '/Common/app4_ltPolicy' ]", - "[2023-04-27T20:22:48.032Z] [DEBUG]: policy found [/Common/app4_ltPolicy]", - "[2023-04-27T20:22:48.032Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/css_pool]", - "[2023-04-27T20:22:48.032Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/jpg.pool]", - "[2023-04-27T20:22:48.032Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/js.io_t80_pool]", - "[2023-04-27T20:22:48.032Z] [DEBUG]: [/Common/app4_t80_vs] found the following policies \n /Common/app4_ltPolicy { }", - "[2023-04-27T20:22:48.032Z] [INFO]: digging vs config for /Common/forwarder_net_0.0.0.0", - "[2023-04-27T20:22:48.032Z] [DEBUG]: profile references found: [ '/Common/fastl4_loose' ]", - "[2023-04-27T20:22:48.032Z] [DEBUG]: [/Common/forwarder_net_0.0.0.0] found the following profiles \n /Common/fastl4_loose { }", - "[2023-04-27T20:22:48.032Z] [INFO]: digging vs config for /foo/defaultsUDP_5555/serviceMain", - "[2023-04-27T20:22:48.032Z] [DEBUG]: digging pool config for /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1", - "[2023-04-27T20:22:48.032Z] [DEBUG]: Pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1 members found: [ '/foo/192.50.2.2' ]", - "[2023-04-27T20:22:48.032Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found the following pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1", - "[2023-04-27T20:22:48.032Z] [DEBUG]: profile references found: [ '/Common/udp' ]", - "[2023-04-27T20:22:48.032Z] [DEBUG]: Found 1 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:48.032Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found the following profiles \n /Common/udp { }", - "[2023-04-27T20:22:48.032Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:48.032Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found snat configuration \n type automap", - "[2023-04-27T20:22:48.032Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found the following persistence \n /Common/source_addr {\n default yes\n }", - "[2023-04-27T20:22:48.032Z] [INFO]: digging vs config for /hue-infra/hue-up/hue-up.benlab.io_t80_vs", - "[2023-04-27T20:22:48.032Z] [DEBUG]: digging pool config for /hue-infra/hue-up/hue-up.benlab.io_t80_pool", - "[2023-04-27T20:22:48.032Z] [DEBUG]: Pool /hue-infra/hue-up/hue-up.benlab.io_t80_pool members found: null", - "[2023-04-27T20:22:48.032Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found the following pool /hue-infra/hue-up/hue-up.benlab.io_t80_pool", - "[2023-04-27T20:22:48.032Z] [DEBUG]: profile references found: [ '/Common/f5-tcp-progressive', '/Common/http' ]", - "[2023-04-27T20:22:48.032Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:48.032Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found the following profiles \n /Common/f5-tcp-progressive { }\n /Common/http { }", - "[2023-04-27T20:22:48.032Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:48.032Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found snat configuration \n type automap", - "[2023-04-27T20:22:48.032Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found the following persistence \n /Common/cookie {\n default yes\n }", - "[2023-04-27T20:22:48.032Z] [INFO]: digging vs config for /hue-infra/hue-up/hue-up.benlab.io_t443_vs", - "[2023-04-27T20:22:48.032Z] [DEBUG]: digging pool config for /hue-infra/hue-up/hue-up.benlab.io_t443_pool", - "[2023-04-27T20:22:48.032Z] [DEBUG]: Pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool members found: null", - "[2023-04-27T20:22:48.032Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found the following pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool", - "[2023-04-27T20:22:48.033Z] [DEBUG]: profile references found: [ '/Common/f5-tcp-progressive', '/Common/http' ]", - "[2023-04-27T20:22:48.033Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:48.033Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found the following profiles \n /Common/f5-tcp-progressive { }\n /Common/http { }", - "[2023-04-27T20:22:48.033Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:48.033Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found snat configuration \n type automap", - "[2023-04-27T20:22:48.033Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found the following persistence \n /Common/cookie {\n default yes\n }", - "[2023-04-27T20:22:48.034Z] [INFO]: digging DO classes for base config info", - "[2023-04-27T20:22:48.034Z] [DEBUG]: no path \"cli global-settings\" in object", - "[2023-04-27T20:22:48.034Z] [DEBUG]: no path \"sys db\" in object", - "[2023-04-27T20:22:48.034Z] [DEBUG]: no path \"net trunk\" in object", - "[2023-04-27T20:22:48.034Z] [DEBUG]: no path \"net self\" in object", - "[2023-04-27T20:22:48.034Z] [DEBUG]: no path \"net route\" in object", - "[2023-04-27T20:22:48.034Z] [DEBUG]: no path \"net routing access-list\" in object", - "[2023-04-27T20:22:48.034Z] [DEBUG]: no path \"net routing as-path\" in object", - "[2023-04-27T20:22:48.034Z] [DEBUG]: no path \"net routing prefix-list\" in object", - "[2023-04-27T20:22:48.034Z] [DEBUG]: no path \"net routing route-map\" in object", - "[2023-04-27T20:22:48.034Z] [DEBUG]: no path \"net routing bgp\" in object", - "[2023-04-27T20:22:48.034Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", - "[2023-04-27T20:22:48.034Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", - "[2023-04-27T20:22:48.034Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", - "[2023-04-27T20:22:48.034Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", - "[2023-04-27T20:22:48.034Z] [DEBUG]: no path \"cm device-group\" in object", - "[2023-04-27T20:22:48.034Z] [DEBUG]: no path \"cm traffic-group\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"cm traffic-group\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"sys syslog\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"auth tacacs\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"auth remote-role role-info\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"auth ldap\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"sys snmp traps\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"sys snmp users\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"sys snmp communities\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"net dag-globals\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"ltm global-settings traffic-control\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"sys sshd\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"net tunnels vxlan\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"sys disk directory\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"gtm monitor http\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"gtm monitor https\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"gtm monitor gateway-icmp\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"gtm monitor tcp\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"gtm monitor udp\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"gtm prober-pool\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"security firewall policy\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"security firewall address-list\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"security firewall management-ip-rules\" in object", - "[2023-04-27T20:22:48.567Z] [DEBUG]: detected file: [/home/ted/f5-corkscrew/tests/artifacts/f5_corkscrew_test.qkview], size: [2580499]", - "[2023-04-27T20:22:48.569Z] [INFO]: config/profile_base.conf: default profile base file, stashing for later", - "[2023-04-27T20:22:48.569Z] [INFO]: config/low_profile_base.conf: default profile base file, stashing for later", - "[2023-04-27T20:22:48.570Z] [INFO]: Recieved .conf file of version: 15.1.8.2", - "[2023-04-27T20:22:48.841Z] [INFO]: digging vs config for /Common/app1_t80_vs", - "[2023-04-27T20:22:48.842Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:48.842Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:48.842Z] [DEBUG]: [/Common/app1_t80_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:48.842Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect' ]", - "[2023-04-27T20:22:48.842Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details", - "[2023-04-27T20:22:48.842Z] [DEBUG]: [/Common/app1_t80_vs] found the following rules \n /Common/_sys_https_redirect", - "[2023-04-27T20:22:48.842Z] [INFO]: digging vs config for /Common/app1_t443_vs", - "[2023-04-27T20:22:48.842Z] [DEBUG]: digging pool config for /Common/app1_t80_pool", - "[2023-04-27T20:22:48.843Z] [DEBUG]: Pool /Common/app1_t80_pool members found: [ '/Common/app1_Node1', '/Common/app1_Node2' ]", - "[2023-04-27T20:22:48.843Z] [DEBUG]: pool monitor references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:48.843Z] [DEBUG]: pool monitor configs found: []", - "[2023-04-27T20:22:48.843Z] [DEBUG]: [/Common/app1_t80_pool] references 2 system default monitors, compare previous arrays for details", - "[2023-04-27T20:22:48.843Z] [DEBUG]: [/Common/app1_t443_vs] found the following pool /Common/app1_t80_pool", - "[2023-04-27T20:22:48.843Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:48.843Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:48.843Z] [DEBUG]: [/Common/app1_t443_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:48.843Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:48.843Z] [DEBUG]: [/Common/app1_t443_vs] found snat configuration \n type automap", - "[2023-04-27T20:22:48.843Z] [INFO]: digging vs config for /Common/app2_t80_vs", - "[2023-04-27T20:22:48.843Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:48.843Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:48.843Z] [DEBUG]: [/Common/app2_t80_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:48.843Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect' ]", - "[2023-04-27T20:22:48.843Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details", - "[2023-04-27T20:22:48.843Z] [DEBUG]: [/Common/app2_t80_vs] found the following rules \n /Common/_sys_https_redirect", - "[2023-04-27T20:22:48.843Z] [INFO]: digging vs config for /Common/bigiq.benlab.io_t443_vs", - "[2023-04-27T20:22:48.843Z] [DEBUG]: digging pool config for /Common/bigiq.benlab.io_t443_pool", - "[2023-04-27T20:22:48.843Z] [DEBUG]: Pool /Common/bigiq.benlab.io_t443_pool members found: [ '/Common/10.200.244.15' ]", - "[2023-04-27T20:22:48.843Z] [DEBUG]: pool monitor references found: [ '/Common/https_head_f5' ]", - "[2023-04-27T20:22:48.843Z] [DEBUG]: pool monitor configs found: []", - "[2023-04-27T20:22:48.843Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_pool] references 1 system default monitors, compare previous arrays for details", - "[2023-04-27T20:22:48.843Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following pool /Common/bigiq.benlab.io_t443_pool", - "[2023-04-27T20:22:48.843Z] [DEBUG]: profile references found: [\n '/Common/ASM_basic_policy_1',\n '/Common/f5-tcp-progressive',\n '/Common/http',\n '/Common/websecurity'\n]", - "[2023-04-27T20:22:48.844Z] [DEBUG]: Found 4 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:48.844Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following profiles \n /Common/ASM_basic_policy_1 { }\n /Common/f5-tcp-progressive { }\n /Common/http { }\n /Common/websecurity { }", - "[2023-04-27T20:22:48.844Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:48.844Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found snat configuration \n type automap", - "[2023-04-27T20:22:48.844Z] [DEBUG]: policy references found: [ '/Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs' ]", - "[2023-04-27T20:22:48.844Z] [DEBUG]: policy found [/Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs]", - "[2023-04-27T20:22:48.844Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following policies \n /Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs { }", - "[2023-04-27T20:22:48.845Z] [INFO]: digging vs config for /Common/app2_t443_vs", - "[2023-04-27T20:22:48.845Z] [DEBUG]: digging pool config for /Common/app2_t80_pool", - "[2023-04-27T20:22:48.845Z] [DEBUG]: Pool /Common/app2_t80_pool members found: [ '/Common/app2_Node1', '/Common/app2_Node2' ]", - "[2023-04-27T20:22:48.845Z] [DEBUG]: pool monitor references found: [ '/Common/global_http_monitor', '/Common/global_https_monitor' ]", - "[2023-04-27T20:22:48.845Z] [DEBUG]: pool monitor configs found: [\n 'ltm monitor http /Common/global_http_monitor {\\n' +\n ' adaptive disabled\\n' +\n ' defaults-from /Common/http\\n' +\n ' interval 5\\n' +\n ' ip-dscp 0\\n' +\n ' recv \"ok 200\"\\n' +\n ' recv-disable none\\n' +\n ' send \"GET /anywebsite.com\\\\r\\\\n\"\\n' +\n ' time-until-up 0\\n' +\n ' timeout 16\\n' +\n '}',\n 'ltm monitor https /Common/global_https_monitor {\\n' +\n ' adaptive disabled\\n' +\n ' defaults-from /Common/https\\n' +\n ' interval 5\\n' +\n ' ip-dscp 0\\n' +\n ' recv \"201 continue\"\\n' +\n ' recv-disable none\\n' +\n ' send \"GET /any-secure-website.com\\\\r\\\\n\"\\n' +\n ' time-until-up 0\\n' +\n ' timeout 16\\n' +\n '}'\n]", - "[2023-04-27T20:22:48.845Z] [DEBUG]: [/Common/app2_t443_vs] found the following pool /Common/app2_t80_pool", - "[2023-04-27T20:22:48.845Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:48.845Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:48.845Z] [DEBUG]: [/Common/app2_t443_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:48.845Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:48.845Z] [DEBUG]: [/Common/app2_t443_vs] found snat configuration \n type automap", - "[2023-04-27T20:22:48.845Z] [INFO]: digging vs config for /Common/app3_t8443_vs", - "[2023-04-27T20:22:48.845Z] [DEBUG]: digging pool config for /Common/app3_t8443_pool", - "[2023-04-27T20:22:48.845Z] [DEBUG]: Pool /Common/app3_t8443_pool members found: [ '/Common/app3_Node1', '/Common/app3_Node2' ]", - "[2023-04-27T20:22:48.845Z] [DEBUG]: pool monitor references found: [\n '/Common/app1_tcp_half_open_quick_monitor',\n '/Common/http_head_f5',\n '/Common/http2_head_f5',\n '/Common/http',\n '/Common/tcp_half_open'\n]", - "[2023-04-27T20:22:48.845Z] [DEBUG]: pool monitor configs found: [\n 'ltm monitor tcp-half-open /Common/app1_tcp_half_open_quick_monitor {\\n' +\n ' defaults-from /Common/tcp_half_open\\n' +\n ' destination *:*\\n' +\n ' interval 1\\n' +\n ' time-until-up 0\\n' +\n ' timeout 4\\n' +\n '}'\n]", - "[2023-04-27T20:22:48.845Z] [DEBUG]: [/Common/app3_t8443_pool] references 4 system default monitors, compare previous arrays for details", - "[2023-04-27T20:22:48.845Z] [DEBUG]: [/Common/app3_t8443_vs] found the following pool /Common/app3_t8443_pool", - "[2023-04-27T20:22:48.845Z] [DEBUG]: profile references found: [\n '/Common/app3_clientssl',\n '/Common/app3_serverssl',\n '/Common/http',\n '/Common/tcp'\n]", - "[2023-04-27T20:22:48.845Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:48.845Z] [DEBUG]: [/Common/app3_t8443_vs] found the following profiles \n /Common/app3_clientssl {\n context clientside\n }\n /Common/app3_serverssl {\n context serverside\n }\n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:48.845Z] [DEBUG]: rule references found: [ '/Common/app3_rule', '/Common/app3_rule2', '/Common/app3_rule3' ]", - "[2023-04-27T20:22:48.846Z] [DEBUG]: [/Common/app3_t8443_vs] found the following rules \n /Common/app3_rule\n /Common/app3_rule2\n /Common/app3_rule3", - "[2023-04-27T20:22:48.846Z] [DEBUG]: [/Common/app3_t8443_vs] found snat configuration \n pool /Common/app3_snat_pool\n type snat", - "[2023-04-27T20:22:48.846Z] [DEBUG]: policy references found: [ '/Common/app3_ltm_policy' ]", - "[2023-04-27T20:22:48.846Z] [DEBUG]: policy found [/Common/app3_ltm_policy]", - "[2023-04-27T20:22:48.846Z] [DEBUG]: [/Common/app3_t8443_vs] found the following policies \n /Common/app3_ltm_policy { }", - "[2023-04-27T20:22:48.846Z] [DEBUG]: [/Common/app3_t8443_vs] found the following persistence \n /Common/app3_cookie {\n default yes\n }", - "[2023-04-27T20:22:48.846Z] [DEBUG]: [/Common/app3_t8443_vs] found the following persistence /Common/app3_srcAddr_persist", - "[2023-04-27T20:22:48.846Z] [INFO]: digging vs config for /Common/app4_t80_vs", - "[2023-04-27T20:22:48.846Z] [DEBUG]: digging pool config for /Common/app4_pool", - "[2023-04-27T20:22:48.846Z] [DEBUG]: Pool /Common/app4_pool members found: [ '/Common/api.chucknorris.io' ]", - "[2023-04-27T20:22:48.846Z] [DEBUG]: [/Common/app4_t80_vs] found the following pool /Common/app4_pool", - "[2023-04-27T20:22:48.846Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:48.846Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:48.846Z] [DEBUG]: [/Common/app4_t80_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:48.846Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect', '/Common/app4_pool_rule' ]", - "[2023-04-27T20:22:48.846Z] [DEBUG]: digging pool config for /Common/css_pool", - "[2023-04-27T20:22:48.846Z] [DEBUG]: digging pool config for /Common/jpg.pool", - "[2023-04-27T20:22:48.846Z] [DEBUG]: digging pool config for /Common/js.io_t80_pool", - "[2023-04-27T20:22:48.847Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details", - "[2023-04-27T20:22:48.847Z] [DEBUG]: [/Common/app4_t80_vs] found the following rules \n /Common/_sys_https_redirect\n /Common/app4_pool_rule", - "[2023-04-27T20:22:48.847Z] [DEBUG]: policy references found: [ '/Common/app4_ltPolicy' ]", - "[2023-04-27T20:22:48.847Z] [DEBUG]: policy found [/Common/app4_ltPolicy]", - "[2023-04-27T20:22:48.847Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/css_pool]", - "[2023-04-27T20:22:48.847Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/jpg.pool]", - "[2023-04-27T20:22:48.847Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/js.io_t80_pool]", - "[2023-04-27T20:22:48.847Z] [DEBUG]: [/Common/app4_t80_vs] found the following policies \n /Common/app4_ltPolicy { }", - "[2023-04-27T20:22:48.847Z] [INFO]: digging vs config for /Common/forwarder_net_0.0.0.0", - "[2023-04-27T20:22:48.847Z] [DEBUG]: profile references found: [ '/Common/fastl4_loose' ]", - "[2023-04-27T20:22:48.847Z] [DEBUG]: [/Common/forwarder_net_0.0.0.0] found the following profiles \n /Common/fastl4_loose { }", - "[2023-04-27T20:22:48.847Z] [INFO]: digging vs config for /foo/defaultsUDP_5555/serviceMain", - "[2023-04-27T20:22:48.847Z] [DEBUG]: digging pool config for /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1", - "[2023-04-27T20:22:48.847Z] [DEBUG]: Pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1 members found: [ '/foo/192.50.2.2' ]", - "[2023-04-27T20:22:48.847Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found the following pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1", - "[2023-04-27T20:22:48.847Z] [DEBUG]: profile references found: [ '/Common/udp' ]", - "[2023-04-27T20:22:48.847Z] [DEBUG]: Found 1 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:48.847Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found the following profiles \n /Common/udp { }", - "[2023-04-27T20:22:48.847Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:48.847Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found snat configuration \n type automap", - "[2023-04-27T20:22:48.847Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found the following persistence \n /Common/source_addr {\n default yes\n }", - "[2023-04-27T20:22:48.847Z] [INFO]: digging vs config for /hue-infra/hue-up/hue-up.benlab.io_t80_vs", - "[2023-04-27T20:22:48.847Z] [DEBUG]: digging pool config for /hue-infra/hue-up/hue-up.benlab.io_t80_pool", - "[2023-04-27T20:22:48.847Z] [DEBUG]: Pool /hue-infra/hue-up/hue-up.benlab.io_t80_pool members found: null", - "[2023-04-27T20:22:48.847Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found the following pool /hue-infra/hue-up/hue-up.benlab.io_t80_pool", - "[2023-04-27T20:22:48.847Z] [DEBUG]: profile references found: [ '/Common/f5-tcp-progressive', '/Common/http' ]", - "[2023-04-27T20:22:48.847Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:48.847Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found the following profiles \n /Common/f5-tcp-progressive { }\n /Common/http { }", - "[2023-04-27T20:22:48.847Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:48.847Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found snat configuration \n type automap", - "[2023-04-27T20:22:48.847Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found the following persistence \n /Common/cookie {\n default yes\n }", - "[2023-04-27T20:22:48.847Z] [INFO]: digging vs config for /hue-infra/hue-up/hue-up.benlab.io_t443_vs", - "[2023-04-27T20:22:48.847Z] [DEBUG]: digging pool config for /hue-infra/hue-up/hue-up.benlab.io_t443_pool", - "[2023-04-27T20:22:48.847Z] [DEBUG]: Pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool members found: null", - "[2023-04-27T20:22:48.847Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found the following pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool", - "[2023-04-27T20:22:48.847Z] [DEBUG]: profile references found: [ '/Common/f5-tcp-progressive', '/Common/http' ]", - "[2023-04-27T20:22:48.847Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:48.847Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found the following profiles \n /Common/f5-tcp-progressive { }\n /Common/http { }", - "[2023-04-27T20:22:48.847Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:48.847Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found snat configuration \n type automap", - "[2023-04-27T20:22:48.847Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found the following persistence \n /Common/cookie {\n default yes\n }", - "[2023-04-27T20:22:48.848Z] [INFO]: digging DO classes for base config info", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"cli global-settings\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"sys db\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"net trunk\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"net self\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"net route\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"net routing access-list\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"net routing as-path\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"net routing prefix-list\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"net routing route-map\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"net routing bgp\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"cm device-group\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"cm traffic-group\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"cm traffic-group\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"sys syslog\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"auth tacacs\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"auth remote-role role-info\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"auth ldap\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"sys snmp traps\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"sys snmp users\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"sys snmp communities\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"net dag-globals\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"ltm global-settings traffic-control\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"sys sshd\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"net tunnels vxlan\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"sys disk directory\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"gtm monitor http\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"gtm monitor https\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"gtm monitor gateway-icmp\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"gtm monitor tcp\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"gtm monitor udp\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"gtm prober-pool\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"security firewall policy\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"security firewall address-list\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"security firewall management-ip-rules\" in object", - "[2023-04-27T20:22:49.276Z] [DEBUG]: got .conf file [/home/ted/f5-corkscrew/tests/artifacts/f5_corkscrew_test.conf], size [76020]", - "[2023-04-27T20:22:49.276Z] [INFO]: Recieved .conf file of version: 15.1.8.2", - "[2023-04-27T20:22:49.293Z] [INFO]: digging vs config for /Common/app1_t80_vs", - "[2023-04-27T20:22:49.294Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:49.294Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:49.294Z] [DEBUG]: [/Common/app1_t80_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:49.294Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect' ]", - "[2023-04-27T20:22:49.294Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details", - "[2023-04-27T20:22:49.294Z] [DEBUG]: [/Common/app1_t80_vs] found the following rules \n /Common/_sys_https_redirect", - "[2023-04-27T20:22:49.294Z] [INFO]: digging vs config for /Common/app1_t443_vs", - "[2023-04-27T20:22:49.294Z] [DEBUG]: digging pool config for /Common/app1_t80_pool", - "[2023-04-27T20:22:49.294Z] [DEBUG]: Pool /Common/app1_t80_pool members found: [ '/Common/app1_Node1', '/Common/app1_Node2' ]", - "[2023-04-27T20:22:49.294Z] [DEBUG]: pool monitor references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:49.294Z] [DEBUG]: pool monitor configs found: []", - "[2023-04-27T20:22:49.294Z] [DEBUG]: [/Common/app1_t80_pool] references 2 system default monitors, compare previous arrays for details", - "[2023-04-27T20:22:49.294Z] [DEBUG]: [/Common/app1_t443_vs] found the following pool /Common/app1_t80_pool", - "[2023-04-27T20:22:49.294Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:49.294Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:49.294Z] [DEBUG]: [/Common/app1_t443_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:49.294Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:49.294Z] [DEBUG]: [/Common/app1_t443_vs] found snat configuration \n type automap", - "[2023-04-27T20:22:49.294Z] [INFO]: digging vs config for /Common/app2_t80_vs", - "[2023-04-27T20:22:49.294Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:49.294Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:49.294Z] [DEBUG]: [/Common/app2_t80_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:49.294Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect' ]", - "[2023-04-27T20:22:49.294Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details", - "[2023-04-27T20:22:49.294Z] [DEBUG]: [/Common/app2_t80_vs] found the following rules \n /Common/_sys_https_redirect", - "[2023-04-27T20:22:49.295Z] [INFO]: digging vs config for /Common/bigiq.benlab.io_t443_vs", - "[2023-04-27T20:22:49.295Z] [DEBUG]: digging pool config for /Common/bigiq.benlab.io_t443_pool", - "[2023-04-27T20:22:49.295Z] [DEBUG]: Pool /Common/bigiq.benlab.io_t443_pool members found: [ '/Common/10.200.244.15' ]", - "[2023-04-27T20:22:49.295Z] [DEBUG]: pool monitor references found: [ '/Common/https_head_f5' ]", - "[2023-04-27T20:22:49.295Z] [DEBUG]: pool monitor configs found: []", - "[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_pool] references 1 system default monitors, compare previous arrays for details", - "[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following pool /Common/bigiq.benlab.io_t443_pool", - "[2023-04-27T20:22:49.295Z] [DEBUG]: profile references found: [\n '/Common/ASM_basic_policy_1',\n '/Common/f5-tcp-progressive',\n '/Common/http',\n '/Common/websecurity'\n]", - "[2023-04-27T20:22:49.295Z] [DEBUG]: Found 4 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following profiles \n /Common/ASM_basic_policy_1 { }\n /Common/f5-tcp-progressive { }\n /Common/http { }\n /Common/websecurity { }", - "[2023-04-27T20:22:49.295Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found snat configuration \n type automap", - "[2023-04-27T20:22:49.295Z] [DEBUG]: policy references found: [ '/Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs' ]", - "[2023-04-27T20:22:49.295Z] [DEBUG]: policy found [/Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs]", - "[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following policies \n /Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs { }", - "[2023-04-27T20:22:49.295Z] [INFO]: digging vs config for /Common/app2_t443_vs", - "[2023-04-27T20:22:49.295Z] [DEBUG]: digging pool config for /Common/app2_t80_pool", - "[2023-04-27T20:22:49.295Z] [DEBUG]: Pool /Common/app2_t80_pool members found: [ '/Common/app2_Node1', '/Common/app2_Node2' ]", - "[2023-04-27T20:22:49.295Z] [DEBUG]: pool monitor references found: [ '/Common/global_http_monitor', '/Common/global_https_monitor' ]", - "[2023-04-27T20:22:49.295Z] [DEBUG]: pool monitor configs found: [\n 'ltm monitor http /Common/global_http_monitor {\\n' +\n ' adaptive disabled\\n' +\n ' defaults-from /Common/http\\n' +\n ' interval 5\\n' +\n ' ip-dscp 0\\n' +\n ' recv \"ok 200\"\\n' +\n ' recv-disable none\\n' +\n ' send \"GET /anywebsite.com\\\\r\\\\n\"\\n' +\n ' time-until-up 0\\n' +\n ' timeout 16\\n' +\n '}',\n 'ltm monitor https /Common/global_https_monitor {\\n' +\n ' adaptive disabled\\n' +\n ' defaults-from /Common/https\\n' +\n ' interval 5\\n' +\n ' ip-dscp 0\\n' +\n ' recv \"201 continue\"\\n' +\n ' recv-disable none\\n' +\n ' send \"GET /any-secure-website.com\\\\r\\\\n\"\\n' +\n ' time-until-up 0\\n' +\n ' timeout 16\\n' +\n '}'\n]", - "[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/app2_t443_vs] found the following pool /Common/app2_t80_pool", - "[2023-04-27T20:22:49.295Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:49.295Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/app2_t443_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:49.295Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/app2_t443_vs] found snat configuration \n type automap", - "[2023-04-27T20:22:49.295Z] [INFO]: digging vs config for /Common/app3_t8443_vs", - "[2023-04-27T20:22:49.295Z] [DEBUG]: digging pool config for /Common/app3_t8443_pool", - "[2023-04-27T20:22:49.295Z] [DEBUG]: Pool /Common/app3_t8443_pool members found: [ '/Common/app3_Node1', '/Common/app3_Node2' ]", - "[2023-04-27T20:22:49.295Z] [DEBUG]: pool monitor references found: [\n '/Common/app1_tcp_half_open_quick_monitor',\n '/Common/http_head_f5',\n '/Common/http2_head_f5',\n '/Common/http',\n '/Common/tcp_half_open'\n]", - "[2023-04-27T20:22:49.295Z] [DEBUG]: pool monitor configs found: [\n 'ltm monitor tcp-half-open /Common/app1_tcp_half_open_quick_monitor {\\n' +\n ' defaults-from /Common/tcp_half_open\\n' +\n ' destination *:*\\n' +\n ' interval 1\\n' +\n ' time-until-up 0\\n' +\n ' timeout 4\\n' +\n '}'\n]", - "[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/app3_t8443_pool] references 4 system default monitors, compare previous arrays for details", - "[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/app3_t8443_vs] found the following pool /Common/app3_t8443_pool", - "[2023-04-27T20:22:49.295Z] [DEBUG]: profile references found: [\n '/Common/app3_clientssl',\n '/Common/app3_serverssl',\n '/Common/http',\n '/Common/tcp'\n]", - "[2023-04-27T20:22:49.295Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/app3_t8443_vs] found the following profiles \n /Common/app3_clientssl {\n context clientside\n }\n /Common/app3_serverssl {\n context serverside\n }\n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:49.295Z] [DEBUG]: rule references found: [ '/Common/app3_rule', '/Common/app3_rule2', '/Common/app3_rule3' ]", - "[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/app3_t8443_vs] found the following rules \n /Common/app3_rule\n /Common/app3_rule2\n /Common/app3_rule3", - "[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/app3_t8443_vs] found snat configuration \n pool /Common/app3_snat_pool\n type snat", - "[2023-04-27T20:22:49.296Z] [DEBUG]: policy references found: [ '/Common/app3_ltm_policy' ]", - "[2023-04-27T20:22:49.296Z] [DEBUG]: policy found [/Common/app3_ltm_policy]", - "[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/app3_t8443_vs] found the following policies \n /Common/app3_ltm_policy { }", - "[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/app3_t8443_vs] found the following persistence \n /Common/app3_cookie {\n default yes\n }", - "[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/app3_t8443_vs] found the following persistence /Common/app3_srcAddr_persist", - "[2023-04-27T20:22:49.296Z] [INFO]: digging vs config for /Common/app4_t80_vs", - "[2023-04-27T20:22:49.296Z] [DEBUG]: digging pool config for /Common/app4_pool", - "[2023-04-27T20:22:49.296Z] [DEBUG]: Pool /Common/app4_pool members found: [ '/Common/api.chucknorris.io' ]", - "[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/app4_t80_vs] found the following pool /Common/app4_pool", - "[2023-04-27T20:22:49.296Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:49.296Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/app4_t80_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:49.296Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect', '/Common/app4_pool_rule' ]", - "[2023-04-27T20:22:49.296Z] [DEBUG]: digging pool config for /Common/css_pool", - "[2023-04-27T20:22:49.296Z] [DEBUG]: digging pool config for /Common/jpg.pool", - "[2023-04-27T20:22:49.296Z] [DEBUG]: digging pool config for /Common/js.io_t80_pool", - "[2023-04-27T20:22:49.296Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details", - "[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/app4_t80_vs] found the following rules \n /Common/_sys_https_redirect\n /Common/app4_pool_rule", - "[2023-04-27T20:22:49.296Z] [DEBUG]: policy references found: [ '/Common/app4_ltPolicy' ]", - "[2023-04-27T20:22:49.296Z] [DEBUG]: policy found [/Common/app4_ltPolicy]", - "[2023-04-27T20:22:49.296Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/css_pool]", - "[2023-04-27T20:22:49.296Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/jpg.pool]", - "[2023-04-27T20:22:49.296Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/js.io_t80_pool]", - "[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/app4_t80_vs] found the following policies \n /Common/app4_ltPolicy { }", - "[2023-04-27T20:22:49.296Z] [INFO]: digging vs config for /Common/forwarder_net_0.0.0.0", - "[2023-04-27T20:22:49.296Z] [DEBUG]: profile references found: [ '/Common/fastl4_loose' ]", - "[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/forwarder_net_0.0.0.0] found the following profiles \n /Common/fastl4_loose { }", - "[2023-04-27T20:22:49.296Z] [INFO]: digging DO classes for base config info", - "[2023-04-27T20:22:49.296Z] [DEBUG]: no path \"sys global-settings\" in object", - "[2023-04-27T20:22:49.296Z] [DEBUG]: no path \"cli global-settings\" in object", - "[2023-04-27T20:22:49.296Z] [DEBUG]: no path \"sys db\" in object", - "[2023-04-27T20:22:49.296Z] [DEBUG]: no path \"sys management-ip\" in object", - "[2023-04-27T20:22:49.296Z] [DEBUG]: no path \"sys provision\" in object", - "[2023-04-27T20:22:49.296Z] [DEBUG]: no path \"sys ntp\" in object", - "[2023-04-27T20:22:49.296Z] [DEBUG]: no path \"sys dns\" in object", - "[2023-04-27T20:22:49.296Z] [DEBUG]: no path \"net trunk\" in object", - "[2023-04-27T20:22:49.296Z] [DEBUG]: no path \"net vlan\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"net self\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"net route\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"net routing access-list\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"net routing as-path\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"net routing prefix-list\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"net routing route-map\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"net routing bgp\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"cm device-group\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"cm traffic-group\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"cm traffic-group\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"sys management-route\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"sys syslog\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"auth tacacs\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"net route-domain\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"auth remote-role role-info\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"auth ldap\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"sys snmp\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"sys snmp traps\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"sys snmp\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"sys snmp users\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"sys snmp communities\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"net dag-globals\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"sys httpd\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"ltm global-settings traffic-control\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"sys sshd\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"net tunnels tunnel\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"net tunnels vxlan\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"sys disk directory\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"gtm global-settings general\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"gtm datacenter\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"gtm server\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"gtm monitor http\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"gtm monitor https\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"gtm monitor gateway-icmp\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"gtm monitor tcp\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"gtm monitor udp\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"gtm prober-pool\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"security firewall policy\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"security firewall address-list\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"security firewall port-list\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"security firewall management-ip-rules\" in object", - "[2023-04-27T20:22:49.301Z] [INFO]: digging vs config for /Common/app4_t80_vs", - "[2023-04-27T20:22:49.301Z] [DEBUG]: digging pool config for /Common/app4_pool", - "[2023-04-27T20:22:49.301Z] [DEBUG]: Pool /Common/app4_pool members found: [ '/Common/api.chucknorris.io' ]", - "[2023-04-27T20:22:49.301Z] [DEBUG]: [/Common/app4_t80_vs] found the following pool /Common/app4_pool", - "[2023-04-27T20:22:49.301Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:49.301Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:49.301Z] [DEBUG]: [/Common/app4_t80_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:49.301Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect', '/Common/app4_pool_rule' ]", - "[2023-04-27T20:22:49.301Z] [DEBUG]: digging pool config for /Common/css_pool", - "[2023-04-27T20:22:49.301Z] [DEBUG]: digging pool config for /Common/jpg.pool", - "[2023-04-27T20:22:49.301Z] [DEBUG]: digging pool config for /Common/js.io_t80_pool", - "[2023-04-27T20:22:49.301Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details", - "[2023-04-27T20:22:49.301Z] [DEBUG]: [/Common/app4_t80_vs] found the following rules \n /Common/_sys_https_redirect\n /Common/app4_pool_rule", - "[2023-04-27T20:22:49.301Z] [DEBUG]: policy references found: [ '/Common/app4_ltPolicy' ]", - "[2023-04-27T20:22:49.301Z] [DEBUG]: policy found [/Common/app4_ltPolicy]", - "[2023-04-27T20:22:49.301Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/css_pool]", - "[2023-04-27T20:22:49.301Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/jpg.pool]", - "[2023-04-27T20:22:49.301Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/js.io_t80_pool]", - "[2023-04-27T20:22:49.301Z] [DEBUG]: [/Common/app4_t80_vs] found the following policies \n /Common/app4_ltPolicy { }", - "[2023-04-27T20:22:49.302Z] [DEBUG]: detected file: [/home/ted/f5-corkscrew/tests/artifacts/badArchive1.tar.gz], size: [28643]", - "[2023-04-27T20:22:49.304Z] [INFO]: Recieved .conf file of version: 15.1.0.4", - "[2023-04-27T20:22:49.304Z] [ERROR]: Parsing [config/partitions/bd1/bigip.conf], tmos version of this file does not match previous file [15.1.0.4]", - "[2023-04-27T20:22:49.304Z] [ERROR]: tmos version not detected -> meaning this probably is not a bigip.conf", - "[2023-04-27T20:22:49.305Z] [ERROR]: failed to extract any parent tmos matches from config/partitions/bd2/bigip.conf - might be a scripts file...", - "[2023-04-27T20:22:49.311Z] [INFO]: digging vs config for /bd1/defaultsUDP_444/serviceMain", - "[2023-04-27T20:22:49.311Z] [DEBUG]: digging pool config for /bd1/defaultsUDP_444/defaultsUDP_444_Pool1", - "[2023-04-27T20:22:49.311Z] [DEBUG]: Pool /bd1/defaultsUDP_444/defaultsUDP_444_Pool1 members found: [ '/bd1/192.0.2.2' ]", - "[2023-04-27T20:22:49.311Z] [DEBUG]: [/bd1/defaultsUDP_444/serviceMain] found the following pool /bd1/defaultsUDP_444/defaultsUDP_444_Pool1", - "[2023-04-27T20:22:49.311Z] [DEBUG]: profile references found: [ '/Common/udp' ]", - "[2023-04-27T20:22:49.311Z] [DEBUG]: Found 1 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:49.311Z] [DEBUG]: [/bd1/defaultsUDP_444/serviceMain] found the following profiles \n /Common/udp { }", - "[2023-04-27T20:22:49.311Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:49.311Z] [DEBUG]: [/bd1/defaultsUDP_444/serviceMain] found snat configuration \n type automap", - "[2023-04-27T20:22:49.311Z] [DEBUG]: [/bd1/defaultsUDP_444/serviceMain] found the following persistence \n /Common/source_addr {\n default yes\n }", - "[2023-04-27T20:22:49.311Z] [INFO]: digging vs config for /Common/app1_t80_vs", - "[2023-04-27T20:22:49.311Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:49.311Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:49.311Z] [DEBUG]: [/Common/app1_t80_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:49.311Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect' ]", - "[2023-04-27T20:22:49.311Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details", - "[2023-04-27T20:22:49.311Z] [DEBUG]: [/Common/app1_t80_vs] found the following rules \n /Common/_sys_https_redirect", - "[2023-04-27T20:22:49.311Z] [INFO]: digging vs config for /Common/app1_t443_vs", - "[2023-04-27T20:22:49.311Z] [DEBUG]: digging pool config for /Common/app1_t80_pool", - "[2023-04-27T20:22:49.311Z] [DEBUG]: Pool /Common/app1_t80_pool members found: [ '/Common/app1_Node1', '/Common/app1_Node2' ]", - "[2023-04-27T20:22:49.312Z] [DEBUG]: pool monitor references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:49.312Z] [DEBUG]: pool monitor configs found: []", - "[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app1_t80_pool] references 2 system default monitors, compare previous arrays for details", - "[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app1_t443_vs] found the following pool /Common/app1_t80_pool", - "[2023-04-27T20:22:49.312Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:49.312Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app1_t443_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:49.312Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app1_t443_vs] found snat configuration \n type automap", - "[2023-04-27T20:22:49.312Z] [INFO]: digging vs config for /Common/app2_t80_vs", - "[2023-04-27T20:22:49.312Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:49.312Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app2_t80_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:49.312Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect' ]", - "[2023-04-27T20:22:49.312Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details", - "[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app2_t80_vs] found the following rules \n /Common/_sys_https_redirect", - "[2023-04-27T20:22:49.312Z] [INFO]: digging vs config for /Common/app2_t443_vs", - "[2023-04-27T20:22:49.312Z] [DEBUG]: digging pool config for /Common/app2_t80_pool", - "[2023-04-27T20:22:49.312Z] [DEBUG]: Pool /Common/app2_t80_pool members found: [ '/Common/app2_Node1', '/Common/app2_Node2' ]", - "[2023-04-27T20:22:49.312Z] [DEBUG]: pool monitor references found: [ '/Common/global_http_monitor', '/Common/global_https_monitor' ]", - "[2023-04-27T20:22:49.312Z] [DEBUG]: pool monitor configs found: [\n 'ltm monitor http /Common/global_http_monitor {\\n' +\n ' adaptive disabled\\n' +\n ' defaults-from /Common/http\\n' +\n ' interval 5\\n' +\n ' ip-dscp 0\\n' +\n ' recv \"ok 200\"\\n' +\n ' recv-disable none\\n' +\n ' send \"GET /anywebsite.com\\\\r\\\\n\"\\n' +\n ' time-until-up 0\\n' +\n ' timeout 16\\n' +\n '}',\n 'ltm monitor https /Common/global_https_monitor {\\n' +\n ' adaptive disabled\\n' +\n ' defaults-from /Common/https\\n' +\n ' interval 5\\n' +\n ' ip-dscp 0\\n' +\n ' recv \"201 continue\"\\n' +\n ' recv-disable none\\n' +\n ' send \"GET /any-secure-website.com\\\\r\\\\n\"\\n' +\n ' time-until-up 0\\n' +\n ' timeout 16\\n' +\n '}'\n]", - "[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app2_t443_vs] found the following pool /Common/app2_t80_pool", - "[2023-04-27T20:22:49.312Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:49.312Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app2_t443_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:49.312Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app2_t443_vs] found snat configuration \n type automap", - "[2023-04-27T20:22:49.312Z] [INFO]: digging vs config for /Common/app3_t8443_vs", - "[2023-04-27T20:22:49.312Z] [DEBUG]: digging pool config for /Common/app3_t8443_pool", - "[2023-04-27T20:22:49.312Z] [DEBUG]: Pool /Common/app3_t8443_pool members found: [ '/Common/app3_Node1', '/Common/app3_Node2' ]", - "[2023-04-27T20:22:49.312Z] [DEBUG]: pool monitor references found: [\n '/Common/app1_tcp_half_open_quick_monitor',\n '/Common/http_head_f5',\n '/Common/http2_head_f5',\n '/Common/http',\n '/Common/tcp_half_open'\n]", - "[2023-04-27T20:22:49.312Z] [DEBUG]: pool monitor configs found: [\n 'ltm monitor tcp-half-open /Common/app1_tcp_half_open_quick_monitor {\\n' +\n ' defaults-from /Common/tcp_half_open\\n' +\n ' destination *:*\\n' +\n ' interval 1\\n' +\n ' time-until-up 0\\n' +\n ' timeout 4\\n' +\n '}'\n]", - "[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app3_t8443_pool] references 4 system default monitors, compare previous arrays for details", - "[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app3_t8443_vs] found the following pool /Common/app3_t8443_pool", - "[2023-04-27T20:22:49.312Z] [DEBUG]: profile references found: [\n '/Common/app3_clientssl',\n '/Common/app3_serverssl',\n '/Common/http',\n '/Common/tcp'\n]", - "[2023-04-27T20:22:49.312Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app3_t8443_vs] found the following profiles \n /Common/app3_clientssl {\n context clientside\n }\n /Common/app3_serverssl {\n context serverside\n }\n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:49.312Z] [DEBUG]: rule references found: [ '/Common/app3_rule', '/Common/app3_rule2', '/Common/app3_rule3' ]", - "[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app3_t8443_vs] found the following rules \n /Common/app3_rule\n /Common/app3_rule2\n /Common/app3_rule3", - "[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app3_t8443_vs] found snat configuration \n pool /Common/app3_snat_pool\n type snat", - "[2023-04-27T20:22:49.312Z] [DEBUG]: policy references found: [ '/Common/app3_ltm_policy' ]", - "[2023-04-27T20:22:49.312Z] [DEBUG]: policy found [/Common/app3_ltm_policy]", - "[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app3_t8443_vs] found the following policies \n /Common/app3_ltm_policy { }", - "[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app3_t8443_vs] found the following persistence \n /Common/app3_cookie {\n default yes\n }", - "[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app3_t8443_vs] found the following persistence /Common/app3_srcAddr_persist", - "[2023-04-27T20:22:49.313Z] [INFO]: digging vs config for /Common/app4_t80_vs", - "[2023-04-27T20:22:49.313Z] [DEBUG]: digging pool config for /Common/app4_pool", - "[2023-04-27T20:22:49.313Z] [DEBUG]: Pool /Common/app4_pool members found: [ '/Common/api.chucknorris.io' ]", - "[2023-04-27T20:22:49.313Z] [DEBUG]: [/Common/app4_t80_vs] found the following pool /Common/app4_pool", - "[2023-04-27T20:22:49.313Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:49.313Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:49.313Z] [DEBUG]: [/Common/app4_t80_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:49.313Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect', '/Common/app4_pool_rule' ]", - "[2023-04-27T20:22:49.313Z] [DEBUG]: digging pool config for /Common/css_pool", - "[2023-04-27T20:22:49.313Z] [DEBUG]: digging pool config for /Common/jpg.pool", - "[2023-04-27T20:22:49.313Z] [DEBUG]: digging pool config for /Common/js.io_t80_pool", - "[2023-04-27T20:22:49.313Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details", - "[2023-04-27T20:22:49.313Z] [DEBUG]: [/Common/app4_t80_vs] found the following rules \n /Common/_sys_https_redirect\n /Common/app4_pool_rule", - "[2023-04-27T20:22:49.313Z] [DEBUG]: policy references found: [ '/Common/app4_ltPolicy' ]", - "[2023-04-27T20:22:49.313Z] [DEBUG]: policy found [/Common/app4_ltPolicy]", - "[2023-04-27T20:22:49.313Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/css_pool]", - "[2023-04-27T20:22:49.313Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/jpg.pool]", - "[2023-04-27T20:22:49.313Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/js.io_t80_pool]", - "[2023-04-27T20:22:49.313Z] [DEBUG]: [/Common/app4_t80_vs] found the following policies \n /Common/app4_ltPolicy { }", - "[2023-04-27T20:22:49.313Z] [INFO]: digging vs config for /Common/forwarder_net_0.0.0.0", - "[2023-04-27T20:22:49.313Z] [DEBUG]: profile references found: [ '/Common/fastl4_loose' ]", - "[2023-04-27T20:22:49.313Z] [DEBUG]: [/Common/forwarder_net_0.0.0.0] found the following profiles \n /Common/fastl4_loose { }", - "[2023-04-27T20:22:49.313Z] [INFO]: digging DO classes for base config info", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"sys global-settings\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"cli global-settings\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"sys db\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"sys management-ip\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"sys provision\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"sys ntp\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"sys dns\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"net trunk\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"net vlan\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"net self\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"net route\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"net routing access-list\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"net routing as-path\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"net routing prefix-list\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"net routing route-map\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"net routing bgp\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"cm device-group\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"cm traffic-group\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"cm traffic-group\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"sys management-route\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"sys syslog\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"auth tacacs\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"net route-domain\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"auth remote-role role-info\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"auth ldap\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"sys snmp\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"sys snmp traps\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"sys snmp\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"sys snmp users\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"sys snmp communities\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"net dag-globals\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"sys httpd\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"ltm global-settings traffic-control\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"sys sshd\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"net tunnels tunnel\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"net tunnels vxlan\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"sys disk directory\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"gtm global-settings general\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"gtm datacenter\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"gtm server\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"gtm monitor http\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"gtm monitor https\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"gtm monitor gateway-icmp\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"gtm monitor tcp\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"gtm monitor udp\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"gtm prober-pool\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"security firewall policy\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"security firewall address-list\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"security firewall port-list\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"security firewall management-ip-rules\" in object", - "[2023-04-27T20:22:49.336Z] [DEBUG]: detected file: [/home/ted/f5-corkscrew/tests/artifacts/f5_corkscrew_test.ucs], size: [43567]", - "[2023-04-27T20:22:49.338Z] [INFO]: Recieved .conf file of version: 15.1.8.2", - "[2023-04-27T20:22:49.362Z] [INFO]: digging vs config for /Common/app1_t80_vs", - "[2023-04-27T20:22:49.362Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:49.362Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:49.362Z] [DEBUG]: [/Common/app1_t80_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:49.362Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect' ]", - "[2023-04-27T20:22:49.362Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details", - "[2023-04-27T20:22:49.362Z] [DEBUG]: [/Common/app1_t80_vs] found the following rules \n /Common/_sys_https_redirect", - "[2023-04-27T20:22:49.362Z] [INFO]: digging vs config for /Common/app1_t443_vs", - "[2023-04-27T20:22:49.362Z] [DEBUG]: digging pool config for /Common/app1_t80_pool", - "[2023-04-27T20:22:49.362Z] [DEBUG]: Pool /Common/app1_t80_pool members found: [ '/Common/app1_Node1', '/Common/app1_Node2' ]", - "[2023-04-27T20:22:49.362Z] [DEBUG]: pool monitor references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:49.362Z] [DEBUG]: pool monitor configs found: []", - "[2023-04-27T20:22:49.362Z] [DEBUG]: [/Common/app1_t80_pool] references 2 system default monitors, compare previous arrays for details", - "[2023-04-27T20:22:49.362Z] [DEBUG]: [/Common/app1_t443_vs] found the following pool /Common/app1_t80_pool", - "[2023-04-27T20:22:49.362Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:49.362Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:49.362Z] [DEBUG]: [/Common/app1_t443_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:49.362Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:49.362Z] [DEBUG]: [/Common/app1_t443_vs] found snat configuration \n type automap", - "[2023-04-27T20:22:49.362Z] [INFO]: digging vs config for /Common/app2_t80_vs", - "[2023-04-27T20:22:49.362Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:49.362Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:49.362Z] [DEBUG]: [/Common/app2_t80_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:49.362Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect' ]", - "[2023-04-27T20:22:49.362Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details", - "[2023-04-27T20:22:49.362Z] [DEBUG]: [/Common/app2_t80_vs] found the following rules \n /Common/_sys_https_redirect", - "[2023-04-27T20:22:49.362Z] [INFO]: digging vs config for /Common/bigiq.benlab.io_t443_vs", - "[2023-04-27T20:22:49.362Z] [DEBUG]: digging pool config for /Common/bigiq.benlab.io_t443_pool", - "[2023-04-27T20:22:49.362Z] [DEBUG]: Pool /Common/bigiq.benlab.io_t443_pool members found: [ '/Common/10.200.244.15' ]", - "[2023-04-27T20:22:49.362Z] [DEBUG]: pool monitor references found: [ '/Common/https_head_f5' ]", - "[2023-04-27T20:22:49.363Z] [DEBUG]: pool monitor configs found: []", - "[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_pool] references 1 system default monitors, compare previous arrays for details", - "[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following pool /Common/bigiq.benlab.io_t443_pool", - "[2023-04-27T20:22:49.363Z] [DEBUG]: profile references found: [\n '/Common/ASM_basic_policy_1',\n '/Common/f5-tcp-progressive',\n '/Common/http',\n '/Common/websecurity'\n]", - "[2023-04-27T20:22:49.363Z] [DEBUG]: Found 4 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following profiles \n /Common/ASM_basic_policy_1 { }\n /Common/f5-tcp-progressive { }\n /Common/http { }\n /Common/websecurity { }", - "[2023-04-27T20:22:49.363Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found snat configuration \n type automap", - "[2023-04-27T20:22:49.363Z] [DEBUG]: policy references found: [ '/Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs' ]", - "[2023-04-27T20:22:49.363Z] [DEBUG]: policy found [/Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs]", - "[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following policies \n /Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs { }", - "[2023-04-27T20:22:49.363Z] [INFO]: digging vs config for /Common/app2_t443_vs", - "[2023-04-27T20:22:49.363Z] [DEBUG]: digging pool config for /Common/app2_t80_pool", - "[2023-04-27T20:22:49.363Z] [DEBUG]: Pool /Common/app2_t80_pool members found: [ '/Common/app2_Node1', '/Common/app2_Node2' ]", - "[2023-04-27T20:22:49.363Z] [DEBUG]: pool monitor references found: [ '/Common/global_http_monitor', '/Common/global_https_monitor' ]", - "[2023-04-27T20:22:49.363Z] [DEBUG]: pool monitor configs found: [\n 'ltm monitor http /Common/global_http_monitor {\\n' +\n ' adaptive disabled\\n' +\n ' defaults-from /Common/http\\n' +\n ' interval 5\\n' +\n ' ip-dscp 0\\n' +\n ' recv \"ok 200\"\\n' +\n ' recv-disable none\\n' +\n ' send \"GET /anywebsite.com\\\\r\\\\n\"\\n' +\n ' time-until-up 0\\n' +\n ' timeout 16\\n' +\n '}',\n 'ltm monitor https /Common/global_https_monitor {\\n' +\n ' adaptive disabled\\n' +\n ' defaults-from /Common/https\\n' +\n ' interval 5\\n' +\n ' ip-dscp 0\\n' +\n ' recv \"201 continue\"\\n' +\n ' recv-disable none\\n' +\n ' send \"GET /any-secure-website.com\\\\r\\\\n\"\\n' +\n ' time-until-up 0\\n' +\n ' timeout 16\\n' +\n '}'\n]", - "[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/app2_t443_vs] found the following pool /Common/app2_t80_pool", - "[2023-04-27T20:22:49.363Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:49.363Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/app2_t443_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:49.363Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/app2_t443_vs] found snat configuration \n type automap", - "[2023-04-27T20:22:49.363Z] [INFO]: digging vs config for /Common/app3_t8443_vs", - "[2023-04-27T20:22:49.363Z] [DEBUG]: digging pool config for /Common/app3_t8443_pool", - "[2023-04-27T20:22:49.363Z] [DEBUG]: Pool /Common/app3_t8443_pool members found: [ '/Common/app3_Node1', '/Common/app3_Node2' ]", - "[2023-04-27T20:22:49.363Z] [DEBUG]: pool monitor references found: [\n '/Common/app1_tcp_half_open_quick_monitor',\n '/Common/http_head_f5',\n '/Common/http2_head_f5',\n '/Common/http',\n '/Common/tcp_half_open'\n]", - "[2023-04-27T20:22:49.363Z] [DEBUG]: pool monitor configs found: [\n 'ltm monitor tcp-half-open /Common/app1_tcp_half_open_quick_monitor {\\n' +\n ' defaults-from /Common/tcp_half_open\\n' +\n ' destination *:*\\n' +\n ' interval 1\\n' +\n ' time-until-up 0\\n' +\n ' timeout 4\\n' +\n '}'\n]", - "[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/app3_t8443_pool] references 4 system default monitors, compare previous arrays for details", - "[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/app3_t8443_vs] found the following pool /Common/app3_t8443_pool", - "[2023-04-27T20:22:49.363Z] [DEBUG]: profile references found: [\n '/Common/app3_clientssl',\n '/Common/app3_serverssl',\n '/Common/http',\n '/Common/tcp'\n]", - "[2023-04-27T20:22:49.363Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/app3_t8443_vs] found the following profiles \n /Common/app3_clientssl {\n context clientside\n }\n /Common/app3_serverssl {\n context serverside\n }\n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:49.363Z] [DEBUG]: rule references found: [ '/Common/app3_rule', '/Common/app3_rule2', '/Common/app3_rule3' ]", - "[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/app3_t8443_vs] found the following rules \n /Common/app3_rule\n /Common/app3_rule2\n /Common/app3_rule3", - "[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/app3_t8443_vs] found snat configuration \n pool /Common/app3_snat_pool\n type snat", - "[2023-04-27T20:22:49.363Z] [DEBUG]: policy references found: [ '/Common/app3_ltm_policy' ]", - "[2023-04-27T20:22:49.363Z] [DEBUG]: policy found [/Common/app3_ltm_policy]", - "[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/app3_t8443_vs] found the following policies \n /Common/app3_ltm_policy { }", - "[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/app3_t8443_vs] found the following persistence \n /Common/app3_cookie {\n default yes\n }", - "[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/app3_t8443_vs] found the following persistence /Common/app3_srcAddr_persist", - "[2023-04-27T20:22:49.363Z] [INFO]: digging vs config for /Common/app4_t80_vs", - "[2023-04-27T20:22:49.363Z] [DEBUG]: digging pool config for /Common/app4_pool", - "[2023-04-27T20:22:49.363Z] [DEBUG]: Pool /Common/app4_pool members found: [ '/Common/api.chucknorris.io' ]", - "[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/app4_t80_vs] found the following pool /Common/app4_pool", - "[2023-04-27T20:22:49.363Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:49.363Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/app4_t80_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:49.363Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect', '/Common/app4_pool_rule' ]", - "[2023-04-27T20:22:49.364Z] [DEBUG]: digging pool config for /Common/css_pool", - "[2023-04-27T20:22:49.364Z] [DEBUG]: digging pool config for /Common/jpg.pool", - "[2023-04-27T20:22:49.364Z] [DEBUG]: digging pool config for /Common/js.io_t80_pool", - "[2023-04-27T20:22:49.364Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details", - "[2023-04-27T20:22:49.364Z] [DEBUG]: [/Common/app4_t80_vs] found the following rules \n /Common/_sys_https_redirect\n /Common/app4_pool_rule", - "[2023-04-27T20:22:49.364Z] [DEBUG]: policy references found: [ '/Common/app4_ltPolicy' ]", - "[2023-04-27T20:22:49.364Z] [DEBUG]: policy found [/Common/app4_ltPolicy]", - "[2023-04-27T20:22:49.364Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/css_pool]", - "[2023-04-27T20:22:49.364Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/jpg.pool]", - "[2023-04-27T20:22:49.364Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/js.io_t80_pool]", - "[2023-04-27T20:22:49.364Z] [DEBUG]: [/Common/app4_t80_vs] found the following policies \n /Common/app4_ltPolicy { }", - "[2023-04-27T20:22:49.364Z] [INFO]: digging vs config for /Common/forwarder_net_0.0.0.0", - "[2023-04-27T20:22:49.364Z] [DEBUG]: profile references found: [ '/Common/fastl4_loose' ]", - "[2023-04-27T20:22:49.364Z] [DEBUG]: [/Common/forwarder_net_0.0.0.0] found the following profiles \n /Common/fastl4_loose { }", - "[2023-04-27T20:22:49.364Z] [INFO]: digging vs config for /foo/defaultsUDP_5555/serviceMain", - "[2023-04-27T20:22:49.364Z] [DEBUG]: digging pool config for /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1", - "[2023-04-27T20:22:49.364Z] [DEBUG]: Pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1 members found: [ '/foo/192.50.2.2' ]", - "[2023-04-27T20:22:49.364Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found the following pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1", - "[2023-04-27T20:22:49.364Z] [DEBUG]: profile references found: [ '/Common/udp' ]", - "[2023-04-27T20:22:49.364Z] [DEBUG]: Found 1 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:49.364Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found the following profiles \n /Common/udp { }", - "[2023-04-27T20:22:49.364Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:49.364Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found snat configuration \n type automap", - "[2023-04-27T20:22:49.364Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found the following persistence \n /Common/source_addr {\n default yes\n }", - "[2023-04-27T20:22:49.364Z] [INFO]: digging vs config for /hue-infra/hue-up/hue-up.benlab.io_t80_vs", - "[2023-04-27T20:22:49.364Z] [DEBUG]: digging pool config for /hue-infra/hue-up/hue-up.benlab.io_t80_pool", - "[2023-04-27T20:22:49.364Z] [DEBUG]: Pool /hue-infra/hue-up/hue-up.benlab.io_t80_pool members found: null", - "[2023-04-27T20:22:49.364Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found the following pool /hue-infra/hue-up/hue-up.benlab.io_t80_pool", - "[2023-04-27T20:22:49.364Z] [DEBUG]: profile references found: [ '/Common/f5-tcp-progressive', '/Common/http' ]", - "[2023-04-27T20:22:49.364Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:49.364Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found the following profiles \n /Common/f5-tcp-progressive { }\n /Common/http { }", - "[2023-04-27T20:22:49.364Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:49.364Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found snat configuration \n type automap", - "[2023-04-27T20:22:49.364Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found the following persistence \n /Common/cookie {\n default yes\n }", - "[2023-04-27T20:22:49.364Z] [INFO]: digging vs config for /hue-infra/hue-up/hue-up.benlab.io_t443_vs", - "[2023-04-27T20:22:49.364Z] [DEBUG]: digging pool config for /hue-infra/hue-up/hue-up.benlab.io_t443_pool", - "[2023-04-27T20:22:49.364Z] [DEBUG]: Pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool members found: null", - "[2023-04-27T20:22:49.364Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found the following pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool", - "[2023-04-27T20:22:49.364Z] [DEBUG]: profile references found: [ '/Common/f5-tcp-progressive', '/Common/http' ]", - "[2023-04-27T20:22:49.364Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:49.364Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found the following profiles \n /Common/f5-tcp-progressive { }\n /Common/http { }", - "[2023-04-27T20:22:49.364Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:49.364Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found snat configuration \n type automap", - "[2023-04-27T20:22:49.364Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found the following persistence \n /Common/cookie {\n default yes\n }", - "[2023-04-27T20:22:49.365Z] [INFO]: digging DO classes for base config info", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"cli global-settings\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"sys db\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"net trunk\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"net self\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"net route\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"net routing access-list\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"net routing as-path\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"net routing prefix-list\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"net routing route-map\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"net routing bgp\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"cm device-group\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"cm traffic-group\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"cm traffic-group\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"sys syslog\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"auth tacacs\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"auth remote-role role-info\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"auth ldap\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"sys snmp traps\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"sys snmp users\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"sys snmp communities\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"net dag-globals\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"ltm global-settings traffic-control\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"sys sshd\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"net tunnels vxlan\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"sys disk directory\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"gtm monitor http\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"gtm monitor https\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"gtm monitor gateway-icmp\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"gtm monitor tcp\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"gtm monitor udp\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"gtm prober-pool\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"security firewall policy\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"security firewall address-list\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"security firewall management-ip-rules\" in object", - "[2023-04-27T20:22:49.375Z] [INFO]: digging vs config for /Common/app4_t80_vs", - "[2023-04-27T20:22:49.375Z] [DEBUG]: digging pool config for /Common/app4_pool", - "[2023-04-27T20:22:49.375Z] [DEBUG]: Pool /Common/app4_pool members found: [ '/Common/api.chucknorris.io' ]", - "[2023-04-27T20:22:49.375Z] [DEBUG]: [/Common/app4_t80_vs] found the following pool /Common/app4_pool", - "[2023-04-27T20:22:49.375Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:49.375Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:49.375Z] [DEBUG]: [/Common/app4_t80_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:49.375Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect', '/Common/app4_pool_rule' ]", - "[2023-04-27T20:22:49.375Z] [DEBUG]: digging pool config for /Common/css_pool", - "[2023-04-27T20:22:49.375Z] [DEBUG]: digging pool config for /Common/jpg.pool", - "[2023-04-27T20:22:49.375Z] [DEBUG]: digging pool config for /Common/js.io_t80_pool", - "[2023-04-27T20:22:49.375Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details", - "[2023-04-27T20:22:49.375Z] [DEBUG]: [/Common/app4_t80_vs] found the following rules \n /Common/_sys_https_redirect\n /Common/app4_pool_rule", - "[2023-04-27T20:22:49.375Z] [DEBUG]: policy references found: [ '/Common/app4_ltPolicy' ]", - "[2023-04-27T20:22:49.375Z] [DEBUG]: policy found [/Common/app4_ltPolicy]", - "[2023-04-27T20:22:49.375Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/css_pool]", - "[2023-04-27T20:22:49.375Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/jpg.pool]", - "[2023-04-27T20:22:49.375Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/js.io_t80_pool]", - "[2023-04-27T20:22:49.375Z] [DEBUG]: [/Common/app4_t80_vs] found the following policies \n /Common/app4_ltPolicy { }", - "[2023-04-27T20:22:49.918Z] [DEBUG]: detected file: [/home/ted/f5-corkscrew/tests/artifacts/f5_corkscrew_test.qkview], size: [2580499]", - "[2023-04-27T20:22:49.921Z] [INFO]: config/profile_base.conf: default profile base file, stashing for later", - "[2023-04-27T20:22:49.921Z] [INFO]: config/low_profile_base.conf: default profile base file, stashing for later", - "[2023-04-27T20:22:49.922Z] [INFO]: Recieved .conf file of version: 15.1.8.2", - "[2023-04-27T20:22:50.161Z] [INFO]: digging vs config for /Common/app1_t80_vs", - "[2023-04-27T20:22:50.161Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:50.161Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:50.161Z] [DEBUG]: [/Common/app1_t80_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:50.161Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect' ]", - "[2023-04-27T20:22:50.161Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details", - "[2023-04-27T20:22:50.161Z] [DEBUG]: [/Common/app1_t80_vs] found the following rules \n /Common/_sys_https_redirect", - "[2023-04-27T20:22:50.161Z] [INFO]: digging vs config for /Common/app1_t443_vs", - "[2023-04-27T20:22:50.161Z] [DEBUG]: digging pool config for /Common/app1_t80_pool", - "[2023-04-27T20:22:50.161Z] [DEBUG]: Pool /Common/app1_t80_pool members found: [ '/Common/app1_Node1', '/Common/app1_Node2' ]", - "[2023-04-27T20:22:50.162Z] [DEBUG]: pool monitor references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:50.162Z] [DEBUG]: pool monitor configs found: []", - "[2023-04-27T20:22:50.162Z] [DEBUG]: [/Common/app1_t80_pool] references 2 system default monitors, compare previous arrays for details", - "[2023-04-27T20:22:50.162Z] [DEBUG]: [/Common/app1_t443_vs] found the following pool /Common/app1_t80_pool", - "[2023-04-27T20:22:50.162Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:50.162Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:50.162Z] [DEBUG]: [/Common/app1_t443_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:50.162Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:50.162Z] [DEBUG]: [/Common/app1_t443_vs] found snat configuration \n type automap", - "[2023-04-27T20:22:50.162Z] [INFO]: digging vs config for /Common/app2_t80_vs", - "[2023-04-27T20:22:50.162Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:50.162Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:50.162Z] [DEBUG]: [/Common/app2_t80_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:50.162Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect' ]", - "[2023-04-27T20:22:50.162Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details", - "[2023-04-27T20:22:50.162Z] [DEBUG]: [/Common/app2_t80_vs] found the following rules \n /Common/_sys_https_redirect", - "[2023-04-27T20:22:50.162Z] [INFO]: digging vs config for /Common/bigiq.benlab.io_t443_vs", - "[2023-04-27T20:22:50.162Z] [DEBUG]: digging pool config for /Common/bigiq.benlab.io_t443_pool", - "[2023-04-27T20:22:50.162Z] [DEBUG]: Pool /Common/bigiq.benlab.io_t443_pool members found: [ '/Common/10.200.244.15' ]", - "[2023-04-27T20:22:50.162Z] [DEBUG]: pool monitor references found: [ '/Common/https_head_f5' ]", - "[2023-04-27T20:22:50.162Z] [DEBUG]: pool monitor configs found: []", - "[2023-04-27T20:22:50.162Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_pool] references 1 system default monitors, compare previous arrays for details", - "[2023-04-27T20:22:50.162Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following pool /Common/bigiq.benlab.io_t443_pool", - "[2023-04-27T20:22:50.162Z] [DEBUG]: profile references found: [\n '/Common/ASM_basic_policy_1',\n '/Common/f5-tcp-progressive',\n '/Common/http',\n '/Common/websecurity'\n]", - "[2023-04-27T20:22:50.162Z] [DEBUG]: Found 4 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:50.162Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following profiles \n /Common/ASM_basic_policy_1 { }\n /Common/f5-tcp-progressive { }\n /Common/http { }\n /Common/websecurity { }", - "[2023-04-27T20:22:50.162Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:50.162Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found snat configuration \n type automap", - "[2023-04-27T20:22:50.162Z] [DEBUG]: policy references found: [ '/Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs' ]", - "[2023-04-27T20:22:50.162Z] [DEBUG]: policy found [/Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs]", - "[2023-04-27T20:22:50.162Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following policies \n /Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs { }", - "[2023-04-27T20:22:50.162Z] [INFO]: digging vs config for /Common/app2_t443_vs", - "[2023-04-27T20:22:50.162Z] [DEBUG]: digging pool config for /Common/app2_t80_pool", - "[2023-04-27T20:22:50.162Z] [DEBUG]: Pool /Common/app2_t80_pool members found: [ '/Common/app2_Node1', '/Common/app2_Node2' ]", - "[2023-04-27T20:22:50.162Z] [DEBUG]: pool monitor references found: [ '/Common/global_http_monitor', '/Common/global_https_monitor' ]", - "[2023-04-27T20:22:50.162Z] [DEBUG]: pool monitor configs found: [\n 'ltm monitor http /Common/global_http_monitor {\\n' +\n ' adaptive disabled\\n' +\n ' defaults-from /Common/http\\n' +\n ' interval 5\\n' +\n ' ip-dscp 0\\n' +\n ' recv \"ok 200\"\\n' +\n ' recv-disable none\\n' +\n ' send \"GET /anywebsite.com\\\\r\\\\n\"\\n' +\n ' time-until-up 0\\n' +\n ' timeout 16\\n' +\n '}',\n 'ltm monitor https /Common/global_https_monitor {\\n' +\n ' adaptive disabled\\n' +\n ' defaults-from /Common/https\\n' +\n ' interval 5\\n' +\n ' ip-dscp 0\\n' +\n ' recv \"201 continue\"\\n' +\n ' recv-disable none\\n' +\n ' send \"GET /any-secure-website.com\\\\r\\\\n\"\\n' +\n ' time-until-up 0\\n' +\n ' timeout 16\\n' +\n '}'\n]", - "[2023-04-27T20:22:50.162Z] [DEBUG]: [/Common/app2_t443_vs] found the following pool /Common/app2_t80_pool", - "[2023-04-27T20:22:50.162Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:50.162Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:50.162Z] [DEBUG]: [/Common/app2_t443_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:50.162Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:50.162Z] [DEBUG]: [/Common/app2_t443_vs] found snat configuration \n type automap", - "[2023-04-27T20:22:50.162Z] [INFO]: digging vs config for /Common/app3_t8443_vs", - "[2023-04-27T20:22:50.162Z] [DEBUG]: digging pool config for /Common/app3_t8443_pool", - "[2023-04-27T20:22:50.163Z] [DEBUG]: Pool /Common/app3_t8443_pool members found: [ '/Common/app3_Node1', '/Common/app3_Node2' ]", - "[2023-04-27T20:22:50.163Z] [DEBUG]: pool monitor references found: [\n '/Common/app1_tcp_half_open_quick_monitor',\n '/Common/http_head_f5',\n '/Common/http2_head_f5',\n '/Common/http',\n '/Common/tcp_half_open'\n]", - "[2023-04-27T20:22:50.163Z] [DEBUG]: pool monitor configs found: [\n 'ltm monitor tcp-half-open /Common/app1_tcp_half_open_quick_monitor {\\n' +\n ' defaults-from /Common/tcp_half_open\\n' +\n ' destination *:*\\n' +\n ' interval 1\\n' +\n ' time-until-up 0\\n' +\n ' timeout 4\\n' +\n '}'\n]", - "[2023-04-27T20:22:50.163Z] [DEBUG]: [/Common/app3_t8443_pool] references 4 system default monitors, compare previous arrays for details", - "[2023-04-27T20:22:50.163Z] [DEBUG]: [/Common/app3_t8443_vs] found the following pool /Common/app3_t8443_pool", - "[2023-04-27T20:22:50.163Z] [DEBUG]: profile references found: [\n '/Common/app3_clientssl',\n '/Common/app3_serverssl',\n '/Common/http',\n '/Common/tcp'\n]", - "[2023-04-27T20:22:50.163Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:50.163Z] [DEBUG]: [/Common/app3_t8443_vs] found the following profiles \n /Common/app3_clientssl {\n context clientside\n }\n /Common/app3_serverssl {\n context serverside\n }\n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:50.163Z] [DEBUG]: rule references found: [ '/Common/app3_rule', '/Common/app3_rule2', '/Common/app3_rule3' ]", - "[2023-04-27T20:22:50.163Z] [DEBUG]: [/Common/app3_t8443_vs] found the following rules \n /Common/app3_rule\n /Common/app3_rule2\n /Common/app3_rule3", - "[2023-04-27T20:22:50.163Z] [DEBUG]: [/Common/app3_t8443_vs] found snat configuration \n pool /Common/app3_snat_pool\n type snat", - "[2023-04-27T20:22:50.163Z] [DEBUG]: policy references found: [ '/Common/app3_ltm_policy' ]", - "[2023-04-27T20:22:50.163Z] [DEBUG]: policy found [/Common/app3_ltm_policy]", - "[2023-04-27T20:22:50.163Z] [DEBUG]: [/Common/app3_t8443_vs] found the following policies \n /Common/app3_ltm_policy { }", - "[2023-04-27T20:22:50.163Z] [DEBUG]: [/Common/app3_t8443_vs] found the following persistence \n /Common/app3_cookie {\n default yes\n }", - "[2023-04-27T20:22:50.163Z] [DEBUG]: [/Common/app3_t8443_vs] found the following persistence /Common/app3_srcAddr_persist", - "[2023-04-27T20:22:50.163Z] [INFO]: digging vs config for /Common/app4_t80_vs", - "[2023-04-27T20:22:50.163Z] [DEBUG]: digging pool config for /Common/app4_pool", - "[2023-04-27T20:22:50.163Z] [DEBUG]: Pool /Common/app4_pool members found: [ '/Common/api.chucknorris.io' ]", - "[2023-04-27T20:22:50.163Z] [DEBUG]: [/Common/app4_t80_vs] found the following pool /Common/app4_pool", - "[2023-04-27T20:22:50.163Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:50.163Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:50.163Z] [DEBUG]: [/Common/app4_t80_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:50.163Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect', '/Common/app4_pool_rule' ]", - "[2023-04-27T20:22:50.163Z] [DEBUG]: digging pool config for /Common/css_pool", - "[2023-04-27T20:22:50.163Z] [DEBUG]: digging pool config for /Common/jpg.pool", - "[2023-04-27T20:22:50.163Z] [DEBUG]: digging pool config for /Common/js.io_t80_pool", - "[2023-04-27T20:22:50.163Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details", - "[2023-04-27T20:22:50.163Z] [DEBUG]: [/Common/app4_t80_vs] found the following rules \n /Common/_sys_https_redirect\n /Common/app4_pool_rule", - "[2023-04-27T20:22:50.163Z] [DEBUG]: policy references found: [ '/Common/app4_ltPolicy' ]", - "[2023-04-27T20:22:50.163Z] [DEBUG]: policy found [/Common/app4_ltPolicy]", - "[2023-04-27T20:22:50.163Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/css_pool]", - "[2023-04-27T20:22:50.163Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/jpg.pool]", - "[2023-04-27T20:22:50.163Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/js.io_t80_pool]", - "[2023-04-27T20:22:50.163Z] [DEBUG]: [/Common/app4_t80_vs] found the following policies \n /Common/app4_ltPolicy { }", - "[2023-04-27T20:22:50.164Z] [INFO]: digging vs config for /Common/forwarder_net_0.0.0.0", - "[2023-04-27T20:22:50.164Z] [DEBUG]: profile references found: [ '/Common/fastl4_loose' ]", - "[2023-04-27T20:22:50.164Z] [DEBUG]: [/Common/forwarder_net_0.0.0.0] found the following profiles \n /Common/fastl4_loose { }", - "[2023-04-27T20:22:50.164Z] [INFO]: digging vs config for /foo/defaultsUDP_5555/serviceMain", - "[2023-04-27T20:22:50.164Z] [DEBUG]: digging pool config for /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1", - "[2023-04-27T20:22:50.164Z] [DEBUG]: Pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1 members found: [ '/foo/192.50.2.2' ]", - "[2023-04-27T20:22:50.164Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found the following pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1", - "[2023-04-27T20:22:50.164Z] [DEBUG]: profile references found: [ '/Common/udp' ]", - "[2023-04-27T20:22:50.164Z] [DEBUG]: Found 1 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:50.164Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found the following profiles \n /Common/udp { }", - "[2023-04-27T20:22:50.164Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:50.164Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found snat configuration \n type automap", - "[2023-04-27T20:22:50.164Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found the following persistence \n /Common/source_addr {\n default yes\n }", - "[2023-04-27T20:22:50.164Z] [INFO]: digging vs config for /hue-infra/hue-up/hue-up.benlab.io_t80_vs", - "[2023-04-27T20:22:50.164Z] [DEBUG]: digging pool config for /hue-infra/hue-up/hue-up.benlab.io_t80_pool", - "[2023-04-27T20:22:50.164Z] [DEBUG]: Pool /hue-infra/hue-up/hue-up.benlab.io_t80_pool members found: null", - "[2023-04-27T20:22:50.164Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found the following pool /hue-infra/hue-up/hue-up.benlab.io_t80_pool", - "[2023-04-27T20:22:50.164Z] [DEBUG]: profile references found: [ '/Common/f5-tcp-progressive', '/Common/http' ]", - "[2023-04-27T20:22:50.164Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:50.164Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found the following profiles \n /Common/f5-tcp-progressive { }\n /Common/http { }", - "[2023-04-27T20:22:50.164Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:50.164Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found snat configuration \n type automap", - "[2023-04-27T20:22:50.164Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found the following persistence \n /Common/cookie {\n default yes\n }", - "[2023-04-27T20:22:50.164Z] [INFO]: digging vs config for /hue-infra/hue-up/hue-up.benlab.io_t443_vs", - "[2023-04-27T20:22:50.164Z] [DEBUG]: digging pool config for /hue-infra/hue-up/hue-up.benlab.io_t443_pool", - "[2023-04-27T20:22:50.164Z] [DEBUG]: Pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool members found: null", - "[2023-04-27T20:22:50.164Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found the following pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool", - "[2023-04-27T20:22:50.164Z] [DEBUG]: profile references found: [ '/Common/f5-tcp-progressive', '/Common/http' ]", - "[2023-04-27T20:22:50.164Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:50.164Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found the following profiles \n /Common/f5-tcp-progressive { }\n /Common/http { }", - "[2023-04-27T20:22:50.164Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:50.164Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found snat configuration \n type automap", - "[2023-04-27T20:22:50.164Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found the following persistence \n /Common/cookie {\n default yes\n }", - "[2023-04-27T20:22:50.164Z] [INFO]: digging DO classes for base config info", - "[2023-04-27T20:22:50.164Z] [DEBUG]: no path \"cli global-settings\" in object", - "[2023-04-27T20:22:50.164Z] [DEBUG]: no path \"sys db\" in object", - "[2023-04-27T20:22:50.164Z] [DEBUG]: no path \"net trunk\" in object", - "[2023-04-27T20:22:50.164Z] [DEBUG]: no path \"net self\" in object", - "[2023-04-27T20:22:50.164Z] [DEBUG]: no path \"net route\" in object", - "[2023-04-27T20:22:50.164Z] [DEBUG]: no path \"net routing access-list\" in object", - "[2023-04-27T20:22:50.164Z] [DEBUG]: no path \"net routing as-path\" in object", - "[2023-04-27T20:22:50.164Z] [DEBUG]: no path \"net routing prefix-list\" in object", - "[2023-04-27T20:22:50.165Z] [DEBUG]: no path \"net routing route-map\" in object", - "[2023-04-27T20:22:50.165Z] [DEBUG]: no path \"net routing bgp\" in object", - "[2023-04-27T20:22:50.165Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", - "[2023-04-27T20:22:50.165Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", - "[2023-04-27T20:22:50.165Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", - "[2023-04-27T20:22:50.165Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", - "[2023-04-27T20:22:50.165Z] [DEBUG]: no path \"cm device-group\" in object", - "[2023-04-27T20:22:50.165Z] [DEBUG]: no path \"cm traffic-group\" in object", - "[2023-04-27T20:22:50.165Z] [DEBUG]: no path \"cm traffic-group\" in object", - "[2023-04-27T20:22:50.165Z] [DEBUG]: no path \"sys syslog\" in object", - "[2023-04-27T20:22:50.165Z] [DEBUG]: no path \"auth tacacs\" in object", - "[2023-04-27T20:22:50.165Z] [DEBUG]: no path \"auth remote-role role-info\" in object", - "[2023-04-27T20:22:50.165Z] [DEBUG]: no path \"auth ldap\" in object", - "[2023-04-27T20:22:50.165Z] [DEBUG]: no path \"sys snmp traps\" in object", - "[2023-04-27T20:22:50.165Z] [DEBUG]: no path \"sys snmp users\" in object", - "[2023-04-27T20:22:50.165Z] [DEBUG]: no path \"sys snmp communities\" in object", - "[2023-04-27T20:22:50.165Z] [DEBUG]: no path \"net dag-globals\" in object", - "[2023-04-27T20:22:50.165Z] [DEBUG]: no path \"ltm global-settings traffic-control\" in object", - "[2023-04-27T20:22:50.165Z] [DEBUG]: no path \"sys sshd\" in object", - "[2023-04-27T20:22:50.165Z] [DEBUG]: no path \"net tunnels vxlan\" in object", - "[2023-04-27T20:22:50.165Z] [DEBUG]: no path \"sys disk directory\" in object", - "[2023-04-27T20:22:50.165Z] [DEBUG]: no path \"gtm monitor http\" in object", - "[2023-04-27T20:22:50.165Z] [DEBUG]: no path \"gtm monitor https\" in object", - "[2023-04-27T20:22:50.165Z] [DEBUG]: no path \"gtm monitor gateway-icmp\" in object", - "[2023-04-27T20:22:50.165Z] [DEBUG]: no path \"gtm monitor tcp\" in object", - "[2023-04-27T20:22:50.165Z] [DEBUG]: no path \"gtm monitor udp\" in object", - "[2023-04-27T20:22:50.165Z] [DEBUG]: no path \"gtm prober-pool\" in object", - "[2023-04-27T20:22:50.165Z] [DEBUG]: no path \"security firewall policy\" in object", - "[2023-04-27T20:22:50.165Z] [DEBUG]: no path \"security firewall address-list\" in object", - "[2023-04-27T20:22:50.165Z] [DEBUG]: no path \"security firewall management-ip-rules\" in object" + "[2023-05-24T01:12:41.404Z] DeBuG: 'regular date log message'", + "[5/23/2023, 6:12:41 PM] DeBuG: 'toLocalString date log message'", + "[Wed, 24 May 2023 01:12:41 GMT] DeBuG: 'to UTC date log message'", + "[2023-05-24T01:12:43.861Z] [ERROR]: >v19.0.0.0 tmos detected - this should never happen!!!", + "[2023-05-24T01:12:43.862Z] [ERROR]: meaning this probably is not a bigip.conf", + "[2023-05-24T01:12:48.528Z] [ERROR]: failed to extract any parent tmos matches from config/partitions/bd2/bigip.conf - might be a scripts file...", + "[2023-05-24T01:12:48.539Z] [INFO]: digging vs config for /bd1/defaultsUDP_444/serviceMain", + "[2023-05-24T01:12:48.539Z] [ERROR]: findValueFromKey function expected object, got: undefined", + "[2023-05-24T01:12:48.540Z] [INFO]: digging vs config for /Common/app1_t80_vs", + "[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined", + "[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined", + "[2023-05-24T01:12:48.540Z] [INFO]: digging vs config for /Common/app1_t443_vs", + "[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined", + "[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined", + "[2023-05-24T01:12:48.540Z] [INFO]: digging vs config for /Common/app2_t80_vs", + "[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined", + "[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined", + "[2023-05-24T01:12:48.540Z] [INFO]: digging vs config for /Common/app2_t443_vs", + "[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined", + "[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined", + "[2023-05-24T01:12:48.540Z] [INFO]: digging vs config for /Common/app3_t8443_vs", + "[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined", + "[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined", + "[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined", + "[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined", + "[2023-05-24T01:12:48.540Z] [INFO]: digging vs config for /Common/app4_t80_vs", + "[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined", + "[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined", + "[2023-05-24T01:12:48.540Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [css_pool]", + "[2023-05-24T01:12:48.540Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [jpg.pool]", + "[2023-05-24T01:12:48.540Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [js.io_t80_pool]", + "[2023-05-24T01:12:48.540Z] [INFO]: digging vs config for /Common/forwarder_net_0.0.0.0", + "[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined", + "[2023-05-24T01:12:48.540Z] [INFO]: digging DO classes for base config info", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"sys global-settings\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"cli global-settings\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"sys db\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"sys management-ip\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"sys provision\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"sys ntp\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"sys dns\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"net trunk\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"net vlan\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"net self\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"net route\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"net routing access-list\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"net routing as-path\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"net routing prefix-list\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"net routing route-map\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"net routing bgp\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"cm device-group\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"cm traffic-group\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"cm traffic-group\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"sys management-route\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"sys syslog\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"auth tacacs\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"net route-domain\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"auth remote-role role-info\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"auth ldap\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"sys snmp\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"sys snmp traps\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"sys snmp\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"sys snmp users\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"sys snmp communities\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"net dag-globals\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"sys httpd\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"ltm global-settings traffic-control\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"sys sshd\" in object", + "[2023-05-24T01:12:48.541Z] [DEBUG]: no path \"net tunnels tunnel\" in object", + "[2023-05-24T01:12:48.541Z] [DEBUG]: no path \"net tunnels vxlan\" in object", + "[2023-05-24T01:12:48.541Z] [DEBUG]: no path \"sys disk directory\" in object", + "[2023-05-24T01:12:48.541Z] [DEBUG]: no path \"gtm global-settings general\" in object", + "[2023-05-24T01:12:48.541Z] [DEBUG]: no path \"gtm datacenter\" in object", + "[2023-05-24T01:12:48.541Z] [DEBUG]: no path \"gtm server\" in object", + "[2023-05-24T01:12:48.541Z] [DEBUG]: no path \"gtm monitor http\" in object", + "[2023-05-24T01:12:48.541Z] [DEBUG]: no path \"gtm monitor https\" in object", + "[2023-05-24T01:12:48.541Z] [DEBUG]: no path \"gtm monitor gateway-icmp\" in object", + "[2023-05-24T01:12:48.541Z] [DEBUG]: no path \"gtm monitor tcp\" in object", + "[2023-05-24T01:12:48.541Z] [DEBUG]: no path \"gtm monitor udp\" in object", + "[2023-05-24T01:12:48.541Z] [DEBUG]: no path \"gtm prober-pool\" in object", + "[2023-05-24T01:12:48.541Z] [DEBUG]: no path \"security firewall policy\" in object", + "[2023-05-24T01:12:48.541Z] [DEBUG]: no path \"security firewall address-list\" in object", + "[2023-05-24T01:12:48.541Z] [DEBUG]: no path \"security firewall port-list\" in object", + "[2023-05-24T01:12:48.541Z] [DEBUG]: no path \"security firewall management-ip-rules\" in object", + "[2023-05-24T01:12:48.565Z] [DEBUG]: detected file: [/home/ted/f5-corkscrew/tests/artifacts/f5_corkscrew_test.ucs], size: [45827]", + "[2023-05-24T01:12:48.566Z] [INFO]: Recieved .conf file of version: 15.1.8.2", + "[2023-05-24T01:12:48.614Z] [INFO]: digging vs config for /Common/app1_t80_vs", + "[2023-05-24T01:12:48.614Z] [INFO]: digging vs config for /Common/app1_t443_vs", + "[2023-05-24T01:12:48.614Z] [INFO]: digging vs config for /Common/app2_t80_vs", + "[2023-05-24T01:12:48.614Z] [INFO]: digging vs config for /Common/bigiq.benlab.io_t443_vs", + "[2023-05-24T01:12:48.614Z] [INFO]: digging vs config for /Common/app2_t443_vs", + "[2023-05-24T01:12:48.614Z] [INFO]: digging vs config for /Common/persistTest_80_vs", + "[2023-05-24T01:12:48.614Z] [INFO]: digging vs config for /Common/app3_t8443_vs", + "[2023-05-24T01:12:48.615Z] [INFO]: digging vs config for /Common/app4_t80_vs", + "[2023-05-24T01:12:48.615Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [css_pool]", + "[2023-05-24T01:12:48.615Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [jpg.pool]", + "[2023-05-24T01:12:48.615Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [js.io_t80_pool]", + "[2023-05-24T01:12:48.615Z] [INFO]: digging vs config for /Common/forwarder_net_0.0.0.0", + "[2023-05-24T01:12:48.615Z] [INFO]: digging vs config for /foo/defaultsUDP_5555/serviceMain", + "[2023-05-24T01:12:48.615Z] [INFO]: digging vs config for /foo/t1.lab.io_80vs", + "[2023-05-24T01:12:48.615Z] [INFO]: digging vs config for /foo/wiffle_redirect_vs", + "[2023-05-24T01:12:48.615Z] [INFO]: digging vs config for /foo/app8_80vs", + "[2023-05-24T01:12:48.615Z] [INFO]: digging vs config for /hue-infra/hue-up/hue-up.benlab.io_t80_vs", + "[2023-05-24T01:12:48.615Z] [INFO]: digging vs config for /hue-infra/hue-up/hue-up.benlab.io_t443_vs", + "[2023-05-24T01:12:48.616Z] [INFO]: digging DO classes for base config info", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"cli global-settings\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"sys db\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"net trunk\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"net self\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"net route\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"net routing access-list\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"net routing as-path\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"net routing prefix-list\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"net routing route-map\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"net routing bgp\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"cm device-group\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"cm traffic-group\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"cm traffic-group\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"sys syslog\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"auth tacacs\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"auth remote-role role-info\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"auth ldap\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"sys snmp traps\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"sys snmp users\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"sys snmp communities\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"net dag-globals\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"ltm global-settings traffic-control\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"sys sshd\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"net tunnels vxlan\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"sys disk directory\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"gtm monitor http\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"gtm monitor https\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"gtm monitor gateway-icmp\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"gtm monitor tcp\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"gtm monitor udp\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"gtm prober-pool\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"security firewall policy\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"security firewall address-list\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"security firewall management-ip-rules\" in object", + "[2023-05-24T01:12:48.626Z] [INFO]: digging vs config for /Common/app4_t80_vs", + "[2023-05-24T01:12:48.626Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [css_pool]", + "[2023-05-24T01:12:48.626Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [jpg.pool]", + "[2023-05-24T01:12:48.626Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [js.io_t80_pool]", + "[2023-05-24T01:12:49.172Z] [DEBUG]: detected file: [/home/ted/f5-corkscrew/tests/artifacts/f5_corkscrew_test.qkview], size: [2582699]", + "[2023-05-24T01:12:49.174Z] [INFO]: config/profile_base.conf: default profile base file, stashing for later", + "[2023-05-24T01:12:49.174Z] [INFO]: config/low_profile_base.conf: default profile base file, stashing for later", + "[2023-05-24T01:12:49.174Z] [INFO]: Recieved .conf file of version: 15.1.8.2", + "[2023-05-24T01:12:49.457Z] [INFO]: digging vs config for /Common/app1_t80_vs", + "[2023-05-24T01:12:49.457Z] [INFO]: digging vs config for /Common/app1_t443_vs", + "[2023-05-24T01:12:49.458Z] [INFO]: digging vs config for /Common/app2_t80_vs", + "[2023-05-24T01:12:49.458Z] [INFO]: digging vs config for /Common/bigiq.benlab.io_t443_vs", + "[2023-05-24T01:12:49.458Z] [INFO]: digging vs config for /Common/app2_t443_vs", + "[2023-05-24T01:12:49.459Z] [INFO]: digging vs config for /Common/persistTest_80_vs", + "[2023-05-24T01:12:49.459Z] [INFO]: digging vs config for /Common/app3_t8443_vs", + "[2023-05-24T01:12:49.459Z] [INFO]: digging vs config for /Common/app4_t80_vs", + "[2023-05-24T01:12:49.460Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [css_pool]", + "[2023-05-24T01:12:49.460Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [jpg.pool]", + "[2023-05-24T01:12:49.460Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [js.io_t80_pool]", + "[2023-05-24T01:12:49.460Z] [INFO]: digging vs config for /Common/forwarder_net_0.0.0.0", + "[2023-05-24T01:12:49.460Z] [INFO]: digging vs config for /foo/defaultsUDP_5555/serviceMain", + "[2023-05-24T01:12:49.460Z] [INFO]: digging vs config for /foo/t1.lab.io_80vs", + "[2023-05-24T01:12:49.460Z] [INFO]: digging vs config for /foo/wiffle_redirect_vs", + "[2023-05-24T01:12:49.460Z] [INFO]: digging vs config for /foo/app8_80vs", + "[2023-05-24T01:12:49.460Z] [INFO]: digging vs config for /hue-infra/hue-up/hue-up.benlab.io_t80_vs", + "[2023-05-24T01:12:49.460Z] [INFO]: digging vs config for /hue-infra/hue-up/hue-up.benlab.io_t443_vs", + "[2023-05-24T01:12:49.461Z] [INFO]: digging DO classes for base config info", + "[2023-05-24T01:12:49.461Z] [DEBUG]: no path \"cli global-settings\" in object", + "[2023-05-24T01:12:49.461Z] [DEBUG]: no path \"sys db\" in object", + "[2023-05-24T01:12:49.461Z] [DEBUG]: no path \"net trunk\" in object", + "[2023-05-24T01:12:49.461Z] [DEBUG]: no path \"net self\" in object", + "[2023-05-24T01:12:49.461Z] [DEBUG]: no path \"net route\" in object", + "[2023-05-24T01:12:49.461Z] [DEBUG]: no path \"net routing access-list\" in object", + "[2023-05-24T01:12:49.461Z] [DEBUG]: no path \"net routing as-path\" in object", + "[2023-05-24T01:12:49.461Z] [DEBUG]: no path \"net routing prefix-list\" in object", + "[2023-05-24T01:12:49.461Z] [DEBUG]: no path \"net routing route-map\" in object", + "[2023-05-24T01:12:49.461Z] [DEBUG]: no path \"net routing bgp\" in object", + "[2023-05-24T01:12:49.461Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", + "[2023-05-24T01:12:49.461Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", + "[2023-05-24T01:12:49.461Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", + "[2023-05-24T01:12:49.461Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", + "[2023-05-24T01:12:49.461Z] [DEBUG]: no path \"cm device-group\" in object", + "[2023-05-24T01:12:49.461Z] [DEBUG]: no path \"cm traffic-group\" in object", + "[2023-05-24T01:12:49.461Z] [DEBUG]: no path \"cm traffic-group\" in object", + "[2023-05-24T01:12:49.461Z] [DEBUG]: no path \"sys syslog\" in object", + "[2023-05-24T01:12:49.461Z] [DEBUG]: no path \"auth tacacs\" in object", + "[2023-05-24T01:12:49.461Z] [DEBUG]: no path \"auth remote-role role-info\" in object", + "[2023-05-24T01:12:49.461Z] [DEBUG]: no path \"auth ldap\" in object", + "[2023-05-24T01:12:49.461Z] [DEBUG]: no path \"sys snmp traps\" in object", + "[2023-05-24T01:12:49.461Z] [DEBUG]: no path \"sys snmp users\" in object", + "[2023-05-24T01:12:49.461Z] [DEBUG]: no path \"sys snmp communities\" in object", + "[2023-05-24T01:12:49.461Z] [DEBUG]: no path \"net dag-globals\" in object", + "[2023-05-24T01:12:49.461Z] [DEBUG]: no path \"ltm global-settings traffic-control\" in object", + "[2023-05-24T01:12:49.461Z] [DEBUG]: no path \"sys sshd\" in object", + "[2023-05-24T01:12:49.461Z] [DEBUG]: no path \"net tunnels vxlan\" in object", + "[2023-05-24T01:12:49.461Z] [DEBUG]: no path \"sys disk directory\" in object", + "[2023-05-24T01:12:49.461Z] [DEBUG]: no path \"gtm monitor http\" in object", + "[2023-05-24T01:12:49.461Z] [DEBUG]: no path \"gtm monitor https\" in object", + "[2023-05-24T01:12:49.461Z] [DEBUG]: no path \"gtm monitor gateway-icmp\" in object", + "[2023-05-24T01:12:49.461Z] [DEBUG]: no path \"gtm monitor tcp\" in object", + "[2023-05-24T01:12:49.461Z] [DEBUG]: no path \"gtm monitor udp\" in object", + "[2023-05-24T01:12:49.461Z] [DEBUG]: no path \"gtm prober-pool\" in object", + "[2023-05-24T01:12:49.461Z] [DEBUG]: no path \"security firewall policy\" in object", + "[2023-05-24T01:12:49.461Z] [DEBUG]: no path \"security firewall address-list\" in object", + "[2023-05-24T01:12:49.462Z] [DEBUG]: no path \"security firewall management-ip-rules\" in object" ] } \ No newline at end of file diff --git a/tests/artifacts/f5_corkscrew_test.tar.gz b/tests/artifacts/f5_corkscrew_test.tar.gz new file mode 100644 index 0000000..606f54b Binary files /dev/null and b/tests/artifacts/f5_corkscrew_test.tar.gz differ diff --git a/tests/artifacts/f5_corkscrew_test.ucs.log b/tests/artifacts/f5_corkscrew_test.ucs.log index 38d61a3..18a4a6c 100644 --- a/tests/artifacts/f5_corkscrew_test.ucs.log +++ b/tests/artifacts/f5_corkscrew_test.ucs.log @@ -5,49 +5,49 @@ ### Section 2: apps ### Section 3: conversion logs (error/info/debug) ### Section 4: configObjects (not object values yet) -### 2023-04-27T20:22:49.367Z +### 2023-05-24T01:12:48.618Z ################################################ ################################################ ### explosion stats ########## -### uuid: 606a36ca-9ffe-4705-bd23-8a8cb7bf6ce9 -### dateTime: Thu Apr 27 2023 15:22:49 GMT-0500 (Central Daylight Time) +### uuid: 5fd48ac8-7e47-41b1-8abe-a87f8ebab4ac +### dateTime: Tue May 23 2023 18:12:48 GMT-0700 (Pacific Daylight Time) { - "objectCount": 406, - "sourceSize": 43567, + "objectCount": 423, + "sourceSize": 45827, "objects": { - "virtuals": 11, + "virtuals": 15, "profiles": 6, "policies": 3, - "pools": 11, - "irules": 5, + "pools": 13, + "irules": 6, "monitors": 6, "nodes": 13, - "snatPools": 1, + "snatPools": 2, "gtm": { "datacenters": 1, "regions": 3, "servers": 5, "pools": 17, - "wideips": 5 + "wideips": 6 }, "apmPolicies": 3, "apmProfiles": 3, - "asmPolicies": 1 + "asmPolicies": 1, + "botProfiles": 1, + "dosProfiles": 3 }, "sourceTmosVersion": "15.1.8.2", - "parseTime": 25.5324, - "appTime": 2.5017, - "fqdnTime": 0.5226, - "packTime": 0.6334 + "parseTime": 48.6973, + "appTime": 1.5958, + "fqdnTime": 0.4956, + "packTime": 1.1301 } ################################################ ################################################ -#### app name: /Common/app1_t80_vs -#### app map: { - "vsDest": "/Common/192.168.1.21:80" -} +#### app name: app1_t80_vs + #### ltm virtual /Common/app1_t80_vs { creation-time 2020-09-17:08:50:22 @@ -70,14 +70,8 @@ ltm virtual /Common/app1_t80_vs { ################################################ ################################################ -#### app name: /Common/app1_t443_vs -#### app map: { - "vsDest": "/Common/192.168.1.21:443", - "pool": [ - "192.168.1.22:80", - "192.168.1.23:80" - ] -} +#### app name: app1_t443_vs + #### ltm virtual /Common/app1_t443_vs { destination /Common/192.168.1.21:443 @@ -117,10 +111,8 @@ ltm node /Common/app1_Node2 { ################################################ ################################################ -#### app name: /Common/app2_t80_vs -#### app map: { - "vsDest": "/Common/192.168.2.21:80" -} +#### app name: app2_t80_vs + #### ltm virtual /Common/app2_t80_vs { creation-time 2020-09-17:08:50:22 @@ -143,13 +135,8 @@ ltm virtual /Common/app2_t80_vs { ################################################ ################################################ -#### app name: /Common/bigiq.benlab.io_t443_vs -#### app map: { - "vsDest": "/Common/10.200.244.15:443", - "pool": [ - "10.200.244.15:443" - ] -} +#### app name: bigiq.benlab.io_t443_vs + #### ltm virtual /Common/bigiq.benlab.io_t443_vs { creation-time 2019-10-01:17:59:21 @@ -177,6 +164,8 @@ ltm virtual /Common/bigiq.benlab.io_t443_vs { translate-port enabled vlans { /Common/vlan255_f5peer + /Common/vlan245 + /Common/vlan230 } vlans-enabled } @@ -212,14 +201,8 @@ ltm policy /Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs { ################################################ ################################################ -#### app name: /Common/app2_t443_vs -#### app map: { - "vsDest": "/Common/192.168.2.21:443", - "pool": [ - "192.168.2.22:80", - "192.168.2.23:80" - ] -} +#### app name: app2_t443_vs + #### ltm virtual /Common/app2_t443_vs { destination /Common/192.168.2.21:443 @@ -259,39 +242,39 @@ ltm node /Common/app2_Node2 { address 192.168.2.23 description app2_Node2 } -ltm monitor http /Common/global_http_monitor { - adaptive disabled - defaults-from /Common/http - interval 5 - ip-dscp 0 - recv "ok 200" - recv-disable none - send "GET /anywebsite.com\r\n" - time-until-up 0 - timeout 16 -} -ltm monitor https /Common/global_https_monitor { - adaptive disabled - defaults-from /Common/https - interval 5 - ip-dscp 0 - recv "201 continue" - recv-disable none - send "GET /any-secure-website.com\r\n" - time-until-up 0 - timeout 16 -} ################################################ ################################################ -#### app name: /Common/app3_t8443_vs -#### app map: { - "vsDest": "/Common/192.168.1.51:8443", - "pool": [ - "192.168.1.52:8443", - "192.168.1.53:8443" - ] +#### app name: persistTest_80_vs + +#### +ltm virtual /Common/persistTest_80_vs { + creation-time 2023-05-09:11:25:01 + description "vs to explore persist configs - both default/fallback are single entries" + destination /Common/10.6.3.4:80 + fallback-persistence /Common/source_addr + ip-protocol tcp + last-modified-time 2023-05-09:11:25:01 + mask 255.255.255.255 + persist { + /Common/cookie { + default yes + } + } + profiles { + /Common/http { } + /Common/tcp { } + } + serverssl-use-sni disabled + source 0.0.0.0/0 + translate-address enabled + translate-port enabled } +################################################ + +################################################ +#### app name: app3_t8443_vs + #### ltm virtual /Common/app3_t8443_vs { destination /Common/192.168.1.51:8443 @@ -350,13 +333,6 @@ ltm node /Common/app3_Node1 { ltm node /Common/app3_Node2 { address 192.168.1.53 } -ltm monitor tcp-half-open /Common/app1_tcp_half_open_quick_monitor { - defaults-from /Common/tcp_half_open - destination *:* - interval 1 - time-until-up 0 - timeout 4 -} ltm profile client-ssl /Common/app3_clientssl { app-service none cert-key-chain { @@ -394,11 +370,7 @@ when SERVERSSL_DATA { # got something from server } } -ltm snatpool /Common/app3_snat_pool { - members { - /Common/192.168.1.51 - } -} +ltm snatpool /Common/app3_snat_pool { undefined } ltm policy /Common/app3_ltm_policy { rules { global_rule_1 { } @@ -433,29 +405,8 @@ ltm persistence source-addr /Common/app3_srcAddr_persist { ################################################ ################################################ -#### app name: /Common/app4_t80_vs -#### app map: { - "vsDest": "/Common/192.168.2.25:80", - "pool": [ - "/Common/api.chucknorris.io,/Common/api.chucknorris.io:443" - ], - "irule": { - "pools": [ - [ - "css_pool" - ], - [ - "jpg.pool", - "member", - "10.10.10.1", - "80" - ], - [ - "js.io_t80_pool" - ] - ] - } -} +#### app name: app4_t80_vs + #### ltm virtual /Common/app4_t80_vs { description "test pool references in irule extration and ltp" @@ -541,9 +492,6 @@ when HTTP_REQUEST { } } } -ltm pool /Common/css_pool { } -ltm pool /Common/jpg.pool { } -ltm pool /Common/js.io_t80_pool { } ltm policy /Common/app4_ltPolicy { controls { forwarding } description "testing for pool extraction function" @@ -623,13 +571,14 @@ ltm policy /Common/app4_ltPolicy { } strategy /Common/first-match } +ltm pool css_pool { } +ltm pool jpg.pool { } +ltm pool js.io_t80_pool { } ################################################ ################################################ -#### app name: /Common/forwarder_net_0.0.0.0 -#### app map: { - "vsDest": "/Common/0.0.0.0:0" -} +#### app name: forwarder_net_0.0.0.0 + #### ltm virtual /Common/forwarder_net_0.0.0.0 { destination /Common/0.0.0.0:0 @@ -653,10 +602,8 @@ ltm profile fastl4 /Common/fastl4_loose { ################################################ ################################################ -#### app name: /foo/defaultsUDP_5555/serviceMain -#### app map: { - "vsDest": "/foo/192.50.2.1:5555" -} +#### app name: serviceMain + #### ltm virtual /foo/defaultsUDP_5555/serviceMain { creation-time 2020-10-06:13:27:20 @@ -696,13 +643,91 @@ ltm pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1 { min-active-members 1 monitor min 1 of { /Common/gateway_icmp } } +ltm node /foo/192.50.2.2 { + address 192.50.2.2 +} +################################################ + +################################################ +#### app name: t1.lab.io_80vs + +#### +ltm virtual /foo/t1.lab.io_80vs { + creation-time 2023-04-29:13:02:55 + destination /foo/10.2.3.4:80 + ip-protocol tcp + last-modified-time 2023-04-29:13:02:55 + mask 255.255.255.255 + profiles { + /Common/tcp { } + } + serverssl-use-sni disabled + source 0.0.0.0/0 + source-address-translation { + pool /Common/testSnat1_pool + type snat + } + translate-address enabled + translate-port enabled +} +ltm snatpool /Common/testSnat1_pool { undefined } ################################################ ################################################ -#### app name: /hue-infra/hue-up/hue-up.benlab.io_t80_vs -#### app map: { - "vsDest": "" +#### app name: wiffle_redirect_vs + +#### +ltm virtual /foo/wiffle_redirect_vs { + creation-time 2023-02-02:13:10:03 + description "wiffle waffle baffle" + ip-protocol tcp + last-modified-time 2023-03-29:14:27:19 + profiles { + /Common/http { } + /Common/tcp { } + } + rules { + /foo/HTTP-redirect-to-HTTPS + } + traffic-matching-criteria /foo/wiffle_redirect_trafficMatchCriteria + translate-address enabled + translate-port enabled +} +ltm rule /foo/HTTP-redirect-to-HTTPS { +when HTTP_REQUEST { HTTP::redirect https://[HTTP::host][HTTP::uri] } } +################################################ + +################################################ +#### app name: app8_80vs + +#### +ltm virtual /foo/app8_80vs { + creation-time 2021-03-04:18:40:06 + destination /foo/1.19.8.18:80 + ip-protocol tcp + last-modified-time 2021-03-04:18:40:06 + mask 255.255.255.255 + pool /foo/app8_pool + profiles { + /Common/http { } + /Common/tcp { } + } + source 0.0.0.0/0 + source-address-translation { + type automap + } + translate-address enabled + translate-port enabled +} +ltm pool /foo/app8_pool { + monitor /Common/http +} +################################################ + +################################################ +#### app name: hue-up.benlab.io_t80_vs + #### ltm virtual /hue-infra/hue-up/hue-up.benlab.io_t80_vs { description hue-up @@ -743,13 +768,14 @@ ltm pool /hue-infra/hue-up/hue-up.benlab.io_t80_pool { min-active-members 1 monitor min 1 of { /Common/http } } +ltm node /hue-infra/10.200.30.29 { + address 10.200.30.29 +} ################################################ ################################################ -#### app name: /hue-infra/hue-up/hue-up.benlab.io_t443_vs -#### app map: { - "vsDest": "" -} +#### app name: hue-up.benlab.io_t443_vs + #### ltm virtual /hue-infra/hue-up/hue-up.benlab.io_t443_vs { description hue-up @@ -790,1322 +816,608 @@ ltm pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool { min-active-members 1 monitor min 1 of { /Common/https } } +ltm node /hue-infra/10.200.30.29 { + address 10.200.30.29 +} ################################################ ####################################### ### conversion log #################### -[2023-04-27T20:22:44.883Z] DeBuG: 'regular date log message' -[4/27/2023, 3:22:44 PM] DeBuG: 'toLocalString date log message' -[Thu, 27 Apr 2023 20:22:44 GMT] DeBuG: 'to UTC date log message' -[2023-04-27T20:22:47.057Z] [ERROR]: >v19.0.0.0 tmos detected - this should never happen!!! -[2023-04-27T20:22:47.058Z] [ERROR]: automap -[2023-04-27T20:22:48.027Z] [DEBUG]: [/Common/app1_t443_vs] found snat configuration - type automap -[2023-04-27T20:22:48.027Z] [INFO]: digging vs config for /Common/app2_t80_vs -[2023-04-27T20:22:48.027Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:48.028Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:48.028Z] [DEBUG]: [/Common/app2_t80_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:48.028Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect' ] -[2023-04-27T20:22:48.028Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details -[2023-04-27T20:22:48.028Z] [DEBUG]: [/Common/app2_t80_vs] found the following rules - /Common/_sys_https_redirect -[2023-04-27T20:22:48.028Z] [INFO]: digging vs config for /Common/bigiq.benlab.io_t443_vs -[2023-04-27T20:22:48.028Z] [DEBUG]: digging pool config for /Common/bigiq.benlab.io_t443_pool -[2023-04-27T20:22:48.028Z] [DEBUG]: Pool /Common/bigiq.benlab.io_t443_pool members found: [ '/Common/10.200.244.15' ] -[2023-04-27T20:22:48.028Z] [DEBUG]: pool monitor references found: [ '/Common/https_head_f5' ] -[2023-04-27T20:22:48.028Z] [DEBUG]: pool monitor configs found: [] -[2023-04-27T20:22:48.028Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_pool] references 1 system default monitors, compare previous arrays for details -[2023-04-27T20:22:48.028Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following pool /Common/bigiq.benlab.io_t443_pool -[2023-04-27T20:22:48.028Z] [DEBUG]: profile references found: [ - '/Common/ASM_basic_policy_1', - '/Common/f5-tcp-progressive', - '/Common/http', - '/Common/websecurity' -] -[2023-04-27T20:22:48.028Z] [DEBUG]: Found 4 system default profiles, compare previous arrays for details -[2023-04-27T20:22:48.028Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following profiles - /Common/ASM_basic_policy_1 { } - /Common/f5-tcp-progressive { } - /Common/http { } - /Common/websecurity { } -[2023-04-27T20:22:48.028Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:48.028Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found snat configuration - type automap -[2023-04-27T20:22:48.028Z] [DEBUG]: policy references found: [ '/Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs' ] -[2023-04-27T20:22:48.028Z] [DEBUG]: policy found [/Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs] -[2023-04-27T20:22:48.028Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following policies - /Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs { } -[2023-04-27T20:22:48.029Z] [INFO]: digging vs config for /Common/app2_t443_vs -[2023-04-27T20:22:48.029Z] [DEBUG]: digging pool config for /Common/app2_t80_pool -[2023-04-27T20:22:48.029Z] [DEBUG]: Pool /Common/app2_t80_pool members found: [ '/Common/app2_Node1', '/Common/app2_Node2' ] -[2023-04-27T20:22:48.029Z] [DEBUG]: pool monitor references found: [ '/Common/global_http_monitor', '/Common/global_https_monitor' ] -[2023-04-27T20:22:48.029Z] [DEBUG]: pool monitor configs found: [ - 'ltm monitor http /Common/global_http_monitor {\n' + - ' adaptive disabled\n' + - ' defaults-from /Common/http\n' + - ' interval 5\n' + - ' ip-dscp 0\n' + - ' recv "ok 200"\n' + - ' recv-disable none\n' + - ' send "GET /anywebsite.com\\r\\n"\n' + - ' time-until-up 0\n' + - ' timeout 16\n' + - '}', - 'ltm monitor https /Common/global_https_monitor {\n' + - ' adaptive disabled\n' + - ' defaults-from /Common/https\n' + - ' interval 5\n' + - ' ip-dscp 0\n' + - ' recv "201 continue"\n' + - ' recv-disable none\n' + - ' send "GET /any-secure-website.com\\r\\n"\n' + - ' time-until-up 0\n' + - ' timeout 16\n' + - '}' -] -[2023-04-27T20:22:48.029Z] [DEBUG]: [/Common/app2_t443_vs] found the following pool /Common/app2_t80_pool -[2023-04-27T20:22:48.029Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:48.029Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:48.029Z] [DEBUG]: [/Common/app2_t443_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:48.029Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:48.029Z] [DEBUG]: [/Common/app2_t443_vs] found snat configuration - type automap -[2023-04-27T20:22:48.029Z] [INFO]: digging vs config for /Common/app3_t8443_vs -[2023-04-27T20:22:48.029Z] [DEBUG]: digging pool config for /Common/app3_t8443_pool -[2023-04-27T20:22:48.029Z] [DEBUG]: Pool /Common/app3_t8443_pool members found: [ '/Common/app3_Node1', '/Common/app3_Node2' ] -[2023-04-27T20:22:48.029Z] [DEBUG]: pool monitor references found: [ - '/Common/app1_tcp_half_open_quick_monitor', - '/Common/http_head_f5', - '/Common/http2_head_f5', - '/Common/http', - '/Common/tcp_half_open' -] -[2023-04-27T20:22:48.030Z] [DEBUG]: pool monitor configs found: [ - 'ltm monitor tcp-half-open /Common/app1_tcp_half_open_quick_monitor {\n' + - ' defaults-from /Common/tcp_half_open\n' + - ' destination *:*\n' + - ' interval 1\n' + - ' time-until-up 0\n' + - ' timeout 4\n' + - '}' -] -[2023-04-27T20:22:48.030Z] [DEBUG]: [/Common/app3_t8443_pool] references 4 system default monitors, compare previous arrays for details -[2023-04-27T20:22:48.030Z] [DEBUG]: [/Common/app3_t8443_vs] found the following pool /Common/app3_t8443_pool -[2023-04-27T20:22:48.030Z] [DEBUG]: profile references found: [ - '/Common/app3_clientssl', - '/Common/app3_serverssl', - '/Common/http', - '/Common/tcp' -] -[2023-04-27T20:22:48.030Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:48.030Z] [DEBUG]: [/Common/app3_t8443_vs] found the following profiles - /Common/app3_clientssl { - context clientside - } - /Common/app3_serverssl { - context serverside - } - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:48.030Z] [DEBUG]: rule references found: [ '/Common/app3_rule', '/Common/app3_rule2', '/Common/app3_rule3' ] -[2023-04-27T20:22:48.030Z] [DEBUG]: [/Common/app3_t8443_vs] found the following rules - /Common/app3_rule - /Common/app3_rule2 - /Common/app3_rule3 -[2023-04-27T20:22:48.030Z] [DEBUG]: [/Common/app3_t8443_vs] found snat configuration - pool /Common/app3_snat_pool - type snat -[2023-04-27T20:22:48.030Z] [DEBUG]: policy references found: [ '/Common/app3_ltm_policy' ] -[2023-04-27T20:22:48.030Z] [DEBUG]: policy found [/Common/app3_ltm_policy] -[2023-04-27T20:22:48.031Z] [DEBUG]: [/Common/app3_t8443_vs] found the following policies - /Common/app3_ltm_policy { } -[2023-04-27T20:22:48.031Z] [DEBUG]: [/Common/app3_t8443_vs] found the following persistence - /Common/app3_cookie { - default yes - } -[2023-04-27T20:22:48.031Z] [DEBUG]: [/Common/app3_t8443_vs] found the following persistence /Common/app3_srcAddr_persist -[2023-04-27T20:22:48.031Z] [INFO]: digging vs config for /Common/app4_t80_vs -[2023-04-27T20:22:48.031Z] [DEBUG]: digging pool config for /Common/app4_pool -[2023-04-27T20:22:48.031Z] [DEBUG]: Pool /Common/app4_pool members found: [ '/Common/api.chucknorris.io' ] -[2023-04-27T20:22:48.031Z] [DEBUG]: [/Common/app4_t80_vs] found the following pool /Common/app4_pool -[2023-04-27T20:22:48.031Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:48.031Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:48.031Z] [DEBUG]: [/Common/app4_t80_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:48.031Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect', '/Common/app4_pool_rule' ] -[2023-04-27T20:22:48.031Z] [DEBUG]: digging pool config for /Common/css_pool -[2023-04-27T20:22:48.031Z] [DEBUG]: digging pool config for /Common/jpg.pool -[2023-04-27T20:22:48.031Z] [DEBUG]: digging pool config for /Common/js.io_t80_pool -[2023-04-27T20:22:48.031Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details -[2023-04-27T20:22:48.032Z] [DEBUG]: [/Common/app4_t80_vs] found the following rules - /Common/_sys_https_redirect - /Common/app4_pool_rule -[2023-04-27T20:22:48.032Z] [DEBUG]: policy references found: [ '/Common/app4_ltPolicy' ] -[2023-04-27T20:22:48.032Z] [DEBUG]: policy found [/Common/app4_ltPolicy] -[2023-04-27T20:22:48.032Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/css_pool] -[2023-04-27T20:22:48.032Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/jpg.pool] -[2023-04-27T20:22:48.032Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/js.io_t80_pool] -[2023-04-27T20:22:48.032Z] [DEBUG]: [/Common/app4_t80_vs] found the following policies - /Common/app4_ltPolicy { } -[2023-04-27T20:22:48.032Z] [INFO]: digging vs config for /Common/forwarder_net_0.0.0.0 -[2023-04-27T20:22:48.032Z] [DEBUG]: profile references found: [ '/Common/fastl4_loose' ] -[2023-04-27T20:22:48.032Z] [DEBUG]: [/Common/forwarder_net_0.0.0.0] found the following profiles - /Common/fastl4_loose { } -[2023-04-27T20:22:48.032Z] [INFO]: digging vs config for /foo/defaultsUDP_5555/serviceMain -[2023-04-27T20:22:48.032Z] [DEBUG]: digging pool config for /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1 -[2023-04-27T20:22:48.032Z] [DEBUG]: Pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1 members found: [ '/foo/192.50.2.2' ] -[2023-04-27T20:22:48.032Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found the following pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1 -[2023-04-27T20:22:48.032Z] [DEBUG]: profile references found: [ '/Common/udp' ] -[2023-04-27T20:22:48.032Z] [DEBUG]: Found 1 system default profiles, compare previous arrays for details -[2023-04-27T20:22:48.032Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found the following profiles - /Common/udp { } -[2023-04-27T20:22:48.032Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:48.032Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found snat configuration - type automap -[2023-04-27T20:22:48.032Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found the following persistence - /Common/source_addr { - default yes - } -[2023-04-27T20:22:48.032Z] [INFO]: digging vs config for /hue-infra/hue-up/hue-up.benlab.io_t80_vs -[2023-04-27T20:22:48.032Z] [DEBUG]: digging pool config for /hue-infra/hue-up/hue-up.benlab.io_t80_pool -[2023-04-27T20:22:48.032Z] [DEBUG]: Pool /hue-infra/hue-up/hue-up.benlab.io_t80_pool members found: null -[2023-04-27T20:22:48.032Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found the following pool /hue-infra/hue-up/hue-up.benlab.io_t80_pool -[2023-04-27T20:22:48.032Z] [DEBUG]: profile references found: [ '/Common/f5-tcp-progressive', '/Common/http' ] -[2023-04-27T20:22:48.032Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:48.032Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found the following profiles - /Common/f5-tcp-progressive { } - /Common/http { } -[2023-04-27T20:22:48.032Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:48.032Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found snat configuration - type automap -[2023-04-27T20:22:48.032Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found the following persistence - /Common/cookie { - default yes - } -[2023-04-27T20:22:48.032Z] [INFO]: digging vs config for /hue-infra/hue-up/hue-up.benlab.io_t443_vs -[2023-04-27T20:22:48.032Z] [DEBUG]: digging pool config for /hue-infra/hue-up/hue-up.benlab.io_t443_pool -[2023-04-27T20:22:48.032Z] [DEBUG]: Pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool members found: null -[2023-04-27T20:22:48.032Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found the following pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool -[2023-04-27T20:22:48.033Z] [DEBUG]: profile references found: [ '/Common/f5-tcp-progressive', '/Common/http' ] -[2023-04-27T20:22:48.033Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:48.033Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found the following profiles - /Common/f5-tcp-progressive { } - /Common/http { } -[2023-04-27T20:22:48.033Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:48.033Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found snat configuration - type automap -[2023-04-27T20:22:48.033Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found the following persistence - /Common/cookie { - default yes - } -[2023-04-27T20:22:48.034Z] [INFO]: digging DO classes for base config info -[2023-04-27T20:22:48.034Z] [DEBUG]: no path "cli global-settings" in object -[2023-04-27T20:22:48.034Z] [DEBUG]: no path "sys db" in object -[2023-04-27T20:22:48.034Z] [DEBUG]: no path "net trunk" in object -[2023-04-27T20:22:48.034Z] [DEBUG]: no path "net self" in object -[2023-04-27T20:22:48.034Z] [DEBUG]: no path "net route" in object -[2023-04-27T20:22:48.034Z] [DEBUG]: no path "net routing access-list" in object -[2023-04-27T20:22:48.034Z] [DEBUG]: no path "net routing as-path" in object -[2023-04-27T20:22:48.034Z] [DEBUG]: no path "net routing prefix-list" in object -[2023-04-27T20:22:48.034Z] [DEBUG]: no path "net routing route-map" in object -[2023-04-27T20:22:48.034Z] [DEBUG]: no path "net routing bgp" in object -[2023-04-27T20:22:48.034Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object -[2023-04-27T20:22:48.034Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object -[2023-04-27T20:22:48.034Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object -[2023-04-27T20:22:48.034Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object -[2023-04-27T20:22:48.034Z] [DEBUG]: no path "cm device-group" in object -[2023-04-27T20:22:48.034Z] [DEBUG]: no path "cm traffic-group" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "cm traffic-group" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "sys syslog" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "auth tacacs" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "auth remote-role role-info" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "auth ldap" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "sys snmp traps" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "sys snmp users" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "sys snmp communities" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "net dag-globals" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "ltm global-settings traffic-control" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "sys sshd" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "net tunnels vxlan" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "sys disk directory" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "gtm monitor http" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "gtm monitor https" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "gtm monitor gateway-icmp" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "gtm monitor tcp" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "gtm monitor udp" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "gtm prober-pool" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "security firewall policy" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "security firewall address-list" in object -[2023-04-27T20:22:48.035Z] [DEBUG]: no path "security firewall management-ip-rules" in object -[2023-04-27T20:22:48.567Z] [DEBUG]: detected file: [/home/ted/f5-corkscrew/tests/artifacts/f5_corkscrew_test.qkview], size: [2580499] -[2023-04-27T20:22:48.569Z] [INFO]: config/profile_base.conf: default profile base file, stashing for later -[2023-04-27T20:22:48.569Z] [INFO]: config/low_profile_base.conf: default profile base file, stashing for later -[2023-04-27T20:22:48.570Z] [INFO]: Recieved .conf file of version: 15.1.8.2 -[2023-04-27T20:22:48.841Z] [INFO]: digging vs config for /Common/app1_t80_vs -[2023-04-27T20:22:48.842Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:48.842Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:48.842Z] [DEBUG]: [/Common/app1_t80_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:48.842Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect' ] -[2023-04-27T20:22:48.842Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details -[2023-04-27T20:22:48.842Z] [DEBUG]: [/Common/app1_t80_vs] found the following rules - /Common/_sys_https_redirect -[2023-04-27T20:22:48.842Z] [INFO]: digging vs config for /Common/app1_t443_vs -[2023-04-27T20:22:48.842Z] [DEBUG]: digging pool config for /Common/app1_t80_pool -[2023-04-27T20:22:48.843Z] [DEBUG]: Pool /Common/app1_t80_pool members found: [ '/Common/app1_Node1', '/Common/app1_Node2' ] -[2023-04-27T20:22:48.843Z] [DEBUG]: pool monitor references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:48.843Z] [DEBUG]: pool monitor configs found: [] -[2023-04-27T20:22:48.843Z] [DEBUG]: [/Common/app1_t80_pool] references 2 system default monitors, compare previous arrays for details -[2023-04-27T20:22:48.843Z] [DEBUG]: [/Common/app1_t443_vs] found the following pool /Common/app1_t80_pool -[2023-04-27T20:22:48.843Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:48.843Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:48.843Z] [DEBUG]: [/Common/app1_t443_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:48.843Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:48.843Z] [DEBUG]: [/Common/app1_t443_vs] found snat configuration - type automap -[2023-04-27T20:22:48.843Z] [INFO]: digging vs config for /Common/app2_t80_vs -[2023-04-27T20:22:48.843Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:48.843Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:48.843Z] [DEBUG]: [/Common/app2_t80_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:48.843Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect' ] -[2023-04-27T20:22:48.843Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details -[2023-04-27T20:22:48.843Z] [DEBUG]: [/Common/app2_t80_vs] found the following rules - /Common/_sys_https_redirect -[2023-04-27T20:22:48.843Z] [INFO]: digging vs config for /Common/bigiq.benlab.io_t443_vs -[2023-04-27T20:22:48.843Z] [DEBUG]: digging pool config for /Common/bigiq.benlab.io_t443_pool -[2023-04-27T20:22:48.843Z] [DEBUG]: Pool /Common/bigiq.benlab.io_t443_pool members found: [ '/Common/10.200.244.15' ] -[2023-04-27T20:22:48.843Z] [DEBUG]: pool monitor references found: [ '/Common/https_head_f5' ] -[2023-04-27T20:22:48.843Z] [DEBUG]: pool monitor configs found: [] -[2023-04-27T20:22:48.843Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_pool] references 1 system default monitors, compare previous arrays for details -[2023-04-27T20:22:48.843Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following pool /Common/bigiq.benlab.io_t443_pool -[2023-04-27T20:22:48.843Z] [DEBUG]: profile references found: [ - '/Common/ASM_basic_policy_1', - '/Common/f5-tcp-progressive', - '/Common/http', - '/Common/websecurity' -] -[2023-04-27T20:22:48.844Z] [DEBUG]: Found 4 system default profiles, compare previous arrays for details -[2023-04-27T20:22:48.844Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following profiles - /Common/ASM_basic_policy_1 { } - /Common/f5-tcp-progressive { } - /Common/http { } - /Common/websecurity { } -[2023-04-27T20:22:48.844Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:48.844Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found snat configuration - type automap -[2023-04-27T20:22:48.844Z] [DEBUG]: policy references found: [ '/Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs' ] -[2023-04-27T20:22:48.844Z] [DEBUG]: policy found [/Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs] -[2023-04-27T20:22:48.844Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following policies - /Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs { } -[2023-04-27T20:22:48.845Z] [INFO]: digging vs config for /Common/app2_t443_vs -[2023-04-27T20:22:48.845Z] [DEBUG]: digging pool config for /Common/app2_t80_pool -[2023-04-27T20:22:48.845Z] [DEBUG]: Pool /Common/app2_t80_pool members found: [ '/Common/app2_Node1', '/Common/app2_Node2' ] -[2023-04-27T20:22:48.845Z] [DEBUG]: pool monitor references found: [ '/Common/global_http_monitor', '/Common/global_https_monitor' ] -[2023-04-27T20:22:48.845Z] [DEBUG]: pool monitor configs found: [ - 'ltm monitor http /Common/global_http_monitor {\n' + - ' adaptive disabled\n' + - ' defaults-from /Common/http\n' + - ' interval 5\n' + - ' ip-dscp 0\n' + - ' recv "ok 200"\n' + - ' recv-disable none\n' + - ' send "GET /anywebsite.com\\r\\n"\n' + - ' time-until-up 0\n' + - ' timeout 16\n' + - '}', - 'ltm monitor https /Common/global_https_monitor {\n' + - ' adaptive disabled\n' + - ' defaults-from /Common/https\n' + - ' interval 5\n' + - ' ip-dscp 0\n' + - ' recv "201 continue"\n' + - ' recv-disable none\n' + - ' send "GET /any-secure-website.com\\r\\n"\n' + - ' time-until-up 0\n' + - ' timeout 16\n' + - '}' -] -[2023-04-27T20:22:48.845Z] [DEBUG]: [/Common/app2_t443_vs] found the following pool /Common/app2_t80_pool -[2023-04-27T20:22:48.845Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:48.845Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:48.845Z] [DEBUG]: [/Common/app2_t443_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:48.845Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:48.845Z] [DEBUG]: [/Common/app2_t443_vs] found snat configuration - type automap -[2023-04-27T20:22:48.845Z] [INFO]: digging vs config for /Common/app3_t8443_vs -[2023-04-27T20:22:48.845Z] [DEBUG]: digging pool config for /Common/app3_t8443_pool -[2023-04-27T20:22:48.845Z] [DEBUG]: Pool /Common/app3_t8443_pool members found: [ '/Common/app3_Node1', '/Common/app3_Node2' ] -[2023-04-27T20:22:48.845Z] [DEBUG]: pool monitor references found: [ - '/Common/app1_tcp_half_open_quick_monitor', - '/Common/http_head_f5', - '/Common/http2_head_f5', - '/Common/http', - '/Common/tcp_half_open' -] -[2023-04-27T20:22:48.845Z] [DEBUG]: pool monitor configs found: [ - 'ltm monitor tcp-half-open /Common/app1_tcp_half_open_quick_monitor {\n' + - ' defaults-from /Common/tcp_half_open\n' + - ' destination *:*\n' + - ' interval 1\n' + - ' time-until-up 0\n' + - ' timeout 4\n' + - '}' -] -[2023-04-27T20:22:48.845Z] [DEBUG]: [/Common/app3_t8443_pool] references 4 system default monitors, compare previous arrays for details -[2023-04-27T20:22:48.845Z] [DEBUG]: [/Common/app3_t8443_vs] found the following pool /Common/app3_t8443_pool -[2023-04-27T20:22:48.845Z] [DEBUG]: profile references found: [ - '/Common/app3_clientssl', - '/Common/app3_serverssl', - '/Common/http', - '/Common/tcp' -] -[2023-04-27T20:22:48.845Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:48.845Z] [DEBUG]: [/Common/app3_t8443_vs] found the following profiles - /Common/app3_clientssl { - context clientside - } - /Common/app3_serverssl { - context serverside - } - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:48.845Z] [DEBUG]: rule references found: [ '/Common/app3_rule', '/Common/app3_rule2', '/Common/app3_rule3' ] -[2023-04-27T20:22:48.846Z] [DEBUG]: [/Common/app3_t8443_vs] found the following rules - /Common/app3_rule - /Common/app3_rule2 - /Common/app3_rule3 -[2023-04-27T20:22:48.846Z] [DEBUG]: [/Common/app3_t8443_vs] found snat configuration - pool /Common/app3_snat_pool - type snat -[2023-04-27T20:22:48.846Z] [DEBUG]: policy references found: [ '/Common/app3_ltm_policy' ] -[2023-04-27T20:22:48.846Z] [DEBUG]: policy found [/Common/app3_ltm_policy] -[2023-04-27T20:22:48.846Z] [DEBUG]: [/Common/app3_t8443_vs] found the following policies - /Common/app3_ltm_policy { } -[2023-04-27T20:22:48.846Z] [DEBUG]: [/Common/app3_t8443_vs] found the following persistence - /Common/app3_cookie { - default yes - } -[2023-04-27T20:22:48.846Z] [DEBUG]: [/Common/app3_t8443_vs] found the following persistence /Common/app3_srcAddr_persist -[2023-04-27T20:22:48.846Z] [INFO]: digging vs config for /Common/app4_t80_vs -[2023-04-27T20:22:48.846Z] [DEBUG]: digging pool config for /Common/app4_pool -[2023-04-27T20:22:48.846Z] [DEBUG]: Pool /Common/app4_pool members found: [ '/Common/api.chucknorris.io' ] -[2023-04-27T20:22:48.846Z] [DEBUG]: [/Common/app4_t80_vs] found the following pool /Common/app4_pool -[2023-04-27T20:22:48.846Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:48.846Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:48.846Z] [DEBUG]: [/Common/app4_t80_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:48.846Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect', '/Common/app4_pool_rule' ] -[2023-04-27T20:22:48.846Z] [DEBUG]: digging pool config for /Common/css_pool -[2023-04-27T20:22:48.846Z] [DEBUG]: digging pool config for /Common/jpg.pool -[2023-04-27T20:22:48.846Z] [DEBUG]: digging pool config for /Common/js.io_t80_pool -[2023-04-27T20:22:48.847Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details -[2023-04-27T20:22:48.847Z] [DEBUG]: [/Common/app4_t80_vs] found the following rules - /Common/_sys_https_redirect - /Common/app4_pool_rule -[2023-04-27T20:22:48.847Z] [DEBUG]: policy references found: [ '/Common/app4_ltPolicy' ] -[2023-04-27T20:22:48.847Z] [DEBUG]: policy found [/Common/app4_ltPolicy] -[2023-04-27T20:22:48.847Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/css_pool] -[2023-04-27T20:22:48.847Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/jpg.pool] -[2023-04-27T20:22:48.847Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/js.io_t80_pool] -[2023-04-27T20:22:48.847Z] [DEBUG]: [/Common/app4_t80_vs] found the following policies - /Common/app4_ltPolicy { } -[2023-04-27T20:22:48.847Z] [INFO]: digging vs config for /Common/forwarder_net_0.0.0.0 -[2023-04-27T20:22:48.847Z] [DEBUG]: profile references found: [ '/Common/fastl4_loose' ] -[2023-04-27T20:22:48.847Z] [DEBUG]: [/Common/forwarder_net_0.0.0.0] found the following profiles - /Common/fastl4_loose { } -[2023-04-27T20:22:48.847Z] [INFO]: digging vs config for /foo/defaultsUDP_5555/serviceMain -[2023-04-27T20:22:48.847Z] [DEBUG]: digging pool config for /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1 -[2023-04-27T20:22:48.847Z] [DEBUG]: Pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1 members found: [ '/foo/192.50.2.2' ] -[2023-04-27T20:22:48.847Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found the following pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1 -[2023-04-27T20:22:48.847Z] [DEBUG]: profile references found: [ '/Common/udp' ] -[2023-04-27T20:22:48.847Z] [DEBUG]: Found 1 system default profiles, compare previous arrays for details -[2023-04-27T20:22:48.847Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found the following profiles - /Common/udp { } -[2023-04-27T20:22:48.847Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:48.847Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found snat configuration - type automap -[2023-04-27T20:22:48.847Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found the following persistence - /Common/source_addr { - default yes - } -[2023-04-27T20:22:48.847Z] [INFO]: digging vs config for /hue-infra/hue-up/hue-up.benlab.io_t80_vs -[2023-04-27T20:22:48.847Z] [DEBUG]: digging pool config for /hue-infra/hue-up/hue-up.benlab.io_t80_pool -[2023-04-27T20:22:48.847Z] [DEBUG]: Pool /hue-infra/hue-up/hue-up.benlab.io_t80_pool members found: null -[2023-04-27T20:22:48.847Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found the following pool /hue-infra/hue-up/hue-up.benlab.io_t80_pool -[2023-04-27T20:22:48.847Z] [DEBUG]: profile references found: [ '/Common/f5-tcp-progressive', '/Common/http' ] -[2023-04-27T20:22:48.847Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:48.847Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found the following profiles - /Common/f5-tcp-progressive { } - /Common/http { } -[2023-04-27T20:22:48.847Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:48.847Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found snat configuration - type automap -[2023-04-27T20:22:48.847Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found the following persistence - /Common/cookie { - default yes - } -[2023-04-27T20:22:48.847Z] [INFO]: digging vs config for /hue-infra/hue-up/hue-up.benlab.io_t443_vs -[2023-04-27T20:22:48.847Z] [DEBUG]: digging pool config for /hue-infra/hue-up/hue-up.benlab.io_t443_pool -[2023-04-27T20:22:48.847Z] [DEBUG]: Pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool members found: null -[2023-04-27T20:22:48.847Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found the following pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool -[2023-04-27T20:22:48.847Z] [DEBUG]: profile references found: [ '/Common/f5-tcp-progressive', '/Common/http' ] -[2023-04-27T20:22:48.847Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:48.847Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found the following profiles - /Common/f5-tcp-progressive { } - /Common/http { } -[2023-04-27T20:22:48.847Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:48.847Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found snat configuration - type automap -[2023-04-27T20:22:48.847Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found the following persistence - /Common/cookie { - default yes - } -[2023-04-27T20:22:48.848Z] [INFO]: digging DO classes for base config info -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "cli global-settings" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "sys db" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "net trunk" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "net self" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "net route" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "net routing access-list" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "net routing as-path" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "net routing prefix-list" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "net routing route-map" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "net routing bgp" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "cm device-group" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "cm traffic-group" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "cm traffic-group" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "sys syslog" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "auth tacacs" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "auth remote-role role-info" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "auth ldap" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "sys snmp traps" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "sys snmp users" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "sys snmp communities" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "net dag-globals" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "ltm global-settings traffic-control" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "sys sshd" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "net tunnels vxlan" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "sys disk directory" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "gtm monitor http" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "gtm monitor https" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "gtm monitor gateway-icmp" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "gtm monitor tcp" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "gtm monitor udp" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "gtm prober-pool" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "security firewall policy" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "security firewall address-list" in object -[2023-04-27T20:22:48.848Z] [DEBUG]: no path "security firewall management-ip-rules" in object -[2023-04-27T20:22:49.276Z] [DEBUG]: got .conf file [/home/ted/f5-corkscrew/tests/artifacts/f5_corkscrew_test.conf], size [76020] -[2023-04-27T20:22:49.276Z] [INFO]: Recieved .conf file of version: 15.1.8.2 -[2023-04-27T20:22:49.293Z] [INFO]: digging vs config for /Common/app1_t80_vs -[2023-04-27T20:22:49.294Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:49.294Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:49.294Z] [DEBUG]: [/Common/app1_t80_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:49.294Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect' ] -[2023-04-27T20:22:49.294Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details -[2023-04-27T20:22:49.294Z] [DEBUG]: [/Common/app1_t80_vs] found the following rules - /Common/_sys_https_redirect -[2023-04-27T20:22:49.294Z] [INFO]: digging vs config for /Common/app1_t443_vs -[2023-04-27T20:22:49.294Z] [DEBUG]: digging pool config for /Common/app1_t80_pool -[2023-04-27T20:22:49.294Z] [DEBUG]: Pool /Common/app1_t80_pool members found: [ '/Common/app1_Node1', '/Common/app1_Node2' ] -[2023-04-27T20:22:49.294Z] [DEBUG]: pool monitor references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:49.294Z] [DEBUG]: pool monitor configs found: [] -[2023-04-27T20:22:49.294Z] [DEBUG]: [/Common/app1_t80_pool] references 2 system default monitors, compare previous arrays for details -[2023-04-27T20:22:49.294Z] [DEBUG]: [/Common/app1_t443_vs] found the following pool /Common/app1_t80_pool -[2023-04-27T20:22:49.294Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:49.294Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:49.294Z] [DEBUG]: [/Common/app1_t443_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:49.294Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:49.294Z] [DEBUG]: [/Common/app1_t443_vs] found snat configuration - type automap -[2023-04-27T20:22:49.294Z] [INFO]: digging vs config for /Common/app2_t80_vs -[2023-04-27T20:22:49.294Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:49.294Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:49.294Z] [DEBUG]: [/Common/app2_t80_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:49.294Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect' ] -[2023-04-27T20:22:49.294Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details -[2023-04-27T20:22:49.294Z] [DEBUG]: [/Common/app2_t80_vs] found the following rules - /Common/_sys_https_redirect -[2023-04-27T20:22:49.295Z] [INFO]: digging vs config for /Common/bigiq.benlab.io_t443_vs -[2023-04-27T20:22:49.295Z] [DEBUG]: digging pool config for /Common/bigiq.benlab.io_t443_pool -[2023-04-27T20:22:49.295Z] [DEBUG]: Pool /Common/bigiq.benlab.io_t443_pool members found: [ '/Common/10.200.244.15' ] -[2023-04-27T20:22:49.295Z] [DEBUG]: pool monitor references found: [ '/Common/https_head_f5' ] -[2023-04-27T20:22:49.295Z] [DEBUG]: pool monitor configs found: [] -[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_pool] references 1 system default monitors, compare previous arrays for details -[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following pool /Common/bigiq.benlab.io_t443_pool -[2023-04-27T20:22:49.295Z] [DEBUG]: profile references found: [ - '/Common/ASM_basic_policy_1', - '/Common/f5-tcp-progressive', - '/Common/http', - '/Common/websecurity' -] -[2023-04-27T20:22:49.295Z] [DEBUG]: Found 4 system default profiles, compare previous arrays for details -[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following profiles - /Common/ASM_basic_policy_1 { } - /Common/f5-tcp-progressive { } - /Common/http { } - /Common/websecurity { } -[2023-04-27T20:22:49.295Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found snat configuration - type automap -[2023-04-27T20:22:49.295Z] [DEBUG]: policy references found: [ '/Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs' ] -[2023-04-27T20:22:49.295Z] [DEBUG]: policy found [/Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs] -[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following policies - /Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs { } -[2023-04-27T20:22:49.295Z] [INFO]: digging vs config for /Common/app2_t443_vs -[2023-04-27T20:22:49.295Z] [DEBUG]: digging pool config for /Common/app2_t80_pool -[2023-04-27T20:22:49.295Z] [DEBUG]: Pool /Common/app2_t80_pool members found: [ '/Common/app2_Node1', '/Common/app2_Node2' ] -[2023-04-27T20:22:49.295Z] [DEBUG]: pool monitor references found: [ '/Common/global_http_monitor', '/Common/global_https_monitor' ] -[2023-04-27T20:22:49.295Z] [DEBUG]: pool monitor configs found: [ - 'ltm monitor http /Common/global_http_monitor {\n' + - ' adaptive disabled\n' + - ' defaults-from /Common/http\n' + - ' interval 5\n' + - ' ip-dscp 0\n' + - ' recv "ok 200"\n' + - ' recv-disable none\n' + - ' send "GET /anywebsite.com\\r\\n"\n' + - ' time-until-up 0\n' + - ' timeout 16\n' + - '}', - 'ltm monitor https /Common/global_https_monitor {\n' + - ' adaptive disabled\n' + - ' defaults-from /Common/https\n' + - ' interval 5\n' + - ' ip-dscp 0\n' + - ' recv "201 continue"\n' + - ' recv-disable none\n' + - ' send "GET /any-secure-website.com\\r\\n"\n' + - ' time-until-up 0\n' + - ' timeout 16\n' + - '}' -] -[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/app2_t443_vs] found the following pool /Common/app2_t80_pool -[2023-04-27T20:22:49.295Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:49.295Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/app2_t443_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:49.295Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/app2_t443_vs] found snat configuration - type automap -[2023-04-27T20:22:49.295Z] [INFO]: digging vs config for /Common/app3_t8443_vs -[2023-04-27T20:22:49.295Z] [DEBUG]: digging pool config for /Common/app3_t8443_pool -[2023-04-27T20:22:49.295Z] [DEBUG]: Pool /Common/app3_t8443_pool members found: [ '/Common/app3_Node1', '/Common/app3_Node2' ] -[2023-04-27T20:22:49.295Z] [DEBUG]: pool monitor references found: [ - '/Common/app1_tcp_half_open_quick_monitor', - '/Common/http_head_f5', - '/Common/http2_head_f5', - '/Common/http', - '/Common/tcp_half_open' -] -[2023-04-27T20:22:49.295Z] [DEBUG]: pool monitor configs found: [ - 'ltm monitor tcp-half-open /Common/app1_tcp_half_open_quick_monitor {\n' + - ' defaults-from /Common/tcp_half_open\n' + - ' destination *:*\n' + - ' interval 1\n' + - ' time-until-up 0\n' + - ' timeout 4\n' + - '}' -] -[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/app3_t8443_pool] references 4 system default monitors, compare previous arrays for details -[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/app3_t8443_vs] found the following pool /Common/app3_t8443_pool -[2023-04-27T20:22:49.295Z] [DEBUG]: profile references found: [ - '/Common/app3_clientssl', - '/Common/app3_serverssl', - '/Common/http', - '/Common/tcp' -] -[2023-04-27T20:22:49.295Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/app3_t8443_vs] found the following profiles - /Common/app3_clientssl { - context clientside - } - /Common/app3_serverssl { - context serverside - } - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:49.295Z] [DEBUG]: rule references found: [ '/Common/app3_rule', '/Common/app3_rule2', '/Common/app3_rule3' ] -[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/app3_t8443_vs] found the following rules - /Common/app3_rule - /Common/app3_rule2 - /Common/app3_rule3 -[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/app3_t8443_vs] found snat configuration - pool /Common/app3_snat_pool - type snat -[2023-04-27T20:22:49.296Z] [DEBUG]: policy references found: [ '/Common/app3_ltm_policy' ] -[2023-04-27T20:22:49.296Z] [DEBUG]: policy found [/Common/app3_ltm_policy] -[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/app3_t8443_vs] found the following policies - /Common/app3_ltm_policy { } -[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/app3_t8443_vs] found the following persistence - /Common/app3_cookie { - default yes - } -[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/app3_t8443_vs] found the following persistence /Common/app3_srcAddr_persist -[2023-04-27T20:22:49.296Z] [INFO]: digging vs config for /Common/app4_t80_vs -[2023-04-27T20:22:49.296Z] [DEBUG]: digging pool config for /Common/app4_pool -[2023-04-27T20:22:49.296Z] [DEBUG]: Pool /Common/app4_pool members found: [ '/Common/api.chucknorris.io' ] -[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/app4_t80_vs] found the following pool /Common/app4_pool -[2023-04-27T20:22:49.296Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:49.296Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/app4_t80_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:49.296Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect', '/Common/app4_pool_rule' ] -[2023-04-27T20:22:49.296Z] [DEBUG]: digging pool config for /Common/css_pool -[2023-04-27T20:22:49.296Z] [DEBUG]: digging pool config for /Common/jpg.pool -[2023-04-27T20:22:49.296Z] [DEBUG]: digging pool config for /Common/js.io_t80_pool -[2023-04-27T20:22:49.296Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details -[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/app4_t80_vs] found the following rules - /Common/_sys_https_redirect - /Common/app4_pool_rule -[2023-04-27T20:22:49.296Z] [DEBUG]: policy references found: [ '/Common/app4_ltPolicy' ] -[2023-04-27T20:22:49.296Z] [DEBUG]: policy found [/Common/app4_ltPolicy] -[2023-04-27T20:22:49.296Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/css_pool] -[2023-04-27T20:22:49.296Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/jpg.pool] -[2023-04-27T20:22:49.296Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/js.io_t80_pool] -[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/app4_t80_vs] found the following policies - /Common/app4_ltPolicy { } -[2023-04-27T20:22:49.296Z] [INFO]: digging vs config for /Common/forwarder_net_0.0.0.0 -[2023-04-27T20:22:49.296Z] [DEBUG]: profile references found: [ '/Common/fastl4_loose' ] -[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/forwarder_net_0.0.0.0] found the following profiles - /Common/fastl4_loose { } -[2023-04-27T20:22:49.296Z] [INFO]: digging DO classes for base config info -[2023-04-27T20:22:49.296Z] [DEBUG]: no path "sys global-settings" in object -[2023-04-27T20:22:49.296Z] [DEBUG]: no path "cli global-settings" in object -[2023-04-27T20:22:49.296Z] [DEBUG]: no path "sys db" in object -[2023-04-27T20:22:49.296Z] [DEBUG]: no path "sys management-ip" in object -[2023-04-27T20:22:49.296Z] [DEBUG]: no path "sys provision" in object -[2023-04-27T20:22:49.296Z] [DEBUG]: no path "sys ntp" in object -[2023-04-27T20:22:49.296Z] [DEBUG]: no path "sys dns" in object -[2023-04-27T20:22:49.296Z] [DEBUG]: no path "net trunk" in object -[2023-04-27T20:22:49.296Z] [DEBUG]: no path "net vlan" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "net self" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "net route" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "net routing access-list" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "net routing as-path" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "net routing prefix-list" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "net routing route-map" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "net routing bgp" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "cm device-group" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "cm traffic-group" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "cm traffic-group" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "sys management-route" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "sys syslog" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "auth tacacs" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "net route-domain" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "auth remote-role role-info" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "auth ldap" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "sys snmp" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "sys snmp traps" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "sys snmp" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "sys snmp users" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "sys snmp communities" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "net dag-globals" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "sys httpd" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "ltm global-settings traffic-control" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "sys sshd" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "net tunnels tunnel" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "net tunnels vxlan" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "sys disk directory" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "gtm global-settings general" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "gtm datacenter" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "gtm server" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "gtm monitor http" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "gtm monitor https" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "gtm monitor gateway-icmp" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "gtm monitor tcp" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "gtm monitor udp" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "gtm prober-pool" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "security firewall policy" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "security firewall address-list" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "security firewall port-list" in object -[2023-04-27T20:22:49.297Z] [DEBUG]: no path "security firewall management-ip-rules" in object -[2023-04-27T20:22:49.301Z] [INFO]: digging vs config for /Common/app4_t80_vs -[2023-04-27T20:22:49.301Z] [DEBUG]: digging pool config for /Common/app4_pool -[2023-04-27T20:22:49.301Z] [DEBUG]: Pool /Common/app4_pool members found: [ '/Common/api.chucknorris.io' ] -[2023-04-27T20:22:49.301Z] [DEBUG]: [/Common/app4_t80_vs] found the following pool /Common/app4_pool -[2023-04-27T20:22:49.301Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:49.301Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:49.301Z] [DEBUG]: [/Common/app4_t80_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:49.301Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect', '/Common/app4_pool_rule' ] -[2023-04-27T20:22:49.301Z] [DEBUG]: digging pool config for /Common/css_pool -[2023-04-27T20:22:49.301Z] [DEBUG]: digging pool config for /Common/jpg.pool -[2023-04-27T20:22:49.301Z] [DEBUG]: digging pool config for /Common/js.io_t80_pool -[2023-04-27T20:22:49.301Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details -[2023-04-27T20:22:49.301Z] [DEBUG]: [/Common/app4_t80_vs] found the following rules - /Common/_sys_https_redirect - /Common/app4_pool_rule -[2023-04-27T20:22:49.301Z] [DEBUG]: policy references found: [ '/Common/app4_ltPolicy' ] -[2023-04-27T20:22:49.301Z] [DEBUG]: policy found [/Common/app4_ltPolicy] -[2023-04-27T20:22:49.301Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/css_pool] -[2023-04-27T20:22:49.301Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/jpg.pool] -[2023-04-27T20:22:49.301Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/js.io_t80_pool] -[2023-04-27T20:22:49.301Z] [DEBUG]: [/Common/app4_t80_vs] found the following policies - /Common/app4_ltPolicy { } -[2023-04-27T20:22:49.302Z] [DEBUG]: detected file: [/home/ted/f5-corkscrew/tests/artifacts/badArchive1.tar.gz], size: [28643] -[2023-04-27T20:22:49.304Z] [INFO]: Recieved .conf file of version: 15.1.0.4 -[2023-04-27T20:22:49.304Z] [ERROR]: Parsing [config/partitions/bd1/bigip.conf], tmos version of this file does not match previous file [15.1.0.4] -[2023-04-27T20:22:49.304Z] [ERROR]: tmos version not detected -> meaning this probably is not a bigip.conf -[2023-04-27T20:22:49.305Z] [ERROR]: failed to extract any parent tmos matches from config/partitions/bd2/bigip.conf - might be a scripts file... -[2023-04-27T20:22:49.311Z] [INFO]: digging vs config for /bd1/defaultsUDP_444/serviceMain -[2023-04-27T20:22:49.311Z] [DEBUG]: digging pool config for /bd1/defaultsUDP_444/defaultsUDP_444_Pool1 -[2023-04-27T20:22:49.311Z] [DEBUG]: Pool /bd1/defaultsUDP_444/defaultsUDP_444_Pool1 members found: [ '/bd1/192.0.2.2' ] -[2023-04-27T20:22:49.311Z] [DEBUG]: [/bd1/defaultsUDP_444/serviceMain] found the following pool /bd1/defaultsUDP_444/defaultsUDP_444_Pool1 -[2023-04-27T20:22:49.311Z] [DEBUG]: profile references found: [ '/Common/udp' ] -[2023-04-27T20:22:49.311Z] [DEBUG]: Found 1 system default profiles, compare previous arrays for details -[2023-04-27T20:22:49.311Z] [DEBUG]: [/bd1/defaultsUDP_444/serviceMain] found the following profiles - /Common/udp { } -[2023-04-27T20:22:49.311Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:49.311Z] [DEBUG]: [/bd1/defaultsUDP_444/serviceMain] found snat configuration - type automap -[2023-04-27T20:22:49.311Z] [DEBUG]: [/bd1/defaultsUDP_444/serviceMain] found the following persistence - /Common/source_addr { - default yes - } -[2023-04-27T20:22:49.311Z] [INFO]: digging vs config for /Common/app1_t80_vs -[2023-04-27T20:22:49.311Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:49.311Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:49.311Z] [DEBUG]: [/Common/app1_t80_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:49.311Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect' ] -[2023-04-27T20:22:49.311Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details -[2023-04-27T20:22:49.311Z] [DEBUG]: [/Common/app1_t80_vs] found the following rules - /Common/_sys_https_redirect -[2023-04-27T20:22:49.311Z] [INFO]: digging vs config for /Common/app1_t443_vs -[2023-04-27T20:22:49.311Z] [DEBUG]: digging pool config for /Common/app1_t80_pool -[2023-04-27T20:22:49.311Z] [DEBUG]: Pool /Common/app1_t80_pool members found: [ '/Common/app1_Node1', '/Common/app1_Node2' ] -[2023-04-27T20:22:49.312Z] [DEBUG]: pool monitor references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:49.312Z] [DEBUG]: pool monitor configs found: [] -[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app1_t80_pool] references 2 system default monitors, compare previous arrays for details -[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app1_t443_vs] found the following pool /Common/app1_t80_pool -[2023-04-27T20:22:49.312Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:49.312Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app1_t443_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:49.312Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app1_t443_vs] found snat configuration - type automap -[2023-04-27T20:22:49.312Z] [INFO]: digging vs config for /Common/app2_t80_vs -[2023-04-27T20:22:49.312Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:49.312Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app2_t80_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:49.312Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect' ] -[2023-04-27T20:22:49.312Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details -[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app2_t80_vs] found the following rules - /Common/_sys_https_redirect -[2023-04-27T20:22:49.312Z] [INFO]: digging vs config for /Common/app2_t443_vs -[2023-04-27T20:22:49.312Z] [DEBUG]: digging pool config for /Common/app2_t80_pool -[2023-04-27T20:22:49.312Z] [DEBUG]: Pool /Common/app2_t80_pool members found: [ '/Common/app2_Node1', '/Common/app2_Node2' ] -[2023-04-27T20:22:49.312Z] [DEBUG]: pool monitor references found: [ '/Common/global_http_monitor', '/Common/global_https_monitor' ] -[2023-04-27T20:22:49.312Z] [DEBUG]: pool monitor configs found: [ - 'ltm monitor http /Common/global_http_monitor {\n' + - ' adaptive disabled\n' + - ' defaults-from /Common/http\n' + - ' interval 5\n' + - ' ip-dscp 0\n' + - ' recv "ok 200"\n' + - ' recv-disable none\n' + - ' send "GET /anywebsite.com\\r\\n"\n' + - ' time-until-up 0\n' + - ' timeout 16\n' + - '}', - 'ltm monitor https /Common/global_https_monitor {\n' + - ' adaptive disabled\n' + - ' defaults-from /Common/https\n' + - ' interval 5\n' + - ' ip-dscp 0\n' + - ' recv "201 continue"\n' + - ' recv-disable none\n' + - ' send "GET /any-secure-website.com\\r\\n"\n' + - ' time-until-up 0\n' + - ' timeout 16\n' + - '}' -] -[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app2_t443_vs] found the following pool /Common/app2_t80_pool -[2023-04-27T20:22:49.312Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:49.312Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app2_t443_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:49.312Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app2_t443_vs] found snat configuration - type automap -[2023-04-27T20:22:49.312Z] [INFO]: digging vs config for /Common/app3_t8443_vs -[2023-04-27T20:22:49.312Z] [DEBUG]: digging pool config for /Common/app3_t8443_pool -[2023-04-27T20:22:49.312Z] [DEBUG]: Pool /Common/app3_t8443_pool members found: [ '/Common/app3_Node1', '/Common/app3_Node2' ] -[2023-04-27T20:22:49.312Z] [DEBUG]: pool monitor references found: [ - '/Common/app1_tcp_half_open_quick_monitor', - '/Common/http_head_f5', - '/Common/http2_head_f5', - '/Common/http', - '/Common/tcp_half_open' -] -[2023-04-27T20:22:49.312Z] [DEBUG]: pool monitor configs found: [ - 'ltm monitor tcp-half-open /Common/app1_tcp_half_open_quick_monitor {\n' + - ' defaults-from /Common/tcp_half_open\n' + - ' destination *:*\n' + - ' interval 1\n' + - ' time-until-up 0\n' + - ' timeout 4\n' + - '}' -] -[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app3_t8443_pool] references 4 system default monitors, compare previous arrays for details -[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app3_t8443_vs] found the following pool /Common/app3_t8443_pool -[2023-04-27T20:22:49.312Z] [DEBUG]: profile references found: [ - '/Common/app3_clientssl', - '/Common/app3_serverssl', - '/Common/http', - '/Common/tcp' -] -[2023-04-27T20:22:49.312Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app3_t8443_vs] found the following profiles - /Common/app3_clientssl { - context clientside - } - /Common/app3_serverssl { - context serverside - } - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:49.312Z] [DEBUG]: rule references found: [ '/Common/app3_rule', '/Common/app3_rule2', '/Common/app3_rule3' ] -[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app3_t8443_vs] found the following rules - /Common/app3_rule - /Common/app3_rule2 - /Common/app3_rule3 -[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app3_t8443_vs] found snat configuration - pool /Common/app3_snat_pool - type snat -[2023-04-27T20:22:49.312Z] [DEBUG]: policy references found: [ '/Common/app3_ltm_policy' ] -[2023-04-27T20:22:49.312Z] [DEBUG]: policy found [/Common/app3_ltm_policy] -[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app3_t8443_vs] found the following policies - /Common/app3_ltm_policy { } -[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app3_t8443_vs] found the following persistence - /Common/app3_cookie { - default yes - } -[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app3_t8443_vs] found the following persistence /Common/app3_srcAddr_persist -[2023-04-27T20:22:49.313Z] [INFO]: digging vs config for /Common/app4_t80_vs -[2023-04-27T20:22:49.313Z] [DEBUG]: digging pool config for /Common/app4_pool -[2023-04-27T20:22:49.313Z] [DEBUG]: Pool /Common/app4_pool members found: [ '/Common/api.chucknorris.io' ] -[2023-04-27T20:22:49.313Z] [DEBUG]: [/Common/app4_t80_vs] found the following pool /Common/app4_pool -[2023-04-27T20:22:49.313Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:49.313Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:49.313Z] [DEBUG]: [/Common/app4_t80_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:49.313Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect', '/Common/app4_pool_rule' ] -[2023-04-27T20:22:49.313Z] [DEBUG]: digging pool config for /Common/css_pool -[2023-04-27T20:22:49.313Z] [DEBUG]: digging pool config for /Common/jpg.pool -[2023-04-27T20:22:49.313Z] [DEBUG]: digging pool config for /Common/js.io_t80_pool -[2023-04-27T20:22:49.313Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details -[2023-04-27T20:22:49.313Z] [DEBUG]: [/Common/app4_t80_vs] found the following rules - /Common/_sys_https_redirect - /Common/app4_pool_rule -[2023-04-27T20:22:49.313Z] [DEBUG]: policy references found: [ '/Common/app4_ltPolicy' ] -[2023-04-27T20:22:49.313Z] [DEBUG]: policy found [/Common/app4_ltPolicy] -[2023-04-27T20:22:49.313Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/css_pool] -[2023-04-27T20:22:49.313Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/jpg.pool] -[2023-04-27T20:22:49.313Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/js.io_t80_pool] -[2023-04-27T20:22:49.313Z] [DEBUG]: [/Common/app4_t80_vs] found the following policies - /Common/app4_ltPolicy { } -[2023-04-27T20:22:49.313Z] [INFO]: digging vs config for /Common/forwarder_net_0.0.0.0 -[2023-04-27T20:22:49.313Z] [DEBUG]: profile references found: [ '/Common/fastl4_loose' ] -[2023-04-27T20:22:49.313Z] [DEBUG]: [/Common/forwarder_net_0.0.0.0] found the following profiles - /Common/fastl4_loose { } -[2023-04-27T20:22:49.313Z] [INFO]: digging DO classes for base config info -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "sys global-settings" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "cli global-settings" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "sys db" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "sys management-ip" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "sys provision" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "sys ntp" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "sys dns" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "net trunk" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "net vlan" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "net self" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "net route" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "net routing access-list" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "net routing as-path" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "net routing prefix-list" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "net routing route-map" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "net routing bgp" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "cm device-group" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "cm traffic-group" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "cm traffic-group" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "sys management-route" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "sys syslog" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "auth tacacs" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "net route-domain" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "auth remote-role role-info" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "auth ldap" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "sys snmp" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "sys snmp traps" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "sys snmp" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "sys snmp users" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "sys snmp communities" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "net dag-globals" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "sys httpd" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "ltm global-settings traffic-control" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "sys sshd" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "net tunnels tunnel" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "net tunnels vxlan" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "sys disk directory" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "gtm global-settings general" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "gtm datacenter" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "gtm server" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "gtm monitor http" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "gtm monitor https" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "gtm monitor gateway-icmp" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "gtm monitor tcp" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "gtm monitor udp" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "gtm prober-pool" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "security firewall policy" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "security firewall address-list" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "security firewall port-list" in object -[2023-04-27T20:22:49.313Z] [DEBUG]: no path "security firewall management-ip-rules" in object -[2023-04-27T20:22:49.336Z] [DEBUG]: detected file: [/home/ted/f5-corkscrew/tests/artifacts/f5_corkscrew_test.ucs], size: [43567] -[2023-04-27T20:22:49.338Z] [INFO]: Recieved .conf file of version: 15.1.8.2 -[2023-04-27T20:22:49.362Z] [INFO]: digging vs config for /Common/app1_t80_vs -[2023-04-27T20:22:49.362Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:49.362Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:49.362Z] [DEBUG]: [/Common/app1_t80_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:49.362Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect' ] -[2023-04-27T20:22:49.362Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details -[2023-04-27T20:22:49.362Z] [DEBUG]: [/Common/app1_t80_vs] found the following rules - /Common/_sys_https_redirect -[2023-04-27T20:22:49.362Z] [INFO]: digging vs config for /Common/app1_t443_vs -[2023-04-27T20:22:49.362Z] [DEBUG]: digging pool config for /Common/app1_t80_pool -[2023-04-27T20:22:49.362Z] [DEBUG]: Pool /Common/app1_t80_pool members found: [ '/Common/app1_Node1', '/Common/app1_Node2' ] -[2023-04-27T20:22:49.362Z] [DEBUG]: pool monitor references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:49.362Z] [DEBUG]: pool monitor configs found: [] -[2023-04-27T20:22:49.362Z] [DEBUG]: [/Common/app1_t80_pool] references 2 system default monitors, compare previous arrays for details -[2023-04-27T20:22:49.362Z] [DEBUG]: [/Common/app1_t443_vs] found the following pool /Common/app1_t80_pool -[2023-04-27T20:22:49.362Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:49.362Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:49.362Z] [DEBUG]: [/Common/app1_t443_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:49.362Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:49.362Z] [DEBUG]: [/Common/app1_t443_vs] found snat configuration - type automap -[2023-04-27T20:22:49.362Z] [INFO]: digging vs config for /Common/app2_t80_vs -[2023-04-27T20:22:49.362Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:49.362Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:49.362Z] [DEBUG]: [/Common/app2_t80_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:49.362Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect' ] -[2023-04-27T20:22:49.362Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details -[2023-04-27T20:22:49.362Z] [DEBUG]: [/Common/app2_t80_vs] found the following rules - /Common/_sys_https_redirect -[2023-04-27T20:22:49.362Z] [INFO]: digging vs config for /Common/bigiq.benlab.io_t443_vs -[2023-04-27T20:22:49.362Z] [DEBUG]: digging pool config for /Common/bigiq.benlab.io_t443_pool -[2023-04-27T20:22:49.362Z] [DEBUG]: Pool /Common/bigiq.benlab.io_t443_pool members found: [ '/Common/10.200.244.15' ] -[2023-04-27T20:22:49.362Z] [DEBUG]: pool monitor references found: [ '/Common/https_head_f5' ] -[2023-04-27T20:22:49.363Z] [DEBUG]: pool monitor configs found: [] -[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_pool] references 1 system default monitors, compare previous arrays for details -[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following pool /Common/bigiq.benlab.io_t443_pool -[2023-04-27T20:22:49.363Z] [DEBUG]: profile references found: [ - '/Common/ASM_basic_policy_1', - '/Common/f5-tcp-progressive', - '/Common/http', - '/Common/websecurity' -] -[2023-04-27T20:22:49.363Z] [DEBUG]: Found 4 system default profiles, compare previous arrays for details -[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following profiles - /Common/ASM_basic_policy_1 { } - /Common/f5-tcp-progressive { } - /Common/http { } - /Common/websecurity { } -[2023-04-27T20:22:49.363Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found snat configuration - type automap -[2023-04-27T20:22:49.363Z] [DEBUG]: policy references found: [ '/Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs' ] -[2023-04-27T20:22:49.363Z] [DEBUG]: policy found [/Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs] -[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following policies - /Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs { } -[2023-04-27T20:22:49.363Z] [INFO]: digging vs config for /Common/app2_t443_vs -[2023-04-27T20:22:49.363Z] [DEBUG]: digging pool config for /Common/app2_t80_pool -[2023-04-27T20:22:49.363Z] [DEBUG]: Pool /Common/app2_t80_pool members found: [ '/Common/app2_Node1', '/Common/app2_Node2' ] -[2023-04-27T20:22:49.363Z] [DEBUG]: pool monitor references found: [ '/Common/global_http_monitor', '/Common/global_https_monitor' ] -[2023-04-27T20:22:49.363Z] [DEBUG]: pool monitor configs found: [ - 'ltm monitor http /Common/global_http_monitor {\n' + - ' adaptive disabled\n' + - ' defaults-from /Common/http\n' + - ' interval 5\n' + - ' ip-dscp 0\n' + - ' recv "ok 200"\n' + - ' recv-disable none\n' + - ' send "GET /anywebsite.com\\r\\n"\n' + - ' time-until-up 0\n' + - ' timeout 16\n' + - '}', - 'ltm monitor https /Common/global_https_monitor {\n' + - ' adaptive disabled\n' + - ' defaults-from /Common/https\n' + - ' interval 5\n' + - ' ip-dscp 0\n' + - ' recv "201 continue"\n' + - ' recv-disable none\n' + - ' send "GET /any-secure-website.com\\r\\n"\n' + - ' time-until-up 0\n' + - ' timeout 16\n' + - '}' -] -[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/app2_t443_vs] found the following pool /Common/app2_t80_pool -[2023-04-27T20:22:49.363Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:49.363Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/app2_t443_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:49.363Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/app2_t443_vs] found snat configuration - type automap -[2023-04-27T20:22:49.363Z] [INFO]: digging vs config for /Common/app3_t8443_vs -[2023-04-27T20:22:49.363Z] [DEBUG]: digging pool config for /Common/app3_t8443_pool -[2023-04-27T20:22:49.363Z] [DEBUG]: Pool /Common/app3_t8443_pool members found: [ '/Common/app3_Node1', '/Common/app3_Node2' ] -[2023-04-27T20:22:49.363Z] [DEBUG]: pool monitor references found: [ - '/Common/app1_tcp_half_open_quick_monitor', - '/Common/http_head_f5', - '/Common/http2_head_f5', - '/Common/http', - '/Common/tcp_half_open' -] -[2023-04-27T20:22:49.363Z] [DEBUG]: pool monitor configs found: [ - 'ltm monitor tcp-half-open /Common/app1_tcp_half_open_quick_monitor {\n' + - ' defaults-from /Common/tcp_half_open\n' + - ' destination *:*\n' + - ' interval 1\n' + - ' time-until-up 0\n' + - ' timeout 4\n' + - '}' -] -[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/app3_t8443_pool] references 4 system default monitors, compare previous arrays for details -[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/app3_t8443_vs] found the following pool /Common/app3_t8443_pool -[2023-04-27T20:22:49.363Z] [DEBUG]: profile references found: [ - '/Common/app3_clientssl', - '/Common/app3_serverssl', - '/Common/http', - '/Common/tcp' -] -[2023-04-27T20:22:49.363Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/app3_t8443_vs] found the following profiles - /Common/app3_clientssl { - context clientside - } - /Common/app3_serverssl { - context serverside - } - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:49.363Z] [DEBUG]: rule references found: [ '/Common/app3_rule', '/Common/app3_rule2', '/Common/app3_rule3' ] -[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/app3_t8443_vs] found the following rules - /Common/app3_rule - /Common/app3_rule2 - /Common/app3_rule3 -[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/app3_t8443_vs] found snat configuration - pool /Common/app3_snat_pool - type snat -[2023-04-27T20:22:49.363Z] [DEBUG]: policy references found: [ '/Common/app3_ltm_policy' ] -[2023-04-27T20:22:49.363Z] [DEBUG]: policy found [/Common/app3_ltm_policy] -[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/app3_t8443_vs] found the following policies - /Common/app3_ltm_policy { } -[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/app3_t8443_vs] found the following persistence - /Common/app3_cookie { - default yes - } -[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/app3_t8443_vs] found the following persistence /Common/app3_srcAddr_persist -[2023-04-27T20:22:49.363Z] [INFO]: digging vs config for /Common/app4_t80_vs -[2023-04-27T20:22:49.363Z] [DEBUG]: digging pool config for /Common/app4_pool -[2023-04-27T20:22:49.363Z] [DEBUG]: Pool /Common/app4_pool members found: [ '/Common/api.chucknorris.io' ] -[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/app4_t80_vs] found the following pool /Common/app4_pool -[2023-04-27T20:22:49.363Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ] -[2023-04-27T20:22:49.363Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/app4_t80_vs] found the following profiles - /Common/http { } - /Common/tcp { } -[2023-04-27T20:22:49.363Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect', '/Common/app4_pool_rule' ] -[2023-04-27T20:22:49.364Z] [DEBUG]: digging pool config for /Common/css_pool -[2023-04-27T20:22:49.364Z] [DEBUG]: digging pool config for /Common/jpg.pool -[2023-04-27T20:22:49.364Z] [DEBUG]: digging pool config for /Common/js.io_t80_pool -[2023-04-27T20:22:49.364Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details -[2023-04-27T20:22:49.364Z] [DEBUG]: [/Common/app4_t80_vs] found the following rules - /Common/_sys_https_redirect - /Common/app4_pool_rule -[2023-04-27T20:22:49.364Z] [DEBUG]: policy references found: [ '/Common/app4_ltPolicy' ] -[2023-04-27T20:22:49.364Z] [DEBUG]: policy found [/Common/app4_ltPolicy] -[2023-04-27T20:22:49.364Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/css_pool] -[2023-04-27T20:22:49.364Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/jpg.pool] -[2023-04-27T20:22:49.364Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/js.io_t80_pool] -[2023-04-27T20:22:49.364Z] [DEBUG]: [/Common/app4_t80_vs] found the following policies - /Common/app4_ltPolicy { } -[2023-04-27T20:22:49.364Z] [INFO]: digging vs config for /Common/forwarder_net_0.0.0.0 -[2023-04-27T20:22:49.364Z] [DEBUG]: profile references found: [ '/Common/fastl4_loose' ] -[2023-04-27T20:22:49.364Z] [DEBUG]: [/Common/forwarder_net_0.0.0.0] found the following profiles - /Common/fastl4_loose { } -[2023-04-27T20:22:49.364Z] [INFO]: digging vs config for /foo/defaultsUDP_5555/serviceMain -[2023-04-27T20:22:49.364Z] [DEBUG]: digging pool config for /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1 -[2023-04-27T20:22:49.364Z] [DEBUG]: Pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1 members found: [ '/foo/192.50.2.2' ] -[2023-04-27T20:22:49.364Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found the following pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1 -[2023-04-27T20:22:49.364Z] [DEBUG]: profile references found: [ '/Common/udp' ] -[2023-04-27T20:22:49.364Z] [DEBUG]: Found 1 system default profiles, compare previous arrays for details -[2023-04-27T20:22:49.364Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found the following profiles - /Common/udp { } -[2023-04-27T20:22:49.364Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:49.364Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found snat configuration - type automap -[2023-04-27T20:22:49.364Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found the following persistence - /Common/source_addr { - default yes - } -[2023-04-27T20:22:49.364Z] [INFO]: digging vs config for /hue-infra/hue-up/hue-up.benlab.io_t80_vs -[2023-04-27T20:22:49.364Z] [DEBUG]: digging pool config for /hue-infra/hue-up/hue-up.benlab.io_t80_pool -[2023-04-27T20:22:49.364Z] [DEBUG]: Pool /hue-infra/hue-up/hue-up.benlab.io_t80_pool members found: null -[2023-04-27T20:22:49.364Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found the following pool /hue-infra/hue-up/hue-up.benlab.io_t80_pool -[2023-04-27T20:22:49.364Z] [DEBUG]: profile references found: [ '/Common/f5-tcp-progressive', '/Common/http' ] -[2023-04-27T20:22:49.364Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:49.364Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found the following profiles - /Common/f5-tcp-progressive { } - /Common/http { } -[2023-04-27T20:22:49.364Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:49.364Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found snat configuration - type automap -[2023-04-27T20:22:49.364Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found the following persistence - /Common/cookie { - default yes - } -[2023-04-27T20:22:49.364Z] [INFO]: digging vs config for /hue-infra/hue-up/hue-up.benlab.io_t443_vs -[2023-04-27T20:22:49.364Z] [DEBUG]: digging pool config for /hue-infra/hue-up/hue-up.benlab.io_t443_pool -[2023-04-27T20:22:49.364Z] [DEBUG]: Pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool members found: null -[2023-04-27T20:22:49.364Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found the following pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool -[2023-04-27T20:22:49.364Z] [DEBUG]: profile references found: [ '/Common/f5-tcp-progressive', '/Common/http' ] -[2023-04-27T20:22:49.364Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details -[2023-04-27T20:22:49.364Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found the following profiles - /Common/f5-tcp-progressive { } - /Common/http { } -[2023-04-27T20:22:49.364Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap -[2023-04-27T20:22:49.364Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found snat configuration - type automap -[2023-04-27T20:22:49.364Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found the following persistence - /Common/cookie { - default yes - } -[2023-04-27T20:22:49.365Z] [INFO]: digging DO classes for base config info -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "cli global-settings" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "sys db" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "net trunk" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "net self" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "net route" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "net routing access-list" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "net routing as-path" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "net routing prefix-list" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "net routing route-map" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "net routing bgp" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "cm device-group" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "cm traffic-group" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "cm traffic-group" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "sys syslog" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "auth tacacs" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "auth remote-role role-info" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "auth ldap" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "sys snmp traps" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "sys snmp users" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "sys snmp communities" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "net dag-globals" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "ltm global-settings traffic-control" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "sys sshd" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "net tunnels vxlan" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "sys disk directory" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "gtm monitor http" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "gtm monitor https" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "gtm monitor gateway-icmp" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "gtm monitor tcp" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "gtm monitor udp" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "gtm prober-pool" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "security firewall policy" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "security firewall address-list" in object -[2023-04-27T20:22:49.365Z] [DEBUG]: no path "security firewall management-ip-rules" in object +[2023-05-24T01:12:41.404Z] DeBuG: 'regular date log message' +[5/23/2023, 6:12:41 PM] DeBuG: 'toLocalString date log message' +[Wed, 24 May 2023 01:12:41 GMT] DeBuG: 'to UTC date log message' +[2023-05-24T01:12:43.861Z] [ERROR]: >v19.0.0.0 tmos detected - this should never happen!!! +[2023-05-24T01:12:43.862Z] [ERROR]: meaning this probably is not a bigip.conf +[2023-05-24T01:12:48.528Z] [ERROR]: failed to extract any parent tmos matches from config/partitions/bd2/bigip.conf - might be a scripts file... +[2023-05-24T01:12:48.539Z] [INFO]: digging vs config for /bd1/defaultsUDP_444/serviceMain +[2023-05-24T01:12:48.539Z] [ERROR]: findValueFromKey function expected object, got: undefined +[2023-05-24T01:12:48.540Z] [INFO]: digging vs config for /Common/app1_t80_vs +[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined +[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined +[2023-05-24T01:12:48.540Z] [INFO]: digging vs config for /Common/app1_t443_vs +[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined +[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined +[2023-05-24T01:12:48.540Z] [INFO]: digging vs config for /Common/app2_t80_vs +[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined +[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined +[2023-05-24T01:12:48.540Z] [INFO]: digging vs config for /Common/app2_t443_vs +[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined +[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined +[2023-05-24T01:12:48.540Z] [INFO]: digging vs config for /Common/app3_t8443_vs +[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined +[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined +[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined +[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined +[2023-05-24T01:12:48.540Z] [INFO]: digging vs config for /Common/app4_t80_vs +[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined +[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined +[2023-05-24T01:12:48.540Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [css_pool] +[2023-05-24T01:12:48.540Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [jpg.pool] +[2023-05-24T01:12:48.540Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [js.io_t80_pool] +[2023-05-24T01:12:48.540Z] [INFO]: digging vs config for /Common/forwarder_net_0.0.0.0 +[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined +[2023-05-24T01:12:48.540Z] [INFO]: digging DO classes for base config info +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "sys global-settings" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "cli global-settings" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "sys db" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "sys management-ip" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "sys provision" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "sys ntp" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "sys dns" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "net trunk" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "net vlan" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "net self" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "net route" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "net routing access-list" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "net routing as-path" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "net routing prefix-list" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "net routing route-map" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "net routing bgp" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "cm device-group" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "cm traffic-group" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "cm traffic-group" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "sys management-route" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "sys syslog" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "auth tacacs" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "net route-domain" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "auth remote-role role-info" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "auth ldap" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "sys snmp" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "sys snmp traps" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "sys snmp" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "sys snmp users" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "sys snmp communities" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "net dag-globals" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "sys httpd" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "ltm global-settings traffic-control" in object +[2023-05-24T01:12:48.540Z] [DEBUG]: no path "sys sshd" in object +[2023-05-24T01:12:48.541Z] [DEBUG]: no path "net tunnels tunnel" in object +[2023-05-24T01:12:48.541Z] [DEBUG]: no path "net tunnels vxlan" in object +[2023-05-24T01:12:48.541Z] [DEBUG]: no path "sys disk directory" in object +[2023-05-24T01:12:48.541Z] [DEBUG]: no path "gtm global-settings general" in object +[2023-05-24T01:12:48.541Z] [DEBUG]: no path "gtm datacenter" in object +[2023-05-24T01:12:48.541Z] [DEBUG]: no path "gtm server" in object +[2023-05-24T01:12:48.541Z] [DEBUG]: no path "gtm monitor http" in object +[2023-05-24T01:12:48.541Z] [DEBUG]: no path "gtm monitor https" in object +[2023-05-24T01:12:48.541Z] [DEBUG]: no path "gtm monitor gateway-icmp" in object +[2023-05-24T01:12:48.541Z] [DEBUG]: no path "gtm monitor tcp" in object +[2023-05-24T01:12:48.541Z] [DEBUG]: no path "gtm monitor udp" in object +[2023-05-24T01:12:48.541Z] [DEBUG]: no path "gtm prober-pool" in object +[2023-05-24T01:12:48.541Z] [DEBUG]: no path "security firewall policy" in object +[2023-05-24T01:12:48.541Z] [DEBUG]: no path "security firewall address-list" in object +[2023-05-24T01:12:48.541Z] [DEBUG]: no path "security firewall port-list" in object +[2023-05-24T01:12:48.541Z] [DEBUG]: no path "security firewall management-ip-rules" in object +[2023-05-24T01:12:48.565Z] [DEBUG]: detected file: [/home/ted/f5-corkscrew/tests/artifacts/f5_corkscrew_test.ucs], size: [45827] +[2023-05-24T01:12:48.566Z] [INFO]: Recieved .conf file of version: 15.1.8.2 +[2023-05-24T01:12:48.614Z] [INFO]: digging vs config for /Common/app1_t80_vs +[2023-05-24T01:12:48.614Z] [INFO]: digging vs config for /Common/app1_t443_vs +[2023-05-24T01:12:48.614Z] [INFO]: digging vs config for /Common/app2_t80_vs +[2023-05-24T01:12:48.614Z] [INFO]: digging vs config for /Common/bigiq.benlab.io_t443_vs +[2023-05-24T01:12:48.614Z] [INFO]: digging vs config for /Common/app2_t443_vs +[2023-05-24T01:12:48.614Z] [INFO]: digging vs config for /Common/persistTest_80_vs +[2023-05-24T01:12:48.614Z] [INFO]: digging vs config for /Common/app3_t8443_vs +[2023-05-24T01:12:48.615Z] [INFO]: digging vs config for /Common/app4_t80_vs +[2023-05-24T01:12:48.615Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [css_pool] +[2023-05-24T01:12:48.615Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [jpg.pool] +[2023-05-24T01:12:48.615Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [js.io_t80_pool] +[2023-05-24T01:12:48.615Z] [INFO]: digging vs config for /Common/forwarder_net_0.0.0.0 +[2023-05-24T01:12:48.615Z] [INFO]: digging vs config for /foo/defaultsUDP_5555/serviceMain +[2023-05-24T01:12:48.615Z] [INFO]: digging vs config for /foo/t1.lab.io_80vs +[2023-05-24T01:12:48.615Z] [INFO]: digging vs config for /foo/wiffle_redirect_vs +[2023-05-24T01:12:48.615Z] [INFO]: digging vs config for /foo/app8_80vs +[2023-05-24T01:12:48.615Z] [INFO]: digging vs config for /hue-infra/hue-up/hue-up.benlab.io_t80_vs +[2023-05-24T01:12:48.615Z] [INFO]: digging vs config for /hue-infra/hue-up/hue-up.benlab.io_t443_vs +[2023-05-24T01:12:48.616Z] [INFO]: digging DO classes for base config info +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "cli global-settings" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "sys db" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "net trunk" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "net self" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "net route" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "net routing access-list" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "net routing as-path" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "net routing prefix-list" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "net routing route-map" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "net routing bgp" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "cm device ~Common~{{deviceName}}" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "cm device-group" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "cm traffic-group" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "cm traffic-group" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "sys syslog" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "auth tacacs" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "auth remote-role role-info" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "auth ldap" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "sys snmp traps" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "sys snmp users" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "sys snmp communities" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "net dag-globals" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "ltm global-settings traffic-control" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "sys sshd" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "net tunnels vxlan" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "sys disk directory" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "gtm monitor http" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "gtm monitor https" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "gtm monitor gateway-icmp" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "gtm monitor tcp" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "gtm monitor udp" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "gtm prober-pool" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "security firewall policy" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "security firewall address-list" in object +[2023-05-24T01:12:48.616Z] [DEBUG]: no path "security firewall management-ip-rules" in object ####################################### ### configMultiLevelObjects ########### @@ -2422,8 +1734,8 @@ ltm pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool { "a": { "/Common/benlab.io": { "line": "\n pools {\n /Common/portal.benlab.io_a_pool {\n order 0\n }\n }\n", - "fqdn": "portal.benlab.io_a_pool", - "partition": "/Common/", + "fqdn": "benlab.io", + "partition": "Common", "type": "a", "pools": [ { @@ -2433,10 +1745,11 @@ ltm pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool { ] }, "/Common/bigiq.benlab.io": { - "line": "\n aliases {\n bq.benlab.io\n bq2.benlab.io\n burger.queen.no\n }\n last-resort-pool a /Common/bigiq.benlab.io_pool\n persistence enabled\n pool-lb-mode global-availability\n pools {\n /Common/bigiq.benlab.io_pool {\n order 0\n }\n /Common/esxi01.benlab.io {\n order 2\n ratio 4\n }\n /Common/esxi02.benlab.io {\n order 1\n }\n }\n rules {\n /Common/test_dns_rule\n }\n", - "fqdn": "bigiq.benlab.io_pool", - "partition": "/Common/", + "line": "\n aliases {\n bq.benlab.io\n bq2.benlab.io\n burger.queen.no\n }\n description \"complicated widip\"\n last-resort-pool a /Common/bigiq.benlab.io_pool\n persistence enabled\n pool-lb-mode global-availability\n pools {\n /Common/bigiq.benlab.io_pool {\n order 0\n }\n /Common/esxi01.benlab.io {\n order 2\n ratio 4\n }\n /Common/esxi02.benlab.io {\n order 1\n }\n }\n rules {\n /Common/test_dns_rule\n }\n", + "fqdn": "bigiq.benlab.io", + "partition": "Common", "type": "a", + "description": "complicated widip", "last-resort-pool": { "type": "a", "value": "/Common/bigiq.benlab.io_pool" @@ -2468,8 +1781,8 @@ ltm pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool { }, "/Common/devCloud01.benlab.io": { "line": "\n pools {\n /Common/devCloud01.benlab.io_pool {\n order 0\n }\n }\n", - "fqdn": "devCloud01.benlab.io_pool", - "partition": "/Common/", + "fqdn": "devCloud01.benlab.io", + "partition": "Common", "type": "a", "pools": [ { @@ -2478,10 +1791,21 @@ ltm pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool { } ] }, + "/Common/piTime314a.int.sci.com": { + "line": "\n aliases {\n piTime314a.td.sci.com\n piTime314a.it.io\n }\n description \"wideip with no pool/destination\"\n", + "fqdn": "piTime314a.int.sci.com", + "partition": "Common", + "type": "a", + "description": "wideip with no pool/destination", + "aliases": [ + "piTime314a.td.sci.com", + "piTime314a.it.io" + ] + }, "/Common/unifi.benlab.io": { "line": "\n pools {\n /Common/unifi.benlab.io_pool {\n order 0\n }\n }\n", - "fqdn": "unifi.benlab.io_pool", - "partition": "/Common/", + "fqdn": "unifi.benlab.io", + "partition": "Common", "type": "a", "pools": [ { @@ -2492,8 +1816,9 @@ ltm pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool { }, "/hue-infra/hue-up/hue-up.benlab.io": { "line": "\n aliases {\n hueUp.benlab.io\n }\n pools {\n /hue-infra/hue-up/hue-up.benlab.io_pool {\n order 0\n }\n }\n", - "fqdn": "hue-up.benlab.io_pool", - "partition": "/hue-infra/hue-up/", + "fqdn": "hue-up.benlab.io", + "partition": "hue-infra", + "folder": "hue-up", "type": "a", "aliases": [ "hueUp.benlab.io" @@ -2524,7 +1849,10 @@ ltm pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool { "/Common/cist": "\n interfaces {\n 1.0 {\n external-path-cost 500\n internal-path-cost 500\n }\n }\n vlans {\n /Common/internal\n }\n" }, "vlan": { - "/Common/internal": "\n interfaces {\n 1.0 { }\n }\n tag 4094\n" + "/Common/internal": "\n interfaces {\n 1.0 { }\n }\n tag 4094\n", + "/Common/vlan255_f5peer": "\n tag 255\n", + "/Common/vlan245": "\n tag 245\n", + "/Common/vlan230": "\n tag 230\n" }, "fdb": { "tunnel": { @@ -2548,6 +1876,9 @@ ltm pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool { "ike-daemon": { "/Common/ikedaemon": "\n log-publisher /Common/default-ipsec-log-publisher\n" } + }, + "address-list": { + "/foo/wiffle_address_list": "\n addresses {\n 192.168.5.0/24 { }\n 192.168.6.0/24 { }\n 10.40.0.0/16 { }\n 6.6.6.6/32 { }\n }\n description \"wiffle_address_list Address List\"\n" } }, "security": { @@ -2621,6 +1952,40 @@ ltm pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool { } }, "dos": { + "profile": { + "/Common/app50_dos": { + "line": "\n app-service none\n application {\n app50_dos {\n bot-defense {\n browser-legit-captcha disabled\n browser-legit-enabled disabled\n }\n captcha-response {\n failure {\n body \"You have entered an invalid answer for the question. Please, try again.\n
\n%DOSL7.captcha.image% %DOSL7.captcha.audio% %DOSL7.captcha.change%\n
\nWhat code is in the image\\?\n%DOSL7.captcha.solution%\n
\n%DOSL7.captcha.submit%\n
\n
\nYour support ID is: %DOSL7.captcha.support_id%.\"\n }\n first {\n body \"This question is for testing whether you are a human visitor and to prevent automated spam submission.\n
\n%DOSL7.captcha.image% %DOSL7.captcha.audio% %DOSL7.captcha.change%\n
\nWhat code is in the image\\?\n%DOSL7.captcha.solution%\n
\n%DOSL7.captcha.submit%\n
\n
\nYour support ID is: %DOSL7.captcha.support_id%.\"\n }\n }\n heavy-urls {\n automatic-detection disabled\n protection disabled\n }\n mobile-detection {\n allow-any-android-package false\n allow-any-ios-package false\n }\n stress-based {\n behavioral {\n mitigation-mode none\n }\n ip-rate-limiting disabled\n url-enable-heavy disabled\n url-rate-limiting disabled\n }\n tps-based {\n ip-rate-limiting disabled\n mode off\n url-enable-heavy disabled\n url-rate-limiting disabled\n }\n }\n }\n creation-time 2023-05-09:06:11:09\n creation-user admin\n description \"app #50 sample dos profile\"\n dos-network {\n app50_dos { }\n }\n http-whitelist none\n last-modified-time 2023-05-09:06:11:10\n modify-user admin\n protocol-dns {\n app50_dos { }\n }\n protocol-sip {\n app50_dos { }\n }\n threshold-sensitivity high\n", + "name": "app50_dos", + "partition": "Common", + "application": { + "app50_dos": { + "bot-defense": "\n browser-legit-captcha disabled\n browser-legit-enabled disabled\n ", + "captcha-response": "\n failure {\n body \"You have entered an invalid answer for the question. Please, try again.\n
\n%DOSL7.captcha.image% %DOSL7.captcha.audio% %DOSL7.captcha.change%\n
\nWhat code is in the image\\?\n%DOSL7.captcha.solution%\n
\n%DOSL7.captcha.submit%\n
\n
\nYour support ID is: %DOSL7.captcha.support_id%.\"\n }\n first {\n body \"This question is for testing whether you are a human visitor and to prevent automated spam submission.\n
\n%DOSL7.captcha.image% %DOSL7.captcha.audio% %DOSL7.captcha.change%\n
\nWhat code is in the image\\?\n%DOSL7.captcha.solution%\n
\n%DOSL7.captcha.submit%\n
\n
\nYour support ID is: %DOSL7.captcha.support_id%.\"\n }\n ", + "heavy-urls": "\n automatic-detection disabled\n protection disabled\n ", + "mobile-detection": "\n allow-any-android-package false\n allow-any-ios-package false\n ", + "stress-based": "\n behavioral {\n mitigation-mode none\n }\n ip-rate-limiting disabled\n url-enable-heavy disabled\n url-rate-limiting disabled\n ", + "tps-based": "\n ip-rate-limiting disabled\n mode off\n url-enable-heavy disabled\n url-rate-limiting disabled\n " + } + }, + "dos-network": { + "app50_dos": {} + }, + "protocol-dns": { + "app50_dos": {} + }, + "protocol-sip": { + "app50_dos": {} + }, + "app-service": "none", + "creation-time": "2023-05-09:06:11:09", + "creation-user": "admin", + "description": "app #50 sample dos profile", + "http-whitelist": "none", + "last-modified-time": "2023-05-09:06:11:10", + "modify-user": "admin", + "threshold-sensitivity": "high" + } + }, "ipv6-ext-hdr": { "/Common/dos-ipv6-ext-hdr": "\n frame-types { auth dstopt esp frag hbh mobility route }\n" }, @@ -2628,6 +1993,68 @@ ltm pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool { "/Common/dos-udp-portlist": "\n list-type exclude-listed-ports\n" } }, + "bot-defense": { + "profile": { + "/Common/app51_bot": { + "line": "\n allow-browser-access enabled\n api-access-strict-mitigation enabled\n app-service none\n blocking-page {\n body \"Request RejectedThe requested URL was rejected. Please consult with your administrator.

Your support ID is: <%BOTDEFENSE.support_id%>

[Go Back]\"\n headers \"Cache-Control: no-store, must-revalidate, no-cache\nPragma: no-cache\nConnection: close\"\n status-code 200\n type default\n }\n browser-mitigation-action block\n captcha-response {\n failure {\n body \"You have entered an invalid answer for the question. Please, try again.\n
\n%BOTDEFENSE.captcha.image% %BOTDEFENSE.captcha.audio% %BOTDEFENSE.captcha.change%\n
\nWhat code is in the image\\?\n%BOTDEFENSE.captcha.solution%\n
\n%BOTDEFENSE.captcha.submit%\n
\n
\nYour support ID is: %BOTDEFENSE.captcha.support_id%.\"\n type default\n }\n first {\n body \"This question is for testing whether you are a human visitor and to prevent automated spam submission.\n
\n%BOTDEFENSE.captcha.image% %BOTDEFENSE.captcha.audio% %BOTDEFENSE.captcha.change%\n
\nWhat code is in the image\\?\n%BOTDEFENSE.captcha.solution%\n
\n%BOTDEFENSE.captcha.submit%\n
\n
\nYour support ID is: %BOTDEFENSE.captcha.support_id%.\"\n type default\n }\n }\n cross-domain-requests allow-all\n description \"some example bot profile\"\n deviceid-mode generate-before-access\n dos-attack-strict-mitigation enabled\n enforcement-mode blocking\n enforcement-readiness-period 9\n grace-period 300\n honeypot-page {\n body \n headers \"Cache-Control: no-store, must-revalidate, no-cache\nPragma: no-cache\nConnection: close\"\n status-code 200\n type default\n }\n mobile-detection {\n allow-android-rooted-device disabled\n allow-any-android-package enabled\n allow-any-ios-package enabled\n allow-emulators disabled\n allow-jailbroken-devices disabled\n block-debugger-enabled-device enabled\n client-side-challenge-mode pass\n }\n perform-challenge-in-transparent disabled\n redirect-to-pool-name /Common/allOptionsPool\n signature-staging-upon-update enabled\n single-page-application disabled\n template strict\n whitelist {\n apple_touch_1 {\n match-order 2\n url /apple-touch-icon*.png\n }\n favicon_1 {\n match-order 1\n url /favicon.ico\n }\n }\n", + "name": "app51_bot", + "partition": "Common", + "blocking-page": { + "headers": [ + "Cache-Control: no-store, must-revalidate, no-cache", + "Pragma: no-cache", + "Connection: close" + ], + "body": "Request RejectedThe requested URL was rejected. Please consult with your administrator.

Your support ID is: <%BOTDEFENSE.support_id%>

[Go Back]", + "status-code": "200", + "type": "default" + }, + "captcha-response": { + "failure": "\n body \"You have entered an invalid answer for the question. Please, try again.\n
\n%BOTDEFENSE.captcha.image% %BOTDEFENSE.captcha.audio% %BOTDEFENSE.captcha.change%\n
\nWhat code is in the image\\?\n%BOTDEFENSE.captcha.solution%\n
\n%BOTDEFENSE.captcha.submit%\n
\n
\nYour support ID is: %BOTDEFENSE.captcha.support_id%.\"\n type default\n ", + "first": "\n body \"This question is for testing whether you are a human visitor and to prevent automated spam submission.\n
\n%BOTDEFENSE.captcha.image% %BOTDEFENSE.captcha.audio% %BOTDEFENSE.captcha.change%\n
\nWhat code is in the image\\?\n%BOTDEFENSE.captcha.solution%\n
\n%BOTDEFENSE.captcha.submit%\n
\n
\nYour support ID is: %BOTDEFENSE.captcha.support_id%.\"\n type default\n " + }, + "honeypot-page": { + "headers": [ + "Cache-Control: no-store, must-revalidate, no-cache", + "Pragma: no-cache", + "Connection: close" + ], + "body": "", + "status-code": "200", + "type": "default" + }, + "mobile-detection": { + "allow-android-rooted-device": "disabled", + "allow-any-android-package": "enabled", + "allow-any-ios-package": "enabled", + "allow-emulators": "disabled", + "allow-jailbroken-devices": "disabled", + "block-debugger-enabled-device": "enabled", + "client-side-challenge-mode": "pass" + }, + "whitelist": { + "apple_touch_1": "\n match-order 2\n url /apple-touch-icon*.png\n ", + "favicon_1": "\n match-order 1\n url /favicon.ico\n " + }, + "allow-browser-access": "enabled", + "api-access-strict-mitigation": "enabled", + "app-service": "none", + "browser-mitigation-action": "block", + "cross-domain-requests": "allow-all", + "description": "some example bot profile", + "deviceid-mode": "generate-before-access", + "dos-attack-strict-mitigation": "enabled", + "enforcement-mode": "blocking", + "enforcement-readiness-period": "9", + "grace-period": "300", + "perform-challenge-in-transparent": "disabled", + "redirect-to-pool-name": "/Common/allOptionsPool", + "signature-staging-upon-update": "enabled", + "single-page-application": "disabled", + "template": "strict" + } + } + }, "protocol-inspection": { "compliance-map": { "/Common/map_10426": "\n insp-id 10426\n key-type int\n value-type vector-string\n" @@ -2683,9 +2110,15 @@ ltm pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool { }, "policy": { "access-policy": { - "/Common/adminAuth_local_aPolicy": "\n default-ending /Common/adminAuth_local_aPolicy_end_deny\n items {\n /Common/adminAuth_local_aPolicy_act_localdb_auth { }\n /Common/adminAuth_local_aPolicy_act_logon_page { }\n /Common/adminAuth_local_aPolicy_end_allow { }\n /Common/adminAuth_local_aPolicy_end_deny { }\n /Common/adminAuth_local_aPolicy_ent { }\n }\n start-item /Common/adminAuth_local_aPolicy_ent\n", - "/Common/radiusServer": "\n default-ending /Common/radiusServer_end_deny\n items {\n /Common/radiusServer_act_radius_auth { }\n /Common/radiusServer_end_allow { }\n /Common/radiusServer_end_deny { }\n /Common/radiusServer_ent { }\n }\n start-item /Common/radiusServer_ent\n", - "/Common/sslvpn_network_access": "\n default-ending /Common/sslvpn_network_access_end_deny\n items {\n /Common/sslvpn_network_access_act_full_resource_assign { }\n /Common/sslvpn_network_access_act_localdb_auth { }\n /Common/sslvpn_network_access_act_logon_page { }\n /Common/sslvpn_network_access_end_allow { }\n /Common/sslvpn_network_access_end_deny { }\n /Common/sslvpn_network_access_ent { }\n }\n start-item /Common/sslvpn_network_access_ent\n" + "/Common/adminAuth_local_aPolicy": { + "line": "\n default-ending /Common/adminAuth_local_aPolicy_end_deny\n items {\n /Common/adminAuth_local_aPolicy_act_localdb_auth { }\n /Common/adminAuth_local_aPolicy_act_logon_page { }\n /Common/adminAuth_local_aPolicy_end_allow { }\n /Common/adminAuth_local_aPolicy_end_deny { }\n /Common/adminAuth_local_aPolicy_ent { }\n }\n start-item /Common/adminAuth_local_aPolicy_ent\n" + }, + "/Common/radiusServer": { + "line": "\n default-ending /Common/radiusServer_end_deny\n items {\n /Common/radiusServer_act_radius_auth { }\n /Common/radiusServer_end_allow { }\n /Common/radiusServer_end_deny { }\n /Common/radiusServer_ent { }\n }\n start-item /Common/radiusServer_ent\n" + }, + "/Common/sslvpn_network_access": { + "line": "\n default-ending /Common/sslvpn_network_access_end_deny\n items {\n /Common/sslvpn_network_access_act_full_resource_assign { }\n /Common/sslvpn_network_access_act_localdb_auth { }\n /Common/sslvpn_network_access_act_logon_page { }\n /Common/sslvpn_network_access_end_allow { }\n /Common/sslvpn_network_access_end_deny { }\n /Common/sslvpn_network_access_ent { }\n }\n start-item /Common/sslvpn_network_access_ent\n" + } }, "customization-group": { "/Common/adminAuth_local_aPolicy_act_logon_page_ag": "\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_act_logon_page_ag_65223_2\n revision 2\n source /Common/modern\n", @@ -2762,9 +2195,112 @@ ltm pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool { }, "profile": { "access": { - "/Common/adminAuth_local_aPolicy": "\n accept-languages { en }\n access-policy /Common/adminAuth_local_aPolicy\n app-service none\n customization-group /Common/adminAuth_local_aPolicy_logout\n customization-key 22ac0aeb0346bcebf5e867279edf9d7b\n default-language en\n domain-cookie none\n eps-group /Common/adminAuth_local_aPolicy_eps\n errormap-group /Common/adminAuth_local_aPolicy_errormap\n exchange-profile none\n framework-installation-group /Common/adminAuth_local_aPolicy_framework_installation\n general-ui-group /Common/adminAuth_local_aPolicy_general_ui\n generation 4\n generation-action noop\n httponly-cookie false\n log-settings {\n /Common/default-log-setting\n }\n logout-uri-include none\n logout-uri-timeout 5\n modified-since-last-policy-sync true\n named-scope none\n persistent-cookie false\n scope profile\n secure-cookie true\n sso-name none\n type system-authentication\n user-identity-method http\n", - "/Common/radiusServer": "\n accept-languages { en }\n access-policy /Common/radiusServer\n app-service none\n customization-group /Common/radiusServer_logout\n customization-key c649c57de3b753f9764ae640df53f6cb\n default-language en\n domain-cookie none\n eps-group /Common/radiusServer_eps\n errormap-group /Common/radiusServer_errormap\n exchange-profile none\n framework-installation-group /Common/radiusServer_frameworkinstallation\n general-ui-group /Common/radiusServer_general_ui\n generation 1\n generation-action noop\n httponly-cookie false\n log-settings {\n /Common/default-log-setting\n }\n logout-uri-include none\n logout-uri-timeout 5\n modified-since-last-policy-sync true\n oauth-profile none\n persistent-cookie false\n scope profile\n secure-cookie true\n sso-name none\n type all\n user-identity-method http\n", - "/Common/sslvpn_network_access": "\n accept-languages { en }\n access-policy /Common/sslvpn_network_access\n app-service none\n customization-group /Common/sslvpn_network_access_logout\n customization-key c0595c63f1a549ebf25e99e683989536\n default-language en\n domain-cookie none\n eps-group /Common/sslvpn_network_access_eps\n errormap-group /Common/sslvpn_network_access_errormap\n exchange-profile none\n framework-installation-group /Common/sslvpn_network_access_frameworkinstallation\n general-ui-group /Common/sslvpn_network_access_general_ui\n generation 2\n generation-action noop\n httponly-cookie false\n log-settings {\n /Common/default-log-setting\n }\n logout-uri-include none\n logout-uri-timeout 5\n modified-since-last-policy-sync true\n oauth-profile none\n persistent-cookie false\n scope profile\n secure-cookie true\n sso-name none\n type all\n user-identity-method http\n" + "/Common/adminAuth_local_aPolicy": { + "line": "\n accept-languages { en }\n access-policy /Common/adminAuth_local_aPolicy\n app-service none\n customization-group /Common/adminAuth_local_aPolicy_logout\n customization-key 22ac0aeb0346bcebf5e867279edf9d7b\n default-language en\n domain-cookie none\n eps-group /Common/adminAuth_local_aPolicy_eps\n errormap-group /Common/adminAuth_local_aPolicy_errormap\n exchange-profile none\n framework-installation-group /Common/adminAuth_local_aPolicy_framework_installation\n general-ui-group /Common/adminAuth_local_aPolicy_general_ui\n generation 4\n generation-action noop\n httponly-cookie false\n log-settings {\n /Common/default-log-setting\n }\n logout-uri-include none\n logout-uri-timeout 5\n modified-since-last-policy-sync true\n named-scope none\n persistent-cookie false\n scope profile\n secure-cookie true\n sso-name none\n type system-authentication\n user-identity-method http\n", + "name": "adminAuth_local_aPolicy", + "partition": "Common", + "accept-languages": [ + "en" + ], + "access-policy": "/Common/adminAuth_local_aPolicy", + "log-settings": [ + "/Common/default-log-setting" + ], + "app-service": "none", + "customization-group": "/Common/adminAuth_local_aPolicy_logout", + "customization-key": "22ac0aeb0346bcebf5e867279edf9d7b", + "default-language": "en", + "domain-cookie": "none", + "eps-group": "/Common/adminAuth_local_aPolicy_eps", + "errormap-group": "/Common/adminAuth_local_aPolicy_errormap", + "exchange-profile": "none", + "framework-installation-group": "/Common/adminAuth_local_aPolicy_framework_installation", + "general-ui-group": "/Common/adminAuth_local_aPolicy_general_ui", + "generation": "4", + "generation-action": "noop", + "httponly-cookie": "false", + "logout-uri-timeout": "5", + "modified-since-last-policy-sync": "true", + "named-scope": "none", + "persistent-cookie": "false", + "scope": "profile", + "secure-cookie": "true", + "sso-name": "none", + "type": "system-authentication", + "user-identity-method": "http" + }, + "/Common/radiusServer": { + "line": "\n accept-languages { en }\n access-policy /Common/radiusServer\n app-service none\n customization-group /Common/radiusServer_logout\n customization-key c649c57de3b753f9764ae640df53f6cb\n default-language en\n domain-cookie none\n eps-group /Common/radiusServer_eps\n errormap-group /Common/radiusServer_errormap\n exchange-profile none\n framework-installation-group /Common/radiusServer_frameworkinstallation\n general-ui-group /Common/radiusServer_general_ui\n generation 1\n generation-action noop\n httponly-cookie false\n log-settings {\n /Common/default-log-setting\n }\n logout-uri-include none\n logout-uri-timeout 5\n modified-since-last-policy-sync true\n oauth-profile none\n persistent-cookie false\n scope profile\n secure-cookie true\n sso-name none\n type all\n user-identity-method http\n", + "name": "radiusServer", + "partition": "Common", + "accept-languages": [ + "en" + ], + "access-policy": "/Common/radiusServer", + "log-settings": [ + "/Common/default-log-setting" + ], + "app-service": "none", + "customization-group": "/Common/radiusServer_logout", + "customization-key": "c649c57de3b753f9764ae640df53f6cb", + "default-language": "en", + "domain-cookie": "none", + "eps-group": "/Common/radiusServer_eps", + "errormap-group": "/Common/radiusServer_errormap", + "exchange-profile": "none", + "framework-installation-group": "/Common/radiusServer_frameworkinstallation", + "general-ui-group": "/Common/radiusServer_general_ui", + "generation": "1", + "generation-action": "noop", + "httponly-cookie": "false", + "logout-uri-timeout": "5", + "modified-since-last-policy-sync": "true", + "oauth-profile": "none", + "persistent-cookie": "false", + "scope": "profile", + "secure-cookie": "true", + "sso-name": "none", + "type": "all", + "user-identity-method": "http" + }, + "/Common/sslvpn_network_access": { + "line": "\n accept-languages { en es fr }\n access-policy /Common/sslvpn_network_access\n app-service none\n customization-group /Common/sslvpn_network_access_logout\n customization-key c0595c63f1a549ebf25e99e683989536\n default-language en\n domain-cookie none\n eps-group /Common/sslvpn_network_access_eps\n errormap-group /Common/sslvpn_network_access_errormap\n exchange-profile none\n framework-installation-group /Common/sslvpn_network_access_frameworkinstallation\n general-ui-group /Common/sslvpn_network_access_general_ui\n generation 3\n generation-action noop\n httponly-cookie false\n log-settings {\n /Common/default-log-setting\n /Common/default-sslo-log-setting\n }\n logout-uri-include { /some/logout.html }\n logout-uri-timeout 5\n modified-since-last-policy-sync true\n named-scope none\n oauth-profile none\n persistent-cookie false\n scope profile\n secure-cookie true\n sso-name none\n type all\n user-identity-method http\n", + "name": "sslvpn_network_access", + "partition": "Common", + "accept-languages": [ + "en", + "es", + "fr" + ], + "access-policy": "/Common/sslvpn_network_access", + "log-settings": [ + "/Common/default-log-setting", + "/Common/default-sslo-log-setting" + ], + "app-service": "none", + "customization-group": "/Common/sslvpn_network_access_logout", + "customization-key": "c0595c63f1a549ebf25e99e683989536", + "default-language": "en", + "domain-cookie": "none", + "eps-group": "/Common/sslvpn_network_access_eps", + "errormap-group": "/Common/sslvpn_network_access_errormap", + "exchange-profile": "none", + "framework-installation-group": "/Common/sslvpn_network_access_frameworkinstallation", + "general-ui-group": "/Common/sslvpn_network_access_general_ui", + "generation": "3", + "generation-action": "noop", + "httponly-cookie": "false", + "logout-uri-timeout": "5", + "modified-since-last-policy-sync": "true", + "named-scope": "none", + "oauth-profile": "none", + "persistent-cookie": "false", + "scope": "profile", + "secure-cookie": "true", + "sso-name": "none", + "type": "all", + "user-identity-method": "http" + } }, "connectivity": { "/Common/sslvpn_connectivity_profile": "\n adaptive-compression enabled\n app-service none\n citrix-client-bundle /Common/default-citrix-client-bundle\n client-policy {\n sslvpn_connectivity_profile_clientPolicy { }\n }\n compress-buffer-size 4096\n compress-cpu-saver true\n compress-cpu-saver-high 90\n compress-cpu-saver-low 75\n compress-gzip-level 6\n compress-gzip-memlevel 8192\n compress-gzip-window-size 16384\n compress-ingress false\n compress-preferred-method zlib\n compression enabled\n compression-codecs { deflate lzo bzip2 }\n customization-group /Common/sslvpn_connectivity_profile_secure_access_client_customization\n defaults-from /Common/connectivity\n deflate-compression-level 1\n description none\n fec-name none\n location-specific false\n tunnel-name /Common/sslvpn_connectivity_profile\n" @@ -2804,7 +2340,8 @@ ltm pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool { "line": "\n active\n blocking-mode enabled\n description 'some description'\n encoding utf-8\n policy-builder enabled\n policy-template POLICY_TEMPLATE_RAPID_DEPLOYMENT\n policy-type security\n parent-policy some-.other_policy1\n", "status": "active", "blocking-mode": "enabled", - "description": "'some description'", + "description": "some description", + "encoding": "utf-8", "policy-builder": "enabled", "policy-template": "POLICY_TEMPLATE_RAPID_DEPLOYMENT", "policy-type": "security", @@ -2865,19 +2402,89 @@ ltm pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool { "ltm": { "default-node-monitor": "\n rule none\n", "node": { - "/Common/10.200.244.15": "\n address 10.200.244.15\n description bigiq01\n", - "/Common/10.10.10.1": "\n address 10.10.10.1\n", - "/Common/192.168.200.42": "\n address 192.168.200.42\n", - "/Common/api.chucknorris.io": "\n fqdn {\n address-family all\n autopopulate enabled\n name api.chucknorris.io\n }\n", - "/Common/app1_Node1": "\n address 192.168.1.22\n", - "/Common/app1_Node2": "\n address 192.168.1.23\n", - "/Common/app2_Node1": "\n address 192.168.2.22\n description app2_Node1\n", - "/Common/app2_Node2": "\n address 192.168.2.23\n description app2_Node2\n", - "/Common/app3_Node1": "\n address 192.168.1.52\n", - "/Common/app3_Node2": "\n address 192.168.1.53\n", - "/Common/app5_Node5": "\n address 192.168.10.23\n", - "/foo/192.50.2.2": "\n address 192.50.2.2\n", - "/hue-infra/10.200.30.29": "\n address 10.200.30.29\n" + "/Common/10.200.244.15": { + "line": "\n address 10.200.244.15\n description bigiq01\n", + "name": "10.200.244.15", + "partition": "Common", + "address": "10.200.244.15", + "description": "bigiq01" + }, + "/Common/10.10.10.1": { + "line": "\n address 10.10.10.1\n", + "name": "10.10.10.1", + "partition": "Common", + "address": "10.10.10.1" + }, + "/Common/192.168.200.42": { + "line": "\n address 192.168.200.42\n", + "name": "192.168.200.42", + "partition": "Common", + "address": "192.168.200.42" + }, + "/Common/api.chucknorris.io": { + "line": "\n fqdn {\n address-family all\n autopopulate enabled\n name api.chucknorris.io\n }\n", + "name": "api.chucknorris.io", + "partition": "Common", + "address-family": "all", + "autopopulate": "enabled", + "fqdn": "api.chucknorris.io" + }, + "/Common/app1_Node1": { + "line": "\n address 192.168.1.22\n", + "name": "app1_Node1", + "partition": "Common", + "address": "192.168.1.22" + }, + "/Common/app1_Node2": { + "line": "\n address 192.168.1.23\n", + "name": "app1_Node2", + "partition": "Common", + "address": "192.168.1.23" + }, + "/Common/app2_Node1": { + "line": "\n address 192.168.2.22\n description app2_Node1\n", + "name": "app2_Node1", + "partition": "Common", + "address": "192.168.2.22", + "description": "app2_Node1" + }, + "/Common/app2_Node2": { + "line": "\n address 192.168.2.23\n description app2_Node2\n", + "name": "app2_Node2", + "partition": "Common", + "address": "192.168.2.23", + "description": "app2_Node2" + }, + "/Common/app3_Node1": { + "line": "\n address 192.168.1.52\n", + "name": "app3_Node1", + "partition": "Common", + "address": "192.168.1.52" + }, + "/Common/app3_Node2": { + "line": "\n address 192.168.1.53\n", + "name": "app3_Node2", + "partition": "Common", + "address": "192.168.1.53" + }, + "/Common/app5_Node5": { + "line": "\n address 192.168.10.23\n", + "name": "app5_Node5", + "partition": "Common", + "address": "192.168.10.23" + }, + "/foo/192.50.2.2": { + "line": "\n address 192.50.2.2\n", + "name": "192.50.2.2", + "partition": "foo", + "address": "192.50.2.2" + }, + "/hue-infra/10.200.30.29": { + "line": "\n address 10.200.30.29\n", + "name": "10.200.30.29", + "partition": "hue-infra", + "address": "10.200.30.29" + } }, "policy": { "/Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs": "\n controls { asm }\n requires { http }\n rules {\n default {\n actions {\n 1 {\n asm\n enable\n policy /Common/basic_policy_1\n }\n }\n ordinal 1\n }\n }\n strategy /Common/first-match\n", @@ -2885,43 +2492,550 @@ ltm pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool { "/Common/app4_ltPolicy": "\n controls { forwarding }\n description \"testing for pool extraction function\"\n requires { http }\n rules {\n css_pool_rule {\n actions {\n 0 {\n forward\n select\n pool /Common/css_pool\n }\n }\n conditions {\n 0 {\n http-uri\n scheme\n ends-with\n values { .css }\n }\n }\n }\n jpg_pool_rule {\n actions {\n 0 {\n forward\n select\n pool /Common/jpg.pool\n }\n }\n conditions {\n 0 {\n http-uri\n query-string\n ends-with\n values { .jpg }\n }\n }\n ordinal 1\n }\n js_pool_rule {\n actions {\n 0 {\n forward\n select\n pool /Common/js.io_t80_pool\n }\n }\n conditions {\n 0 {\n http-uri\n scheme\n ends-with\n values { .js }\n }\n }\n ordinal 2\n }\n txt_node {\n actions {\n 0 {\n forward\n select\n node 10.10.10.1\n }\n }\n conditions {\n 0 {\n http-uri\n scheme\n ends-with\n values { .txt }\n }\n }\n ordinal 3\n }\n }\n strategy /Common/first-match\n" }, "pool": { - "/Common/bigiq.benlab.io_t443_pool": "\n members {\n /Common/10.200.244.15:443 {\n address 10.200.244.15\n }\n }\n monitor /Common/https_head_f5\n", - "/Common/app1_t80_pool": "\n members {\n /Common/app1_Node1:80 {\n address 192.168.1.22\n }\n /Common/app1_Node2:80 {\n address 192.168.1.23\n }\n }\n monitor /Common/http and /Common/tcp\n", - "/Common/app2_t80_pool": "\n load-balancing-mode least-connections-member\n members {\n /Common/app2_Node1:80 {\n address 192.168.2.22\n }\n /Common/app2_Node2:80 {\n address 192.168.2.23\n }\n }\n monitor /Common/global_http_monitor and /Common/global_https_monitor\n", - "/Common/app3_t8443_pool": "\n load-balancing-mode least-connections-member\n members {\n /Common/app3_Node1:8443 {\n address 192.168.1.52\n }\n /Common/app3_Node2:8443 {\n address 192.168.1.53\n }\n }\n monitor /Common/app1_tcp_half_open_quick_monitor and /Common/http_head_f5 and /Common/http2_head_f5 and /Common/http and /Common/tcp_half_open\n", - "/Common/app4_pool": "\n members {\n /Common/api.chucknorris.io:443 {\n fqdn {\n autopopulate enabled\n name api.chucknorris.io\n }\n }\n }\n", - "/Common/css_pool": " ", - "/Common/jpg.pool": " ", - "/Common/js.io_t80_pool": " ", - "/foo/defaultsUDP_5555/defaultsUDP_5555_Pool1": "\n members {\n /foo/192.50.2.2:5555 {\n address 192.50.2.2\n metadata {\n source {\n value declaration\n }\n }\n }\n }\n min-active-members 1\n monitor min 1 of { /Common/gateway_icmp }\n", - "/hue-infra/hue-up/hue-up.benlab.io_t80_pool": "\n members {\n /hue-infra/10.200.30.29:80 {\n address 10.200.30.29\n metadata {\n source {\n value declaration\n }\n }\n }\n }\n min-active-members 1\n monitor min 1 of { /Common/http }\n", - "/hue-infra/hue-up/hue-up.benlab.io_t443_pool": "\n members {\n /hue-infra/10.200.30.29:443 {\n address 10.200.30.29\n metadata {\n source {\n value declaration\n }\n }\n }\n }\n min-active-members 1\n monitor min 1 of { /Common/https }\n" + "/Common/bigiq.benlab.io_t443_pool": { + "line": "\n members {\n /Common/10.200.244.15:443 {\n address 10.200.244.15\n }\n }\n monitor /Common/https_head_f5\n", + "name": "bigiq.benlab.io_t443_pool", + "partition": "Common", + "members": { + "/Common/10.200.244.15:443": { + "address": "10.200.244.15" + } + }, + "monitor": [ + "/Common/https_head_f5" + ] + }, + "/Common/app1_t80_pool": { + "line": "\n members {\n /Common/app1_Node1:80 {\n address 192.168.1.22\n }\n /Common/app1_Node2:80 {\n address 192.168.1.23\n }\n }\n monitor /Common/http and /Common/tcp\n", + "name": "app1_t80_pool", + "partition": "Common", + "members": { + "/Common/app1_Node1:80": { + "address": "192.168.1.22" + }, + "/Common/app1_Node2:80": { + "address": "192.168.1.23" + } + }, + "monitor": "/Common/http" + }, + "/Common/app2_t80_pool": { + "line": "\n load-balancing-mode least-connections-member\n members {\n /Common/app2_Node1:80 {\n address 192.168.2.22\n }\n /Common/app2_Node2:80 {\n address 192.168.2.23\n }\n }\n monitor /Common/global_http_monitor and /Common/global_https_monitor\n", + "name": "app2_t80_pool", + "partition": "Common", + "members": { + "/Common/app2_Node1:80": { + "address": "192.168.2.22" + }, + "/Common/app2_Node2:80": { + "address": "192.168.2.23" + } + }, + "load-balancing-mode": "least-connections-member", + "monitor": "/Common/global_http_monitor" + }, + "/Common/app3_t8443_pool": { + "line": "\n load-balancing-mode least-connections-member\n members {\n /Common/app3_Node1:8443 {\n address 192.168.1.52\n }\n /Common/app3_Node2:8443 {\n address 192.168.1.53\n }\n }\n monitor /Common/app1_tcp_half_open_quick_monitor and /Common/http_head_f5 and /Common/http2_head_f5 and /Common/http and /Common/tcp_half_open\n", + "name": "app3_t8443_pool", + "partition": "Common", + "members": { + "/Common/app3_Node1:8443": { + "address": "192.168.1.52" + }, + "/Common/app3_Node2:8443": { + "address": "192.168.1.53" + } + }, + "load-balancing-mode": "least-connections-member", + "monitor": "/Common/app1_tcp_half_open_quick_monitor" + }, + "/Common/manyOptions_pool": { + "line": "\n allow-nat no\n allow-snat no\n description \"yabba dappa doo!\"\n ignore-persisted-weight enabled\n ip-tos-to-client mimic\n ip-tos-to-server mimic\n link-qos-to-client 5\n link-qos-to-server 6\n load-balancing-mode observed-member\n members {\n /Common/10.3.110.10:80 {\n address 10.3.110.10\n }\n /Common/10.3.110.10:443 {\n address 10.3.110.10\n }\n /Common/10.3.110.10:8443 {\n address 10.3.110.10\n }\n /Common/dw1.lab.io:8443 {\n fqdn {\n autopopulate enabled\n name dude1.where.io\n }\n }\n /Common/dw2.lab.io:443 {\n description asfd\n monitor /Common/http\n fqdn {\n name dude2.where.io\n }\n }\n }\n monitor min 2 of { /Common/gateway_icmp /Common/http /Common/http2 }\n profiles {\n /Common/nvgre\n }\n queue-depth-limit 66\n queue-time-limit 88\n reselect-tries 7\n service-down-action reset\n slow-ramp-time 300\n", + "name": "manyOptions_pool", + "partition": "Common", + "members": { + "/Common/10.3.110.10:80": { + "address": "10.3.110.10" + }, + "/Common/10.3.110.10:443": { + "address": "10.3.110.10" + }, + "/Common/10.3.110.10:8443": { + "address": "10.3.110.10" + }, + "/Common/dw1.lab.io:8443": { + "autopopulate": "enabled", + "fqdn": "dude1.where.io" + }, + "/Common/dw2.lab.io:443": { + "fqdn": "dude2.where.io", + "description": "asfd", + "monitor": "/Common/http" + } + }, + "monitorQualifier": "min 2 of", + "monitor": [ + "/Common/gateway_icmp", + "/Common/http", + "/Common/http2" + ], + "allow-nat": "no", + "allow-snat": "no", + "description": "yabba dappa doo!", + "ignore-persisted-weight": "enabled", + "ip-tos-to-client": "mimic", + "ip-tos-to-server": "mimic", + "link-qos-to-client": "5", + "link-qos-to-server": "6", + "load-balancing-mode": "observed-member", + "queue-depth-limit": "66", + "queue-time-limit": "88", + "reselect-tries": "7", + "service-down-action": "reset", + "slow-ramp-time": "300" + }, + "/Common/app4_pool": { + "line": "\n members {\n /Common/api.chucknorris.io:443 {\n fqdn {\n autopopulate enabled\n name api.chucknorris.io\n }\n }\n }\n", + "name": "app4_pool", + "partition": "Common", + "members": { + "/Common/api.chucknorris.io:443": { + "autopopulate": "enabled", + "fqdn": "api.chucknorris.io" + } + } + }, + "/Common/css_pool": { + "line": " ", + "name": "css_pool", + "partition": "Common" + }, + "/Common/jpg.pool": { + "line": " ", + "name": "jpg.pool", + "partition": "Common" + }, + "/Common/js.io_t80_pool": { + "line": " ", + "name": "js.io_t80_pool", + "partition": "Common" + }, + "/foo/defaultsUDP_5555/defaultsUDP_5555_Pool1": { + "line": "\n members {\n /foo/192.50.2.2:5555 {\n address 192.50.2.2\n metadata {\n source {\n value declaration\n }\n }\n }\n }\n min-active-members 1\n monitor min 1 of { /Common/gateway_icmp }\n", + "name": "defaultsUDP_5555_Pool1", + "partition": "foo", + "folder": "defaultsUDP_5555", + "members": { + "/foo/192.50.2.2:5555": { + "address": "192.50.2.2" + } + }, + "monitorQualifier": "min 1 of", + "monitor": [ + "/Common/gateway_icmp" + ], + "min-active-members": "1" + }, + "/foo/app8_pool": { + "line": "\n monitor /Common/http\n", + "name": "app8_pool", + "partition": "foo", + "monitor": [ + "/Common/http" + ] + }, + "/hue-infra/hue-up/hue-up.benlab.io_t80_pool": { + "line": "\n members {\n /hue-infra/10.200.30.29:80 {\n address 10.200.30.29\n metadata {\n source {\n value declaration\n }\n }\n }\n }\n min-active-members 1\n monitor min 1 of { /Common/http }\n", + "name": "hue-up.benlab.io_t80_pool", + "partition": "hue-infra", + "folder": "hue-up", + "members": { + "/hue-infra/10.200.30.29:80": { + "address": "10.200.30.29" + } + }, + "monitorQualifier": "min 1 of", + "monitor": [ + "/Common/http" + ], + "min-active-members": "1" + }, + "/hue-infra/hue-up/hue-up.benlab.io_t443_pool": { + "line": "\n members {\n /hue-infra/10.200.30.29:443 {\n address 10.200.30.29\n metadata {\n source {\n value declaration\n }\n }\n }\n }\n min-active-members 1\n monitor min 1 of { /Common/https }\n", + "name": "hue-up.benlab.io_t443_pool", + "partition": "hue-infra", + "folder": "hue-up", + "members": { + "/hue-infra/10.200.30.29:443": { + "address": "10.200.30.29" + } + }, + "monitorQualifier": "min 1 of", + "monitor": [ + "/Common/https" + ], + "min-active-members": "1" + } }, "rule": { "/Common/app3_rule": "\n#comment\n\nwhen HTTP_REQUEST {\n # add more here\n}\n", "/Common/app3_rule2": "\n#comment\n\nwhen HTTP_REQUEST {\n # ben test 444\n}\n", "/Common/app3_rule3": "\n# app3_rule3 header\n\nwhen SERVERSSL_DATA {\n # got something from server\n}\n", "/Common/app4_pool_rule": "\n### test rule for corkscrew\n\n # \n\nwhen HTTP_REQUEST {\n\n # pool reference by variable declaration\n set html-pool web1Pool\n\n if { [HTTP::path] ends_with \"*.css\" }{\n\n # regular pool refernce\n pool css_pool\n\n } elseif { [HTTP::path] ends_with \"*.jpg\" }{\n\n # pool member refernce\n pool jpg.pool member 10.10.10.1 80\n\n } elseif { [HTTP::path] ends_with \"*.js\" }{\n\n # another pool reference with special characters\n pool js.io_t80_pool \n\n } elseif { [HTTP::path] ends_with \"*.xx\" }{\n\n # pool reference not in tmos config\n ### *** seems the gui won't let you attach an irule to a vs with a pool that doesn't exist\n #pool missing_pool\n\n } elseif { [HTTP::path] ends_with \"*.txt\" }{\n\n # node reference\n node 10.10.10.1 80\n\n } else {\n\n # pool referenced by variable\n pool $html-pool\n\n }\n}\n", - "/Common/app4_pool_rule2": "\n\n" + "/Common/app4_pool_rule2": "\n\n", + "/foo/HTTP-redirect-to-HTTPS": "\nwhen HTTP_REQUEST { HTTP::redirect https://[HTTP::host][HTTP::uri] }\n" }, "snat-translation": { "/Common/192.168.1.51": "\n address 192.168.1.51\n inherited-traffic-group true\n traffic-group /Common/traffic-group-1\n" }, "snatpool": { - "/Common/app3_snat_pool": "\n members {\n /Common/192.168.1.51\n }\n" + "/Common/app3_snat_pool": { + "line": "\n members {\n /Common/192.168.1.51\n }\n", + "name": "app3_snat_pool", + "partition": "Common", + "members": [ + "192.168.1.51" + ] + }, + "/Common/testSnat1_pool": { + "line": "\n members {\n /Common/1.1.1.1\n /Common/1.1.1.2\n /Common/1.1.1.3\n /Common/1.1.1.4\n }\n", + "name": "testSnat1_pool", + "partition": "Common", + "members": [ + "1.1.1.1", + "1.1.1.2", + "1.1.1.3", + "1.1.1.4" + ] + } }, "virtual": { - "/Common/app1_t80_vs": "\n creation-time 2020-09-17:08:50:22\n destination /Common/192.168.1.21:80\n ip-protocol tcp\n last-modified-time 2020-09-17:08:51:07\n mask 255.255.255.255\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/_sys_https_redirect\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address enabled\n translate-port enabled\n", - "/Common/app1_t443_vs": "\n destination /Common/192.168.1.21:443\n ip-protocol tcp\n last-modified-time 2020-09-18:10:05:54\n mask 255.255.255.255\n pool /Common/app1_t80_pool\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n", - "/Common/app2_t80_vs": "\n creation-time 2020-09-17:08:50:22\n destination /Common/192.168.2.21:80\n ip-protocol tcp\n last-modified-time 2020-09-17:08:51:07\n mask 255.255.255.255\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/_sys_https_redirect\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address enabled\n translate-port enabled\n", - "/Common/bigiq.benlab.io_t443_vs": "\n creation-time 2019-10-01:17:59:21\n description \"not flowing traffic, just used for GTM\"\n destination /Common/10.200.244.15:443\n ip-protocol tcp\n last-modified-time 2019-10-01:18:11:46\n mask 255.255.255.255\n policies {\n /Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs { }\n }\n pool /Common/bigiq.benlab.io_t443_pool\n profiles {\n /Common/ASM_basic_policy_1 { }\n /Common/f5-tcp-progressive { }\n /Common/http { }\n /Common/websecurity { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n vlans {\n /Common/vlan255_f5peer\n }\n vlans-enabled\n", - "/Common/app2_t443_vs": "\n destination /Common/192.168.2.21:443\n ip-protocol tcp\n last-modified-time 2020-09-18:10:05:47\n mask 255.255.255.255\n pool /Common/app2_t80_pool\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n", - "/Common/app3_t8443_vs": "\n destination /Common/192.168.1.51:8443\n fallback-persistence /Common/app3_srcAddr_persist\n ip-protocol tcp\n last-modified-time 2020-09-17:12:45:40\n mask 255.255.255.255\n persist {\n /Common/app3_cookie {\n default yes\n }\n }\n policies {\n /Common/app3_ltm_policy { }\n }\n pool /Common/app3_t8443_pool\n profiles {\n /Common/app3_clientssl {\n context clientside\n }\n /Common/app3_serverssl {\n context serverside\n }\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/app3_rule\n /Common/app3_rule2\n /Common/app3_rule3\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n pool /Common/app3_snat_pool\n type snat\n }\n translate-address enabled\n translate-port enabled\n", - "/Common/app4_t80_vs": "\n description \"test pool references in irule extration and ltp\"\n destination /Common/192.168.2.25:80\n ip-protocol tcp\n last-modified-time 2020-10-07:07:28:35\n mask 255.255.255.255\n policies {\n /Common/app4_ltPolicy { }\n }\n pool /Common/app4_pool\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/_sys_https_redirect\n /Common/app4_pool_rule\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address enabled\n translate-port enabled\n", - "/Common/forwarder_net_0.0.0.0": "\n destination /Common/0.0.0.0:0\n ip-forward\n mask any\n profiles {\n /Common/fastl4_loose { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address disabled\n translate-port disabled\n", - "/foo/defaultsUDP_5555/serviceMain": "\n creation-time 2020-10-06:13:27:20\n description defaultsUDP_5555\n destination /foo/192.50.2.1:5555\n ip-protocol udp\n last-modified-time 2020-10-06:13:27:20\n mask 255.255.255.255\n persist {\n /Common/source_addr {\n default yes\n }\n }\n pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1\n profiles {\n /Common/udp { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n", - "/hue-infra/hue-up/hue-up.benlab.io_t80_vs": "\n description hue-up\n destination /hue-infra/192.168.200.29:80\n ip-protocol tcp\n last-modified-time 2022-04-03:14:25:43\n mask 255.255.255.255\n persist {\n /Common/cookie {\n default yes\n }\n }\n pool /hue-infra/hue-up/hue-up.benlab.io_t80_pool\n profiles {\n /Common/f5-tcp-progressive { }\n /Common/http { }\n }\n serverssl-use-sni disabled\n service-down-immediate-action reset\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n", - "/hue-infra/hue-up/hue-up.benlab.io_t443_vs": "\n description hue-up\n destination /hue-infra/192.168.200.29:443\n ip-protocol tcp\n last-modified-time 2021-04-06:17:55:27\n mask 255.255.255.255\n persist {\n /Common/cookie {\n default yes\n }\n }\n pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool\n profiles {\n /Common/f5-tcp-progressive { }\n /Common/http { }\n }\n serverssl-use-sni disabled\n service-down-immediate-action reset\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n" + "/Common/app1_t80_vs": { + "line": "\n creation-time 2020-09-17:08:50:22\n destination /Common/192.168.1.21:80\n ip-protocol tcp\n last-modified-time 2020-09-17:08:51:07\n mask 255.255.255.255\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/_sys_https_redirect\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address enabled\n translate-port enabled\n", + "name": "app1_t80_vs", + "partition": "Common", + "destination": "192.168.1.21:80", + "profiles": [ + "/Common/http", + "/Common/tcp" + ], + "rules": [ + "/Common/_sys_https_redirect" + ], + "creation-time": "2020-09-17:08:50:22", + "ip-protocol": "tcp", + "last-modified-time": "2020-09-17:08:51:07", + "mask": "255.255.255.255", + "serverssl-use-sni": "disabled", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled" + }, + "/Common/app1_t443_vs": { + "line": "\n destination /Common/192.168.1.21:443\n ip-protocol tcp\n last-modified-time 2020-09-18:10:05:54\n mask 255.255.255.255\n pool /Common/app1_t80_pool\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n", + "name": "app1_t443_vs", + "partition": "Common", + "destination": "192.168.1.21:443", + "pool": "/Common/app1_t80_pool", + "profiles": [ + "/Common/http", + "/Common/tcp" + ], + "snat": "automap", + "ip-protocol": "tcp", + "last-modified-time": "2020-09-18:10:05:54", + "mask": "255.255.255.255", + "serverssl-use-sni": "disabled", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled" + }, + "/Common/app2_t80_vs": { + "line": "\n creation-time 2020-09-17:08:50:22\n destination /Common/192.168.2.21:80\n ip-protocol tcp\n last-modified-time 2020-09-17:08:51:07\n mask 255.255.255.255\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/_sys_https_redirect\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address enabled\n translate-port enabled\n", + "name": "app2_t80_vs", + "partition": "Common", + "destination": "192.168.2.21:80", + "profiles": [ + "/Common/http", + "/Common/tcp" + ], + "rules": [ + "/Common/_sys_https_redirect" + ], + "creation-time": "2020-09-17:08:50:22", + "ip-protocol": "tcp", + "last-modified-time": "2020-09-17:08:51:07", + "mask": "255.255.255.255", + "serverssl-use-sni": "disabled", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled" + }, + "/Common/bigiq.benlab.io_t443_vs": { + "line": "\n creation-time 2019-10-01:17:59:21\n description \"not flowing traffic, just used for GTM\"\n destination /Common/10.200.244.15:443\n ip-protocol tcp\n last-modified-time 2019-10-01:18:11:46\n mask 255.255.255.255\n policies {\n /Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs { }\n }\n pool /Common/bigiq.benlab.io_t443_pool\n profiles {\n /Common/ASM_basic_policy_1 { }\n /Common/f5-tcp-progressive { }\n /Common/http { }\n /Common/websecurity { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n vlans {\n /Common/vlan255_f5peer\n /Common/vlan245\n /Common/vlan230\n }\n vlans-enabled\n", + "name": "bigiq.benlab.io_t443_vs", + "partition": "Common", + "destination": "10.200.244.15:443", + "pool": "/Common/bigiq.benlab.io_t443_pool", + "profiles": [ + "/Common/ASM_basic_policy_1", + "/Common/f5-tcp-progressive", + "/Common/http", + "/Common/websecurity" + ], + "snat": "automap", + "policies": [ + "/Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs" + ], + "vlans": [ + "/Common/vlan255_f5peer", + "/Common/vlan245", + "/Common/vlan230" + ], + "creation-time": "2019-10-01:17:59:21", + "description": "not flowing traffic, just used for GTM", + "ip-protocol": "tcp", + "last-modified-time": "2019-10-01:18:11:46", + "mask": "255.255.255.255", + "serverssl-use-sni": "disabled", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled" + }, + "/Common/app2_t443_vs": { + "line": "\n destination /Common/192.168.2.21:443\n ip-protocol tcp\n last-modified-time 2020-09-18:10:05:47\n mask 255.255.255.255\n pool /Common/app2_t80_pool\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n", + "name": "app2_t443_vs", + "partition": "Common", + "destination": "192.168.2.21:443", + "pool": "/Common/app2_t80_pool", + "profiles": [ + "/Common/http", + "/Common/tcp" + ], + "snat": "automap", + "ip-protocol": "tcp", + "last-modified-time": "2020-09-18:10:05:47", + "mask": "255.255.255.255", + "serverssl-use-sni": "disabled", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled" + }, + "/Common/persistTest_80_vs": { + "line": "\n creation-time 2023-05-09:11:25:01\n description \"vs to explore persist configs - both default/fallback are single entries\"\n destination /Common/10.6.3.4:80\n fallback-persistence /Common/source_addr\n ip-protocol tcp\n last-modified-time 2023-05-09:11:25:01\n mask 255.255.255.255\n persist {\n /Common/cookie {\n default yes\n }\n }\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address enabled\n translate-port enabled\n", + "name": "persistTest_80_vs", + "partition": "Common", + "destination": "10.6.3.4:80", + "profiles": [ + "/Common/http", + "/Common/tcp" + ], + "persist": "/Common/cookie", + "fallback-persistence": "/Common/source_addr", + "creation-time": "2023-05-09:11:25:01", + "description": "vs to explore persist configs - both default/fallback are single entries", + "ip-protocol": "tcp", + "last-modified-time": "2023-05-09:11:25:01", + "mask": "255.255.255.255", + "serverssl-use-sni": "disabled", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled" + }, + "/Common/app3_t8443_vs": { + "line": "\n destination /Common/192.168.1.51:8443\n fallback-persistence /Common/app3_srcAddr_persist\n ip-protocol tcp\n last-modified-time 2020-09-17:12:45:40\n mask 255.255.255.255\n persist {\n /Common/app3_cookie {\n default yes\n }\n }\n policies {\n /Common/app3_ltm_policy { }\n }\n pool /Common/app3_t8443_pool\n profiles {\n /Common/app3_clientssl {\n context clientside\n }\n /Common/app3_serverssl {\n context serverside\n }\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/app3_rule\n /Common/app3_rule2\n /Common/app3_rule3\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n pool /Common/app3_snat_pool\n type snat\n }\n translate-address enabled\n translate-port enabled\n", + "name": "app3_t8443_vs", + "partition": "Common", + "destination": "192.168.1.51:8443", + "pool": "/Common/app3_t8443_pool", + "profiles": [ + "/Common/app3_clientssl", + "/Common/app3_serverssl", + "/Common/http", + "/Common/tcp" + ], + "rules": [ + "/Common/app3_rule", + "/Common/app3_rule2", + "/Common/app3_rule3" + ], + "snat": "/Common/app3_snat_pool", + "policies": [ + "/Common/app3_ltm_policy" + ], + "persist": "/Common/app3_cookie", + "fallback-persistence": "/Common/app3_srcAddr_persist", + "ip-protocol": "tcp", + "last-modified-time": "2020-09-17:12:45:40", + "mask": "255.255.255.255", + "serverssl-use-sni": "disabled", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled" + }, + "/Common/app4_t80_vs": { + "line": "\n description \"test pool references in irule extration and ltp\"\n destination /Common/192.168.2.25:80\n ip-protocol tcp\n last-modified-time 2020-10-07:07:28:35\n mask 255.255.255.255\n policies {\n /Common/app4_ltPolicy { }\n }\n pool /Common/app4_pool\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/_sys_https_redirect\n /Common/app4_pool_rule\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address enabled\n translate-port enabled\n", + "name": "app4_t80_vs", + "partition": "Common", + "destination": "192.168.2.25:80", + "description": "test pool references in irule extration and ltp", + "pool": "/Common/app4_pool", + "profiles": [ + "/Common/http", + "/Common/tcp" + ], + "rules": [ + "/Common/_sys_https_redirect", + "/Common/app4_pool_rule" + ], + "policies": [ + "/Common/app4_ltPolicy" + ], + "ip-protocol": "tcp", + "last-modified-time": "2020-10-07:07:28:35", + "mask": "255.255.255.255", + "serverssl-use-sni": "disabled", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled" + }, + "/Common/forwarder_net_0.0.0.0": { + "line": "\n destination /Common/0.0.0.0:0\n ip-forward\n mask any\n profiles {\n /Common/fastl4_loose { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address disabled\n translate-port disabled\n", + "name": "forwarder_net_0.0.0.0", + "partition": "Common", + "destination": "0.0.0.0:0", + "profiles": [ + "/Common/fastl4_loose" + ], + "mask": "any", + "serverssl-use-sni": "disabled", + "source": "0.0.0.0/0", + "translate-address": "disabled", + "translate-port": "disabled" + }, + "/foo/defaultsUDP_5555/serviceMain": { + "line": "\n creation-time 2020-10-06:13:27:20\n description defaultsUDP_5555\n destination /foo/192.50.2.1:5555\n ip-protocol udp\n last-modified-time 2020-10-06:13:27:20\n mask 255.255.255.255\n persist {\n /Common/source_addr {\n default yes\n }\n }\n pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1\n profiles {\n /Common/udp { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n", + "name": "serviceMain", + "partition": "foo", + "folder": "defaultsUDP_5555", + "destination": "192.50.2.1:5555", + "pool": "/foo/defaultsUDP_5555/defaultsUDP_5555_Pool1", + "profiles": [ + "/Common/udp" + ], + "snat": "automap", + "persist": "/Common/source_addr", + "creation-time": "2020-10-06:13:27:20", + "description": "defaultsUDP_5555", + "ip-protocol": "udp", + "last-modified-time": "2020-10-06:13:27:20", + "mask": "255.255.255.255", + "serverssl-use-sni": "disabled", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled" + }, + "/foo/t1.lab.io_80vs": { + "line": "\n creation-time 2023-04-29:13:02:55\n destination /foo/10.2.3.4:80\n ip-protocol tcp\n last-modified-time 2023-04-29:13:02:55\n mask 255.255.255.255\n profiles {\n /Common/tcp { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n pool /Common/testSnat1_pool\n type snat\n }\n translate-address enabled\n translate-port enabled\n", + "name": "t1.lab.io_80vs", + "partition": "foo", + "destination": "10.2.3.4:80", + "profiles": [ + "/Common/tcp" + ], + "snat": "/Common/testSnat1_pool", + "creation-time": "2023-04-29:13:02:55", + "ip-protocol": "tcp", + "last-modified-time": "2023-04-29:13:02:55", + "mask": "255.255.255.255", + "serverssl-use-sni": "disabled", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled" + }, + "/foo/wiffle_redirect_vs": { + "line": "\n creation-time 2023-02-02:13:10:03\n description \"wiffle waffle baffle\"\n ip-protocol tcp\n last-modified-time 2023-03-29:14:27:19\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /foo/HTTP-redirect-to-HTTPS\n }\n traffic-matching-criteria /foo/wiffle_redirect_trafficMatchCriteria\n translate-address enabled\n translate-port enabled\n", + "name": "wiffle_redirect_vs", + "partition": "foo", + "description": "wiffle waffle baffle", + "profiles": [ + "/Common/http", + "/Common/tcp" + ], + "rules": [ + "/foo/HTTP-redirect-to-HTTPS" + ], + "creation-time": "2023-02-02:13:10:03", + "last-modified-time": "2023-03-29:14:27:19", + "traffic-matching-criteria": "/foo/wiffle_redirect_trafficMatchCriteria", + "translate-address": "enabled", + "translate-port": "enabled" + }, + "/foo/app8_80vs": { + "line": "\n creation-time 2021-03-04:18:40:06\n destination /foo/1.19.8.18:80\n ip-protocol tcp\n last-modified-time 2021-03-04:18:40:06\n mask 255.255.255.255\n pool /foo/app8_pool\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n", + "name": "app8_80vs", + "partition": "foo", + "destination": "1.19.8.18:80", + "pool": "/foo/app8_pool", + "profiles": [ + "/Common/http", + "/Common/tcp" + ], + "snat": "automap", + "creation-time": "2021-03-04:18:40:06", + "ip-protocol": "tcp", + "last-modified-time": "2021-03-04:18:40:06", + "mask": "255.255.255.255", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled" + }, + "/hue-infra/hue-up/hue-up.benlab.io_t80_vs": { + "line": "\n description hue-up\n destination /hue-infra/192.168.200.29:80\n ip-protocol tcp\n last-modified-time 2022-04-03:14:25:43\n mask 255.255.255.255\n persist {\n /Common/cookie {\n default yes\n }\n }\n pool /hue-infra/hue-up/hue-up.benlab.io_t80_pool\n profiles {\n /Common/f5-tcp-progressive { }\n /Common/http { }\n }\n serverssl-use-sni disabled\n service-down-immediate-action reset\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n", + "name": "hue-up.benlab.io_t80_vs", + "partition": "hue-infra", + "folder": "hue-up", + "destination": "192.168.200.29:80", + "pool": "/hue-infra/hue-up/hue-up.benlab.io_t80_pool", + "profiles": [ + "/Common/f5-tcp-progressive", + "/Common/http" + ], + "snat": "automap", + "persist": "/Common/cookie", + "description": "hue-up", + "ip-protocol": "tcp", + "last-modified-time": "2022-04-03:14:25:43", + "mask": "255.255.255.255", + "serverssl-use-sni": "disabled", + "service-down-immediate-action": "reset", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled" + }, + "/hue-infra/hue-up/hue-up.benlab.io_t443_vs": { + "line": "\n description hue-up\n destination /hue-infra/192.168.200.29:443\n ip-protocol tcp\n last-modified-time 2021-04-06:17:55:27\n mask 255.255.255.255\n persist {\n /Common/cookie {\n default yes\n }\n }\n pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool\n profiles {\n /Common/f5-tcp-progressive { }\n /Common/http { }\n }\n serverssl-use-sni disabled\n service-down-immediate-action reset\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n", + "name": "hue-up.benlab.io_t443_vs", + "partition": "hue-infra", + "folder": "hue-up", + "destination": "192.168.200.29:443", + "pool": "/hue-infra/hue-up/hue-up.benlab.io_t443_pool", + "profiles": [ + "/Common/f5-tcp-progressive", + "/Common/http" + ], + "snat": "automap", + "persist": "/Common/cookie", + "description": "hue-up", + "ip-protocol": "tcp", + "last-modified-time": "2021-04-06:17:55:27", + "mask": "255.255.255.255", + "serverssl-use-sni": "disabled", + "service-down-immediate-action": "reset", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled" + } }, "virtual-address": { "/Common/0.0.0.0": "\n address any\n arp disabled\n icmp-echo disabled\n mask any\n traffic-group /Common/traffic-group-1\n", @@ -2930,6 +3044,7 @@ ltm pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool { "/Common/192.168.2.21": "\n address 192.168.2.21\n arp enabled\n mask 255.255.255.255\n traffic-group /Common/traffic-group-1\n", "/Common/192.168.2.25": "\n address 192.168.2.25\n arp enabled\n mask 255.255.255.255\n traffic-group /Common/traffic-group-1\n", "/foo/192.50.2.1": "\n address 192.50.2.1\n arp enabled\n inherited-traffic-group true\n mask 255.255.255.255\n traffic-group /Common/traffic-group-1\n", + "/foo/10.2.3.4": "\n address 10.2.3.4\n arp enabled\n icmp-echo enabled\n mask 255.255.255.255\n traffic-group /Common/traffic-group-1\n", "/hue-infra/192.168.200.29": "\n address 192.168.200.29\n arp enabled\n icmp-echo enabled\n inherited-traffic-group true\n mask 255.255.255.255\n traffic-group /Common/traffic-group-1\n" }, "auth": { @@ -2957,22 +3072,97 @@ ltm pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool { }, "monitor": { "dns": { - "/Common/dubNameTst1_monitor": "\n accept-rcode no-error\n adaptive disabled\n answer-contains query-type\n defaults-from /Common/dns\n interval 5\n qname query.test.com\n qtype a\n recv none\n time-until-up 0\n timeout 16\n" + "/Common/dubNameTst1_monitor": { + "line": "\n accept-rcode no-error\n adaptive disabled\n answer-contains query-type\n defaults-from /Common/dns\n interval 5\n qname query.test.com\n qtype a\n recv none\n time-until-up 0\n timeout 16\n", + "name": "dubNameTst1_monitor", + "partition": "Common", + "accept-rcode": "no-error", + "adaptive": "disabled", + "answer-contains": "query-type", + "defaults-from": "/Common/dns", + "interval": "5", + "qname": "query.test.com", + "qtype": "a", + "recv": "none", + "time-until-up": "0", + "timeout": "16" + } }, "http": { - "/Common/global_http_monitor": "\n adaptive disabled\n defaults-from /Common/http\n interval 5\n ip-dscp 0\n recv \"ok 200\"\n recv-disable none\n send \"GET /anywebsite.com\\r\\n\"\n time-until-up 0\n timeout 16\n" + "/Common/global_http_monitor": { + "line": "\n adaptive disabled\n defaults-from /Common/http\n interval 5\n ip-dscp 0\n recv \"ok 200\"\n recv-disable none\n send \"GET /anywebsite.com\\r\\n\"\n time-until-up 0\n timeout 16\n", + "name": "global_http_monitor", + "partition": "Common", + "adaptive": "disabled", + "defaults-from": "/Common/http", + "interval": "5", + "ip-dscp": "0", + "recv": "ok 200", + "recv-disable": "none", + "send": "GET /anywebsite.com\\r\\n", + "time-until-up": "0", + "timeout": "16" + } }, "https": { - "/Common/global_https_monitor": "\n adaptive disabled\n defaults-from /Common/https\n interval 5\n ip-dscp 0\n recv \"201 continue\"\n recv-disable none\n send \"GET /any-secure-website.com\\r\\n\"\n time-until-up 0\n timeout 16\n" + "/Common/global_https_monitor": { + "line": "\n adaptive disabled\n defaults-from /Common/https\n interval 5\n ip-dscp 0\n recv \"201 continue\"\n recv-disable none\n send \"GET /any-secure-website.com\\r\\n\"\n time-until-up 0\n timeout 16\n", + "name": "global_https_monitor", + "partition": "Common", + "adaptive": "disabled", + "defaults-from": "/Common/https", + "interval": "5", + "ip-dscp": "0", + "recv": "201 continue", + "recv-disable": "none", + "send": "GET /any-secure-website.com\\r\\n", + "time-until-up": "0", + "timeout": "16" + } }, "tcp": { - "/Common/test_tcp_monitor": "\n adaptive disabled\n defaults-from /Common/tcp\n interval 5\n ip-dscp 0\n recv \"receive a tcp string\"\n recv-disable none\n send \"send a tcp string\"\n time-until-up 0\n timeout 16\n" + "/Common/test_tcp_monitor": { + "line": "\n adaptive disabled\n defaults-from /Common/tcp\n interval 5\n ip-dscp 0\n recv \"receive a tcp string\"\n recv-disable none\n send \"send a tcp string\"\n time-until-up 0\n timeout 16\n", + "name": "test_tcp_monitor", + "partition": "Common", + "adaptive": "disabled", + "defaults-from": "/Common/tcp", + "interval": "5", + "ip-dscp": "0", + "recv": "receive a tcp string", + "recv-disable": "none", + "send": "send a tcp string", + "time-until-up": "0", + "timeout": "16" + } }, "tcp-half-open": { - "/Common/app1_tcp_half_open_quick_monitor": "\n defaults-from /Common/tcp_half_open\n destination *:*\n interval 1\n time-until-up 0\n timeout 4\n" + "/Common/app1_tcp_half_open_quick_monitor": { + "line": "\n defaults-from /Common/tcp_half_open\n destination *:*\n interval 1\n time-until-up 0\n timeout 4\n", + "name": "app1_tcp_half_open_quick_monitor", + "partition": "Common", + "defaults-from": "/Common/tcp_half_open", + "destination": "*:*", + "interval": "1", + "time-until-up": "0", + "timeout": "4" + } }, "udp": { - "/Common/test_udp_monitor": "\n adaptive disabled\n debug no\n defaults-from /Common/udp\n interval 5\n recv recieve-what?\n recv-disable none\n send \"default send string\"\n time-until-up 0\n timeout 16\n" + "/Common/test_udp_monitor": { + "line": "\n adaptive disabled\n debug no\n defaults-from /Common/udp\n interval 5\n recv recieve-what?\n recv-disable none\n send \"default send string\"\n time-until-up 0\n timeout 16\n", + "name": "test_udp_monitor", + "partition": "Common", + "adaptive": "disabled", + "debug": "no", + "defaults-from": "/Common/udp", + "interval": "5", + "recv": "recieve-what?", + "recv-disable": "none", + "send": "default send string", + "time-until-up": "0", + "timeout": "16" + } } }, "persistence": { @@ -3005,6 +3195,9 @@ ltm pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool { "/Common/app3_serverssl": "\n app-service none\n defaults-from /Common/serverssl\n", "/Common/test2": "\n app-service none\n defaults-from /Common/serverssl\n" } + }, + "traffic-matching-criteria": { + "/foo/wiffle_redirect_trafficMatchCriteria": "\n destination-address-inline 10.1.1.9\n destination-port-inline 80\n protocol tcp\n source-address-inline 0.0.0.0\n source-address-list /foo/wiffle_address_list\n" } }, "pem": { diff --git a/tests/artifacts/f5_corkscrew_test.ucs.log.json b/tests/artifacts/f5_corkscrew_test.ucs.log.json index 0836d69..6cde467 100644 --- a/tests/artifacts/f5_corkscrew_test.ucs.log.json +++ b/tests/artifacts/f5_corkscrew_test.ucs.log.json @@ -1,6 +1,6 @@ { - "id": "606a36ca-9ffe-4705-bd23-8a8cb7bf6ce9", - "dateTime": "2023-04-27T20:22:49.365Z", + "id": "5fd48ac8-7e47-41b1-8abe-a87f8ebab4ac", + "dateTime": "2023-05-24T01:12:48.617Z", "hostname": "devCloud01.benlab.io", "inputFileType": ".ucs", "config": { @@ -17,23 +17,28 @@ }, { "fileName": "config/bigip_gtm.conf", - "size": 10015, - "content": "#TMSH-VERSION: 15.1.8.2\n\ngtm datacenter /Common/home_dc {\n description main\n}\ngtm region /Common/eastCoast {\n region-members {\n region /Common/int_rfc1918 { }\n }\n}\ngtm region /Common/int_rfc1918 {\n region-members {\n subnet 10.0.0.0/8 { }\n subnet 172.16.0.0/12 { }\n subnet 192.168.0.0/16 { }\n }\n}\ngtm region /Common/tn_store5590_10.230.41.0_24 {\n region-members {\n subnet 10.230.41.0/24 { }\n }\n}\ngtm rule /Common/test_dns_rule {\n# https://clouddocs.f5.com/api/irules/DNS_REQUEST.html\nwhen DNS_REQUEST {\n # Log query details\n log local0. \"\\[DNS::question name\\]: [DNS::question name],\\\n \\[DNS::question class\\]: [DNS::question class],\n \\[DNS::question type\\]: [DNS::question type]\"\n}\n}\ngtm server /Common/bigiq01 {\n datacenter /Common/home_dc\n devices {\n bigiq01 {\n addresses {\n 10.200.244.15 { }\n }\n }\n }\n product generic-host\n virtual-servers {\n bigiq01.benlab.io {\n destination 10.200.244.15:443\n monitor /Common/https\n }\n }\n}\ngtm server /Common/coreltm01_02 {\n datacenter /Common/home_dc\n devices {\n coreltm01 {\n addresses {\n 1.1.1.1 {\n translation 2.2.2.2\n }\n 10.200.30.5 { }\n }\n }\n coreltm02 {\n addresses {\n 10.200.30.6 { }\n }\n }\n }\n monitor /Common/bigip\n product bigip\n virtual-server-discovery enabled\n virtual-servers {\n /Common/bigiq.benlab.io_t443_vs {\n destination 10.200.244.15:443\n }\n /Common/dns_listener_coreltm2_tcp53_vs {\n destination 192.168.200.8:53\n }\n /Common/dns_listener_coreltm2_udp53_vs {\n destination 192.168.200.8:53\n }\n /Common/ipv6_listener {\n destination 2001:db8:200::7.53\n }\n /Common/russ.app/russ_iqdash_t80_vs {\n destination 192.168.200.160:80\n }\n /Common/sslvpn_tcp80_vs {\n destination 192.168.200.10:80\n }\n /Common/sslvpn_tcp443_vs {\n destination 192.168.200.10:443\n }\n /Common/test_listener_u53_vs {\n destination 192.168.200.7:53\n }\n /Sample_01/A1/serviceMain {\n destination 10.44.1.10:80\n }\n /com-load/Shared/loadhost-chd.openapi.starbucks.com_80 {\n destination 10.12.20.110:80\n }\n /com-load/Shared/loadhost-chd.openapi.starbucks.com_443 {\n destination 10.12.20.110:443\n }\n /core1_epic_01/epic/serviceMain {\n destination 10.0.1.10:80\n }\n /core1_pizza_02/pizza/serviceMain {\n destination 10.0.2.10:80\n }\n /external_proxy/extProxy/extExplicit_proxy_t8888_vs {\n destination 192.168.200.11:8888\n }\n /hue-infra/hue-up/hue-up.benlab.io_t80_vs {\n destination 192.168.200.29:80\n }\n /hue-infra/hue-up/hue-up.benlab.io_t443_vs {\n destination 192.168.200.29:443\n }\n /iqt1/iqt1/serviceMain {\n destination 192.168.200.164:443\n }\n /iqt1/iqt1/serviceMain-Redirect- {\n destination 192.168.200.164:80\n }\n /nas-infra/nas01/nas01_t0_vs {\n destination 192.168.200.27:0\n }\n /ntp-infra/ntp_vip/ntp_u123_vs {\n destination 192.168.200.9:123\n }\n /sap/main/ssl_bridge_443_vs {\n destination 172.24.82.67:443\n }\n /sap/main/ssl_bridge_443_vs-Redirect- {\n destination 172.24.82.67:80\n }\n /tenant_1/Shared/app1_443_vs {\n destination 172.24.80.163:443\n }\n /tenant_2/app_2/app2_443_vs {\n destination 172.24.80.217:443\n }\n /tenant_2/app_2/app2_443_vs-Redirect- {\n destination 172.24.80.217:80\n }\n /tenn1/app1/app1_t80_vs {\n destination 192.168.1.21:80\n }\n /tenn1/app1/app1_t443_vs {\n destination 192.168.1.21:443\n }\n /vcenter-infra/vcenter/vcenter.benlab.io_t443_vs {\n destination 192.168.200.50:443\n }\n test1 {\n depends-on {\n /Common/coreltm01_02:/Common/bigiq.benlab.io_t443_vs { }\n }\n destination 5.5.5.5:555\n monitor /Common/bigip\n translation-address 6.6.6.6\n translation-port 666\n }\n }\n}\ngtm server /Common/gtm_coreltm01 {\n datacenter /Common/home_dc\n devices {\n gtm_coreltm01 {\n addresses {\n 192.168.200.5 { }\n }\n }\n }\n monitor /Common/bigip\n product bigip\n}\ngtm server /Common/gtm_coreltm02 {\n datacenter /Common/home_dc\n devices {\n gtm_coreltm02 {\n addresses {\n 192.168.200.6 { }\n }\n }\n }\n monitor /Common/bigip\n product bigip\n}\ngtm server /Common/intouch01_02 {\n datacenter /Common/home_dc\n devices {\n intouch01 {\n addresses {\n 192.168.200.101 { }\n }\n }\n intouch02 {\n addresses {\n 192.168.200.102 { }\n }\n }\n }\n monitor /Common/bigip\n product bigip\n virtual-server-discovery enabled\n virtual-servers {\n /Common/cloverleaf_0_vs {\n destination 192.168.200.120:0\n }\n /Common/sldc_clvf_dev02.app/sldc_clvf_dev02_buffer_mgmt_t80_vs {\n destination 192.168.200.136:80\n }\n /Common/sldc_clvf_dev02.app/sldc_clvf_dev02_buffer_t8442_vs {\n destination 192.168.200.136:8442\n }\n /Common/sldc_clvf_dev02.app/sldc_clvf_dev02_main_t0_vs {\n destination 192.168.200.136:0\n }\n /Common/sldc_clvf_dev02.app/sldc_clvf_dev02_waterpark_t8443_vs {\n destination 192.168.200.136:8443\n }\n /Common/tiki_web_t80_vs {\n destination 192.168.200.120:80\n }\n }\n}\ngtm topology ldns: region /Common/int_rfc1918 server: datacenter /Common/home_dc {\n order 1\n}\ngtm topology ldns: region /Common/int_rfc1918 server: pool /Common/devCloud01.benlab.io_pool {\n order 2\n}\ngtm global-settings general {\n synchronization yes\n synchronization-group-name benlab_gtm_sync_group\n synchronize-zone-files yes\n}\ngtm global-settings metrics {\n metrics-collection-protocols { icmp }\n}\ngtm global-settings metrics-exclusions {\n addresses none\n}\ngtm pool a /Common/ansible.benlab.io {\n alternate-mode fallback-ip\n fallback-ip 10.200.30.42\n fallback-mode fallback-ip\n load-balancing-mode fallback-ip\n}\ngtm pool a /Common/bigiq.benlab.io_pool {\n alternate-mode fallback-ip\n fallback-ip 10.200.244.15\n fallback-mode fallback-ip\n load-balancing-mode global-availability\n members {\n /Common/coreltm01_02:/Common/bigiq.benlab.io_t443_vs {\n member-order 0\n }\n /Common/intouch01_02:/Common/tiki_web_t80_vs {\n member-order 1\n ratio 6\n }\n }\n verify-member-availability disabled\n}\ngtm pool a /Common/dc1vcenter01.benlab.io {\n alternate-mode fallback-ip\n fallback-ip 10.200.210.20\n fallback-mode fallback-ip\n load-balancing-mode fallback-ip\n}\ngtm pool a /Common/devCloud01.benlab.io_pool {\n fallback-ip 10.200.244.110\n fallback-mode fallback-ip\n load-balancing-mode fallback-ip\n}\ngtm pool a /Common/esxi01.benlab.io {\n alternate-mode none\n fallback-ip 10.200.210.21\n fallback-mode fallback-ip\n load-balancing-mode fallback-ip\n}\ngtm pool a /Common/esxi02.benlab.io {\n alternate-mode none\n fallback-ip 10.200.210.22\n fallback-mode fallback-ip\n load-balancing-mode fallback-ip\n}\ngtm pool a /Common/fms.intouchreports.com_pool { }\ngtm pool a /Common/git.benlab.io {\n alternate-mode none\n fallback-ip 10.200.30.43\n fallback-mode fallback-ip\n load-balancing-mode fallback-ip\n}\ngtm pool a /Common/intouch_mgmt_pool {\n alternate-mode none\n fallback-ip 10.200.244.100\n fallback-mode fallback-ip\n load-balancing-mode fallback-ip\n}\ngtm pool a /Common/ltmcore1_a_pool {\n fallback-ip 192.168.200.5\n}\ngtm pool a /Common/ntp.castleroc.io_pool {\n fallback-ip 192.168.200.7\n load-balancing-mode fallback-ip\n monitor /Common/gateway_icmp\n}\ngtm pool a /Common/portal.benlab.io_a_pool {\n fallback-ip 75.55.157.193\n fallback-mode fallback-ip\n members {\n /Common/coreltm01_02:/Common/sslvpn_tcp443_vs {\n member-order 0\n }\n }\n}\ngtm pool a /Common/portal.intouchcustomer.com_pool { }\ngtm pool a /Common/testzone.io_pool {\n fallback-ip 1.1.1.1\n load-balancing-mode fallback-ip\n}\ngtm pool a /Common/unifi.benlab.io_pool {\n fallback-ip 192.168.200.1\n fallback-mode fallback-ip\n load-balancing-mode fallback-ip\n}\ngtm pool a /Common/unifi_a_pool {\n alternate-mode fallback-ip\n fallback-ip 192.168.200.25\n fallback-mode fallback-ip\n load-balancing-mode fallback-ip\n}\ngtm wideip a /Common/benlab.io {\n pools {\n /Common/portal.benlab.io_a_pool {\n order 0\n }\n }\n}\ngtm wideip a /Common/bigiq.benlab.io {\n aliases {\n bq.benlab.io\n bq2.benlab.io\n burger.queen.no\n }\n last-resort-pool a /Common/bigiq.benlab.io_pool\n persistence enabled\n pool-lb-mode global-availability\n pools {\n /Common/bigiq.benlab.io_pool {\n order 0\n }\n /Common/esxi01.benlab.io {\n order 2\n ratio 4\n }\n /Common/esxi02.benlab.io {\n order 1\n }\n }\n rules {\n /Common/test_dns_rule\n }\n}\ngtm wideip a /Common/devCloud01.benlab.io {\n pools {\n /Common/devCloud01.benlab.io_pool {\n order 0\n }\n }\n}\ngtm wideip a /Common/unifi.benlab.io {\n pools {\n /Common/unifi.benlab.io_pool {\n order 0\n }\n }\n}\n" + "size": 10224, + "content": "#TMSH-VERSION: 15.1.8.2\n\ngtm datacenter /Common/home_dc {\n description main\n}\ngtm region /Common/eastCoast {\n region-members {\n region /Common/int_rfc1918 { }\n }\n}\ngtm region /Common/int_rfc1918 {\n region-members {\n subnet 10.0.0.0/8 { }\n subnet 172.16.0.0/12 { }\n subnet 192.168.0.0/16 { }\n }\n}\ngtm region /Common/tn_store5590_10.230.41.0_24 {\n region-members {\n subnet 10.230.41.0/24 { }\n }\n}\ngtm rule /Common/test_dns_rule {\n# https://clouddocs.f5.com/api/irules/DNS_REQUEST.html\nwhen DNS_REQUEST {\n # Log query details\n log local0. \"\\[DNS::question name\\]: [DNS::question name],\\\n \\[DNS::question class\\]: [DNS::question class],\n \\[DNS::question type\\]: [DNS::question type]\"\n}\n}\ngtm server /Common/bigiq01 {\n datacenter /Common/home_dc\n devices {\n bigiq01 {\n addresses {\n 10.200.244.15 { }\n }\n }\n }\n product generic-host\n virtual-servers {\n bigiq01.benlab.io {\n destination 10.200.244.15:443\n monitor /Common/https\n }\n }\n}\ngtm server /Common/coreltm01_02 {\n datacenter /Common/home_dc\n devices {\n coreltm01 {\n addresses {\n 1.1.1.1 {\n translation 2.2.2.2\n }\n 10.200.30.5 { }\n }\n }\n coreltm02 {\n addresses {\n 10.200.30.6 { }\n }\n }\n }\n monitor /Common/bigip\n product bigip\n virtual-server-discovery enabled\n virtual-servers {\n /Common/bigiq.benlab.io_t443_vs {\n destination 10.200.244.15:443\n }\n /Common/dns_listener_coreltm2_tcp53_vs {\n destination 192.168.200.8:53\n }\n /Common/dns_listener_coreltm2_udp53_vs {\n destination 192.168.200.8:53\n }\n /Common/ipv6_listener {\n destination 2001:db8:200::7.53\n }\n /Common/russ.app/russ_iqdash_t80_vs {\n destination 192.168.200.160:80\n }\n /Common/sslvpn_tcp80_vs {\n destination 192.168.200.10:80\n }\n /Common/sslvpn_tcp443_vs {\n destination 192.168.200.10:443\n }\n /Common/test_listener_u53_vs {\n destination 192.168.200.7:53\n }\n /Sample_01/A1/serviceMain {\n destination 10.44.1.10:80\n }\n /com-load/Shared/loadhost-chd.openapi.starbucks.com_80 {\n destination 10.12.20.110:80\n }\n /com-load/Shared/loadhost-chd.openapi.starbucks.com_443 {\n destination 10.12.20.110:443\n }\n /core1_epic_01/epic/serviceMain {\n destination 10.0.1.10:80\n }\n /core1_pizza_02/pizza/serviceMain {\n destination 10.0.2.10:80\n }\n /external_proxy/extProxy/extExplicit_proxy_t8888_vs {\n destination 192.168.200.11:8888\n }\n /hue-infra/hue-up/hue-up.benlab.io_t80_vs {\n destination 192.168.200.29:80\n }\n /hue-infra/hue-up/hue-up.benlab.io_t443_vs {\n destination 192.168.200.29:443\n }\n /iqt1/iqt1/serviceMain {\n destination 192.168.200.164:443\n }\n /iqt1/iqt1/serviceMain-Redirect- {\n destination 192.168.200.164:80\n }\n /nas-infra/nas01/nas01_t0_vs {\n destination 192.168.200.27:0\n }\n /ntp-infra/ntp_vip/ntp_u123_vs {\n destination 192.168.200.9:123\n }\n /sap/main/ssl_bridge_443_vs {\n destination 172.24.82.67:443\n }\n /sap/main/ssl_bridge_443_vs-Redirect- {\n destination 172.24.82.67:80\n }\n /tenant_1/Shared/app1_443_vs {\n destination 172.24.80.163:443\n }\n /tenant_2/app_2/app2_443_vs {\n destination 172.24.80.217:443\n }\n /tenant_2/app_2/app2_443_vs-Redirect- {\n destination 172.24.80.217:80\n }\n /tenn1/app1/app1_t80_vs {\n destination 192.168.1.21:80\n }\n /tenn1/app1/app1_t443_vs {\n destination 192.168.1.21:443\n }\n /vcenter-infra/vcenter/vcenter.benlab.io_t443_vs {\n destination 192.168.200.50:443\n }\n test1 {\n depends-on {\n /Common/coreltm01_02:/Common/bigiq.benlab.io_t443_vs { }\n }\n destination 5.5.5.5:555\n monitor /Common/bigip\n translation-address 6.6.6.6\n translation-port 666\n }\n }\n}\ngtm server /Common/gtm_coreltm01 {\n datacenter /Common/home_dc\n devices {\n gtm_coreltm01 {\n addresses {\n 192.168.200.5 { }\n }\n }\n }\n monitor /Common/bigip\n product bigip\n}\ngtm server /Common/gtm_coreltm02 {\n datacenter /Common/home_dc\n devices {\n gtm_coreltm02 {\n addresses {\n 192.168.200.6 { }\n }\n }\n }\n monitor /Common/bigip\n product bigip\n}\ngtm server /Common/intouch01_02 {\n datacenter /Common/home_dc\n devices {\n intouch01 {\n addresses {\n 192.168.200.101 { }\n }\n }\n intouch02 {\n addresses {\n 192.168.200.102 { }\n }\n }\n }\n monitor /Common/bigip\n product bigip\n virtual-server-discovery enabled\n virtual-servers {\n /Common/cloverleaf_0_vs {\n destination 192.168.200.120:0\n }\n /Common/sldc_clvf_dev02.app/sldc_clvf_dev02_buffer_mgmt_t80_vs {\n destination 192.168.200.136:80\n }\n /Common/sldc_clvf_dev02.app/sldc_clvf_dev02_buffer_t8442_vs {\n destination 192.168.200.136:8442\n }\n /Common/sldc_clvf_dev02.app/sldc_clvf_dev02_main_t0_vs {\n destination 192.168.200.136:0\n }\n /Common/sldc_clvf_dev02.app/sldc_clvf_dev02_waterpark_t8443_vs {\n destination 192.168.200.136:8443\n }\n /Common/tiki_web_t80_vs {\n destination 192.168.200.120:80\n }\n }\n}\ngtm topology ldns: region /Common/int_rfc1918 server: datacenter /Common/home_dc {\n order 1\n}\ngtm topology ldns: region /Common/int_rfc1918 server: pool /Common/devCloud01.benlab.io_pool {\n order 2\n}\ngtm global-settings general {\n synchronization yes\n synchronization-group-name benlab_gtm_sync_group\n synchronize-zone-files yes\n}\ngtm global-settings metrics {\n metrics-collection-protocols { icmp }\n}\ngtm global-settings metrics-exclusions {\n addresses none\n}\ngtm pool a /Common/ansible.benlab.io {\n alternate-mode fallback-ip\n fallback-ip 10.200.30.42\n fallback-mode fallback-ip\n load-balancing-mode fallback-ip\n}\ngtm pool a /Common/bigiq.benlab.io_pool {\n alternate-mode fallback-ip\n fallback-ip 10.200.244.15\n fallback-mode fallback-ip\n load-balancing-mode global-availability\n members {\n /Common/coreltm01_02:/Common/bigiq.benlab.io_t443_vs {\n member-order 0\n }\n /Common/intouch01_02:/Common/tiki_web_t80_vs {\n member-order 1\n ratio 6\n }\n }\n verify-member-availability disabled\n}\ngtm pool a /Common/dc1vcenter01.benlab.io {\n alternate-mode fallback-ip\n fallback-ip 10.200.210.20\n fallback-mode fallback-ip\n load-balancing-mode fallback-ip\n}\ngtm pool a /Common/devCloud01.benlab.io_pool {\n fallback-ip 10.200.244.110\n fallback-mode fallback-ip\n load-balancing-mode fallback-ip\n}\ngtm pool a /Common/esxi01.benlab.io {\n alternate-mode none\n fallback-ip 10.200.210.21\n fallback-mode fallback-ip\n load-balancing-mode fallback-ip\n}\ngtm pool a /Common/esxi02.benlab.io {\n alternate-mode none\n fallback-ip 10.200.210.22\n fallback-mode fallback-ip\n load-balancing-mode fallback-ip\n}\ngtm pool a /Common/fms.intouchreports.com_pool { }\ngtm pool a /Common/git.benlab.io {\n alternate-mode none\n fallback-ip 10.200.30.43\n fallback-mode fallback-ip\n load-balancing-mode fallback-ip\n}\ngtm pool a /Common/intouch_mgmt_pool {\n alternate-mode none\n fallback-ip 10.200.244.100\n fallback-mode fallback-ip\n load-balancing-mode fallback-ip\n}\ngtm pool a /Common/ltmcore1_a_pool {\n fallback-ip 192.168.200.5\n}\ngtm pool a /Common/ntp.castleroc.io_pool {\n fallback-ip 192.168.200.7\n load-balancing-mode fallback-ip\n monitor /Common/gateway_icmp\n}\ngtm pool a /Common/portal.benlab.io_a_pool {\n fallback-ip 75.55.157.193\n fallback-mode fallback-ip\n members {\n /Common/coreltm01_02:/Common/sslvpn_tcp443_vs {\n member-order 0\n }\n }\n}\ngtm pool a /Common/portal.intouchcustomer.com_pool { }\ngtm pool a /Common/testzone.io_pool {\n fallback-ip 1.1.1.1\n load-balancing-mode fallback-ip\n}\ngtm pool a /Common/unifi.benlab.io_pool {\n fallback-ip 192.168.200.1\n fallback-mode fallback-ip\n load-balancing-mode fallback-ip\n}\ngtm pool a /Common/unifi_a_pool {\n alternate-mode fallback-ip\n fallback-ip 192.168.200.25\n fallback-mode fallback-ip\n load-balancing-mode fallback-ip\n}\ngtm wideip a /Common/benlab.io {\n pools {\n /Common/portal.benlab.io_a_pool {\n order 0\n }\n }\n}\ngtm wideip a /Common/bigiq.benlab.io {\n aliases {\n bq.benlab.io\n bq2.benlab.io\n burger.queen.no\n }\n description \"complicated widip\"\n last-resort-pool a /Common/bigiq.benlab.io_pool\n persistence enabled\n pool-lb-mode global-availability\n pools {\n /Common/bigiq.benlab.io_pool {\n order 0\n }\n /Common/esxi01.benlab.io {\n order 2\n ratio 4\n }\n /Common/esxi02.benlab.io {\n order 1\n }\n }\n rules {\n /Common/test_dns_rule\n }\n}\ngtm wideip a /Common/devCloud01.benlab.io {\n pools {\n /Common/devCloud01.benlab.io_pool {\n order 0\n }\n }\n}\ngtm wideip a /Common/piTime314a.int.sci.com {\n aliases {\n piTime314a.td.sci.com\n piTime314a.it.io\n }\n description \"wideip with no pool/destination\"\n}\ngtm wideip a /Common/unifi.benlab.io {\n pools {\n /Common/unifi.benlab.io_pool {\n order 0\n }\n }\n}\n" }, { "fileName": "config/bigip_base.conf", - "size": 14543, - "content": "#TMSH-VERSION: 15.1.8.2\n\nauth partition Common {\n description \"Updated by AS3 at Thu, 17 Sep 2020 15:14:36 GMT\"\n}\nauth partition foo {\n description \"Updated by AS3 at Tue, 06 Oct 2020 18:27:20 GMT\"\n}\nauth partition test { }\nauth password-policy {\n lockout-duration 10\n manual-unlock-disabled true\n policy-enforcement disabled\n}\ncli global-settings {\n idle-timeout 20\n}\ncm cert /Common/dtca-bundle.crt {\n cache-path /config/filestore/files_d/Common_d/trust_certificate_d/:Common:dtca-bundle.crt_62982_2\n checksum SHA1:3389:19284e0ef6ad87b29507ec301eae079e0b59db5f\n revision 2\n}\ncm cert /Common/dtca.crt {\n cache-path /config/filestore/files_d/Common_d/trust_certificate_d/:Common:dtca.crt_62978_1\n checksum SHA1:1289:fff6e3324bb50dc77143169cbafcd2d79bbed17d\n revision 1\n}\ncm cert /Common/dtdi.crt {\n cache-path /config/filestore/files_d/Common_d/trust_certificate_d/:Common:dtdi.crt_62974_1\n checksum SHA1:1220:f989b434582f4bb9e185c5d816dc0ff75d16698a\n revision 1\n}\ncm device /Common/devCloud01.benlab.io {\n active-modules { \"APM, Base, VE GBB (500 CCU, 2500 Access Sessions)|MEYUYAE-LYUGYGN|Anti-Virus Checks|Base Endpoint Security Checks|Firewall Checks|Network Access|Secure Virtual Keyboard|APM, Web Application|Machine Certificate Checks|Protected Workspace|Remote Desktop|App Tunnel\" \"Best Bundle, VE-5G|COTNXDC-CXZIFUK|Rate Shaping|DNSSEC|GTM Licensed Objects, Unlimited|DNS Licensed Objects, Unlimited|DNS Rate Fallback, 250K|GTM Rate Fallback, 250K|GTM Rate, 250K|DNS Rate Limit, 250K QPS|Routing Bundle, VE|ASM, VE|DNS-GTM, Base, 5Gbps|SSL, VE|Max Compression, VE|AFM, VE|Exclusive Version, v12.1.X - 18.X|VE, Carrier Grade NAT (AFM ONLY)|PSM, VE\" }\n base-mac 00:50:56:96:f4:cb\n build 0.0.6\n cert /Common/dtdi.crt\n chassis-id 42167068-f586-7b5f-1e7aac1ada72\n edition \"Point Release 4\"\n hostname devCloud01.benlab.io\n key /Common/dtdi.key\n management-ip 10.200.244.110\n marketing-name \"BIG-IP Virtual Edition\"\n optional-modules { \"Advanced Protocols, VE\" \"App Mode (TMSH Only, No Root/Bash)\" \"ASM to AWF Upgrade, VE-3G\" \"Best, 5 Gbps -10 Gbps Upgrade\" \"BIG-IP VE, Multicast Routing\" \"BIG-IP VE, Privileged User Access, 100 Endpoints\" \"BIG-IP VE, Privileged User Access, 1000 Endpoints\" \"BIG-IP VE, Privileged User Access, 250 Endpoints\" \"BIG-IP VE, Privileged User Access, 50 Endpoints\" \"BIG-IP VE, Privileged User Access, 500 Endpoints\" \"CGN, ADD-VE, 5G\" \"Concurrent Users and Access Sessions, VE\" \"DataSafe, VE-5G\" \"DNS and GTM (250 QPS), VE\" \"External Interface and Network HSM, VE\" \"FIPS 140-2 Level 1, BIG-IP VE-1G to 10G\" \"Intrusion Prevention System, VE-5G\" \"IP Intelligence, 1Yr, VE-1G/VE-3G/VE-5G\" \"IP Intelligence, 3Yr, VE-1G/VE-3G/VE-5G\" \"IPS, 1Yr, VE-1G / VE-3G / VE-5G\" \"IPS, 3Yr, VE-1G / VE-3G / VE-5G\" \"PEM, ADD-VE, 5G\" \"Secure Web Gateway, VE-3G-10G, 10000 Sessions, 1Yr\" \"Secure Web Gateway, VE-3G-10G, 10000 Sessions, 3Yr\" \"Secure Web Gateway, VE-3G-10G, 5000 Sessions, 1Yr\" \"Secure Web Gateway, VE-3G-10G, 5000 Sessions, 3Yr\" \"SSL Orchestrator, VE (3G/5G/10G)\" \"URL Filtering, VE-3G-10G, 10000 Sessions, 1Yr\" \"URL Filtering, VE-3G-10G, 10000 Sessions, 3Yr\" \"URL Filtering, VE-3G-10G, 5000 Sessions, 1Yr\" \"URL Filtering, VE-3G-10G, 5000 Sessions, 3Yr\" \"VE SSL Compression Offload, Medium\" \"VPN Users\" }\n platform-id Z100\n product BIG-IP\n self-device true\n time-zone US/Central\n version 15.1.8.2\n}\ncm device-group /Common/device_trust_group {\n auto-sync enabled\n devices {\n /Common/devCloud01.benlab.io { }\n }\n hidden true\n network-failover disabled\n}\ncm device-group /Common/gtm {\n devices {\n /Common/devCloud01.benlab.io { }\n }\n hidden true\n network-failover disabled\n}\ncm key /Common/dtca.key {\n cache-path /config/filestore/files_d/Common_d/trust_certificate_key_d/:Common:dtca.key_62980_1\n checksum SHA1:1704:d108f95e23990ea14a618354af37dcf35dfb3561\n revision 1\n}\ncm key /Common/dtdi.key {\n cache-path /config/filestore/files_d/Common_d/trust_certificate_key_d/:Common:dtdi.key_62976_1\n checksum SHA1:1704:a9772d8ba23f474da7881461c1c5900ea74bd21e\n revision 1\n}\ncm traffic-group /Common/traffic-group-1 {\n unit-id 1\n}\ncm traffic-group /Common/traffic-group-local-only { }\ncm trust-domain /Common/Root {\n ca-cert /Common/dtca.crt\n ca-cert-bundle /Common/dtca-bundle.crt\n ca-devices { /Common/devCloud01.benlab.io }\n ca-key /Common/dtca.key\n guid ce731326-5456-423a-a14900505696f4cb\n status standalone\n trust-group /Common/device_trust_group\n}\nnet interface 1.0 {\n media-fixed 10000T-FD\n}\nnet port-list /Common/_sys_self_allow_tcp_defaults {\n ports {\n 22 { }\n 53 { }\n 161 { }\n 443 { }\n 1029-1043 { }\n 4353 { }\n }\n}\nnet port-list /Common/_sys_self_allow_udp_defaults {\n ports {\n 53 { }\n 161 { }\n 520 { }\n 1026 { }\n 4353 { }\n }\n}\nnet route-domain /Common/0 {\n id 0\n vlans {\n /Common/http-tunnel\n /Common/socks-tunnel\n /Common/internal\n }\n}\nnet self-allow {\n defaults {\n igmp:0\n ospf:0\n pim:0\n tcp:161\n tcp:22\n tcp:4353\n tcp:53\n tcp:8443\n udp:1026\n udp:161\n udp:4353\n udp:520\n udp:53\n }\n}\nnet stp /Common/cist {\n interfaces {\n 1.0 {\n external-path-cost 500\n internal-path-cost 500\n }\n }\n vlans {\n /Common/internal\n }\n}\nnet vlan /Common/internal {\n interfaces {\n 1.0 { }\n }\n tag 4094\n}\nnet fdb tunnel /Common/http-tunnel { }\nnet fdb tunnel /Common/socks-tunnel { }\nnet fdb vlan /Common/internal { }\nnet tunnels tunnel /Common/http-tunnel {\n description \"Tunnel for http-explicit profile\"\n profile /Common/tcp-forward\n}\nnet tunnels tunnel /Common/socks-tunnel {\n description \"Tunnel for socks profile\"\n profile /Common/tcp-forward\n}\nsecurity device-id attribute /Common/att01 {\n id 1\n}\nsecurity device-id attribute /Common/att02 {\n id 2\n}\nsecurity device-id attribute /Common/att03 {\n id 3\n}\nsecurity device-id attribute /Common/att04 {\n id 4\n}\nsecurity device-id attribute /Common/att05 {\n id 5\n}\nsecurity device-id attribute /Common/att06 {\n id 6\n}\nsecurity device-id attribute /Common/att07 {\n id 7\n}\nsecurity device-id attribute /Common/att08 {\n id 8\n}\nsecurity device-id attribute /Common/att09 {\n id 9\n}\nsecurity device-id attribute /Common/att10 {\n id 10\n}\nsecurity device-id attribute /Common/att11 {\n id 11\n}\nsecurity device-id attribute /Common/att12 {\n id 12\n}\nsecurity device-id attribute /Common/att13 {\n id 13\n}\nsecurity device-id attribute /Common/att14 {\n id 14\n}\nsecurity device-id attribute /Common/att15 {\n id 15\n}\nsecurity device-id attribute /Common/att16 {\n id 16\n}\nsecurity device-id attribute /Common/att17 {\n id 17\n}\nsecurity device-id attribute /Common/att18 {\n id 18\n}\nsecurity device-id attribute /Common/att19 {\n id 19\n}\nsecurity device-id attribute /Common/att20 {\n id 20\n}\nsecurity device-id attribute /Common/att21 {\n id 21\n}\nsecurity device-id attribute /Common/att22 {\n id 22\n}\nsecurity device-id attribute /Common/att23 {\n id 23\n}\nsecurity device-id attribute /Common/att24 {\n id 24\n}\nsecurity device-id attribute /Common/att25 {\n id 25\n}\nsecurity device-id attribute /Common/att26 {\n id 26\n}\nsecurity device-id attribute /Common/att27 {\n id 27\n}\nsecurity device-id attribute /Common/att28 {\n id 28\n}\nsecurity device-id attribute /Common/att29 {\n id 29\n}\nsecurity device-id attribute /Common/att30 {\n id 30\n}\nsecurity device-id attribute /Common/att31 {\n id 31\n}\nsecurity device-id attribute /Common/att32 {\n id 32\n}\nsecurity device-id attribute /Common/att33 {\n id 33\n}\nsecurity device-id attribute /Common/att34 {\n id 34\n}\nsecurity device-id attribute /Common/att35 {\n id 35\n}\nsecurity device-id attribute /Common/att36 {\n id 36\n}\nsecurity device-id attribute /Common/att37 {\n id 37\n}\nsecurity device-id attribute /Common/att38 {\n id 38\n}\nsecurity device-id attribute /Common/att39 {\n id 39\n}\nsecurity firewall config-entity-id /Common/uuid_entity_id {\n entity-id 7402404740565079421\n}\nsecurity firewall port-list /Common/_sys_self_allow_tcp_defaults {\n ports {\n 22 { }\n 53 { }\n 161 { }\n 443 { }\n 1029-1043 { }\n 4353 { }\n }\n}\nsecurity firewall port-list /Common/_sys_self_allow_udp_defaults {\n ports {\n 53 { }\n 161 { }\n 520 { }\n 1026 { }\n 4353 { }\n }\n}\nsecurity firewall rule-list /Common/_sys_self_allow_all {\n rules {\n _sys_allow_all {\n action accept\n ip-protocol any\n }\n }\n}\nsecurity firewall rule-list /Common/_sys_self_allow_defaults {\n rules {\n _sys_allow_tcp_defaults {\n action accept\n ip-protocol tcp\n destination {\n port-lists {\n /Common/_sys_self_allow_tcp_defaults\n }\n }\n }\n _sys_allow_udp_defaults {\n action accept\n ip-protocol udp\n destination {\n port-lists {\n /Common/_sys_self_allow_udp_defaults\n }\n }\n }\n _sys_allow_ospf_defaults {\n action accept\n ip-protocol ospf\n }\n _sys_allow_pim_defaults {\n action accept\n ip-protocol pim\n }\n _sys_allow_igmp_defaults {\n action accept\n ip-protocol igmp\n }\n }\n}\nsecurity firewall rule-list /Common/_sys_self_allow_management {\n rules {\n _sys_allow_ssh {\n action accept\n ip-protocol tcp\n destination {\n ports {\n 22 { }\n }\n }\n }\n _sys_allow_web {\n action accept\n ip-protocol tcp\n destination {\n ports {\n 443 { }\n }\n }\n }\n }\n}\nsecurity ip-intelligence policy /Common/ip-intelligence { }\nsecurity shared-objects port-list /Common/_sys_self_allow_tcp_defaults {\n ports {\n 22 { }\n 53 { }\n 161 { }\n 443 { }\n 1029-1043 { }\n 4353 { }\n }\n}\nsecurity shared-objects port-list /Common/_sys_self_allow_udp_defaults {\n ports {\n 53 { }\n 161 { }\n 520 { }\n 1026 { }\n 4353 { }\n }\n}\nsys dns {\n description configured-by-dhcp\n name-servers { 192.168.200.7 192.168.200.8 }\n search { benlab.io }\n}\nsys folder / {\n device-group none\n hidden false\n inherited-devicegroup false\n inherited-traffic-group false\n traffic-group /Common/traffic-group-1\n}\nsys folder /Common {\n device-group none\n hidden false\n inherited-devicegroup true\n inherited-traffic-group true\n traffic-group /Common/traffic-group-1\n}\nsys folder /Common/Drafts {\n device-group none\n hidden false\n inherited-devicegroup true\n inherited-traffic-group true\n traffic-group /Common/traffic-group-1\n}\nsys folder /Common/EPSEC {\n device-group none\n hidden false\n inherited-devicegroup true\n inherited-traffic-group true\n traffic-group /Common/traffic-group-1\n}\nsys folder /Common/EPSEC/Status {\n device-group none\n hidden false\n inherited-devicegroup true\n inherited-traffic-group true\n traffic-group /Common/traffic-group-1\n}\nsys folder /Common/appsvcs {\n device-group none\n hidden false\n inherited-devicegroup true\n inherited-traffic-group true\n traffic-group /Common/traffic-group-1\n}\nsys folder /Common/atgTeem {\n device-group none\n hidden false\n inherited-devicegroup true\n inherited-traffic-group true\n traffic-group /Common/traffic-group-1\n}\nsys folder /Common/f5-appsvcs-templates {\n device-group none\n hidden false\n inherited-devicegroup true\n inherited-traffic-group true\n traffic-group /Common/traffic-group-1\n}\nsys folder /foo {\n device-group none\n hidden false\n inherited-devicegroup true\n inherited-traffic-group true\n traffic-group /Common/traffic-group-1\n}\nsys folder /foo/defaultsUDP_5555 {\n device-group none\n hidden false\n inherited-devicegroup true\n inherited-traffic-group true\n traffic-group /Common/traffic-group-1\n}\nsys folder /test {\n device-group none\n hidden false\n inherited-devicegroup true\n inherited-traffic-group true\n traffic-group /Common/traffic-group-1\n}\nsys global-settings {\n console-inactivity-timeout 1200\n file-whitelist-path-prefix \"{/var/local/scf} {/tmp/} {/shared/} {/config/} {/usr/share/aws/} {/var/config/rest/downloads/appsvcs_update.cli}\"\n gui-setup disabled\n hostname devCloud01.benlab.io\n mgmt-dhcp dhcpv6\n}\nsys httpd {\n auth-pam-idle-timeout 12000\n ssl-port 8443\n}\nsys management-dhcp /Common/sys-mgmt-dhcp-config {\n request-options { subnet-mask broadcast-address routers domain-name domain-name-servers ntp-servers interface-mtu }\n}\nsys management-ip 10.200.244.110/24 {\n description configured-statically\n}\nsys management-route /Common/default {\n description configured-statically\n gateway 10.200.244.1\n network default\n}\nsys ntp {\n timezone US/Central\n}\nsys provision apm {\n level nominal\n}\nsys provision avr {\n level nominal\n}\nsys provision ltm {\n level nominal\n}\nsys snmp {\n agent-addresses { tcp6:161 udp6:161 }\n communities {\n /Common/comm-public {\n community-name public\n source default\n }\n }\n disk-monitors {\n /Common/root {\n minspace 2000\n path /\n }\n /Common/var {\n minspace 10000\n path /var\n }\n }\n process-monitors {\n /Common/bigd {\n max-processes infinity\n process bigd\n }\n /Common/chmand {\n process chmand\n }\n /Common/httpd {\n max-processes infinity\n process httpd\n }\n /Common/mcpd {\n process mcpd\n }\n /Common/sod {\n process sod\n }\n /Common/tmm {\n max-processes infinity\n process tmm\n }\n }\n}\nsys dynad settings {\n development-mode false\n}\nsys fpga firmware-config {\n type standard-balanced-fpga\n}\nsys sflow global-settings http { }\nsys sflow global-settings vlan { }\nsys turboflex profile-config {\n type turboflex-adc\n}\n" + "size": 14673, + "content": "#TMSH-VERSION: 15.1.8.2\n\nauth partition Common {\n description \"Updated by AS3 at Thu, 17 Sep 2020 15:14:36 GMT\"\n}\nauth partition foo {\n description \"Updated by AS3 at Tue, 06 Oct 2020 18:27:20 GMT\"\n}\nauth partition test { }\nauth password-policy {\n lockout-duration 10\n manual-unlock-disabled true\n policy-enforcement disabled\n}\ncli global-settings {\n idle-timeout 20\n}\ncm cert /Common/dtca-bundle.crt {\n cache-path /config/filestore/files_d/Common_d/trust_certificate_d/:Common:dtca-bundle.crt_62982_2\n checksum SHA1:3389:19284e0ef6ad87b29507ec301eae079e0b59db5f\n revision 2\n}\ncm cert /Common/dtca.crt {\n cache-path /config/filestore/files_d/Common_d/trust_certificate_d/:Common:dtca.crt_62978_1\n checksum SHA1:1289:fff6e3324bb50dc77143169cbafcd2d79bbed17d\n revision 1\n}\ncm cert /Common/dtdi.crt {\n cache-path /config/filestore/files_d/Common_d/trust_certificate_d/:Common:dtdi.crt_62974_1\n checksum SHA1:1220:f989b434582f4bb9e185c5d816dc0ff75d16698a\n revision 1\n}\ncm device /Common/devCloud01.benlab.io {\n active-modules { \"APM, Base, VE GBB (500 CCU, 2500 Access Sessions)|MEYUYAE-LYUGYGN|Anti-Virus Checks|Base Endpoint Security Checks|Firewall Checks|Network Access|Secure Virtual Keyboard|APM, Web Application|Machine Certificate Checks|Protected Workspace|Remote Desktop|App Tunnel\" \"Best Bundle, VE-5G|COTNXDC-CXZIFUK|Rate Shaping|DNSSEC|GTM Licensed Objects, Unlimited|DNS Licensed Objects, Unlimited|DNS Rate Fallback, 250K|GTM Rate Fallback, 250K|GTM Rate, 250K|DNS Rate Limit, 250K QPS|Routing Bundle, VE|ASM, VE|DNS-GTM, Base, 5Gbps|SSL, VE|Max Compression, VE|AFM, VE|Exclusive Version, v12.1.X - 18.X|VE, Carrier Grade NAT (AFM ONLY)|PSM, VE\" }\n base-mac 00:50:56:96:f4:cb\n build 0.0.6\n cert /Common/dtdi.crt\n chassis-id 42167068-f586-7b5f-1e7aac1ada72\n edition \"Point Release 4\"\n hostname devCloud01.benlab.io\n key /Common/dtdi.key\n management-ip 10.200.244.110\n marketing-name \"BIG-IP Virtual Edition\"\n optional-modules { \"Advanced Protocols, VE\" \"App Mode (TMSH Only, No Root/Bash)\" \"ASM to AWF Upgrade, VE-3G\" \"Best, 5 Gbps -10 Gbps Upgrade\" \"BIG-IP VE, Multicast Routing\" \"BIG-IP VE, Privileged User Access, 100 Endpoints\" \"BIG-IP VE, Privileged User Access, 1000 Endpoints\" \"BIG-IP VE, Privileged User Access, 250 Endpoints\" \"BIG-IP VE, Privileged User Access, 50 Endpoints\" \"BIG-IP VE, Privileged User Access, 500 Endpoints\" \"CGN, ADD-VE, 5G\" \"Concurrent Users and Access Sessions, VE\" \"DataSafe, VE-5G\" \"DNS and GTM (250 QPS), VE\" \"External Interface and Network HSM, VE\" \"FIPS 140-2 Level 1, BIG-IP VE-1G to 10G\" \"Intrusion Prevention System, VE-5G\" \"IP Intelligence, 1Yr, VE-1G/VE-3G/VE-5G\" \"IP Intelligence, 3Yr, VE-1G/VE-3G/VE-5G\" \"IPS, 1Yr, VE-1G / VE-3G / VE-5G\" \"IPS, 3Yr, VE-1G / VE-3G / VE-5G\" \"PEM, ADD-VE, 5G\" \"Secure Web Gateway, VE-3G-10G, 10000 Sessions, 1Yr\" \"Secure Web Gateway, VE-3G-10G, 10000 Sessions, 3Yr\" \"Secure Web Gateway, VE-3G-10G, 5000 Sessions, 1Yr\" \"Secure Web Gateway, VE-3G-10G, 5000 Sessions, 3Yr\" \"SSL Orchestrator, VE (3G/5G/10G)\" \"URL Filtering, VE-3G-10G, 10000 Sessions, 1Yr\" \"URL Filtering, VE-3G-10G, 10000 Sessions, 3Yr\" \"URL Filtering, VE-3G-10G, 5000 Sessions, 1Yr\" \"URL Filtering, VE-3G-10G, 5000 Sessions, 3Yr\" \"VE SSL Compression Offload, Medium\" \"VPN Users\" }\n platform-id Z100\n product BIG-IP\n self-device true\n time-zone US/Central\n version 15.1.8.2\n}\ncm device-group /Common/device_trust_group {\n auto-sync enabled\n devices {\n /Common/devCloud01.benlab.io { }\n }\n hidden true\n network-failover disabled\n}\ncm device-group /Common/gtm {\n devices {\n /Common/devCloud01.benlab.io { }\n }\n hidden true\n network-failover disabled\n}\ncm key /Common/dtca.key {\n cache-path /config/filestore/files_d/Common_d/trust_certificate_key_d/:Common:dtca.key_62980_1\n checksum SHA1:1704:d108f95e23990ea14a618354af37dcf35dfb3561\n revision 1\n}\ncm key /Common/dtdi.key {\n cache-path /config/filestore/files_d/Common_d/trust_certificate_key_d/:Common:dtdi.key_62976_1\n checksum SHA1:1704:a9772d8ba23f474da7881461c1c5900ea74bd21e\n revision 1\n}\ncm traffic-group /Common/traffic-group-1 {\n unit-id 1\n}\ncm traffic-group /Common/traffic-group-local-only { }\ncm trust-domain /Common/Root {\n ca-cert /Common/dtca.crt\n ca-cert-bundle /Common/dtca-bundle.crt\n ca-devices { /Common/devCloud01.benlab.io }\n ca-key /Common/dtca.key\n guid ce731326-5456-423a-a14900505696f4cb\n status standalone\n trust-group /Common/device_trust_group\n}\nnet interface 1.0 {\n media-fixed 10000T-FD\n}\nnet port-list /Common/_sys_self_allow_tcp_defaults {\n ports {\n 22 { }\n 53 { }\n 161 { }\n 443 { }\n 1029-1043 { }\n 4353 { }\n }\n}\nnet port-list /Common/_sys_self_allow_udp_defaults {\n ports {\n 53 { }\n 161 { }\n 520 { }\n 1026 { }\n 4353 { }\n }\n}\nnet route-domain /Common/0 {\n id 0\n vlans {\n /Common/http-tunnel\n /Common/socks-tunnel\n /Common/internal\n }\n}\nnet self-allow {\n defaults {\n igmp:0\n ospf:0\n pim:0\n tcp:161\n tcp:22\n tcp:4353\n tcp:53\n tcp:8443\n udp:1026\n udp:161\n udp:4353\n udp:520\n udp:53\n }\n}\nnet stp /Common/cist {\n interfaces {\n 1.0 {\n external-path-cost 500\n internal-path-cost 500\n }\n }\n vlans {\n /Common/internal\n }\n}\nnet vlan /Common/internal {\n interfaces {\n 1.0 { }\n }\n tag 4094\n}\nnet vlan /Common/vlan255_f5peer {\n tag 255\n}\nnet vlan /Common/vlan245 {\n tag 245\n}\nnet vlan /Common/vlan230 {\n tag 230\n}\nnet fdb tunnel /Common/http-tunnel { }\nnet fdb tunnel /Common/socks-tunnel { }\nnet fdb vlan /Common/internal { }\nnet tunnels tunnel /Common/http-tunnel {\n description \"Tunnel for http-explicit profile\"\n profile /Common/tcp-forward\n}\nnet tunnels tunnel /Common/socks-tunnel {\n description \"Tunnel for socks profile\"\n profile /Common/tcp-forward\n}\nsecurity device-id attribute /Common/att01 {\n id 1\n}\nsecurity device-id attribute /Common/att02 {\n id 2\n}\nsecurity device-id attribute /Common/att03 {\n id 3\n}\nsecurity device-id attribute /Common/att04 {\n id 4\n}\nsecurity device-id attribute /Common/att05 {\n id 5\n}\nsecurity device-id attribute /Common/att06 {\n id 6\n}\nsecurity device-id attribute /Common/att07 {\n id 7\n}\nsecurity device-id attribute /Common/att08 {\n id 8\n}\nsecurity device-id attribute /Common/att09 {\n id 9\n}\nsecurity device-id attribute /Common/att10 {\n id 10\n}\nsecurity device-id attribute /Common/att11 {\n id 11\n}\nsecurity device-id attribute /Common/att12 {\n id 12\n}\nsecurity device-id attribute /Common/att13 {\n id 13\n}\nsecurity device-id attribute /Common/att14 {\n id 14\n}\nsecurity device-id attribute /Common/att15 {\n id 15\n}\nsecurity device-id attribute /Common/att16 {\n id 16\n}\nsecurity device-id attribute /Common/att17 {\n id 17\n}\nsecurity device-id attribute /Common/att18 {\n id 18\n}\nsecurity device-id attribute /Common/att19 {\n id 19\n}\nsecurity device-id attribute /Common/att20 {\n id 20\n}\nsecurity device-id attribute /Common/att21 {\n id 21\n}\nsecurity device-id attribute /Common/att22 {\n id 22\n}\nsecurity device-id attribute /Common/att23 {\n id 23\n}\nsecurity device-id attribute /Common/att24 {\n id 24\n}\nsecurity device-id attribute /Common/att25 {\n id 25\n}\nsecurity device-id attribute /Common/att26 {\n id 26\n}\nsecurity device-id attribute /Common/att27 {\n id 27\n}\nsecurity device-id attribute /Common/att28 {\n id 28\n}\nsecurity device-id attribute /Common/att29 {\n id 29\n}\nsecurity device-id attribute /Common/att30 {\n id 30\n}\nsecurity device-id attribute /Common/att31 {\n id 31\n}\nsecurity device-id attribute /Common/att32 {\n id 32\n}\nsecurity device-id attribute /Common/att33 {\n id 33\n}\nsecurity device-id attribute /Common/att34 {\n id 34\n}\nsecurity device-id attribute /Common/att35 {\n id 35\n}\nsecurity device-id attribute /Common/att36 {\n id 36\n}\nsecurity device-id attribute /Common/att37 {\n id 37\n}\nsecurity device-id attribute /Common/att38 {\n id 38\n}\nsecurity device-id attribute /Common/att39 {\n id 39\n}\nsecurity firewall config-entity-id /Common/uuid_entity_id {\n entity-id 7402404740565079421\n}\nsecurity firewall port-list /Common/_sys_self_allow_tcp_defaults {\n ports {\n 22 { }\n 53 { }\n 161 { }\n 443 { }\n 1029-1043 { }\n 4353 { }\n }\n}\nsecurity firewall port-list /Common/_sys_self_allow_udp_defaults {\n ports {\n 53 { }\n 161 { }\n 520 { }\n 1026 { }\n 4353 { }\n }\n}\nsecurity firewall rule-list /Common/_sys_self_allow_all {\n rules {\n _sys_allow_all {\n action accept\n ip-protocol any\n }\n }\n}\nsecurity firewall rule-list /Common/_sys_self_allow_defaults {\n rules {\n _sys_allow_tcp_defaults {\n action accept\n ip-protocol tcp\n destination {\n port-lists {\n /Common/_sys_self_allow_tcp_defaults\n }\n }\n }\n _sys_allow_udp_defaults {\n action accept\n ip-protocol udp\n destination {\n port-lists {\n /Common/_sys_self_allow_udp_defaults\n }\n }\n }\n _sys_allow_ospf_defaults {\n action accept\n ip-protocol ospf\n }\n _sys_allow_pim_defaults {\n action accept\n ip-protocol pim\n }\n _sys_allow_igmp_defaults {\n action accept\n ip-protocol igmp\n }\n }\n}\nsecurity firewall rule-list /Common/_sys_self_allow_management {\n rules {\n _sys_allow_ssh {\n action accept\n ip-protocol tcp\n destination {\n ports {\n 22 { }\n }\n }\n }\n _sys_allow_web {\n action accept\n ip-protocol tcp\n destination {\n ports {\n 443 { }\n }\n }\n }\n }\n}\nsecurity ip-intelligence policy /Common/ip-intelligence { }\nsecurity shared-objects port-list /Common/_sys_self_allow_tcp_defaults {\n ports {\n 22 { }\n 53 { }\n 161 { }\n 443 { }\n 1029-1043 { }\n 4353 { }\n }\n}\nsecurity shared-objects port-list /Common/_sys_self_allow_udp_defaults {\n ports {\n 53 { }\n 161 { }\n 520 { }\n 1026 { }\n 4353 { }\n }\n}\nsys dns {\n description configured-by-dhcp\n name-servers { 192.168.200.7 192.168.200.8 }\n search { benlab.io }\n}\nsys folder / {\n device-group none\n hidden false\n inherited-devicegroup false\n inherited-traffic-group false\n traffic-group /Common/traffic-group-1\n}\nsys folder /Common {\n device-group none\n hidden false\n inherited-devicegroup true\n inherited-traffic-group true\n traffic-group /Common/traffic-group-1\n}\nsys folder /Common/Drafts {\n device-group none\n hidden false\n inherited-devicegroup true\n inherited-traffic-group true\n traffic-group /Common/traffic-group-1\n}\nsys folder /Common/EPSEC {\n device-group none\n hidden false\n inherited-devicegroup true\n inherited-traffic-group true\n traffic-group /Common/traffic-group-1\n}\nsys folder /Common/EPSEC/Status {\n device-group none\n hidden false\n inherited-devicegroup true\n inherited-traffic-group true\n traffic-group /Common/traffic-group-1\n}\nsys folder /Common/appsvcs {\n device-group none\n hidden false\n inherited-devicegroup true\n inherited-traffic-group true\n traffic-group /Common/traffic-group-1\n}\nsys folder /Common/atgTeem {\n device-group none\n hidden false\n inherited-devicegroup true\n inherited-traffic-group true\n traffic-group /Common/traffic-group-1\n}\nsys folder /Common/f5-appsvcs-templates {\n device-group none\n hidden false\n inherited-devicegroup true\n inherited-traffic-group true\n traffic-group /Common/traffic-group-1\n}\nsys folder /foo {\n device-group none\n hidden false\n inherited-devicegroup true\n inherited-traffic-group true\n traffic-group /Common/traffic-group-1\n}\nsys folder /foo/defaultsUDP_5555 {\n device-group none\n hidden false\n inherited-devicegroup true\n inherited-traffic-group true\n traffic-group /Common/traffic-group-1\n}\nsys folder /test {\n device-group none\n hidden false\n inherited-devicegroup true\n inherited-traffic-group true\n traffic-group /Common/traffic-group-1\n}\nsys global-settings {\n console-inactivity-timeout 1200\n file-whitelist-path-prefix \"{/var/local/scf} {/tmp/} {/shared/} {/config/} {/usr/share/aws/} {/var/config/rest/downloads/appsvcs_update.cli}\"\n gui-setup disabled\n hostname devCloud01.benlab.io\n mgmt-dhcp dhcpv6\n}\nsys httpd {\n auth-pam-idle-timeout 12000\n ssl-port 8443\n}\nsys management-dhcp /Common/sys-mgmt-dhcp-config {\n request-options { subnet-mask broadcast-address routers domain-name domain-name-servers ntp-servers interface-mtu }\n}\nsys management-ip 10.200.244.110/24 {\n description configured-statically\n}\nsys management-route /Common/default {\n description configured-statically\n gateway 10.200.244.1\n network default\n}\nsys ntp {\n timezone US/Central\n}\nsys provision apm {\n level nominal\n}\nsys provision avr {\n level nominal\n}\nsys provision ltm {\n level nominal\n}\nsys snmp {\n agent-addresses { tcp6:161 udp6:161 }\n communities {\n /Common/comm-public {\n community-name public\n source default\n }\n }\n disk-monitors {\n /Common/root {\n minspace 2000\n path /\n }\n /Common/var {\n minspace 10000\n path /var\n }\n }\n process-monitors {\n /Common/bigd {\n max-processes infinity\n process bigd\n }\n /Common/chmand {\n process chmand\n }\n /Common/httpd {\n max-processes infinity\n process httpd\n }\n /Common/mcpd {\n process mcpd\n }\n /Common/sod {\n process sod\n }\n /Common/tmm {\n max-processes infinity\n process tmm\n }\n }\n}\nsys dynad settings {\n development-mode false\n}\nsys fpga firmware-config {\n type standard-balanced-fpga\n}\nsys sflow global-settings http { }\nsys sflow global-settings vlan { }\nsys turboflex profile-config {\n type turboflex-adc\n}\n" }, { "fileName": "config/bigip.conf", - "size": 76020, - "content": "#TMSH-VERSION: 15.1.8.2\n\nanalytics global-settings { }\napm aaa localdb /Common/localDB { }\napm epsec epsec-package /Common/epsec-1.0.0-892.0.iso {\n cache-path /config/filestore/files_d/Common_d/epsec_package_d/:Common:epsec-1.0.0-892.0.iso_65040_1\n oesis-version 4.3.1158.0\n revision 1\n version 1.0.0-892.0\n}\napm policy access-policy /Common/adminAuth_local_aPolicy {\n default-ending /Common/adminAuth_local_aPolicy_end_deny\n items {\n /Common/adminAuth_local_aPolicy_act_localdb_auth { }\n /Common/adminAuth_local_aPolicy_act_logon_page { }\n /Common/adminAuth_local_aPolicy_end_allow { }\n /Common/adminAuth_local_aPolicy_end_deny { }\n /Common/adminAuth_local_aPolicy_ent { }\n }\n start-item /Common/adminAuth_local_aPolicy_ent\n}\napm policy customization-group /Common/adminAuth_local_aPolicy_act_logon_page_ag {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_act_logon_page_ag_65223_2\n revision 2\n source /Common/modern\n}\napm policy customization-group /Common/adminAuth_local_aPolicy_end_deny_ag {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_end_deny_ag_65134_1\n revision 1\n source /Common/modern\n type logout\n}\napm policy customization-group /Common/adminAuth_local_aPolicy_eps {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_eps_65170_1\n revision 1\n source /Common/modern\n type eps\n}\napm policy customization-group /Common/adminAuth_local_aPolicy_errormap {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_errormap_65167_1\n revision 1\n source /Common/modern\n type errormap\n}\napm policy customization-group /Common/adminAuth_local_aPolicy_framework_installation {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_framework_installation_65173_1\n revision 1\n source /Common/modern\n type framework-installation\n}\napm policy customization-group /Common/adminAuth_local_aPolicy_general_ui {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_general_ui_65124_1\n revision 1\n source /Common/modern\n type general-ui\n}\napm policy customization-group /Common/adminAuth_local_aPolicy_logout {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_logout_65164_1\n revision 1\n source /Common/modern\n type logout\n}\napm policy customization-source /Common/modern { }\napm policy customization-source /Common/standard { }\napm policy policy-item /Common/adminAuth_local_aPolicy_act_localdb_auth {\n agents {\n /Common/adminAuth_local_aPolicy_act_localdb_auth_ag {\n type aaa-localdb\n }\n }\n caption \"LocalDB Auth\"\n color 1\n item-type action\n rules {\n {\n caption Successful\n expression \"expr {[mcget {session.localdb.last.result}] == 1}\"\n next-item /Common/adminAuth_local_aPolicy_end_allow\n }\n {\n caption \"Locked User Out\"\n expression \"expr {[mcget {session.localdb.last.result}] == 2}\"\n next-item /Common/adminAuth_local_aPolicy_end_deny\n }\n {\n caption fallback\n next-item /Common/adminAuth_local_aPolicy_end_deny\n }\n }\n}\napm policy policy-item /Common/adminAuth_local_aPolicy_act_logon_page {\n agents {\n /Common/adminAuth_local_aPolicy_act_logon_page_ag {\n type logon-page\n }\n }\n caption \"Logon Page\"\n color 1\n item-type action\n rules {\n {\n caption fallback\n next-item /Common/adminAuth_local_aPolicy_act_localdb_auth\n }\n }\n}\napm policy policy-item /Common/adminAuth_local_aPolicy_end_allow {\n agents {\n /Common/adminAuth_local_aPolicy_end_allow_ag {\n type ending-allow\n }\n }\n caption Allow\n color 1\n item-type ending\n}\napm policy policy-item /Common/adminAuth_local_aPolicy_end_deny {\n agents {\n /Common/adminAuth_local_aPolicy_end_deny_ag {\n type ending-deny\n }\n }\n caption Deny\n color 2\n item-type ending\n}\napm policy policy-item /Common/adminAuth_local_aPolicy_ent {\n caption Start\n color 1\n rules {\n {\n caption fallback\n next-item /Common/adminAuth_local_aPolicy_act_logon_page\n }\n }\n}\napm policy agent aaa-localdb /Common/adminAuth_local_aPolicy_act_localdb_auth_ag {\n localdb-instance /Common/localDB\n}\napm policy agent ending-allow /Common/adminAuth_local_aPolicy_end_allow_ag { }\napm policy agent ending-deny /Common/adminAuth_local_aPolicy_end_deny_ag {\n customization-group /Common/adminAuth_local_aPolicy_end_deny_ag\n}\napm policy agent logon-page /Common/adminAuth_local_aPolicy_act_logon_page_ag {\n customization-group /Common/adminAuth_local_aPolicy_act_logon_page_ag\n}\napm profile access /Common/adminAuth_local_aPolicy {\n accept-languages { en }\n access-policy /Common/adminAuth_local_aPolicy\n app-service none\n customization-group /Common/adminAuth_local_aPolicy_logout\n customization-key 22ac0aeb0346bcebf5e867279edf9d7b\n default-language en\n domain-cookie none\n eps-group /Common/adminAuth_local_aPolicy_eps\n errormap-group /Common/adminAuth_local_aPolicy_errormap\n exchange-profile none\n framework-installation-group /Common/adminAuth_local_aPolicy_framework_installation\n general-ui-group /Common/adminAuth_local_aPolicy_general_ui\n generation 4\n generation-action noop\n httponly-cookie false\n log-settings {\n /Common/default-log-setting\n }\n logout-uri-include none\n logout-uri-timeout 5\n modified-since-last-policy-sync true\n named-scope none\n persistent-cookie false\n scope profile\n secure-cookie true\n sso-name none\n type system-authentication\n user-identity-method http\n}\napm report default-report {\n report-name sessionReports/sessionSummary\n user /Common/admin\n}\napm aaa localdb /Common/localDB { }\napm epsec epsec-package /Common/epsec-1.0.0-846.0.iso {\n cache-path /config/filestore/files_d/Common_d/epsec_package_d/:Common:epsec-1.0.0-846.0.iso_62973_1\n oesis-version 4.3.716.0\n revision 1\n version 1.0.0-846.0\n}\napm epsec epsec-package /Common/epsec-1.0.0-888.0.iso {\n cache-path /config/filestore/files_d/Common_d/epsec_package_d/:Common:epsec-1.0.0-888.0.iso_66742_1\n oesis-version 4.3.1103.0\n revision 1\n version 1.0.0-888.0\n}\napm epsec epsec-package /Common/epsec-1.0.0-1372.0.iso {\n cache-path /config/filestore/files_d/Common_d/epsec_package_d/:Common:epsec-1.0.0-1372.0.iso_68987_1\n oesis-version 4.3.3348.0\n revision 1\n version 1.0.0-1372.0\n}\napm policy access-policy /Common/radiusServer {\n default-ending /Common/radiusServer_end_deny\n items {\n /Common/radiusServer_act_radius_auth { }\n /Common/radiusServer_end_allow { }\n /Common/radiusServer_end_deny { }\n /Common/radiusServer_ent { }\n }\n start-item /Common/radiusServer_ent\n}\napm policy access-policy /Common/sslvpn_network_access {\n default-ending /Common/sslvpn_network_access_end_deny\n items {\n /Common/sslvpn_network_access_act_full_resource_assign { }\n /Common/sslvpn_network_access_act_localdb_auth { }\n /Common/sslvpn_network_access_act_logon_page { }\n /Common/sslvpn_network_access_end_allow { }\n /Common/sslvpn_network_access_end_deny { }\n /Common/sslvpn_network_access_ent { }\n }\n start-item /Common/sslvpn_network_access_ent\n}\napm policy customization-group /Common/radiusServer_end_deny_ag {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:radiusServer_end_deny_ag_216201_1\n revision 1\n source /Common/standard\n type logout\n}\napm policy customization-group /Common/radiusServer_eps {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:radiusServer_eps_216183_1\n revision 1\n source /Common/standard\n type eps\n}\napm policy customization-group /Common/radiusServer_errormap {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:radiusServer_errormap_216181_1\n revision 1\n source /Common/standard\n type errormap\n}\napm policy customization-group /Common/radiusServer_frameworkinstallation {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:radiusServer_frameworkinstallation_216185_1\n revision 1\n source /Common/standard\n type framework-installation\n}\napm policy customization-group /Common/radiusServer_general_ui {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:radiusServer_general_ui_216187_1\n revision 1\n source /Common/standard\n type general-ui\n}\napm policy customization-group /Common/radiusServer_logout {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:radiusServer_logout_216179_1\n revision 1\n source /Common/standard\n type logout\n}\napm policy customization-group /Common/ssl_webtop_customization {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:ssl_webtop_customization_103262_1\n revision 1\n source /Common/standard\n type webtop\n}\napm policy customization-group /Common/sslvpn_access_list_resource_network_access_customization {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:sslvpn_access_list_resource_network_access_customization_103276_1\n revision 1\n source /Common/standard\n type resource-network-access\n}\napm policy customization-group /Common/sslvpn_connectivity_profile_secure_access_client_customization {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:sslvpn_connectivity_profile_secure_access_client_customization_103292_1\n revision 1\n source /Common/standard\n type secure-access-client\n}\napm policy customization-group /Common/sslvpn_network_access_act_logon_page_ag {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:sslvpn_network_access_act_logon_page_ag_103365_2\n revision 2\n source /Common/standard\n}\napm policy customization-group /Common/sslvpn_network_access_end_deny_ag {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:sslvpn_network_access_end_deny_ag_103326_1\n revision 1\n source /Common/standard\n type logout\n}\napm policy customization-group /Common/sslvpn_network_access_eps {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:sslvpn_network_access_eps_103308_1\n revision 1\n source /Common/standard\n type eps\n}\napm policy customization-group /Common/sslvpn_network_access_errormap {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:sslvpn_network_access_errormap_103306_1\n revision 1\n source /Common/standard\n type errormap\n}\napm policy customization-group /Common/sslvpn_network_access_frameworkinstallation {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:sslvpn_network_access_frameworkinstallation_103310_1\n revision 1\n source /Common/standard\n type framework-installation\n}\napm policy customization-group /Common/sslvpn_network_access_general_ui {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:sslvpn_network_access_general_ui_103312_1\n revision 1\n source /Common/standard\n type general-ui\n}\napm policy customization-group /Common/sslvpn_network_access_logout {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:sslvpn_network_access_logout_103304_1\n revision 1\n source /Common/standard\n type logout\n}\napm policy customization-source /Common/modern { }\napm policy customization-source /Common/standard { }\napm policy policy-item /Common/radiusServer_act_radius_auth {\n agents {\n /Common/radiusServer_act_radius_auth_ag {\n type aaa-radius\n }\n }\n caption \"RADIUS Auth\"\n color 1\n item-type action\n rules {\n {\n caption Successful\n expression \"expr {[mcget {session.radius.last.result}] == 1}\"\n next-item /Common/radiusServer_end_deny\n }\n {\n caption fallback\n next-item /Common/radiusServer_end_deny\n }\n }\n}\napm policy policy-item /Common/radiusServer_end_allow {\n agents {\n /Common/radiusServer_end_allow_ag {\n type ending-allow\n }\n }\n caption Allow\n color 1\n item-type ending\n}\napm policy policy-item /Common/radiusServer_end_deny {\n agents {\n /Common/radiusServer_end_deny_ag {\n type ending-deny\n }\n }\n caption Deny\n color 2\n item-type ending\n}\napm policy policy-item /Common/radiusServer_ent {\n caption Start\n color 1\n rules {\n {\n caption fallback\n next-item /Common/radiusServer_act_radius_auth\n }\n }\n}\napm policy policy-item /Common/sslvpn_network_access_act_full_resource_assign {\n agents {\n /Common/sslvpn_network_access_act_full_resource_assign_ag {\n type resource-assign\n }\n }\n caption \"Advanced Resource Assign\"\n color 1\n item-type action\n rules {\n {\n caption fallback\n next-item /Common/sslvpn_network_access_end_allow\n }\n }\n}\napm policy policy-item /Common/sslvpn_network_access_act_localdb_auth {\n agents {\n /Common/sslvpn_network_access_act_localdb_auth_ag {\n type aaa-localdb\n }\n }\n caption \"LocalDB Auth\"\n color 1\n item-type action\n rules {\n {\n caption Successful\n expression \"expr {[mcget {session.localdb.last.result}] == 1}\"\n next-item /Common/sslvpn_network_access_act_full_resource_assign\n }\n {\n caption \"Locked User Out\"\n expression \"expr {[mcget {session.localdb.last.result}] == 2}\"\n next-item /Common/sslvpn_network_access_end_deny\n }\n {\n caption fallback\n next-item /Common/sslvpn_network_access_end_deny\n }\n }\n}\napm policy policy-item /Common/sslvpn_network_access_act_logon_page {\n agents {\n /Common/sslvpn_network_access_act_logon_page_ag {\n type logon-page\n }\n }\n caption \"Logon Page\"\n color 1\n item-type action\n rules {\n {\n caption fallback\n next-item /Common/sslvpn_network_access_act_localdb_auth\n }\n }\n}\napm policy policy-item /Common/sslvpn_network_access_end_allow {\n agents {\n /Common/sslvpn_network_access_end_allow_ag {\n type ending-allow\n }\n }\n caption Allow\n color 1\n item-type ending\n}\napm policy policy-item /Common/sslvpn_network_access_end_deny {\n agents {\n /Common/sslvpn_network_access_end_deny_ag {\n type ending-deny\n }\n }\n caption Deny\n color 2\n item-type ending\n}\napm policy policy-item /Common/sslvpn_network_access_ent {\n caption Start\n color 1\n rules {\n {\n caption fallback\n next-item /Common/sslvpn_network_access_act_logon_page\n }\n }\n}\napm policy agent aaa-localdb /Common/sslvpn_network_access_act_localdb_auth_ag {\n localdb-instance /Common/localDB\n}\napm policy agent aaa-radius /Common/radiusServer_act_radius_auth_ag {\n max-logon-attempt 5\n show-extended-error true\n}\napm policy agent ending-allow /Common/radiusServer_end_allow_ag { }\napm policy agent ending-allow /Common/sslvpn_network_access_end_allow_ag { }\napm policy agent ending-deny /Common/radiusServer_end_deny_ag {\n customization-group /Common/radiusServer_end_deny_ag\n}\napm policy agent ending-deny /Common/sslvpn_network_access_end_deny_ag {\n customization-group /Common/sslvpn_network_access_end_deny_ag\n}\napm policy agent logon-page /Common/sslvpn_network_access_act_logon_page_ag {\n customization-group /Common/sslvpn_network_access_act_logon_page_ag\n}\napm policy agent resource-assign /Common/sslvpn_network_access_act_full_resource_assign_ag {\n rules {\n {\n network-access-resources { /Common/sslvpn_access_list }\n webtop /Common/ssl_webtop\n }\n }\n}\napm profile access /Common/radiusServer {\n accept-languages { en }\n access-policy /Common/radiusServer\n app-service none\n customization-group /Common/radiusServer_logout\n customization-key c649c57de3b753f9764ae640df53f6cb\n default-language en\n domain-cookie none\n eps-group /Common/radiusServer_eps\n errormap-group /Common/radiusServer_errormap\n exchange-profile none\n framework-installation-group /Common/radiusServer_frameworkinstallation\n general-ui-group /Common/radiusServer_general_ui\n generation 1\n generation-action noop\n httponly-cookie false\n log-settings {\n /Common/default-log-setting\n }\n logout-uri-include none\n logout-uri-timeout 5\n modified-since-last-policy-sync true\n oauth-profile none\n persistent-cookie false\n scope profile\n secure-cookie true\n sso-name none\n type all\n user-identity-method http\n}\napm profile access /Common/sslvpn_network_access {\n accept-languages { en }\n access-policy /Common/sslvpn_network_access\n app-service none\n customization-group /Common/sslvpn_network_access_logout\n customization-key c0595c63f1a549ebf25e99e683989536\n default-language en\n domain-cookie none\n eps-group /Common/sslvpn_network_access_eps\n errormap-group /Common/sslvpn_network_access_errormap\n exchange-profile none\n framework-installation-group /Common/sslvpn_network_access_frameworkinstallation\n general-ui-group /Common/sslvpn_network_access_general_ui\n generation 2\n generation-action noop\n httponly-cookie false\n log-settings {\n /Common/default-log-setting\n }\n logout-uri-include none\n logout-uri-timeout 5\n modified-since-last-policy-sync true\n oauth-profile none\n persistent-cookie false\n scope profile\n secure-cookie true\n sso-name none\n type all\n user-identity-method http\n}\napm profile connectivity /Common/sslvpn_connectivity_profile {\n adaptive-compression enabled\n app-service none\n citrix-client-bundle /Common/default-citrix-client-bundle\n client-policy {\n sslvpn_connectivity_profile_clientPolicy { }\n }\n compress-buffer-size 4096\n compress-cpu-saver true\n compress-cpu-saver-high 90\n compress-cpu-saver-low 75\n compress-gzip-level 6\n compress-gzip-memlevel 8192\n compress-gzip-window-size 16384\n compress-ingress false\n compress-preferred-method zlib\n compression enabled\n compression-codecs { deflate lzo bzip2 }\n customization-group /Common/sslvpn_connectivity_profile_secure_access_client_customization\n defaults-from /Common/connectivity\n deflate-compression-level 1\n description none\n fec-name none\n location-specific false\n tunnel-name /Common/sslvpn_connectivity_profile\n}\napm report default-report {\n report-name sessionReports/sessionSummary\n user /Common/admin\n}\napm resource leasepool /Common/sslvpn_lease_pool {\n members {\n 10.10.10.10-10.10.10.20 { }\n }\n}\napm resource network-access /Common/sslvpn_access_list {\n address-space-include-dns-name { 192.168.200.7 192.168.200.8 }\n address-space-include-subnet {\n {\n subnet 10.200.0.0/16\n }\n {\n subnet 192.168.200.0/24\n }\n }\n customization-group /Common/sslvpn_access_list_resource_network_access_customization\n dns-primary 192.168.200.7\n dns-secondary 192.168.200.8\n dns-suffix benlab.io\n leasepool-name /Common/sslvpn_lease_pool\n split-tunneling true\n}\napm resource webtop /Common/ssl_webtop {\n customization-group /Common/ssl_webtop_customization\n webtop-type full\n}\nasm policy /Common/basic_policy_1 {\n active\n blocking-mode enabled\n description 'some description'\n encoding utf-8\n policy-builder enabled\n policy-template POLICY_TEMPLATE_RAPID_DEPLOYMENT\n policy-type security\n parent-policy some-.other_policy1\n}\nasm predefined-policy POLICY_TEMPLATE_ACTIVESYNC_V1_0_V2_0_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_ACTIVESYNC_V1_0_V2_0_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_API_SECURITY { }\nasm predefined-policy POLICY_TEMPLATE_BEHAVIORAL_WAF { }\nasm predefined-policy POLICY_TEMPLATE_COMPREHENSIVE { }\nasm predefined-policy POLICY_TEMPLATE_DRUPAL { }\nasm predefined-policy POLICY_TEMPLATE_DRUPAL_8 { }\nasm predefined-policy POLICY_TEMPLATE_FUNDAMENTAL { }\nasm predefined-policy POLICY_TEMPLATE_JOOMLA { }\nasm predefined-policy POLICY_TEMPLATE_LOTUSDOMINO_6_5_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_LOTUSDOMINO_6_5_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_ORACLE_10G_PORTAL_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_ORACLE_10G_PORTAL_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_ORACLE_APPLICATIONS_11I_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_ORACLE_APPLICATIONS_11I_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2003_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2003_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2003_WITH_ACTIVESYNC_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2003_WITH_ACTIVESYNC_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2007_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2007_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2007_WITH_ACTIVESYNC_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2007_WITH_ACTIVESYNC_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2010_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2010_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2016 { }\nasm predefined-policy POLICY_TEMPLATE_PASSIVE { }\nasm predefined-policy POLICY_TEMPLATE_PEOPLESOFT_PORTAL_9_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_PEOPLESOFT_PORTAL_9_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_RAPID_DEPLOYMENT { }\nasm predefined-policy POLICY_TEMPLATE_SAP_NETWEAVER { }\nasm predefined-policy POLICY_TEMPLATE_SAP_NETWEAVER_7_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_SAP_NETWEAVER_7_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_SHAREPOINT { }\nasm predefined-policy POLICY_TEMPLATE_SHAREPOINT_2003_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_SHAREPOINT_2003_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_SHAREPOINT_2007_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_SHAREPOINT_2007_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_SHAREPOINT_2010_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_SHAREPOINT_2010_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_SHAREPOINT_2016 { }\nasm predefined-policy POLICY_TEMPLATE_VULNERABILITY_ASSESSMENT { }\nasm predefined-policy POLICY_TEMPLATE_WORDPRESS { }\nasm predefined-policy POLICY_TEMPLATE_WORDPRESS_4_9 { }\nauth apm-auth /Common/system-auth {\n profile-access /Common/adminAuth_local_aPolicy\n}\nauth radius /Common/system-auth {\n servers {\n /Common/system_auth_name1\n }\n}\nauth radius-server /Common/system_auth_name1 {\n secret $M$mn$9uYx+bTjLD8YSGZAUEfFwHvpSDwZsL25kZxdn5NZmCI=\n server 10.200.244.1\n}\nauth remote-user {\n default-role admin\n remote-console-access tmsh\n}\nauth source {\n fallback true\n}\nilx global-settings {\n debug-port-blacklist { 47019 54321 60000 }\n}\nltm default-node-monitor {\n rule none\n}\nltm node /Common/10.200.244.15 {\n address 10.200.244.15\n description bigiq01\n}\nltm node /Common/10.10.10.1 {\n address 10.10.10.1\n}\nltm node /Common/192.168.200.42 {\n address 192.168.200.42\n}\nltm node /Common/api.chucknorris.io {\n fqdn {\n address-family all\n autopopulate enabled\n name api.chucknorris.io\n }\n}\nltm node /Common/app1_Node1 {\n address 192.168.1.22\n}\nltm node /Common/app1_Node2 {\n address 192.168.1.23\n}\nltm node /Common/app2_Node1 {\n address 192.168.2.22\n description app2_Node1\n}\nltm node /Common/app2_Node2 {\n address 192.168.2.23\n description app2_Node2\n}\nltm node /Common/app3_Node1 {\n address 192.168.1.52\n}\nltm node /Common/app3_Node2 {\n address 192.168.1.53\n}\nltm node /Common/app5_Node5 {\n address 192.168.10.23\n}\nltm policy /Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs {\n controls { asm }\n requires { http }\n rules {\n default {\n actions {\n 1 {\n asm\n enable\n policy /Common/basic_policy_1\n }\n }\n ordinal 1\n }\n }\n strategy /Common/first-match\n}\nltm policy /Common/app3_ltm_policy {\n rules {\n global_rule_1 { }\n }\n strategy /Common/first-match\n}\nltm policy /Common/app4_ltPolicy {\n controls { forwarding }\n description \"testing for pool extraction function\"\n requires { http }\n rules {\n css_pool_rule {\n actions {\n 0 {\n forward\n select\n pool /Common/css_pool\n }\n }\n conditions {\n 0 {\n http-uri\n scheme\n ends-with\n values { .css }\n }\n }\n }\n jpg_pool_rule {\n actions {\n 0 {\n forward\n select\n pool /Common/jpg.pool\n }\n }\n conditions {\n 0 {\n http-uri\n query-string\n ends-with\n values { .jpg }\n }\n }\n ordinal 1\n }\n js_pool_rule {\n actions {\n 0 {\n forward\n select\n pool /Common/js.io_t80_pool\n }\n }\n conditions {\n 0 {\n http-uri\n scheme\n ends-with\n values { .js }\n }\n }\n ordinal 2\n }\n txt_node {\n actions {\n 0 {\n forward\n select\n node 10.10.10.1\n }\n }\n conditions {\n 0 {\n http-uri\n scheme\n ends-with\n values { .txt }\n }\n }\n ordinal 3\n }\n }\n strategy /Common/first-match\n}\nltm pool /Common/bigiq.benlab.io_t443_pool {\n members {\n /Common/10.200.244.15:443 {\n address 10.200.244.15\n }\n }\n monitor /Common/https_head_f5\n}\nltm pool /Common/app1_t80_pool {\n members {\n /Common/app1_Node1:80 {\n address 192.168.1.22\n }\n /Common/app1_Node2:80 {\n address 192.168.1.23\n }\n }\n monitor /Common/http and /Common/tcp\n}\nltm pool /Common/app2_t80_pool {\n load-balancing-mode least-connections-member\n members {\n /Common/app2_Node1:80 {\n address 192.168.2.22\n }\n /Common/app2_Node2:80 {\n address 192.168.2.23\n }\n }\n monitor /Common/global_http_monitor and /Common/global_https_monitor\n}\nltm pool /Common/app3_t8443_pool {\n load-balancing-mode least-connections-member\n members {\n /Common/app3_Node1:8443 {\n address 192.168.1.52\n }\n /Common/app3_Node2:8443 {\n address 192.168.1.53\n }\n }\n monitor /Common/app1_tcp_half_open_quick_monitor and /Common/http_head_f5 and /Common/http2_head_f5 and /Common/http and /Common/tcp_half_open\n}\nltm pool /Common/app4_pool {\n members {\n /Common/api.chucknorris.io:443 {\n fqdn {\n autopopulate enabled\n name api.chucknorris.io\n }\n }\n }\n}\nltm pool /Common/css_pool { }\nltm pool /Common/jpg.pool { }\nltm pool /Common/js.io_t80_pool { }\nltm rule /Common/app3_rule {\n#comment\n\nwhen HTTP_REQUEST {\n # add more here\n}\n}\nltm rule /Common/app3_rule2 {\n#comment\n\nwhen HTTP_REQUEST {\n # ben test 444\n}\n}\nltm rule /Common/app3_rule3 {\n# app3_rule3 header\n\nwhen SERVERSSL_DATA {\n # got something from server\n}\n}\nltm rule /Common/app4_pool_rule {\n### test rule for corkscrew\n\n # \n\nwhen HTTP_REQUEST {\n\n # pool reference by variable declaration\n set html-pool web1Pool\n\n if { [HTTP::path] ends_with \"*.css\" }{\n\n # regular pool refernce\n pool css_pool\n\n } elseif { [HTTP::path] ends_with \"*.jpg\" }{\n\n # pool member refernce\n pool jpg.pool member 10.10.10.1 80\n\n } elseif { [HTTP::path] ends_with \"*.js\" }{\n\n # another pool reference with special characters\n pool js.io_t80_pool \n\n } elseif { [HTTP::path] ends_with \"*.xx\" }{\n\n # pool reference not in tmos config\n ### *** seems the gui won't let you attach an irule to a vs with a pool that doesn't exist\n #pool missing_pool\n\n } elseif { [HTTP::path] ends_with \"*.txt\" }{\n\n # node reference\n node 10.10.10.1 80\n\n } else {\n\n # pool referenced by variable\n pool $html-pool\n\n }\n}\n}\nltm rule /Common/app4_pool_rule2 {\n\n}\nltm snat-translation /Common/192.168.1.51 {\n address 192.168.1.51\n inherited-traffic-group true\n traffic-group /Common/traffic-group-1\n}\nltm snatpool /Common/app3_snat_pool {\n members {\n /Common/192.168.1.51\n }\n}\nltm virtual /Common/app1_t80_vs {\n creation-time 2020-09-17:08:50:22\n destination /Common/192.168.1.21:80\n ip-protocol tcp\n last-modified-time 2020-09-17:08:51:07\n mask 255.255.255.255\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/_sys_https_redirect\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address enabled\n translate-port enabled\n}\nltm virtual /Common/app1_t443_vs {\n destination /Common/192.168.1.21:443\n ip-protocol tcp\n last-modified-time 2020-09-18:10:05:54\n mask 255.255.255.255\n pool /Common/app1_t80_pool\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n}\nltm virtual /Common/app2_t80_vs {\n creation-time 2020-09-17:08:50:22\n destination /Common/192.168.2.21:80\n ip-protocol tcp\n last-modified-time 2020-09-17:08:51:07\n mask 255.255.255.255\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/_sys_https_redirect\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address enabled\n translate-port enabled\n}\nltm virtual /Common/bigiq.benlab.io_t443_vs {\n creation-time 2019-10-01:17:59:21\n description \"not flowing traffic, just used for GTM\"\n destination /Common/10.200.244.15:443\n ip-protocol tcp\n last-modified-time 2019-10-01:18:11:46\n mask 255.255.255.255\n policies {\n /Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs { }\n }\n pool /Common/bigiq.benlab.io_t443_pool\n profiles {\n /Common/ASM_basic_policy_1 { }\n /Common/f5-tcp-progressive { }\n /Common/http { }\n /Common/websecurity { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n vlans {\n /Common/vlan255_f5peer\n }\n vlans-enabled\n}\nltm virtual /Common/app2_t443_vs {\n destination /Common/192.168.2.21:443\n ip-protocol tcp\n last-modified-time 2020-09-18:10:05:47\n mask 255.255.255.255\n pool /Common/app2_t80_pool\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n}\nltm virtual /Common/app3_t8443_vs {\n destination /Common/192.168.1.51:8443\n fallback-persistence /Common/app3_srcAddr_persist\n ip-protocol tcp\n last-modified-time 2020-09-17:12:45:40\n mask 255.255.255.255\n persist {\n /Common/app3_cookie {\n default yes\n }\n }\n policies {\n /Common/app3_ltm_policy { }\n }\n pool /Common/app3_t8443_pool\n profiles {\n /Common/app3_clientssl {\n context clientside\n }\n /Common/app3_serverssl {\n context serverside\n }\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/app3_rule\n /Common/app3_rule2\n /Common/app3_rule3\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n pool /Common/app3_snat_pool\n type snat\n }\n translate-address enabled\n translate-port enabled\n}\nltm virtual /Common/app4_t80_vs {\n description \"test pool references in irule extration and ltp\"\n destination /Common/192.168.2.25:80\n ip-protocol tcp\n last-modified-time 2020-10-07:07:28:35\n mask 255.255.255.255\n policies {\n /Common/app4_ltPolicy { }\n }\n pool /Common/app4_pool\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/_sys_https_redirect\n /Common/app4_pool_rule\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address enabled\n translate-port enabled\n}\nltm virtual /Common/forwarder_net_0.0.0.0 {\n destination /Common/0.0.0.0:0\n ip-forward\n mask any\n profiles {\n /Common/fastl4_loose { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address disabled\n translate-port disabled\n}\nltm virtual-address /Common/0.0.0.0 {\n address any\n arp disabled\n icmp-echo disabled\n mask any\n traffic-group /Common/traffic-group-1\n}\nltm virtual-address /Common/192.168.1.21 {\n address 192.168.1.21\n arp enabled\n mask 255.255.255.255\n traffic-group /Common/traffic-group-1\n}\nltm virtual-address /Common/192.168.1.51 {\n address 192.168.1.51\n arp enabled\n mask 255.255.255.255\n traffic-group /Common/traffic-group-1\n}\nltm virtual-address /Common/192.168.2.21 {\n address 192.168.2.21\n arp enabled\n mask 255.255.255.255\n traffic-group /Common/traffic-group-1\n}\nltm virtual-address /Common/192.168.2.25 {\n address 192.168.2.25\n arp enabled\n mask 255.255.255.255\n traffic-group /Common/traffic-group-1\n}\nltm auth radius-server /Common/system_auth_name1 {\n secret $M$mn$9uYx+bTjLD8YSGZAUEfFwHvpSDwZsL25kZxdn5NZmCI=\n server 10.200.244.1\n}\nltm classification auto-update settings {\n auto-update-interval weekly\n enabled no\n}\nltm data-group internal /Common/____appsvcs_declaration-1601897418975 {\n description \"f5 AS3 declaration (see info in record 0)\"\n records {\n 0 {\n data \"date^2020-10-05T11:30:18.975Z|id^1601897415002|tenants^|blocks^1\"\n }\n 1 {\n data eNoNzL0OwyAMBOB38dwgm5TmZ6vatVvUoRsCS0GCEAHtEuXd6/G+O90BLtpaYYb78wEXqG7lZN9casibaK9QoXjwEuiGNE7DlQyiFvzu3jZ+Zc9SVo7sWvixFC5vreQotwfY4lbRJSSuzaZdpho1doQdmoVo7nGmUU2D+cB5/gEMbipT\n }\n }\n type integer\n}\nltm data-group internal /Common/____appsvcs_declaration-1601900242421 {\n description \"f5 AS3 declaration (see info in record 0)\"\n records {\n 0 {\n data \"date^2020-10-05T12:17:22.421Z|id^autogen_6c3dbac3-4624-47e2-8ed7-3932d3c1d9b2|tenants^foo|blocks^1\"\n }\n 1 {\n data eNp1kM1uwjAQhN/F5ySynQAlN1SuSEilPbRCkbEXsOQ/2Q4XlHfvmlYUVa2PM+Odb/dKpBEpkZ6s1s+kIkmewYo3iEl7h2rbcNpQNI7ek/56T+/ACZdRV3AUo8npdb0dZvgeQ6sQjJYil1EVyWCDERnQGFUoXRAvWsJGaPf46+VLHnAihi465lGYlVIRUgIMfBC25M2MNrxhZH9PbH3MpC8IFQneG5z0m23Yos7IVP3nPFAUAeutdzr7eKvV0oZSaMEe4CZdbztA/JuOl/D3kj90036akEArLBFj9idww1y26iBkW3dz3tXdAnj9BGpRt8uWq1YytTxwhBmDwvttvCo3TGBAZn0BNKR3OXqTygIiyjOqO20hZYHEPeGU05rRms52jPds0XPedJy9k2n6BPXOoeQ=\n }\n }\n type integer\n}\nltm data-group internal /Common/____appsvcs_declaration-1601900272772 {\n description \"f5 AS3 declaration (see info in record 0)\"\n records {\n 0 {\n data \"date^2020-10-05T12:17:52.772Z|id^1601900269131|tenants^|blocks^1\"\n }\n 1 {\n data eNoNzDELwyAQBeD/cnMjd4ZE4lbatVvo0E30IILGoLZLyH/vje97j3eCT641sHB/PuAGzW+c3Ztri2UXHRUqFI9BAs1IC6KeFxpJ8HsE1/lVAkvZOLHv8cdS+LL3WpLcnuCq30TXmLl1lw+ZatQ4EA44raQtGTtpZYz+wHX9AQqTKk0=\n }\n }\n type integer\n}\nltm data-group internal /Common/____appsvcs_declaration-1602008840967 {\n description \"f5 AS3 declaration (see info in record 0)\"\n records {\n 0 {\n data \"date^2020-10-06T18:27:20.967Z|id^autogen_411122fd-f96d-45e5-9f42-5231b42fb590|tenants^foo|blocks^1\"\n }\n 1 {\n data eNp1UctuwjAQ/Befkyg2CTS5oXJFQirtoRWKjL0BS37Jdrig/HvXtKKoan2cGe/M7F6J0DxG0pP15pkUJIozGP4GISpnEV1UrK5qJEbnSH+9q/dguU2ISxj5pFN83eyGFt+jaO29VoKnPKogCYzXPAESk/TZC8JFCdhyZR9/vXzBA05E0UWFNHG9ljJAjICCD0I7VrV1xSpKDnfFzoVE+hyhIN45jZN+Zxt2iFMyF/8xDykygPbGWZVcuNkqYXw2NGCOcIOutw4Q/k7Hsvi75E+6+TDPmEBJNOFTciewQ0MpZWyU5dgtZdm00Jbd2LCyZQt6bNh4bLt8g8lL3N/WybzDCBpEUhdAQjibgtMxF+BBnBHdKwMxcUzcE1azuqR1WS/39Klnqx5v2i1X72SePwG436Fo\n }\n }\n type integer\n}\nltm data-group internal /Common/__appsvcs_update {\n type string\n}\nltm data-group internal /Common/appsvcs/dataStore {\n records {\n as3_async_records0 {\n data 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\n }\n }\n type string\n}\nltm data-group internal /Common/atgTeem/datastore {\n type string\n}\nltm data-group internal /Common/f5-appsvcs-templates/config {\n records {\n config0 {\n data eNqrVkpJzUktSU0JSc0tyEksSQ1OLSlWsopWKkktLlGKrQUAx+YL5Q==\n }\n }\n type string\n}\nltm data-group internal /Common/f5-appsvcs-templates/dataStore {\n records {\n bigip-fast-templates0 {\n data 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\n }\n examples0 {\n data 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\n }\n goodFastTemplates0 {\n data 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\n }\n }\n type string\n}\nltm monitor dns /Common/dubNameTst1_monitor {\n accept-rcode no-error\n adaptive disabled\n answer-contains query-type\n defaults-from /Common/dns\n interval 5\n qname query.test.com\n qtype a\n recv none\n time-until-up 0\n timeout 16\n}\nltm monitor http /Common/global_http_monitor {\n adaptive disabled\n defaults-from /Common/http\n interval 5\n ip-dscp 0\n recv \"ok 200\"\n recv-disable none\n send \"GET /anywebsite.com\\r\\n\"\n time-until-up 0\n timeout 16\n}\nltm monitor https /Common/global_https_monitor {\n adaptive disabled\n defaults-from /Common/https\n interval 5\n ip-dscp 0\n recv \"201 continue\"\n recv-disable none\n send \"GET /any-secure-website.com\\r\\n\"\n time-until-up 0\n timeout 16\n}\nltm monitor tcp /Common/test_tcp_monitor {\n adaptive disabled\n defaults-from /Common/tcp\n interval 5\n ip-dscp 0\n recv \"receive a tcp string\"\n recv-disable none\n send \"send a tcp string\"\n time-until-up 0\n timeout 16\n}\nltm monitor tcp-half-open /Common/app1_tcp_half_open_quick_monitor {\n defaults-from /Common/tcp_half_open\n destination *:*\n interval 1\n time-until-up 0\n timeout 4\n}\nltm monitor udp /Common/test_udp_monitor {\n adaptive disabled\n debug no\n defaults-from /Common/udp\n interval 5\n recv recieve-what?\n recv-disable none\n send \"default send string\"\n time-until-up 0\n timeout 16\n}\nltm persistence cookie /Common/app3_cookie {\n always-send disabled\n app-service none\n cookie-encryption disabled\n cookie-name app3CustomeCookie\n defaults-from /Common/cookie\n encrypt-cookie-poolname disabled\n expiration 0\n httponly enabled\n method insert\n override-connection-limit disabled\n secure enabled\n}\nltm persistence source-addr /Common/app3_srcAddr_persist {\n app-service none\n defaults-from /Common/source_addr\n hash-algorithm default\n map-proxies enabled\n mask none\n match-across-pools disabled\n match-across-services disabled\n match-across-virtuals disabled\n override-connection-limit disabled\n timeout 180\n}\nltm profile client-ssl /Common/app2_clientssl {\n app-service none\n cert-key-chain {\n default {\n cert /Common/default.crt\n key /Common/default.key\n }\n }\n defaults-from /Common/clientssl\n inherit-ca-certkeychain true\n inherit-certkeychain true\n}\nltm profile client-ssl /Common/app3_clientssl {\n app-service none\n cert-key-chain {\n default {\n cert /Common/default.crt\n key /Common/default.key\n }\n }\n defaults-from /Common/clientssl\n inherit-ca-certkeychain true\n inherit-certkeychain true\n}\nltm profile client-ssl /Common/test1 {\n app-service none\n cert-key-chain {\n default {\n cert /Common/default.crt\n key /Common/default.key\n }\n }\n defaults-from /Common/clientssl\n inherit-ca-certkeychain true\n inherit-certkeychain true\n}\nltm profile fastl4 /Common/fastl4_loose {\n app-service none\n loose-close enabled\n loose-initialization enabled\n reset-on-timeout disabled\n syn-cookie-enable disabled\n}\nltm profile ftp /Common/global_http_monitor {\n app-service none\n defaults-from /Common/ftp\n}\nltm profile http /Common/dubNameTst1_profile {\n app-service none\n defaults-from /Common/http\n proxy-type reverse\n}\nltm profile http-compression /Common/dubName.Tst1_profile {\n app-service none\n defaults-from /Common/httpcompression\n}\nltm profile server-ssl /Common/app3_serverssl {\n app-service none\n defaults-from /Common/serverssl\n}\nltm profile server-ssl /Common/test2 {\n app-service none\n defaults-from /Common/serverssl\n}\nnet dns-resolver /Common/f5-aws-dns {\n forward-zones {\n amazonaws.com {\n nameservers {\n 8.8.8.8:53 { }\n }\n }\n idservice.net {\n nameservers {\n 8.8.8.8:53 { }\n }\n }\n }\n route-domain /Common/0\n}\nnet ipsec ike-daemon /Common/ikedaemon {\n log-publisher /Common/default-ipsec-log-publisher\n}\npem global-settings analytics { }\npem global-settings gx { }\npem global-settings policy { }\nsecurity dos ipv6-ext-hdr /Common/dos-ipv6-ext-hdr {\n frame-types { auth dstopt esp frag hbh mobility route }\n}\nsecurity dos udp-portlist /Common/dos-udp-portlist {\n list-type exclude-listed-ports\n}\nsecurity firewall config-change-log {\n log-publisher /Common/local-db-publisher\n}\nsecurity protocol-inspection compliance-map /Common/map_10426 {\n insp-id 10426\n key-type int\n value-type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/allowed_list {\n insp-id 10229\n type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/allowed_list {\n insp-id 10430\n type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/allowed_list {\n insp-id 10431\n type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/allowed_list {\n insp-id 10232\n type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/argument_len_max {\n insp-id 10905\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/command_argument_len_max {\n insp-id 10609\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/command_len_max {\n insp-id 10905\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/command_len_max {\n insp-id 10707\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/command_len_max {\n insp-id 10609\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/command_parameter_len_max {\n insp-id 10707\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/disallowed_list {\n insp-id 10229\n type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/disallowed_list {\n insp-id 10430\n type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/disallowed_list {\n insp-id 10431\n type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/disallowed_list {\n insp-id 10232\n type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/error_message_max {\n insp-id 10102\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/file_name_max {\n insp-id 10102\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/file_type_max {\n insp-id 10102\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/header_name_len_max {\n insp-id 11016\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/header_name_len_max {\n insp-id 11223\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/header_value_len_max {\n insp-id 11016\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/header_value_len_max {\n insp-id 11223\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/method_len_max {\n insp-id 11016\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/method_len_max {\n insp-id 11223\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/option_name_max {\n insp-id 10102\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/option_value_max {\n insp-id 10102\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/response_argument_len_max {\n insp-id 10609\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/response_code_len_max {\n insp-id 10609\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/response_parameter_len_max {\n insp-id 10707\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/status_code_len_max {\n insp-id 11016\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/status_code_len_max {\n insp-id 11223\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/status_len_max {\n insp-id 10707\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/status_reason_len_max {\n insp-id 11016\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/status_reason_len_max {\n insp-id 11223\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/tag_len_max {\n insp-id 10905\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/uri_len_max {\n insp-id 11016\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/uri_len_max {\n insp-id 11223\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/version_len_max {\n insp-id 11016\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/version_len_max {\n insp-id 11223\n type int\n}\nsecurity scrubber profile /Common/scrubber-profile-default {\n advertisement-ttl 300\n}\nsys compatibility-level {\n level 0\n}\nsys management-ovsdb {\n bfd-disabled\n bfd-route-domain none\n ca-cert-file none\n cert-file none\n cert-key-file none\n disabled\n flooding-type replicator\n log-level info\n logical-routing-type none\n tunnel-maintenance-mode active\n}\nsys diags ihealth {\n expiration 30\n no-ihealth false\n options none\n password none\n user none\n}\nsys ecm cloud-provider /Common/aws-ec2 {\n description \"The aws-ec2 parameters\"\n property-template {\n account { }\n availability-zone {\n valid-values { a b c d }\n }\n instance-type {\n valid-values { t2.micro t2.small t2.medium m3.medium m3.large m3.xlarge m3.2xlarge c3.large c3.xlarge c3.2xlarge c3.4xlarge c3.8xlarge r3.large r3.xlarge r3.2xlarge r3.4xlarge r3.8xlarge }\n }\n region {\n valid-values { us-east-1 us-west-1 us-west-2 sa-east-1 eu-west-1 eu-central-1 ap-southeast-2 ap-southeast-1 ap-northeast-1 }\n }\n }\n}\nsys ecm cloud-provider /Common/dnet {\n description \"The dnet parameters\"\n}\nsys ecm cloud-provider /Common/vsphere {\n description \"The vsphere parameters\"\n property-template {\n cloud-host-ip { }\n dhcp-network-name { }\n end-point-url { }\n node-name { }\n }\n}\nsys file ssl-key /Common/f5_api_com.key {\n cache-path /config/filestore/files_d/Common_d/certificate_key_d/:Common:f5_api_com.key_63136_1\n passphrase $M$dw$gJ3HaeiGt0skpPsA6hli9PsO/8yo5M6FkI1CHOPiN4GgC/h5Tln6v01SC2727mtleKP9Hw/Vnwio8eOiXi4umiV+IidOxMwtZinL8WYrqX0=\n revision 1\n source-path file:///config/ssl/ssl.key/f5_api_com.key\n}\nsys software update {\n auto-check enabled\n auto-phonehome disabled\n frequency weekly\n}\nwom endpoint-discovery { }\n" + "size": 82812, + "content": "#TMSH-VERSION: 15.1.8.2\n\nanalytics global-settings { }\napm aaa localdb /Common/localDB { }\napm epsec epsec-package /Common/epsec-1.0.0-892.0.iso {\n cache-path /config/filestore/files_d/Common_d/epsec_package_d/:Common:epsec-1.0.0-892.0.iso_65040_1\n oesis-version 4.3.1158.0\n revision 1\n version 1.0.0-892.0\n}\napm policy access-policy /Common/adminAuth_local_aPolicy {\n default-ending /Common/adminAuth_local_aPolicy_end_deny\n items {\n /Common/adminAuth_local_aPolicy_act_localdb_auth { }\n /Common/adminAuth_local_aPolicy_act_logon_page { }\n /Common/adminAuth_local_aPolicy_end_allow { }\n /Common/adminAuth_local_aPolicy_end_deny { }\n /Common/adminAuth_local_aPolicy_ent { }\n }\n start-item /Common/adminAuth_local_aPolicy_ent\n}\napm policy customization-group /Common/adminAuth_local_aPolicy_act_logon_page_ag {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_act_logon_page_ag_65223_2\n revision 2\n source /Common/modern\n}\napm policy customization-group /Common/adminAuth_local_aPolicy_end_deny_ag {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_end_deny_ag_65134_1\n revision 1\n source /Common/modern\n type logout\n}\napm policy customization-group /Common/adminAuth_local_aPolicy_eps {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_eps_65170_1\n revision 1\n source /Common/modern\n type eps\n}\napm policy customization-group /Common/adminAuth_local_aPolicy_errormap {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_errormap_65167_1\n revision 1\n source /Common/modern\n type errormap\n}\napm policy customization-group /Common/adminAuth_local_aPolicy_framework_installation {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_framework_installation_65173_1\n revision 1\n source /Common/modern\n type framework-installation\n}\napm policy customization-group /Common/adminAuth_local_aPolicy_general_ui {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_general_ui_65124_1\n revision 1\n source /Common/modern\n type general-ui\n}\napm policy customization-group /Common/adminAuth_local_aPolicy_logout {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:adminAuth_local_aPolicy_logout_65164_1\n revision 1\n source /Common/modern\n type logout\n}\napm policy customization-source /Common/modern { }\napm policy customization-source /Common/standard { }\napm policy policy-item /Common/adminAuth_local_aPolicy_act_localdb_auth {\n agents {\n /Common/adminAuth_local_aPolicy_act_localdb_auth_ag {\n type aaa-localdb\n }\n }\n caption \"LocalDB Auth\"\n color 1\n item-type action\n rules {\n {\n caption Successful\n expression \"expr {[mcget {session.localdb.last.result}] == 1}\"\n next-item /Common/adminAuth_local_aPolicy_end_allow\n }\n {\n caption \"Locked User Out\"\n expression \"expr {[mcget {session.localdb.last.result}] == 2}\"\n next-item /Common/adminAuth_local_aPolicy_end_deny\n }\n {\n caption fallback\n next-item /Common/adminAuth_local_aPolicy_end_deny\n }\n }\n}\napm policy policy-item /Common/adminAuth_local_aPolicy_act_logon_page {\n agents {\n /Common/adminAuth_local_aPolicy_act_logon_page_ag {\n type logon-page\n }\n }\n caption \"Logon Page\"\n color 1\n item-type action\n rules {\n {\n caption fallback\n next-item /Common/adminAuth_local_aPolicy_act_localdb_auth\n }\n }\n}\napm policy policy-item /Common/adminAuth_local_aPolicy_end_allow {\n agents {\n /Common/adminAuth_local_aPolicy_end_allow_ag {\n type ending-allow\n }\n }\n caption Allow\n color 1\n item-type ending\n}\napm policy policy-item /Common/adminAuth_local_aPolicy_end_deny {\n agents {\n /Common/adminAuth_local_aPolicy_end_deny_ag {\n type ending-deny\n }\n }\n caption Deny\n color 2\n item-type ending\n}\napm policy policy-item /Common/adminAuth_local_aPolicy_ent {\n caption Start\n color 1\n rules {\n {\n caption fallback\n next-item /Common/adminAuth_local_aPolicy_act_logon_page\n }\n }\n}\napm policy agent aaa-localdb /Common/adminAuth_local_aPolicy_act_localdb_auth_ag {\n localdb-instance /Common/localDB\n}\napm policy agent ending-allow /Common/adminAuth_local_aPolicy_end_allow_ag { }\napm policy agent ending-deny /Common/adminAuth_local_aPolicy_end_deny_ag {\n customization-group /Common/adminAuth_local_aPolicy_end_deny_ag\n}\napm policy agent logon-page /Common/adminAuth_local_aPolicy_act_logon_page_ag {\n customization-group /Common/adminAuth_local_aPolicy_act_logon_page_ag\n}\napm profile access /Common/adminAuth_local_aPolicy {\n accept-languages { en }\n access-policy /Common/adminAuth_local_aPolicy\n app-service none\n customization-group /Common/adminAuth_local_aPolicy_logout\n customization-key 22ac0aeb0346bcebf5e867279edf9d7b\n default-language en\n domain-cookie none\n eps-group /Common/adminAuth_local_aPolicy_eps\n errormap-group /Common/adminAuth_local_aPolicy_errormap\n exchange-profile none\n framework-installation-group /Common/adminAuth_local_aPolicy_framework_installation\n general-ui-group /Common/adminAuth_local_aPolicy_general_ui\n generation 4\n generation-action noop\n httponly-cookie false\n log-settings {\n /Common/default-log-setting\n }\n logout-uri-include none\n logout-uri-timeout 5\n modified-since-last-policy-sync true\n named-scope none\n persistent-cookie false\n scope profile\n secure-cookie true\n sso-name none\n type system-authentication\n user-identity-method http\n}\napm report default-report {\n report-name sessionReports/sessionSummary\n user /Common/admin\n}\napm aaa localdb /Common/localDB { }\napm epsec epsec-package /Common/epsec-1.0.0-846.0.iso {\n cache-path /config/filestore/files_d/Common_d/epsec_package_d/:Common:epsec-1.0.0-846.0.iso_62973_1\n oesis-version 4.3.716.0\n revision 1\n version 1.0.0-846.0\n}\napm epsec epsec-package /Common/epsec-1.0.0-888.0.iso {\n cache-path /config/filestore/files_d/Common_d/epsec_package_d/:Common:epsec-1.0.0-888.0.iso_66742_1\n oesis-version 4.3.1103.0\n revision 1\n version 1.0.0-888.0\n}\napm epsec epsec-package /Common/epsec-1.0.0-1372.0.iso {\n cache-path /config/filestore/files_d/Common_d/epsec_package_d/:Common:epsec-1.0.0-1372.0.iso_68987_1\n oesis-version 4.3.3348.0\n revision 1\n version 1.0.0-1372.0\n}\napm policy access-policy /Common/radiusServer {\n default-ending /Common/radiusServer_end_deny\n items {\n /Common/radiusServer_act_radius_auth { }\n /Common/radiusServer_end_allow { }\n /Common/radiusServer_end_deny { }\n /Common/radiusServer_ent { }\n }\n start-item /Common/radiusServer_ent\n}\napm policy access-policy /Common/sslvpn_network_access {\n default-ending /Common/sslvpn_network_access_end_deny\n items {\n /Common/sslvpn_network_access_act_full_resource_assign { }\n /Common/sslvpn_network_access_act_localdb_auth { }\n /Common/sslvpn_network_access_act_logon_page { }\n /Common/sslvpn_network_access_end_allow { }\n /Common/sslvpn_network_access_end_deny { }\n /Common/sslvpn_network_access_ent { }\n }\n start-item /Common/sslvpn_network_access_ent\n}\napm policy customization-group /Common/radiusServer_end_deny_ag {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:radiusServer_end_deny_ag_216201_1\n revision 1\n source /Common/standard\n type logout\n}\napm policy customization-group /Common/radiusServer_eps {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:radiusServer_eps_216183_1\n revision 1\n source /Common/standard\n type eps\n}\napm policy customization-group /Common/radiusServer_errormap {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:radiusServer_errormap_216181_1\n revision 1\n source /Common/standard\n type errormap\n}\napm policy customization-group /Common/radiusServer_frameworkinstallation {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:radiusServer_frameworkinstallation_216185_1\n revision 1\n source /Common/standard\n type framework-installation\n}\napm policy customization-group /Common/radiusServer_general_ui {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:radiusServer_general_ui_216187_1\n revision 1\n source /Common/standard\n type general-ui\n}\napm policy customization-group /Common/radiusServer_logout {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:radiusServer_logout_216179_1\n revision 1\n source /Common/standard\n type logout\n}\napm policy customization-group /Common/ssl_webtop_customization {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:ssl_webtop_customization_103262_1\n revision 1\n source /Common/standard\n type webtop\n}\napm policy customization-group /Common/sslvpn_access_list_resource_network_access_customization {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:sslvpn_access_list_resource_network_access_customization_103276_1\n revision 1\n source /Common/standard\n type resource-network-access\n}\napm policy customization-group /Common/sslvpn_connectivity_profile_secure_access_client_customization {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:sslvpn_connectivity_profile_secure_access_client_customization_103292_1\n revision 1\n source /Common/standard\n type secure-access-client\n}\napm policy customization-group /Common/sslvpn_network_access_act_logon_page_ag {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:sslvpn_network_access_act_logon_page_ag_103365_2\n revision 2\n source /Common/standard\n}\napm policy customization-group /Common/sslvpn_network_access_end_deny_ag {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:sslvpn_network_access_end_deny_ag_103326_1\n revision 1\n source /Common/standard\n type logout\n}\napm policy customization-group /Common/sslvpn_network_access_eps {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:sslvpn_network_access_eps_103308_1\n revision 1\n source /Common/standard\n type eps\n}\napm policy customization-group /Common/sslvpn_network_access_errormap {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:sslvpn_network_access_errormap_103306_1\n revision 1\n source /Common/standard\n type errormap\n}\napm policy customization-group /Common/sslvpn_network_access_frameworkinstallation {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:sslvpn_network_access_frameworkinstallation_103310_1\n revision 1\n source /Common/standard\n type framework-installation\n}\napm policy customization-group /Common/sslvpn_network_access_general_ui {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:sslvpn_network_access_general_ui_103312_1\n revision 1\n source /Common/standard\n type general-ui\n}\napm policy customization-group /Common/sslvpn_network_access_logout {\n cache-path /config/filestore/files_d/Common_d/customization_group_d/:Common:sslvpn_network_access_logout_103304_1\n revision 1\n source /Common/standard\n type logout\n}\napm policy customization-source /Common/modern { }\napm policy customization-source /Common/standard { }\napm policy policy-item /Common/radiusServer_act_radius_auth {\n agents {\n /Common/radiusServer_act_radius_auth_ag {\n type aaa-radius\n }\n }\n caption \"RADIUS Auth\"\n color 1\n item-type action\n rules {\n {\n caption Successful\n expression \"expr {[mcget {session.radius.last.result}] == 1}\"\n next-item /Common/radiusServer_end_deny\n }\n {\n caption fallback\n next-item /Common/radiusServer_end_deny\n }\n }\n}\napm policy policy-item /Common/radiusServer_end_allow {\n agents {\n /Common/radiusServer_end_allow_ag {\n type ending-allow\n }\n }\n caption Allow\n color 1\n item-type ending\n}\napm policy policy-item /Common/radiusServer_end_deny {\n agents {\n /Common/radiusServer_end_deny_ag {\n type ending-deny\n }\n }\n caption Deny\n color 2\n item-type ending\n}\napm policy policy-item /Common/radiusServer_ent {\n caption Start\n color 1\n rules {\n {\n caption fallback\n next-item /Common/radiusServer_act_radius_auth\n }\n }\n}\napm policy policy-item /Common/sslvpn_network_access_act_full_resource_assign {\n agents {\n /Common/sslvpn_network_access_act_full_resource_assign_ag {\n type resource-assign\n }\n }\n caption \"Advanced Resource Assign\"\n color 1\n item-type action\n rules {\n {\n caption fallback\n next-item /Common/sslvpn_network_access_end_allow\n }\n }\n}\napm policy policy-item /Common/sslvpn_network_access_act_localdb_auth {\n agents {\n /Common/sslvpn_network_access_act_localdb_auth_ag {\n type aaa-localdb\n }\n }\n caption \"LocalDB Auth\"\n color 1\n item-type action\n rules {\n {\n caption Successful\n expression \"expr {[mcget {session.localdb.last.result}] == 1}\"\n next-item /Common/sslvpn_network_access_act_full_resource_assign\n }\n {\n caption \"Locked User Out\"\n expression \"expr {[mcget {session.localdb.last.result}] == 2}\"\n next-item /Common/sslvpn_network_access_end_deny\n }\n {\n caption fallback\n next-item /Common/sslvpn_network_access_end_deny\n }\n }\n}\napm policy policy-item /Common/sslvpn_network_access_act_logon_page {\n agents {\n /Common/sslvpn_network_access_act_logon_page_ag {\n type logon-page\n }\n }\n caption \"Logon Page\"\n color 1\n item-type action\n rules {\n {\n caption fallback\n next-item /Common/sslvpn_network_access_act_localdb_auth\n }\n }\n}\napm policy policy-item /Common/sslvpn_network_access_end_allow {\n agents {\n /Common/sslvpn_network_access_end_allow_ag {\n type ending-allow\n }\n }\n caption Allow\n color 1\n item-type ending\n}\napm policy policy-item /Common/sslvpn_network_access_end_deny {\n agents {\n /Common/sslvpn_network_access_end_deny_ag {\n type ending-deny\n }\n }\n caption Deny\n color 2\n item-type ending\n}\napm policy policy-item /Common/sslvpn_network_access_ent {\n caption Start\n color 1\n rules {\n {\n caption fallback\n next-item /Common/sslvpn_network_access_act_logon_page\n }\n }\n}\napm policy agent aaa-localdb /Common/sslvpn_network_access_act_localdb_auth_ag {\n localdb-instance /Common/localDB\n}\napm policy agent aaa-radius /Common/radiusServer_act_radius_auth_ag {\n max-logon-attempt 5\n show-extended-error true\n}\napm policy agent ending-allow /Common/radiusServer_end_allow_ag { }\napm policy agent ending-allow /Common/sslvpn_network_access_end_allow_ag { }\napm policy agent ending-deny /Common/radiusServer_end_deny_ag {\n customization-group /Common/radiusServer_end_deny_ag\n}\napm policy agent ending-deny /Common/sslvpn_network_access_end_deny_ag {\n customization-group /Common/sslvpn_network_access_end_deny_ag\n}\napm policy agent logon-page /Common/sslvpn_network_access_act_logon_page_ag {\n customization-group /Common/sslvpn_network_access_act_logon_page_ag\n}\napm policy agent resource-assign /Common/sslvpn_network_access_act_full_resource_assign_ag {\n rules {\n {\n network-access-resources { /Common/sslvpn_access_list }\n webtop /Common/ssl_webtop\n }\n }\n}\napm profile access /Common/radiusServer {\n accept-languages { en }\n access-policy /Common/radiusServer\n app-service none\n customization-group /Common/radiusServer_logout\n customization-key c649c57de3b753f9764ae640df53f6cb\n default-language en\n domain-cookie none\n eps-group /Common/radiusServer_eps\n errormap-group /Common/radiusServer_errormap\n exchange-profile none\n framework-installation-group /Common/radiusServer_frameworkinstallation\n general-ui-group /Common/radiusServer_general_ui\n generation 1\n generation-action noop\n httponly-cookie false\n log-settings {\n /Common/default-log-setting\n }\n logout-uri-include none\n logout-uri-timeout 5\n modified-since-last-policy-sync true\n oauth-profile none\n persistent-cookie false\n scope profile\n secure-cookie true\n sso-name none\n type all\n user-identity-method http\n}\napm profile access /Common/sslvpn_network_access {\n accept-languages { en es fr }\n access-policy /Common/sslvpn_network_access\n app-service none\n customization-group /Common/sslvpn_network_access_logout\n customization-key c0595c63f1a549ebf25e99e683989536\n default-language en\n domain-cookie none\n eps-group /Common/sslvpn_network_access_eps\n errormap-group /Common/sslvpn_network_access_errormap\n exchange-profile none\n framework-installation-group /Common/sslvpn_network_access_frameworkinstallation\n general-ui-group /Common/sslvpn_network_access_general_ui\n generation 3\n generation-action noop\n httponly-cookie false\n log-settings {\n /Common/default-log-setting\n /Common/default-sslo-log-setting\n }\n logout-uri-include { /some/logout.html }\n logout-uri-timeout 5\n modified-since-last-policy-sync true\n named-scope none\n oauth-profile none\n persistent-cookie false\n scope profile\n secure-cookie true\n sso-name none\n type all\n user-identity-method http\n}\napm profile connectivity /Common/sslvpn_connectivity_profile {\n adaptive-compression enabled\n app-service none\n citrix-client-bundle /Common/default-citrix-client-bundle\n client-policy {\n sslvpn_connectivity_profile_clientPolicy { }\n }\n compress-buffer-size 4096\n compress-cpu-saver true\n compress-cpu-saver-high 90\n compress-cpu-saver-low 75\n compress-gzip-level 6\n compress-gzip-memlevel 8192\n compress-gzip-window-size 16384\n compress-ingress false\n compress-preferred-method zlib\n compression enabled\n compression-codecs { deflate lzo bzip2 }\n customization-group /Common/sslvpn_connectivity_profile_secure_access_client_customization\n defaults-from /Common/connectivity\n deflate-compression-level 1\n description none\n fec-name none\n location-specific false\n tunnel-name /Common/sslvpn_connectivity_profile\n}\napm report default-report {\n report-name sessionReports/sessionSummary\n user /Common/admin\n}\napm resource leasepool /Common/sslvpn_lease_pool {\n members {\n 10.10.10.10-10.10.10.20 { }\n }\n}\napm resource network-access /Common/sslvpn_access_list {\n address-space-include-dns-name { 192.168.200.7 192.168.200.8 }\n address-space-include-subnet {\n {\n subnet 10.200.0.0/16\n }\n {\n subnet 192.168.200.0/24\n }\n }\n customization-group /Common/sslvpn_access_list_resource_network_access_customization\n dns-primary 192.168.200.7\n dns-secondary 192.168.200.8\n dns-suffix benlab.io\n leasepool-name /Common/sslvpn_lease_pool\n split-tunneling true\n}\napm resource webtop /Common/ssl_webtop {\n customization-group /Common/ssl_webtop_customization\n webtop-type full\n}\nasm policy /Common/basic_policy_1 {\n active\n blocking-mode enabled\n description 'some description'\n encoding utf-8\n policy-builder enabled\n policy-template POLICY_TEMPLATE_RAPID_DEPLOYMENT\n policy-type security\n parent-policy some-.other_policy1\n}\nasm predefined-policy POLICY_TEMPLATE_ACTIVESYNC_V1_0_V2_0_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_ACTIVESYNC_V1_0_V2_0_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_API_SECURITY { }\nasm predefined-policy POLICY_TEMPLATE_BEHAVIORAL_WAF { }\nasm predefined-policy POLICY_TEMPLATE_COMPREHENSIVE { }\nasm predefined-policy POLICY_TEMPLATE_DRUPAL { }\nasm predefined-policy POLICY_TEMPLATE_DRUPAL_8 { }\nasm predefined-policy POLICY_TEMPLATE_FUNDAMENTAL { }\nasm predefined-policy POLICY_TEMPLATE_JOOMLA { }\nasm predefined-policy POLICY_TEMPLATE_LOTUSDOMINO_6_5_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_LOTUSDOMINO_6_5_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_ORACLE_10G_PORTAL_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_ORACLE_10G_PORTAL_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_ORACLE_APPLICATIONS_11I_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_ORACLE_APPLICATIONS_11I_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2003_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2003_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2003_WITH_ACTIVESYNC_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2003_WITH_ACTIVESYNC_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2007_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2007_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2007_WITH_ACTIVESYNC_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2007_WITH_ACTIVESYNC_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2010_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2010_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_OWA_EXCHANGE_2016 { }\nasm predefined-policy POLICY_TEMPLATE_PASSIVE { }\nasm predefined-policy POLICY_TEMPLATE_PEOPLESOFT_PORTAL_9_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_PEOPLESOFT_PORTAL_9_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_RAPID_DEPLOYMENT { }\nasm predefined-policy POLICY_TEMPLATE_SAP_NETWEAVER { }\nasm predefined-policy POLICY_TEMPLATE_SAP_NETWEAVER_7_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_SAP_NETWEAVER_7_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_SHAREPOINT { }\nasm predefined-policy POLICY_TEMPLATE_SHAREPOINT_2003_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_SHAREPOINT_2003_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_SHAREPOINT_2007_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_SHAREPOINT_2007_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_SHAREPOINT_2010_HTTP { }\nasm predefined-policy POLICY_TEMPLATE_SHAREPOINT_2010_HTTPS { }\nasm predefined-policy POLICY_TEMPLATE_SHAREPOINT_2016 { }\nasm predefined-policy POLICY_TEMPLATE_VULNERABILITY_ASSESSMENT { }\nasm predefined-policy POLICY_TEMPLATE_WORDPRESS { }\nasm predefined-policy POLICY_TEMPLATE_WORDPRESS_4_9 { }\nauth apm-auth /Common/system-auth {\n profile-access /Common/adminAuth_local_aPolicy\n}\nauth radius /Common/system-auth {\n servers {\n /Common/system_auth_name1\n }\n}\nauth radius-server /Common/system_auth_name1 {\n secret $M$mn$9uYx+bTjLD8YSGZAUEfFwHvpSDwZsL25kZxdn5NZmCI=\n server 10.200.244.1\n}\nauth remote-user {\n default-role admin\n remote-console-access tmsh\n}\nauth source {\n fallback true\n}\nilx global-settings {\n debug-port-blacklist { 47019 54321 60000 }\n}\nltm default-node-monitor {\n rule none\n}\nltm node /Common/10.200.244.15 {\n address 10.200.244.15\n description bigiq01\n}\nltm node /Common/10.10.10.1 {\n address 10.10.10.1\n}\nltm node /Common/192.168.200.42 {\n address 192.168.200.42\n}\nltm node /Common/api.chucknorris.io {\n fqdn {\n address-family all\n autopopulate enabled\n name api.chucknorris.io\n }\n}\nltm node /Common/app1_Node1 {\n address 192.168.1.22\n}\nltm node /Common/app1_Node2 {\n address 192.168.1.23\n}\nltm node /Common/app2_Node1 {\n address 192.168.2.22\n description app2_Node1\n}\nltm node /Common/app2_Node2 {\n address 192.168.2.23\n description app2_Node2\n}\nltm node /Common/app3_Node1 {\n address 192.168.1.52\n}\nltm node /Common/app3_Node2 {\n address 192.168.1.53\n}\nltm node /Common/app5_Node5 {\n address 192.168.10.23\n}\nltm policy /Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs {\n controls { asm }\n requires { http }\n rules {\n default {\n actions {\n 1 {\n asm\n enable\n policy /Common/basic_policy_1\n }\n }\n ordinal 1\n }\n }\n strategy /Common/first-match\n}\nltm policy /Common/app3_ltm_policy {\n rules {\n global_rule_1 { }\n }\n strategy /Common/first-match\n}\nltm policy /Common/app4_ltPolicy {\n controls { forwarding }\n description \"testing for pool extraction function\"\n requires { http }\n rules {\n css_pool_rule {\n actions {\n 0 {\n forward\n select\n pool /Common/css_pool\n }\n }\n conditions {\n 0 {\n http-uri\n scheme\n ends-with\n values { .css }\n }\n }\n }\n jpg_pool_rule {\n actions {\n 0 {\n forward\n select\n pool /Common/jpg.pool\n }\n }\n conditions {\n 0 {\n http-uri\n query-string\n ends-with\n values { .jpg }\n }\n }\n ordinal 1\n }\n js_pool_rule {\n actions {\n 0 {\n forward\n select\n pool /Common/js.io_t80_pool\n }\n }\n conditions {\n 0 {\n http-uri\n scheme\n ends-with\n values { .js }\n }\n }\n ordinal 2\n }\n txt_node {\n actions {\n 0 {\n forward\n select\n node 10.10.10.1\n }\n }\n conditions {\n 0 {\n http-uri\n scheme\n ends-with\n values { .txt }\n }\n }\n ordinal 3\n }\n }\n strategy /Common/first-match\n}\nltm pool /Common/bigiq.benlab.io_t443_pool {\n members {\n /Common/10.200.244.15:443 {\n address 10.200.244.15\n }\n }\n monitor /Common/https_head_f5\n}\nltm pool /Common/app1_t80_pool {\n members {\n /Common/app1_Node1:80 {\n address 192.168.1.22\n }\n /Common/app1_Node2:80 {\n address 192.168.1.23\n }\n }\n monitor /Common/http and /Common/tcp\n}\nltm pool /Common/app2_t80_pool {\n load-balancing-mode least-connections-member\n members {\n /Common/app2_Node1:80 {\n address 192.168.2.22\n }\n /Common/app2_Node2:80 {\n address 192.168.2.23\n }\n }\n monitor /Common/global_http_monitor and /Common/global_https_monitor\n}\nltm pool /Common/app3_t8443_pool {\n load-balancing-mode least-connections-member\n members {\n /Common/app3_Node1:8443 {\n address 192.168.1.52\n }\n /Common/app3_Node2:8443 {\n address 192.168.1.53\n }\n }\n monitor /Common/app1_tcp_half_open_quick_monitor and /Common/http_head_f5 and /Common/http2_head_f5 and /Common/http and /Common/tcp_half_open\n}\nltm pool /Common/manyOptions_pool {\n allow-nat no\n allow-snat no\n description \"yabba dappa doo!\"\n ignore-persisted-weight enabled\n ip-tos-to-client mimic\n ip-tos-to-server mimic\n link-qos-to-client 5\n link-qos-to-server 6\n load-balancing-mode observed-member\n members {\n /Common/10.3.110.10:80 {\n address 10.3.110.10\n }\n /Common/10.3.110.10:443 {\n address 10.3.110.10\n }\n /Common/10.3.110.10:8443 {\n address 10.3.110.10\n }\n /Common/dw1.lab.io:8443 {\n fqdn {\n autopopulate enabled\n name dude1.where.io\n }\n }\n /Common/dw2.lab.io:443 {\n description asfd\n monitor /Common/http\n fqdn {\n name dude2.where.io\n }\n }\n }\n monitor min 2 of { /Common/gateway_icmp /Common/http /Common/http2 }\n profiles {\n /Common/nvgre\n }\n queue-depth-limit 66\n queue-time-limit 88\n reselect-tries 7\n service-down-action reset\n slow-ramp-time 300\n}\nltm pool /Common/app4_pool {\n members {\n /Common/api.chucknorris.io:443 {\n fqdn {\n autopopulate enabled\n name api.chucknorris.io\n }\n }\n }\n}\nltm pool /Common/css_pool { }\nltm pool /Common/jpg.pool { }\nltm pool /Common/js.io_t80_pool { }\nltm rule /Common/app3_rule {\n#comment\n\nwhen HTTP_REQUEST {\n # add more here\n}\n}\nltm rule /Common/app3_rule2 {\n#comment\n\nwhen HTTP_REQUEST {\n # ben test 444\n}\n}\nltm rule /Common/app3_rule3 {\n# app3_rule3 header\n\nwhen SERVERSSL_DATA {\n # got something from server\n}\n}\nltm rule /Common/app4_pool_rule {\n### test rule for corkscrew\n\n # \n\nwhen HTTP_REQUEST {\n\n # pool reference by variable declaration\n set html-pool web1Pool\n\n if { [HTTP::path] ends_with \"*.css\" }{\n\n # regular pool refernce\n pool css_pool\n\n } elseif { [HTTP::path] ends_with \"*.jpg\" }{\n\n # pool member refernce\n pool jpg.pool member 10.10.10.1 80\n\n } elseif { [HTTP::path] ends_with \"*.js\" }{\n\n # another pool reference with special characters\n pool js.io_t80_pool \n\n } elseif { [HTTP::path] ends_with \"*.xx\" }{\n\n # pool reference not in tmos config\n ### *** seems the gui won't let you attach an irule to a vs with a pool that doesn't exist\n #pool missing_pool\n\n } elseif { [HTTP::path] ends_with \"*.txt\" }{\n\n # node reference\n node 10.10.10.1 80\n\n } else {\n\n # pool referenced by variable\n pool $html-pool\n\n }\n}\n}\nltm rule /Common/app4_pool_rule2 {\n\n}\nltm snat-translation /Common/192.168.1.51 {\n address 192.168.1.51\n inherited-traffic-group true\n traffic-group /Common/traffic-group-1\n}\nltm snatpool /Common/app3_snat_pool {\n members {\n /Common/192.168.1.51\n }\n}\nltm snatpool /Common/testSnat1_pool {\n members {\n /Common/1.1.1.1\n /Common/1.1.1.2\n /Common/1.1.1.3\n /Common/1.1.1.4\n }\n}\nltm virtual /Common/app1_t80_vs {\n creation-time 2020-09-17:08:50:22\n destination /Common/192.168.1.21:80\n ip-protocol tcp\n last-modified-time 2020-09-17:08:51:07\n mask 255.255.255.255\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/_sys_https_redirect\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address enabled\n translate-port enabled\n}\nltm virtual /Common/app1_t443_vs {\n destination /Common/192.168.1.21:443\n ip-protocol tcp\n last-modified-time 2020-09-18:10:05:54\n mask 255.255.255.255\n pool /Common/app1_t80_pool\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n}\nltm virtual /Common/app2_t80_vs {\n creation-time 2020-09-17:08:50:22\n destination /Common/192.168.2.21:80\n ip-protocol tcp\n last-modified-time 2020-09-17:08:51:07\n mask 255.255.255.255\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/_sys_https_redirect\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address enabled\n translate-port enabled\n}\nltm virtual /Common/bigiq.benlab.io_t443_vs {\n creation-time 2019-10-01:17:59:21\n description \"not flowing traffic, just used for GTM\"\n destination /Common/10.200.244.15:443\n ip-protocol tcp\n last-modified-time 2019-10-01:18:11:46\n mask 255.255.255.255\n policies {\n /Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs { }\n }\n pool /Common/bigiq.benlab.io_t443_pool\n profiles {\n /Common/ASM_basic_policy_1 { }\n /Common/f5-tcp-progressive { }\n /Common/http { }\n /Common/websecurity { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n vlans {\n /Common/vlan255_f5peer\n /Common/vlan245\n /Common/vlan230\n }\n vlans-enabled\n}\nltm virtual /Common/app2_t443_vs {\n destination /Common/192.168.2.21:443\n ip-protocol tcp\n last-modified-time 2020-09-18:10:05:47\n mask 255.255.255.255\n pool /Common/app2_t80_pool\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n}\nltm virtual /Common/persistTest_80_vs {\n creation-time 2023-05-09:11:25:01\n description \"vs to explore persist configs - both default/fallback are single entries\"\n destination /Common/10.6.3.4:80\n fallback-persistence /Common/source_addr\n ip-protocol tcp\n last-modified-time 2023-05-09:11:25:01\n mask 255.255.255.255\n persist {\n /Common/cookie {\n default yes\n }\n }\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address enabled\n translate-port enabled\n}\nltm virtual /Common/app3_t8443_vs {\n destination /Common/192.168.1.51:8443\n fallback-persistence /Common/app3_srcAddr_persist\n ip-protocol tcp\n last-modified-time 2020-09-17:12:45:40\n mask 255.255.255.255\n persist {\n /Common/app3_cookie {\n default yes\n }\n }\n policies {\n /Common/app3_ltm_policy { }\n }\n pool /Common/app3_t8443_pool\n profiles {\n /Common/app3_clientssl {\n context clientside\n }\n /Common/app3_serverssl {\n context serverside\n }\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/app3_rule\n /Common/app3_rule2\n /Common/app3_rule3\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n pool /Common/app3_snat_pool\n type snat\n }\n translate-address enabled\n translate-port enabled\n}\nltm virtual /Common/app4_t80_vs {\n description \"test pool references in irule extration and ltp\"\n destination /Common/192.168.2.25:80\n ip-protocol tcp\n last-modified-time 2020-10-07:07:28:35\n mask 255.255.255.255\n policies {\n /Common/app4_ltPolicy { }\n }\n pool /Common/app4_pool\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/_sys_https_redirect\n /Common/app4_pool_rule\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address enabled\n translate-port enabled\n}\nltm virtual /Common/forwarder_net_0.0.0.0 {\n destination /Common/0.0.0.0:0\n ip-forward\n mask any\n profiles {\n /Common/fastl4_loose { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address disabled\n translate-port disabled\n}\nltm virtual-address /Common/0.0.0.0 {\n address any\n arp disabled\n icmp-echo disabled\n mask any\n traffic-group /Common/traffic-group-1\n}\nltm virtual-address /Common/192.168.1.21 {\n address 192.168.1.21\n arp enabled\n mask 255.255.255.255\n traffic-group /Common/traffic-group-1\n}\nltm virtual-address /Common/192.168.1.51 {\n address 192.168.1.51\n arp enabled\n mask 255.255.255.255\n traffic-group /Common/traffic-group-1\n}\nltm virtual-address /Common/192.168.2.21 {\n address 192.168.2.21\n arp enabled\n mask 255.255.255.255\n traffic-group /Common/traffic-group-1\n}\nltm virtual-address /Common/192.168.2.25 {\n address 192.168.2.25\n arp enabled\n mask 255.255.255.255\n traffic-group /Common/traffic-group-1\n}\nltm auth radius-server /Common/system_auth_name1 {\n secret $M$mn$9uYx+bTjLD8YSGZAUEfFwHvpSDwZsL25kZxdn5NZmCI=\n server 10.200.244.1\n}\nltm classification auto-update settings {\n auto-update-interval weekly\n enabled no\n}\nltm data-group internal /Common/____appsvcs_declaration-1601897418975 {\n description \"f5 AS3 declaration (see info in record 0)\"\n records {\n 0 {\n data \"date^2020-10-05T11:30:18.975Z|id^1601897415002|tenants^|blocks^1\"\n }\n 1 {\n data eNoNzL0OwyAMBOB38dwgm5TmZ6vatVvUoRsCS0GCEAHtEuXd6/G+O90BLtpaYYb78wEXqG7lZN9casibaK9QoXjwEuiGNE7DlQyiFvzu3jZ+Zc9SVo7sWvixFC5vreQotwfY4lbRJSSuzaZdpho1doQdmoVo7nGmUU2D+cB5/gEMbipT\n }\n }\n type integer\n}\nltm data-group internal /Common/____appsvcs_declaration-1601900242421 {\n description \"f5 AS3 declaration (see info in record 0)\"\n records {\n 0 {\n data \"date^2020-10-05T12:17:22.421Z|id^autogen_6c3dbac3-4624-47e2-8ed7-3932d3c1d9b2|tenants^foo|blocks^1\"\n }\n 1 {\n data eNp1kM1uwjAQhN/F5ySynQAlN1SuSEilPbRCkbEXsOQ/2Q4XlHfvmlYUVa2PM+Odb/dKpBEpkZ6s1s+kIkmewYo3iEl7h2rbcNpQNI7ek/56T+/ACZdRV3AUo8npdb0dZvgeQ6sQjJYil1EVyWCDERnQGFUoXRAvWsJGaPf46+VLHnAihi465lGYlVIRUgIMfBC25M2MNrxhZH9PbH3MpC8IFQneG5z0m23Yos7IVP3nPFAUAeutdzr7eKvV0oZSaMEe4CZdbztA/JuOl/D3kj90036akEArLBFj9idww1y26iBkW3dz3tXdAnj9BGpRt8uWq1YytTxwhBmDwvttvCo3TGBAZn0BNKR3OXqTygIiyjOqO20hZYHEPeGU05rRms52jPds0XPedJy9k2n6BPXOoeQ=\n }\n }\n type integer\n}\nltm data-group internal /Common/____appsvcs_declaration-1601900272772 {\n description \"f5 AS3 declaration (see info in record 0)\"\n records {\n 0 {\n data \"date^2020-10-05T12:17:52.772Z|id^1601900269131|tenants^|blocks^1\"\n }\n 1 {\n data eNoNzDELwyAQBeD/cnMjd4ZE4lbatVvo0E30IILGoLZLyH/vje97j3eCT641sHB/PuAGzW+c3Ztri2UXHRUqFI9BAs1IC6KeFxpJ8HsE1/lVAkvZOLHv8cdS+LL3WpLcnuCq30TXmLl1lw+ZatQ4EA44raQtGTtpZYz+wHX9AQqTKk0=\n }\n }\n type integer\n}\nltm data-group internal /Common/____appsvcs_declaration-1602008840967 {\n description \"f5 AS3 declaration (see info in record 0)\"\n records {\n 0 {\n data \"date^2020-10-06T18:27:20.967Z|id^autogen_411122fd-f96d-45e5-9f42-5231b42fb590|tenants^foo|blocks^1\"\n }\n 1 {\n data eNp1UctuwjAQ/Befkyg2CTS5oXJFQirtoRWKjL0BS37Jdrig/HvXtKKoan2cGe/M7F6J0DxG0pP15pkUJIozGP4GISpnEV1UrK5qJEbnSH+9q/dguU2ISxj5pFN83eyGFt+jaO29VoKnPKogCYzXPAESk/TZC8JFCdhyZR9/vXzBA05E0UWFNHG9ljJAjICCD0I7VrV1xSpKDnfFzoVE+hyhIN45jZN+Zxt2iFMyF/8xDykygPbGWZVcuNkqYXw2NGCOcIOutw4Q/k7Hsvi75E+6+TDPmEBJNOFTciewQ0MpZWyU5dgtZdm00Jbd2LCyZQt6bNh4bLt8g8lL3N/WybzDCBpEUhdAQjibgtMxF+BBnBHdKwMxcUzcE1azuqR1WS/39Klnqx5v2i1X72SePwG436Fo\n }\n }\n type integer\n}\nltm data-group internal /Common/__appsvcs_update {\n type string\n}\nltm data-group internal /Common/appsvcs/dataStore {\n records {\n as3_async_records0 {\n data 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\n }\n }\n type string\n}\nltm data-group internal /Common/atgTeem/datastore {\n type string\n}\nltm data-group internal /Common/f5-appsvcs-templates/config {\n records {\n config0 {\n data eNqrVkpJzUktSU0JSc0tyEksSQ1OLSlWsopWKkktLlGKrQUAx+YL5Q==\n }\n }\n type string\n}\nltm data-group internal /Common/f5-appsvcs-templates/dataStore {\n records {\n bigip-fast-templates0 {\n data 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\n }\n examples0 {\n data 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\n }\n goodFastTemplates0 {\n data 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\n }\n }\n type string\n}\nltm monitor dns /Common/dubNameTst1_monitor {\n accept-rcode no-error\n adaptive disabled\n answer-contains query-type\n defaults-from /Common/dns\n interval 5\n qname query.test.com\n qtype a\n recv none\n time-until-up 0\n timeout 16\n}\nltm monitor http /Common/global_http_monitor {\n adaptive disabled\n defaults-from /Common/http\n interval 5\n ip-dscp 0\n recv \"ok 200\"\n recv-disable none\n send \"GET /anywebsite.com\\r\\n\"\n time-until-up 0\n timeout 16\n}\nltm monitor https /Common/global_https_monitor {\n adaptive disabled\n defaults-from /Common/https\n interval 5\n ip-dscp 0\n recv \"201 continue\"\n recv-disable none\n send \"GET /any-secure-website.com\\r\\n\"\n time-until-up 0\n timeout 16\n}\nltm monitor tcp /Common/test_tcp_monitor {\n adaptive disabled\n defaults-from /Common/tcp\n interval 5\n ip-dscp 0\n recv \"receive a tcp string\"\n recv-disable none\n send \"send a tcp string\"\n time-until-up 0\n timeout 16\n}\nltm monitor tcp-half-open /Common/app1_tcp_half_open_quick_monitor {\n defaults-from /Common/tcp_half_open\n destination *:*\n interval 1\n time-until-up 0\n timeout 4\n}\nltm monitor udp /Common/test_udp_monitor {\n adaptive disabled\n debug no\n defaults-from /Common/udp\n interval 5\n recv recieve-what?\n recv-disable none\n send \"default send string\"\n time-until-up 0\n timeout 16\n}\nltm persistence cookie /Common/app3_cookie {\n always-send disabled\n app-service none\n cookie-encryption disabled\n cookie-name app3CustomeCookie\n defaults-from /Common/cookie\n encrypt-cookie-poolname disabled\n expiration 0\n httponly enabled\n method insert\n override-connection-limit disabled\n secure enabled\n}\nltm persistence source-addr /Common/app3_srcAddr_persist {\n app-service none\n defaults-from /Common/source_addr\n hash-algorithm default\n map-proxies enabled\n mask none\n match-across-pools disabled\n match-across-services disabled\n match-across-virtuals disabled\n override-connection-limit disabled\n timeout 180\n}\nltm profile client-ssl /Common/app2_clientssl {\n app-service none\n cert-key-chain {\n default {\n cert /Common/default.crt\n key /Common/default.key\n }\n }\n defaults-from /Common/clientssl\n inherit-ca-certkeychain true\n inherit-certkeychain true\n}\nltm profile client-ssl /Common/app3_clientssl {\n app-service none\n cert-key-chain {\n default {\n cert /Common/default.crt\n key /Common/default.key\n }\n }\n defaults-from /Common/clientssl\n inherit-ca-certkeychain true\n inherit-certkeychain true\n}\nltm profile client-ssl /Common/test1 {\n app-service none\n cert-key-chain {\n default {\n cert /Common/default.crt\n key /Common/default.key\n }\n }\n defaults-from /Common/clientssl\n inherit-ca-certkeychain true\n inherit-certkeychain true\n}\nltm profile fastl4 /Common/fastl4_loose {\n app-service none\n loose-close enabled\n loose-initialization enabled\n reset-on-timeout disabled\n syn-cookie-enable disabled\n}\nltm profile ftp /Common/global_http_monitor {\n app-service none\n defaults-from /Common/ftp\n}\nltm profile http /Common/dubNameTst1_profile {\n app-service none\n defaults-from /Common/http\n proxy-type reverse\n}\nltm profile http-compression /Common/dubName.Tst1_profile {\n app-service none\n defaults-from /Common/httpcompression\n}\nltm profile server-ssl /Common/app3_serverssl {\n app-service none\n defaults-from /Common/serverssl\n}\nltm profile server-ssl /Common/test2 {\n app-service none\n defaults-from /Common/serverssl\n}\nnet dns-resolver /Common/f5-aws-dns {\n forward-zones {\n amazonaws.com {\n nameservers {\n 8.8.8.8:53 { }\n }\n }\n idservice.net {\n nameservers {\n 8.8.8.8:53 { }\n }\n }\n }\n route-domain /Common/0\n}\nnet ipsec ike-daemon /Common/ikedaemon {\n log-publisher /Common/default-ipsec-log-publisher\n}\npem global-settings analytics { }\npem global-settings gx { }\npem global-settings policy { }\nsecurity dos profile /Common/app50_dos {\n app-service none\n application {\n app50_dos {\n bot-defense {\n browser-legit-captcha disabled\n browser-legit-enabled disabled\n }\n captcha-response {\n failure {\n body \"You have entered an invalid answer for the question. Please, try again.\n
\n%DOSL7.captcha.image% %DOSL7.captcha.audio% %DOSL7.captcha.change%\n
\nWhat code is in the image\\?\n%DOSL7.captcha.solution%\n
\n%DOSL7.captcha.submit%\n
\n
\nYour support ID is: %DOSL7.captcha.support_id%.\"\n }\n first {\n body \"This question is for testing whether you are a human visitor and to prevent automated spam submission.\n
\n%DOSL7.captcha.image% %DOSL7.captcha.audio% %DOSL7.captcha.change%\n
\nWhat code is in the image\\?\n%DOSL7.captcha.solution%\n
\n%DOSL7.captcha.submit%\n
\n
\nYour support ID is: %DOSL7.captcha.support_id%.\"\n }\n }\n heavy-urls {\n automatic-detection disabled\n protection disabled\n }\n mobile-detection {\n allow-any-android-package false\n allow-any-ios-package false\n }\n stress-based {\n behavioral {\n mitigation-mode none\n }\n ip-rate-limiting disabled\n url-enable-heavy disabled\n url-rate-limiting disabled\n }\n tps-based {\n ip-rate-limiting disabled\n mode off\n url-enable-heavy disabled\n url-rate-limiting disabled\n }\n }\n }\n creation-time 2023-05-09:06:11:09\n creation-user admin\n description \"app #50 sample dos profile\"\n dos-network {\n app50_dos { }\n }\n http-whitelist none\n last-modified-time 2023-05-09:06:11:10\n modify-user admin\n protocol-dns {\n app50_dos { }\n }\n protocol-sip {\n app50_dos { }\n }\n threshold-sensitivity high\n}\nsecurity bot-defense profile /Common/app51_bot {\n allow-browser-access enabled\n api-access-strict-mitigation enabled\n app-service none\n blocking-page {\n body \"Request RejectedThe requested URL was rejected. Please consult with your administrator.

Your support ID is: <%BOTDEFENSE.support_id%>

[Go Back]\"\n headers \"Cache-Control: no-store, must-revalidate, no-cache\nPragma: no-cache\nConnection: close\"\n status-code 200\n type default\n }\n browser-mitigation-action block\n captcha-response {\n failure {\n body \"You have entered an invalid answer for the question. Please, try again.\n
\n%BOTDEFENSE.captcha.image% %BOTDEFENSE.captcha.audio% %BOTDEFENSE.captcha.change%\n
\nWhat code is in the image\\?\n%BOTDEFENSE.captcha.solution%\n
\n%BOTDEFENSE.captcha.submit%\n
\n
\nYour support ID is: %BOTDEFENSE.captcha.support_id%.\"\n type default\n }\n first {\n body \"This question is for testing whether you are a human visitor and to prevent automated spam submission.\n
\n%BOTDEFENSE.captcha.image% %BOTDEFENSE.captcha.audio% %BOTDEFENSE.captcha.change%\n
\nWhat code is in the image\\?\n%BOTDEFENSE.captcha.solution%\n
\n%BOTDEFENSE.captcha.submit%\n
\n
\nYour support ID is: %BOTDEFENSE.captcha.support_id%.\"\n type default\n }\n }\n cross-domain-requests allow-all\n description \"some example bot profile\"\n deviceid-mode generate-before-access\n dos-attack-strict-mitigation enabled\n enforcement-mode blocking\n enforcement-readiness-period 9\n grace-period 300\n honeypot-page {\n body \n headers \"Cache-Control: no-store, must-revalidate, no-cache\nPragma: no-cache\nConnection: close\"\n status-code 200\n type default\n }\n mobile-detection {\n allow-android-rooted-device disabled\n allow-any-android-package enabled\n allow-any-ios-package enabled\n allow-emulators disabled\n allow-jailbroken-devices disabled\n block-debugger-enabled-device enabled\n client-side-challenge-mode pass\n }\n perform-challenge-in-transparent disabled\n redirect-to-pool-name /Common/allOptionsPool\n signature-staging-upon-update enabled\n single-page-application disabled\n template strict\n whitelist {\n apple_touch_1 {\n match-order 2\n url /apple-touch-icon*.png\n }\n favicon_1 {\n match-order 1\n url /favicon.ico\n }\n }\n}\nsecurity dos ipv6-ext-hdr /Common/dos-ipv6-ext-hdr {\n frame-types { auth dstopt esp frag hbh mobility route }\n}\nsecurity dos udp-portlist /Common/dos-udp-portlist {\n list-type exclude-listed-ports\n}\nsecurity firewall config-change-log {\n log-publisher /Common/local-db-publisher\n}\nsecurity protocol-inspection compliance-map /Common/map_10426 {\n insp-id 10426\n key-type int\n value-type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/allowed_list {\n insp-id 10229\n type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/allowed_list {\n insp-id 10430\n type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/allowed_list {\n insp-id 10431\n type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/allowed_list {\n insp-id 10232\n type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/argument_len_max {\n insp-id 10905\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/command_argument_len_max {\n insp-id 10609\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/command_len_max {\n insp-id 10905\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/command_len_max {\n insp-id 10707\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/command_len_max {\n insp-id 10609\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/command_parameter_len_max {\n insp-id 10707\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/disallowed_list {\n insp-id 10229\n type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/disallowed_list {\n insp-id 10430\n type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/disallowed_list {\n insp-id 10431\n type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/disallowed_list {\n insp-id 10232\n type vector-string\n}\nsecurity protocol-inspection compliance-objects /Common/error_message_max {\n insp-id 10102\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/file_name_max {\n insp-id 10102\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/file_type_max {\n insp-id 10102\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/header_name_len_max {\n insp-id 11016\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/header_name_len_max {\n insp-id 11223\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/header_value_len_max {\n insp-id 11016\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/header_value_len_max {\n insp-id 11223\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/method_len_max {\n insp-id 11016\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/method_len_max {\n insp-id 11223\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/option_name_max {\n insp-id 10102\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/option_value_max {\n insp-id 10102\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/response_argument_len_max {\n insp-id 10609\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/response_code_len_max {\n insp-id 10609\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/response_parameter_len_max {\n insp-id 10707\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/status_code_len_max {\n insp-id 11016\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/status_code_len_max {\n insp-id 11223\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/status_len_max {\n insp-id 10707\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/status_reason_len_max {\n insp-id 11016\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/status_reason_len_max {\n insp-id 11223\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/tag_len_max {\n insp-id 10905\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/uri_len_max {\n insp-id 11016\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/uri_len_max {\n insp-id 11223\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/version_len_max {\n insp-id 11016\n type int\n}\nsecurity protocol-inspection compliance-objects /Common/version_len_max {\n insp-id 11223\n type int\n}\nsecurity scrubber profile /Common/scrubber-profile-default {\n advertisement-ttl 300\n}\nsys compatibility-level {\n level 0\n}\nsys management-ovsdb {\n bfd-disabled\n bfd-route-domain none\n ca-cert-file none\n cert-file none\n cert-key-file none\n disabled\n flooding-type replicator\n log-level info\n logical-routing-type none\n tunnel-maintenance-mode active\n}\nsys diags ihealth {\n expiration 30\n no-ihealth false\n options none\n password none\n user none\n}\nsys ecm cloud-provider /Common/aws-ec2 {\n description \"The aws-ec2 parameters\"\n property-template {\n account { }\n availability-zone {\n valid-values { a b c d }\n }\n instance-type {\n valid-values { t2.micro t2.small t2.medium m3.medium m3.large m3.xlarge m3.2xlarge c3.large c3.xlarge c3.2xlarge c3.4xlarge c3.8xlarge r3.large r3.xlarge r3.2xlarge r3.4xlarge r3.8xlarge }\n }\n region {\n valid-values { us-east-1 us-west-1 us-west-2 sa-east-1 eu-west-1 eu-central-1 ap-southeast-2 ap-southeast-1 ap-northeast-1 }\n }\n }\n}\nsys ecm cloud-provider /Common/dnet {\n description \"The dnet parameters\"\n}\nsys ecm cloud-provider /Common/vsphere {\n description \"The vsphere parameters\"\n property-template {\n cloud-host-ip { }\n dhcp-network-name { }\n end-point-url { }\n node-name { }\n }\n}\nsys file ssl-key /Common/f5_api_com.key {\n cache-path /config/filestore/files_d/Common_d/certificate_key_d/:Common:f5_api_com.key_63136_1\n passphrase $M$dw$gJ3HaeiGt0skpPsA6hli9PsO/8yo5M6FkI1CHOPiN4GgC/h5Tln6v01SC2727mtleKP9Hw/Vnwio8eOiXi4umiV+IidOxMwtZinL8WYrqX0=\n revision 1\n source-path file:///config/ssl/ssl.key/f5_api_com.key\n}\nsys software update {\n auto-check enabled\n auto-phonehome disabled\n frequency weekly\n}\nwom endpoint-discovery { }\n" }, { "fileName": "config/partitions/foo/bigip.conf", - "size": 1504, - "content": "#TMSH-VERSION: 15.1.8.2\n\napm client-packaging /foo/client-packaging { }\napm resource sandbox /foo/citrix-client-package {\n base-uri /foo/public/citrix\n description \"Sandbox for Citrix client package files\"\n}\napm resource sandbox /foo/hosted-content {\n base-uri /foo/public/share\n description \"Sandbox for static contents\"\n}\nltm node /foo/192.50.2.2 {\n address 192.50.2.2\n}\nltm pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1 {\n members {\n /foo/192.50.2.2:5555 {\n address 192.50.2.2\n metadata {\n source {\n value declaration\n }\n }\n }\n }\n min-active-members 1\n monitor min 1 of { /Common/gateway_icmp }\n}\nltm virtual /foo/defaultsUDP_5555/serviceMain {\n creation-time 2020-10-06:13:27:20\n description defaultsUDP_5555\n destination /foo/192.50.2.1:5555\n ip-protocol udp\n last-modified-time 2020-10-06:13:27:20\n mask 255.255.255.255\n persist {\n /Common/source_addr {\n default yes\n }\n }\n pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1\n profiles {\n /Common/udp { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n}\nltm virtual-address /foo/192.50.2.1 {\n address 192.50.2.1\n arp enabled\n inherited-traffic-group true\n mask 255.255.255.255\n traffic-group /Common/traffic-group-1\n}\n" + "size": 3376, + "content": "#TMSH-VERSION: 15.1.8.2\n\napm client-packaging /foo/client-packaging { }\napm resource sandbox /foo/citrix-client-package {\n base-uri /foo/public/citrix\n description \"Sandbox for Citrix client package files\"\n}\napm resource sandbox /foo/hosted-content {\n base-uri /foo/public/share\n description \"Sandbox for static contents\"\n}\nltm node /foo/192.50.2.2 {\n address 192.50.2.2\n}\nltm pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1 {\n members {\n /foo/192.50.2.2:5555 {\n address 192.50.2.2\n metadata {\n source {\n value declaration\n }\n }\n }\n }\n min-active-members 1\n monitor min 1 of { /Common/gateway_icmp }\n}\nltm virtual /foo/defaultsUDP_5555/serviceMain {\n creation-time 2020-10-06:13:27:20\n description defaultsUDP_5555\n destination /foo/192.50.2.1:5555\n ip-protocol udp\n last-modified-time 2020-10-06:13:27:20\n mask 255.255.255.255\n persist {\n /Common/source_addr {\n default yes\n }\n }\n pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1\n profiles {\n /Common/udp { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n}\nltm virtual-address /foo/192.50.2.1 {\n address 192.50.2.1\n arp enabled\n inherited-traffic-group true\n mask 255.255.255.255\n traffic-group /Common/traffic-group-1\n}\nltm virtual /foo/t1.lab.io_80vs {\n creation-time 2023-04-29:13:02:55\n destination /foo/10.2.3.4:80\n ip-protocol tcp\n last-modified-time 2023-04-29:13:02:55\n mask 255.255.255.255\n profiles {\n /Common/tcp { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n pool /Common/testSnat1_pool\n type snat\n }\n translate-address enabled\n translate-port enabled\n}\nltm virtual-address /foo/10.2.3.4 {\n address 10.2.3.4\n arp enabled\n icmp-echo enabled\n mask 255.255.255.255\n traffic-group /Common/traffic-group-1\n}\nltm traffic-matching-criteria /foo/wiffle_redirect_trafficMatchCriteria {\n destination-address-inline 10.1.1.9\n destination-port-inline 80\n protocol tcp\n source-address-inline 0.0.0.0\n source-address-list /foo/wiffle_address_list\n}\nltm rule /foo/HTTP-redirect-to-HTTPS {\nwhen HTTP_REQUEST { HTTP::redirect https://[HTTP::host][HTTP::uri] }\n}\nltm pool /foo/app8_pool {\n monitor /Common/http\n}\nltm virtual /foo/wiffle_redirect_vs {\n creation-time 2023-02-02:13:10:03\n description \"wiffle waffle baffle\"\n ip-protocol tcp\n last-modified-time 2023-03-29:14:27:19\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /foo/HTTP-redirect-to-HTTPS\n }\n traffic-matching-criteria /foo/wiffle_redirect_trafficMatchCriteria\n translate-address enabled\n translate-port enabled\n}\nltm virtual /foo/app8_80vs {\n creation-time 2021-03-04:18:40:06\n destination /foo/1.19.8.18:80\n ip-protocol tcp\n last-modified-time 2021-03-04:18:40:06\n mask 255.255.255.255\n pool /foo/app8_pool\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n}\n" + }, + { + "fileName": "config/partitions/foo/bigip_base.conf", + "size": 246, + "content": "#TMSH-VERSION: 15.1.8.2\n\nnet address-list /foo/wiffle_address_list {\n addresses {\n 192.168.5.0/24 { }\n 192.168.6.0/24 { }\n 10.40.0.0/16 { }\n 6.6.6.6/32 { }\n }\n description \"wiffle_address_list Address List\"\n}\n" }, { "fileName": "config/partitions/hue-infra/bigip.conf", @@ -67,6 +72,9 @@ "sys dns { \n description configured-by-dhcp\n name-servers { 192.168.200.7 192.168.200.8 }\n search { benlab.io }\n }", "net dns-resolver /Common/f5-aws-dns { \n forward-zones {\n amazonaws.com {\n nameservers {\n 8.8.8.8:53 { }\n }\n }\n idservice.net {\n nameservers {\n 8.8.8.8:53 { }\n }\n }\n }\n route-domain /Common/0\n }", "net vlan /Common/internal { \n interfaces {\n 1.0 { }\n }\n tag 4094\n }", + "net vlan /Common/vlan255_f5peer { \n tag 255\n }", + "net vlan /Common/vlan245 { \n tag 245\n }", + "net vlan /Common/vlan230 { \n tag 230\n }", "analytics global-settings { }", "sys management-route /Common/default { \n description configured-statically\n gateway 10.200.244.1\n network default\n }", "auth source { \n fallback true\n }", @@ -91,178 +99,525 @@ ], "apps": [ { - "name": "/Common/app1_t80_vs", - "configs": [ - "ltm virtual /Common/app1_t80_vs {\n creation-time 2020-09-17:08:50:22\n destination /Common/192.168.1.21:80\n ip-protocol tcp\n last-modified-time 2020-09-17:08:51:07\n mask 255.255.255.255\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/_sys_https_redirect\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address enabled\n translate-port enabled\n}" + "name": "app1_t80_vs", + "partition": "Common", + "destination": "192.168.1.21:80", + "profiles": [ + "/Common/http", + "/Common/tcp" + ], + "rules": [ + "/Common/_sys_https_redirect" ], - "map": { - "vsDest": "/Common/192.168.1.21:80" - } + "creation-time": "2020-09-17:08:50:22", + "ip-protocol": "tcp", + "last-modified-time": "2020-09-17:08:51:07", + "mask": "255.255.255.255", + "serverssl-use-sni": "disabled", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled", + "lines": [ + "ltm virtual /Common/app1_t80_vs {\n creation-time 2020-09-17:08:50:22\n destination /Common/192.168.1.21:80\n ip-protocol tcp\n last-modified-time 2020-09-17:08:51:07\n mask 255.255.255.255\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/_sys_https_redirect\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address enabled\n translate-port enabled\n}" + ] }, { - "name": "/Common/app1_t443_vs", - "configs": [ + "name": "app1_t443_vs", + "partition": "Common", + "destination": "192.168.1.21:443", + "pool": { + "name": "app1_t80_pool", + "partition": "Common", + "members": { + "/Common/app1_Node1:80": { + "address": "192.168.1.22" + }, + "/Common/app1_Node2:80": { + "address": "192.168.1.23" + } + }, + "monitor": "/Common/http" + }, + "profiles": [ + "/Common/http", + "/Common/tcp" + ], + "snat": "automap", + "ip-protocol": "tcp", + "last-modified-time": "2020-09-18:10:05:54", + "mask": "255.255.255.255", + "serverssl-use-sni": "disabled", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled", + "lines": [ "ltm virtual /Common/app1_t443_vs {\n destination /Common/192.168.1.21:443\n ip-protocol tcp\n last-modified-time 2020-09-18:10:05:54\n mask 255.255.255.255\n pool /Common/app1_t80_pool\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n}", "ltm pool /Common/app1_t80_pool {\n members {\n /Common/app1_Node1:80 {\n address 192.168.1.22\n }\n /Common/app1_Node2:80 {\n address 192.168.1.23\n }\n }\n monitor /Common/http and /Common/tcp\n}", "ltm node /Common/app1_Node1 {\n address 192.168.1.22\n}", "ltm node /Common/app1_Node2 {\n address 192.168.1.23\n}" - ], - "map": { - "vsDest": "/Common/192.168.1.21:443", - "pool": [ - "192.168.1.22:80", - "192.168.1.23:80" - ] - } + ] }, { - "name": "/Common/app2_t80_vs", - "configs": [ - "ltm virtual /Common/app2_t80_vs {\n creation-time 2020-09-17:08:50:22\n destination /Common/192.168.2.21:80\n ip-protocol tcp\n last-modified-time 2020-09-17:08:51:07\n mask 255.255.255.255\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/_sys_https_redirect\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address enabled\n translate-port enabled\n}" + "name": "app2_t80_vs", + "partition": "Common", + "destination": "192.168.2.21:80", + "profiles": [ + "/Common/http", + "/Common/tcp" ], - "map": { - "vsDest": "/Common/192.168.2.21:80" - } + "rules": [ + "/Common/_sys_https_redirect" + ], + "creation-time": "2020-09-17:08:50:22", + "ip-protocol": "tcp", + "last-modified-time": "2020-09-17:08:51:07", + "mask": "255.255.255.255", + "serverssl-use-sni": "disabled", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled", + "lines": [ + "ltm virtual /Common/app2_t80_vs {\n creation-time 2020-09-17:08:50:22\n destination /Common/192.168.2.21:80\n ip-protocol tcp\n last-modified-time 2020-09-17:08:51:07\n mask 255.255.255.255\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/_sys_https_redirect\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address enabled\n translate-port enabled\n}" + ] }, { - "name": "/Common/bigiq.benlab.io_t443_vs", - "configs": [ - "ltm virtual /Common/bigiq.benlab.io_t443_vs {\n creation-time 2019-10-01:17:59:21\n description \"not flowing traffic, just used for GTM\"\n destination /Common/10.200.244.15:443\n ip-protocol tcp\n last-modified-time 2019-10-01:18:11:46\n mask 255.255.255.255\n policies {\n /Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs { }\n }\n pool /Common/bigiq.benlab.io_t443_pool\n profiles {\n /Common/ASM_basic_policy_1 { }\n /Common/f5-tcp-progressive { }\n /Common/http { }\n /Common/websecurity { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n vlans {\n /Common/vlan255_f5peer\n }\n vlans-enabled\n}", + "name": "bigiq.benlab.io_t443_vs", + "partition": "Common", + "destination": "10.200.244.15:443", + "pool": { + "name": "bigiq.benlab.io_t443_pool", + "partition": "Common", + "members": { + "/Common/10.200.244.15:443": { + "address": "10.200.244.15" + } + }, + "monitor": [ + "/Common/https_head_f5" + ] + }, + "profiles": [ + "/Common/ASM_basic_policy_1", + "/Common/f5-tcp-progressive", + "/Common/http", + "/Common/websecurity" + ], + "snat": "automap", + "policies": [ + "/Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs" + ], + "vlans": [ + "/Common/vlan255_f5peer", + "/Common/vlan245", + "/Common/vlan230" + ], + "creation-time": "2019-10-01:17:59:21", + "description": "not flowing traffic, just used for GTM", + "ip-protocol": "tcp", + "last-modified-time": "2019-10-01:18:11:46", + "mask": "255.255.255.255", + "serverssl-use-sni": "disabled", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled", + "lines": [ + "ltm virtual /Common/bigiq.benlab.io_t443_vs {\n creation-time 2019-10-01:17:59:21\n description \"not flowing traffic, just used for GTM\"\n destination /Common/10.200.244.15:443\n ip-protocol tcp\n last-modified-time 2019-10-01:18:11:46\n mask 255.255.255.255\n policies {\n /Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs { }\n }\n pool /Common/bigiq.benlab.io_t443_pool\n profiles {\n /Common/ASM_basic_policy_1 { }\n /Common/f5-tcp-progressive { }\n /Common/http { }\n /Common/websecurity { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n vlans {\n /Common/vlan255_f5peer\n /Common/vlan245\n /Common/vlan230\n }\n vlans-enabled\n}", "ltm pool /Common/bigiq.benlab.io_t443_pool {\n members {\n /Common/10.200.244.15:443 {\n address 10.200.244.15\n }\n }\n monitor /Common/https_head_f5\n}", "ltm node /Common/10.200.244.15 {\n address 10.200.244.15\n description bigiq01\n}", "ltm policy /Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs {\n controls { asm }\n requires { http }\n rules {\n default {\n actions {\n 1 {\n asm\n enable\n policy /Common/basic_policy_1\n }\n }\n ordinal 1\n }\n }\n strategy /Common/first-match\n}" - ], - "map": { - "vsDest": "/Common/10.200.244.15:443", - "pool": [ - "10.200.244.15:443" - ] - } + ] }, { - "name": "/Common/app2_t443_vs", - "configs": [ + "name": "app2_t443_vs", + "partition": "Common", + "destination": "192.168.2.21:443", + "pool": { + "name": "app2_t80_pool", + "partition": "Common", + "members": { + "/Common/app2_Node1:80": { + "address": "192.168.2.22" + }, + "/Common/app2_Node2:80": { + "address": "192.168.2.23" + } + }, + "load-balancing-mode": "least-connections-member", + "monitor": "/Common/global_http_monitor" + }, + "profiles": [ + "/Common/http", + "/Common/tcp" + ], + "snat": "automap", + "ip-protocol": "tcp", + "last-modified-time": "2020-09-18:10:05:47", + "mask": "255.255.255.255", + "serverssl-use-sni": "disabled", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled", + "lines": [ "ltm virtual /Common/app2_t443_vs {\n destination /Common/192.168.2.21:443\n ip-protocol tcp\n last-modified-time 2020-09-18:10:05:47\n mask 255.255.255.255\n pool /Common/app2_t80_pool\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n}", "ltm pool /Common/app2_t80_pool {\n load-balancing-mode least-connections-member\n members {\n /Common/app2_Node1:80 {\n address 192.168.2.22\n }\n /Common/app2_Node2:80 {\n address 192.168.2.23\n }\n }\n monitor /Common/global_http_monitor and /Common/global_https_monitor\n}", "ltm node /Common/app2_Node1 {\n address 192.168.2.22\n description app2_Node1\n}", - "ltm node /Common/app2_Node2 {\n address 192.168.2.23\n description app2_Node2\n}", - "ltm monitor http /Common/global_http_monitor {\n adaptive disabled\n defaults-from /Common/http\n interval 5\n ip-dscp 0\n recv \"ok 200\"\n recv-disable none\n send \"GET /anywebsite.com\\r\\n\"\n time-until-up 0\n timeout 16\n}", - "ltm monitor https /Common/global_https_monitor {\n adaptive disabled\n defaults-from /Common/https\n interval 5\n ip-dscp 0\n recv \"201 continue\"\n recv-disable none\n send \"GET /any-secure-website.com\\r\\n\"\n time-until-up 0\n timeout 16\n}" + "ltm node /Common/app2_Node2 {\n address 192.168.2.23\n description app2_Node2\n}" + ] + }, + { + "name": "persistTest_80_vs", + "partition": "Common", + "destination": "10.6.3.4:80", + "profiles": [ + "/Common/http", + "/Common/tcp" ], - "map": { - "vsDest": "/Common/192.168.2.21:443", - "pool": [ - "192.168.2.22:80", - "192.168.2.23:80" - ] - } + "persist": "/Common/cookie", + "fallback-persistence": "/Common/source_addr", + "creation-time": "2023-05-09:11:25:01", + "description": "vs to explore persist configs - both default/fallback are single entries", + "ip-protocol": "tcp", + "last-modified-time": "2023-05-09:11:25:01", + "mask": "255.255.255.255", + "serverssl-use-sni": "disabled", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled", + "lines": [ + "ltm virtual /Common/persistTest_80_vs {\n creation-time 2023-05-09:11:25:01\n description \"vs to explore persist configs - both default/fallback are single entries\"\n destination /Common/10.6.3.4:80\n fallback-persistence /Common/source_addr\n ip-protocol tcp\n last-modified-time 2023-05-09:11:25:01\n mask 255.255.255.255\n persist {\n /Common/cookie {\n default yes\n }\n }\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address enabled\n translate-port enabled\n}" + ] }, { - "name": "/Common/app3_t8443_vs", - "configs": [ + "name": "app3_t8443_vs", + "partition": "Common", + "destination": "192.168.1.51:8443", + "pool": { + "name": "app3_t8443_pool", + "partition": "Common", + "members": { + "/Common/app3_Node1:8443": { + "address": "192.168.1.52" + }, + "/Common/app3_Node2:8443": { + "address": "192.168.1.53" + } + }, + "load-balancing-mode": "least-connections-member", + "monitor": "/Common/app1_tcp_half_open_quick_monitor" + }, + "profiles": [ + "/Common/app3_clientssl", + "/Common/app3_serverssl", + "/Common/http", + "/Common/tcp" + ], + "rules": [ + "/Common/app3_rule", + "/Common/app3_rule2", + "/Common/app3_rule3" + ], + "snat": { + "name": "app3_snat_pool", + "partition": "Common", + "members": [ + "192.168.1.51" + ] + }, + "policies": [ + "/Common/app3_ltm_policy" + ], + "persist": "/Common/app3_cookie", + "fallback-persistence": "/Common/app3_srcAddr_persist", + "ip-protocol": "tcp", + "last-modified-time": "2020-09-17:12:45:40", + "mask": "255.255.255.255", + "serverssl-use-sni": "disabled", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled", + "lines": [ "ltm virtual /Common/app3_t8443_vs {\n destination /Common/192.168.1.51:8443\n fallback-persistence /Common/app3_srcAddr_persist\n ip-protocol tcp\n last-modified-time 2020-09-17:12:45:40\n mask 255.255.255.255\n persist {\n /Common/app3_cookie {\n default yes\n }\n }\n policies {\n /Common/app3_ltm_policy { }\n }\n pool /Common/app3_t8443_pool\n profiles {\n /Common/app3_clientssl {\n context clientside\n }\n /Common/app3_serverssl {\n context serverside\n }\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/app3_rule\n /Common/app3_rule2\n /Common/app3_rule3\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n pool /Common/app3_snat_pool\n type snat\n }\n translate-address enabled\n translate-port enabled\n}", "ltm pool /Common/app3_t8443_pool {\n load-balancing-mode least-connections-member\n members {\n /Common/app3_Node1:8443 {\n address 192.168.1.52\n }\n /Common/app3_Node2:8443 {\n address 192.168.1.53\n }\n }\n monitor /Common/app1_tcp_half_open_quick_monitor and /Common/http_head_f5 and /Common/http2_head_f5 and /Common/http and /Common/tcp_half_open\n}", "ltm node /Common/app3_Node1 {\n address 192.168.1.52\n}", "ltm node /Common/app3_Node2 {\n address 192.168.1.53\n}", - "ltm monitor tcp-half-open /Common/app1_tcp_half_open_quick_monitor {\n defaults-from /Common/tcp_half_open\n destination *:*\n interval 1\n time-until-up 0\n timeout 4\n}", "ltm profile client-ssl /Common/app3_clientssl {\n app-service none\n cert-key-chain {\n default {\n cert /Common/default.crt\n key /Common/default.key\n }\n }\n defaults-from /Common/clientssl\n inherit-ca-certkeychain true\n inherit-certkeychain true\n}", "ltm profile server-ssl /Common/app3_serverssl {\n app-service none\n defaults-from /Common/serverssl\n}", "ltm rule /Common/app3_rule {\n#comment\n\nwhen HTTP_REQUEST {\n # add more here\n}\n}", "ltm rule /Common/app3_rule2 {\n#comment\n\nwhen HTTP_REQUEST {\n # ben test 444\n}\n}", "ltm rule /Common/app3_rule3 {\n# app3_rule3 header\n\nwhen SERVERSSL_DATA {\n # got something from server\n}\n}", - "ltm snatpool /Common/app3_snat_pool {\n members {\n /Common/192.168.1.51\n }\n}", + "ltm snatpool /Common/app3_snat_pool { undefined }", "ltm policy /Common/app3_ltm_policy {\n rules {\n global_rule_1 { }\n }\n strategy /Common/first-match\n}", "ltm persistence cookie /Common/app3_cookie {\n always-send disabled\n app-service none\n cookie-encryption disabled\n cookie-name app3CustomeCookie\n defaults-from /Common/cookie\n encrypt-cookie-poolname disabled\n expiration 0\n httponly enabled\n method insert\n override-connection-limit disabled\n secure enabled\n}", "ltm persistence source-addr /Common/app3_srcAddr_persist {\n app-service none\n defaults-from /Common/source_addr\n hash-algorithm default\n map-proxies enabled\n mask none\n match-across-pools disabled\n match-across-services disabled\n match-across-virtuals disabled\n override-connection-limit disabled\n timeout 180\n}" - ], - "map": { - "vsDest": "/Common/192.168.1.51:8443", - "pool": [ - "192.168.1.52:8443", - "192.168.1.53:8443" - ] - } + ] }, { - "name": "/Common/app4_t80_vs", - "configs": [ + "name": "app4_t80_vs", + "partition": "Common", + "destination": "192.168.2.25:80", + "description": "test pool references in irule extration and ltp", + "pool": { + "name": "app4_pool", + "partition": "Common", + "members": { + "/Common/api.chucknorris.io:443": { + "autopopulate": "enabled", + "fqdn": "api.chucknorris.io" + } + } + }, + "profiles": [ + "/Common/http", + "/Common/tcp" + ], + "rules": [ + "/Common/_sys_https_redirect", + "/Common/app4_pool_rule" + ], + "policies": [ + "/Common/app4_ltPolicy" + ], + "ip-protocol": "tcp", + "last-modified-time": "2020-10-07:07:28:35", + "mask": "255.255.255.255", + "serverssl-use-sni": "disabled", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled", + "lines": [ "ltm virtual /Common/app4_t80_vs {\n description \"test pool references in irule extration and ltp\"\n destination /Common/192.168.2.25:80\n ip-protocol tcp\n last-modified-time 2020-10-07:07:28:35\n mask 255.255.255.255\n policies {\n /Common/app4_ltPolicy { }\n }\n pool /Common/app4_pool\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /Common/_sys_https_redirect\n /Common/app4_pool_rule\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address enabled\n translate-port enabled\n}", "ltm pool /Common/app4_pool {\n members {\n /Common/api.chucknorris.io:443 {\n fqdn {\n autopopulate enabled\n name api.chucknorris.io\n }\n }\n }\n}", "ltm node /Common/api.chucknorris.io {\n fqdn {\n address-family all\n autopopulate enabled\n name api.chucknorris.io\n }\n}", "ltm rule /Common/app4_pool_rule {\n### test rule for corkscrew\n\n # \n\nwhen HTTP_REQUEST {\n\n # pool reference by variable declaration\n set html-pool web1Pool\n\n if { [HTTP::path] ends_with \"*.css\" }{\n\n # regular pool refernce\n pool css_pool\n\n } elseif { [HTTP::path] ends_with \"*.jpg\" }{\n\n # pool member refernce\n pool jpg.pool member 10.10.10.1 80\n\n } elseif { [HTTP::path] ends_with \"*.js\" }{\n\n # another pool reference with special characters\n pool js.io_t80_pool \n\n } elseif { [HTTP::path] ends_with \"*.xx\" }{\n\n # pool reference not in tmos config\n ### *** seems the gui won't let you attach an irule to a vs with a pool that doesn't exist\n #pool missing_pool\n\n } elseif { [HTTP::path] ends_with \"*.txt\" }{\n\n # node reference\n node 10.10.10.1 80\n\n } else {\n\n # pool referenced by variable\n pool $html-pool\n\n }\n}\n}", - "ltm pool /Common/css_pool { }", - "ltm pool /Common/jpg.pool { }", - "ltm pool /Common/js.io_t80_pool { }", - "ltm policy /Common/app4_ltPolicy {\n controls { forwarding }\n description \"testing for pool extraction function\"\n requires { http }\n rules {\n css_pool_rule {\n actions {\n 0 {\n forward\n select\n pool /Common/css_pool\n }\n }\n conditions {\n 0 {\n http-uri\n scheme\n ends-with\n values { .css }\n }\n }\n }\n jpg_pool_rule {\n actions {\n 0 {\n forward\n select\n pool /Common/jpg.pool\n }\n }\n conditions {\n 0 {\n http-uri\n query-string\n ends-with\n values { .jpg }\n }\n }\n ordinal 1\n }\n js_pool_rule {\n actions {\n 0 {\n forward\n select\n pool /Common/js.io_t80_pool\n }\n }\n conditions {\n 0 {\n http-uri\n scheme\n ends-with\n values { .js }\n }\n }\n ordinal 2\n }\n txt_node {\n actions {\n 0 {\n forward\n select\n node 10.10.10.1\n }\n }\n conditions {\n 0 {\n http-uri\n scheme\n ends-with\n values { .txt }\n }\n }\n ordinal 3\n }\n }\n strategy /Common/first-match\n}" - ], - "map": { - "vsDest": "/Common/192.168.2.25:80", - "pool": [ - "/Common/api.chucknorris.io,/Common/api.chucknorris.io:443" - ], - "irule": { - "pools": [ - [ - "css_pool" - ], - [ - "jpg.pool", - "member", - "10.10.10.1", - "80" - ], - [ - "js.io_t80_pool" - ] - ] - } - } + "ltm policy /Common/app4_ltPolicy {\n controls { forwarding }\n description \"testing for pool extraction function\"\n requires { http }\n rules {\n css_pool_rule {\n actions {\n 0 {\n forward\n select\n pool /Common/css_pool\n }\n }\n conditions {\n 0 {\n http-uri\n scheme\n ends-with\n values { .css }\n }\n }\n }\n jpg_pool_rule {\n actions {\n 0 {\n forward\n select\n pool /Common/jpg.pool\n }\n }\n conditions {\n 0 {\n http-uri\n query-string\n ends-with\n values { .jpg }\n }\n }\n ordinal 1\n }\n js_pool_rule {\n actions {\n 0 {\n forward\n select\n pool /Common/js.io_t80_pool\n }\n }\n conditions {\n 0 {\n http-uri\n scheme\n ends-with\n values { .js }\n }\n }\n ordinal 2\n }\n txt_node {\n actions {\n 0 {\n forward\n select\n node 10.10.10.1\n }\n }\n conditions {\n 0 {\n http-uri\n scheme\n ends-with\n values { .txt }\n }\n }\n ordinal 3\n }\n }\n strategy /Common/first-match\n}", + "ltm pool css_pool { }", + "ltm pool jpg.pool { }", + "ltm pool js.io_t80_pool { }" + ] }, { - "name": "/Common/forwarder_net_0.0.0.0", - "configs": [ + "name": "forwarder_net_0.0.0.0", + "partition": "Common", + "destination": "0.0.0.0:0", + "profiles": [ + "/Common/fastl4_loose" + ], + "mask": "any", + "serverssl-use-sni": "disabled", + "source": "0.0.0.0/0", + "translate-address": "disabled", + "translate-port": "disabled", + "lines": [ "ltm virtual /Common/forwarder_net_0.0.0.0 {\n destination /Common/0.0.0.0:0\n ip-forward\n mask any\n profiles {\n /Common/fastl4_loose { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n translate-address disabled\n translate-port disabled\n}", "ltm profile fastl4 /Common/fastl4_loose {\n app-service none\n loose-close enabled\n loose-initialization enabled\n reset-on-timeout disabled\n syn-cookie-enable disabled\n}" - ], - "map": { - "vsDest": "/Common/0.0.0.0:0" - } + ] }, { - "name": "/foo/defaultsUDP_5555/serviceMain", - "configs": [ + "name": "serviceMain", + "partition": "foo", + "folder": "defaultsUDP_5555", + "destination": "192.50.2.1:5555", + "pool": { + "name": "defaultsUDP_5555_Pool1", + "partition": "foo", + "folder": "defaultsUDP_5555", + "members": { + "/foo/192.50.2.2:5555": { + "address": "192.50.2.2" + } + }, + "monitorQualifier": "min 1 of", + "monitor": [ + "/Common/gateway_icmp" + ], + "min-active-members": "1" + }, + "profiles": [ + "/Common/udp" + ], + "snat": "automap", + "persist": "/Common/source_addr", + "creation-time": "2020-10-06:13:27:20", + "description": "defaultsUDP_5555", + "ip-protocol": "udp", + "last-modified-time": "2020-10-06:13:27:20", + "mask": "255.255.255.255", + "serverssl-use-sni": "disabled", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled", + "lines": [ "ltm virtual /foo/defaultsUDP_5555/serviceMain {\n creation-time 2020-10-06:13:27:20\n description defaultsUDP_5555\n destination /foo/192.50.2.1:5555\n ip-protocol udp\n last-modified-time 2020-10-06:13:27:20\n mask 255.255.255.255\n persist {\n /Common/source_addr {\n default yes\n }\n }\n pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1\n profiles {\n /Common/udp { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n}", - "ltm pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1 {\n members {\n /foo/192.50.2.2:5555 {\n address 192.50.2.2\n metadata {\n source {\n value declaration\n }\n }\n }\n }\n min-active-members 1\n monitor min 1 of { /Common/gateway_icmp }\n}" + "ltm pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1 {\n members {\n /foo/192.50.2.2:5555 {\n address 192.50.2.2\n metadata {\n source {\n value declaration\n }\n }\n }\n }\n min-active-members 1\n monitor min 1 of { /Common/gateway_icmp }\n}", + "ltm node /foo/192.50.2.2 {\n address 192.50.2.2\n}" + ] + }, + { + "name": "t1.lab.io_80vs", + "partition": "foo", + "destination": "10.2.3.4:80", + "profiles": [ + "/Common/tcp" ], - "map": { - "vsDest": "/foo/192.50.2.1:5555" - } + "snat": { + "name": "testSnat1_pool", + "partition": "Common", + "members": [ + "1.1.1.1", + "1.1.1.2", + "1.1.1.3", + "1.1.1.4" + ] + }, + "creation-time": "2023-04-29:13:02:55", + "ip-protocol": "tcp", + "last-modified-time": "2023-04-29:13:02:55", + "mask": "255.255.255.255", + "serverssl-use-sni": "disabled", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled", + "lines": [ + "ltm virtual /foo/t1.lab.io_80vs {\n creation-time 2023-04-29:13:02:55\n destination /foo/10.2.3.4:80\n ip-protocol tcp\n last-modified-time 2023-04-29:13:02:55\n mask 255.255.255.255\n profiles {\n /Common/tcp { }\n }\n serverssl-use-sni disabled\n source 0.0.0.0/0\n source-address-translation {\n pool /Common/testSnat1_pool\n type snat\n }\n translate-address enabled\n translate-port enabled\n}", + "ltm snatpool /Common/testSnat1_pool { undefined }" + ] }, { - "name": "/hue-infra/hue-up/hue-up.benlab.io_t80_vs", - "configs": [ - "ltm virtual /hue-infra/hue-up/hue-up.benlab.io_t80_vs {\n description hue-up\n destination /hue-infra/192.168.200.29:80\n ip-protocol tcp\n last-modified-time 2022-04-03:14:25:43\n mask 255.255.255.255\n persist {\n /Common/cookie {\n default yes\n }\n }\n pool /hue-infra/hue-up/hue-up.benlab.io_t80_pool\n profiles {\n /Common/f5-tcp-progressive { }\n /Common/http { }\n }\n serverssl-use-sni disabled\n service-down-immediate-action reset\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n}", - "ltm pool /hue-infra/hue-up/hue-up.benlab.io_t80_pool {\n members {\n /hue-infra/10.200.30.29:80 {\n address 10.200.30.29\n metadata {\n source {\n value declaration\n }\n }\n }\n }\n min-active-members 1\n monitor min 1 of { /Common/http }\n}" + "name": "wiffle_redirect_vs", + "partition": "foo", + "description": "wiffle waffle baffle", + "profiles": [ + "/Common/http", + "/Common/tcp" + ], + "rules": [ + "/foo/HTTP-redirect-to-HTTPS" ], - "map": { - "vsDest": "" - } + "creation-time": "2023-02-02:13:10:03", + "last-modified-time": "2023-03-29:14:27:19", + "traffic-matching-criteria": "/foo/wiffle_redirect_trafficMatchCriteria", + "translate-address": "enabled", + "translate-port": "enabled", + "lines": [ + "ltm virtual /foo/wiffle_redirect_vs {\n creation-time 2023-02-02:13:10:03\n description \"wiffle waffle baffle\"\n ip-protocol tcp\n last-modified-time 2023-03-29:14:27:19\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n rules {\n /foo/HTTP-redirect-to-HTTPS\n }\n traffic-matching-criteria /foo/wiffle_redirect_trafficMatchCriteria\n translate-address enabled\n translate-port enabled\n}", + "ltm rule /foo/HTTP-redirect-to-HTTPS {\nwhen HTTP_REQUEST { HTTP::redirect https://[HTTP::host][HTTP::uri] }\n}" + ] }, { - "name": "/hue-infra/hue-up/hue-up.benlab.io_t443_vs", - "configs": [ - "ltm virtual /hue-infra/hue-up/hue-up.benlab.io_t443_vs {\n description hue-up\n destination /hue-infra/192.168.200.29:443\n ip-protocol tcp\n last-modified-time 2021-04-06:17:55:27\n mask 255.255.255.255\n persist {\n /Common/cookie {\n default yes\n }\n }\n pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool\n profiles {\n /Common/f5-tcp-progressive { }\n /Common/http { }\n }\n serverssl-use-sni disabled\n service-down-immediate-action reset\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n}", - "ltm pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool {\n members {\n /hue-infra/10.200.30.29:443 {\n address 10.200.30.29\n metadata {\n source {\n value declaration\n }\n }\n }\n }\n min-active-members 1\n monitor min 1 of { /Common/https }\n}" + "name": "app8_80vs", + "partition": "foo", + "destination": "1.19.8.18:80", + "pool": { + "name": "app8_pool", + "partition": "foo", + "monitor": [ + "/Common/http" + ] + }, + "profiles": [ + "/Common/http", + "/Common/tcp" + ], + "snat": "automap", + "creation-time": "2021-03-04:18:40:06", + "ip-protocol": "tcp", + "last-modified-time": "2021-03-04:18:40:06", + "mask": "255.255.255.255", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled", + "lines": [ + "ltm virtual /foo/app8_80vs {\n creation-time 2021-03-04:18:40:06\n destination /foo/1.19.8.18:80\n ip-protocol tcp\n last-modified-time 2021-03-04:18:40:06\n mask 255.255.255.255\n pool /foo/app8_pool\n profiles {\n /Common/http { }\n /Common/tcp { }\n }\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n}", + "ltm pool /foo/app8_pool {\n monitor /Common/http\n}" + ] + }, + { + "name": "hue-up.benlab.io_t80_vs", + "partition": "hue-infra", + "folder": "hue-up", + "destination": "192.168.200.29:80", + "pool": { + "name": "hue-up.benlab.io_t80_pool", + "partition": "hue-infra", + "folder": "hue-up", + "members": { + "/hue-infra/10.200.30.29:80": { + "address": "10.200.30.29" + } + }, + "monitorQualifier": "min 1 of", + "monitor": [ + "/Common/http" + ], + "min-active-members": "1" + }, + "profiles": [ + "/Common/f5-tcp-progressive", + "/Common/http" + ], + "snat": "automap", + "persist": "/Common/cookie", + "description": "hue-up", + "ip-protocol": "tcp", + "last-modified-time": "2022-04-03:14:25:43", + "mask": "255.255.255.255", + "serverssl-use-sni": "disabled", + "service-down-immediate-action": "reset", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled", + "lines": [ + "ltm virtual /hue-infra/hue-up/hue-up.benlab.io_t80_vs {\n description hue-up\n destination /hue-infra/192.168.200.29:80\n ip-protocol tcp\n last-modified-time 2022-04-03:14:25:43\n mask 255.255.255.255\n persist {\n /Common/cookie {\n default yes\n }\n }\n pool /hue-infra/hue-up/hue-up.benlab.io_t80_pool\n profiles {\n /Common/f5-tcp-progressive { }\n /Common/http { }\n }\n serverssl-use-sni disabled\n service-down-immediate-action reset\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n}", + "ltm pool /hue-infra/hue-up/hue-up.benlab.io_t80_pool {\n members {\n /hue-infra/10.200.30.29:80 {\n address 10.200.30.29\n metadata {\n source {\n value declaration\n }\n }\n }\n }\n min-active-members 1\n monitor min 1 of { /Common/http }\n}", + "ltm node /hue-infra/10.200.30.29 {\n address 10.200.30.29\n}" + ] + }, + { + "name": "hue-up.benlab.io_t443_vs", + "partition": "hue-infra", + "folder": "hue-up", + "destination": "192.168.200.29:443", + "pool": { + "name": "hue-up.benlab.io_t443_pool", + "partition": "hue-infra", + "folder": "hue-up", + "members": { + "/hue-infra/10.200.30.29:443": { + "address": "10.200.30.29" + } + }, + "monitorQualifier": "min 1 of", + "monitor": [ + "/Common/https" + ], + "min-active-members": "1" + }, + "profiles": [ + "/Common/f5-tcp-progressive", + "/Common/http" ], - "map": { - "vsDest": "" - } + "snat": "automap", + "persist": "/Common/cookie", + "description": "hue-up", + "ip-protocol": "tcp", + "last-modified-time": "2021-04-06:17:55:27", + "mask": "255.255.255.255", + "serverssl-use-sni": "disabled", + "service-down-immediate-action": "reset", + "source": "0.0.0.0/0", + "translate-address": "enabled", + "translate-port": "enabled", + "lines": [ + "ltm virtual /hue-infra/hue-up/hue-up.benlab.io_t443_vs {\n description hue-up\n destination /hue-infra/192.168.200.29:443\n ip-protocol tcp\n last-modified-time 2021-04-06:17:55:27\n mask 255.255.255.255\n persist {\n /Common/cookie {\n default yes\n }\n }\n pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool\n profiles {\n /Common/f5-tcp-progressive { }\n /Common/http { }\n }\n serverssl-use-sni disabled\n service-down-immediate-action reset\n source 0.0.0.0/0\n source-address-translation {\n type automap\n }\n translate-address enabled\n translate-port enabled\n}", + "ltm pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool {\n members {\n /hue-infra/10.200.30.29:443 {\n address 10.200.30.29\n metadata {\n source {\n value declaration\n }\n }\n }\n }\n min-active-members 1\n monitor min 1 of { /Common/https }\n}", + "ltm node /hue-infra/10.200.30.29 {\n address 10.200.30.29\n}" + ] } ], "gslb": [ { - "fqdn": "portal.benlab.io_a_pool", - "partition": "/Common/", + "fqdn": "benlab.io", + "partition": "Common", "type": "a", "pools": [ { @@ -285,12 +640,17 @@ "gtm wideip a /Common/benlab.io {\n pools {\n /Common/portal.benlab.io_a_pool {\n order 0\n }\n }\n}", "gtm pool a /Common/portal.benlab.io_a_pool { \n fallback-ip 75.55.157.193\n fallback-mode fallback-ip\n members {\n /Common/coreltm01_02:/Common/sslvpn_tcp443_vs {\n member-order 0\n }\n }\n }", "gtm server /Common/coreltm01_02 { \n datacenter /Common/home_dc\n devices {\n coreltm01 {\n addresses {\n 1.1.1.1 {\n translation 2.2.2.2\n }\n 10.200.30.5 { }\n }\n }\n coreltm02 {\n addresses {\n 10.200.30.6 { }\n }\n }\n }\n monitor /Common/bigip\n product bigip\n virtual-server-discovery enabled\n virtual-servers {\n /Common/bigiq.benlab.io_t443_vs {\n destination 10.200.244.15:443\n }\n /Common/dns_listener_coreltm2_tcp53_vs {\n destination 192.168.200.8:53\n }\n /Common/dns_listener_coreltm2_udp53_vs {\n destination 192.168.200.8:53\n }\n /Common/ipv6_listener {\n destination 2001:db8:200::7.53\n }\n /Common/russ.app/russ_iqdash_t80_vs {\n destination 192.168.200.160:80\n }\n /Common/sslvpn_tcp80_vs {\n destination 192.168.200.10:80\n }\n /Common/sslvpn_tcp443_vs {\n destination 192.168.200.10:443\n }\n /Common/test_listener_u53_vs {\n destination 192.168.200.7:53\n }\n /Sample_01/A1/serviceMain {\n destination 10.44.1.10:80\n }\n /com-load/Shared/loadhost-chd.openapi.starbucks.com_80 {\n destination 10.12.20.110:80\n }\n /com-load/Shared/loadhost-chd.openapi.starbucks.com_443 {\n destination 10.12.20.110:443\n }\n /core1_epic_01/epic/serviceMain {\n destination 10.0.1.10:80\n }\n /core1_pizza_02/pizza/serviceMain {\n destination 10.0.2.10:80\n }\n /external_proxy/extProxy/extExplicit_proxy_t8888_vs {\n destination 192.168.200.11:8888\n }\n /hue-infra/hue-up/hue-up.benlab.io_t80_vs {\n destination 192.168.200.29:80\n }\n /hue-infra/hue-up/hue-up.benlab.io_t443_vs {\n destination 192.168.200.29:443\n }\n /iqt1/iqt1/serviceMain {\n destination 192.168.200.164:443\n }\n /iqt1/iqt1/serviceMain-Redirect- {\n destination 192.168.200.164:80\n }\n /nas-infra/nas01/nas01_t0_vs {\n destination 192.168.200.27:0\n }\n /ntp-infra/ntp_vip/ntp_u123_vs {\n destination 192.168.200.9:123\n }\n /sap/main/ssl_bridge_443_vs {\n destination 172.24.82.67:443\n }\n /sap/main/ssl_bridge_443_vs-Redirect- {\n destination 172.24.82.67:80\n }\n /tenant_1/Shared/app1_443_vs {\n destination 172.24.80.163:443\n }\n /tenant_2/app_2/app2_443_vs {\n destination 172.24.80.217:443\n }\n /tenant_2/app_2/app2_443_vs-Redirect- {\n destination 172.24.80.217:80\n }\n /tenn1/app1/app1_t80_vs {\n destination 192.168.1.21:80\n }\n /tenn1/app1/app1_t443_vs {\n destination 192.168.1.21:443\n }\n /vcenter-infra/vcenter/vcenter.benlab.io_t443_vs {\n destination 192.168.200.50:443\n }\n test1 {\n depends-on {\n /Common/coreltm01_02:/Common/bigiq.benlab.io_t443_vs { }\n }\n destination 5.5.5.5:555\n monitor /Common/bigip\n translation-address 6.6.6.6\n translation-port 666\n }\n }\n }" + ], + "allPossibleDestinations": [ + "75.55.157.193", + "192.168.200.10:443" ] }, { - "fqdn": "bigiq.benlab.io_pool", - "partition": "/Common/", + "fqdn": "bigiq.benlab.io", + "partition": "Common", "type": "a", + "description": "complicated widip", "last-resort-pool": { "type": "a", "value": "/Common/bigiq.benlab.io_pool" @@ -351,17 +711,24 @@ } ], "lines": [ - "gtm wideip a /Common/bigiq.benlab.io {\n aliases {\n bq.benlab.io\n bq2.benlab.io\n burger.queen.no\n }\n last-resort-pool a /Common/bigiq.benlab.io_pool\n persistence enabled\n pool-lb-mode global-availability\n pools {\n /Common/bigiq.benlab.io_pool {\n order 0\n }\n /Common/esxi01.benlab.io {\n order 2\n ratio 4\n }\n /Common/esxi02.benlab.io {\n order 1\n }\n }\n rules {\n /Common/test_dns_rule\n }\n}", + "gtm wideip a /Common/bigiq.benlab.io {\n aliases {\n bq.benlab.io\n bq2.benlab.io\n burger.queen.no\n }\n description \"complicated widip\"\n last-resort-pool a /Common/bigiq.benlab.io_pool\n persistence enabled\n pool-lb-mode global-availability\n pools {\n /Common/bigiq.benlab.io_pool {\n order 0\n }\n /Common/esxi01.benlab.io {\n order 2\n ratio 4\n }\n /Common/esxi02.benlab.io {\n order 1\n }\n }\n rules {\n /Common/test_dns_rule\n }\n}", "gtm pool a /Common/bigiq.benlab.io_pool { \n alternate-mode fallback-ip\n fallback-ip 10.200.244.15\n fallback-mode fallback-ip\n load-balancing-mode global-availability\n members {\n /Common/coreltm01_02:/Common/bigiq.benlab.io_t443_vs {\n member-order 0\n }\n /Common/intouch01_02:/Common/tiki_web_t80_vs {\n member-order 1\n ratio 6\n }\n }\n verify-member-availability disabled\n }", "gtm server /Common/coreltm01_02 { \n datacenter /Common/home_dc\n devices {\n coreltm01 {\n addresses {\n 1.1.1.1 {\n translation 2.2.2.2\n }\n 10.200.30.5 { }\n }\n }\n coreltm02 {\n addresses {\n 10.200.30.6 { }\n }\n }\n }\n monitor /Common/bigip\n product bigip\n virtual-server-discovery enabled\n virtual-servers {\n /Common/bigiq.benlab.io_t443_vs {\n destination 10.200.244.15:443\n }\n /Common/dns_listener_coreltm2_tcp53_vs {\n destination 192.168.200.8:53\n }\n /Common/dns_listener_coreltm2_udp53_vs {\n destination 192.168.200.8:53\n }\n /Common/ipv6_listener {\n destination 2001:db8:200::7.53\n }\n /Common/russ.app/russ_iqdash_t80_vs {\n destination 192.168.200.160:80\n }\n /Common/sslvpn_tcp80_vs {\n destination 192.168.200.10:80\n }\n /Common/sslvpn_tcp443_vs {\n destination 192.168.200.10:443\n }\n /Common/test_listener_u53_vs {\n destination 192.168.200.7:53\n }\n /Sample_01/A1/serviceMain {\n destination 10.44.1.10:80\n }\n /com-load/Shared/loadhost-chd.openapi.starbucks.com_80 {\n destination 10.12.20.110:80\n }\n /com-load/Shared/loadhost-chd.openapi.starbucks.com_443 {\n destination 10.12.20.110:443\n }\n /core1_epic_01/epic/serviceMain {\n destination 10.0.1.10:80\n }\n /core1_pizza_02/pizza/serviceMain {\n destination 10.0.2.10:80\n }\n /external_proxy/extProxy/extExplicit_proxy_t8888_vs {\n destination 192.168.200.11:8888\n }\n /hue-infra/hue-up/hue-up.benlab.io_t80_vs {\n destination 192.168.200.29:80\n }\n /hue-infra/hue-up/hue-up.benlab.io_t443_vs {\n destination 192.168.200.29:443\n }\n /iqt1/iqt1/serviceMain {\n destination 192.168.200.164:443\n }\n /iqt1/iqt1/serviceMain-Redirect- {\n destination 192.168.200.164:80\n }\n /nas-infra/nas01/nas01_t0_vs {\n destination 192.168.200.27:0\n }\n /ntp-infra/ntp_vip/ntp_u123_vs {\n destination 192.168.200.9:123\n }\n /sap/main/ssl_bridge_443_vs {\n destination 172.24.82.67:443\n }\n /sap/main/ssl_bridge_443_vs-Redirect- {\n destination 172.24.82.67:80\n }\n /tenant_1/Shared/app1_443_vs {\n destination 172.24.80.163:443\n }\n /tenant_2/app_2/app2_443_vs {\n destination 172.24.80.217:443\n }\n /tenant_2/app_2/app2_443_vs-Redirect- {\n destination 172.24.80.217:80\n }\n /tenn1/app1/app1_t80_vs {\n destination 192.168.1.21:80\n }\n /tenn1/app1/app1_t443_vs {\n destination 192.168.1.21:443\n }\n /vcenter-infra/vcenter/vcenter.benlab.io_t443_vs {\n destination 192.168.200.50:443\n }\n test1 {\n depends-on {\n /Common/coreltm01_02:/Common/bigiq.benlab.io_t443_vs { }\n }\n destination 5.5.5.5:555\n monitor /Common/bigip\n translation-address 6.6.6.6\n translation-port 666\n }\n }\n }", "gtm server /Common/intouch01_02 { \n datacenter /Common/home_dc\n devices {\n intouch01 {\n addresses {\n 192.168.200.101 { }\n }\n }\n intouch02 {\n addresses {\n 192.168.200.102 { }\n }\n }\n }\n monitor /Common/bigip\n product bigip\n virtual-server-discovery enabled\n virtual-servers {\n /Common/cloverleaf_0_vs {\n destination 192.168.200.120:0\n }\n /Common/sldc_clvf_dev02.app/sldc_clvf_dev02_buffer_mgmt_t80_vs {\n destination 192.168.200.136:80\n }\n /Common/sldc_clvf_dev02.app/sldc_clvf_dev02_buffer_t8442_vs {\n destination 192.168.200.136:8442\n }\n /Common/sldc_clvf_dev02.app/sldc_clvf_dev02_main_t0_vs {\n destination 192.168.200.136:0\n }\n /Common/sldc_clvf_dev02.app/sldc_clvf_dev02_waterpark_t8443_vs {\n destination 192.168.200.136:8443\n }\n /Common/tiki_web_t80_vs {\n destination 192.168.200.120:80\n }\n }\n }", "gtm pool a /Common/esxi01.benlab.io { \n alternate-mode none\n fallback-ip 10.200.210.21\n fallback-mode fallback-ip\n load-balancing-mode fallback-ip\n }", "gtm pool a /Common/esxi02.benlab.io { \n alternate-mode none\n fallback-ip 10.200.210.22\n fallback-mode fallback-ip\n load-balancing-mode fallback-ip\n }" + ], + "allPossibleDestinations": [ + "10.200.244.15", + "10.200.244.15:443", + "192.168.200.120:80", + "10.200.210.21", + "10.200.210.22" ] }, { - "fqdn": "devCloud01.benlab.io_pool", - "partition": "/Common/", + "fqdn": "devCloud01.benlab.io", + "partition": "Common", "type": "a", "pools": [ { @@ -376,11 +743,28 @@ "lines": [ "gtm wideip a /Common/devCloud01.benlab.io {\n pools {\n /Common/devCloud01.benlab.io_pool {\n order 0\n }\n }\n}", "gtm pool a /Common/devCloud01.benlab.io_pool { \n fallback-ip 10.200.244.110\n fallback-mode fallback-ip\n load-balancing-mode fallback-ip\n }" + ], + "allPossibleDestinations": [ + "10.200.244.110" ] }, { - "fqdn": "unifi.benlab.io_pool", - "partition": "/Common/", + "fqdn": "piTime314a.int.sci.com", + "partition": "Common", + "type": "a", + "description": "wideip with no pool/destination", + "aliases": [ + "piTime314a.td.sci.com", + "piTime314a.it.io" + ], + "lines": [ + "gtm wideip a /Common/piTime314a.int.sci.com {\n aliases {\n piTime314a.td.sci.com\n piTime314a.it.io\n }\n description \"wideip with no pool/destination\"\n}" + ], + "allPossibleDestinations": [] + }, + { + "fqdn": "unifi.benlab.io", + "partition": "Common", "type": "a", "pools": [ { @@ -395,11 +779,15 @@ "lines": [ "gtm wideip a /Common/unifi.benlab.io {\n pools {\n /Common/unifi.benlab.io_pool {\n order 0\n }\n }\n}", "gtm pool a /Common/unifi.benlab.io_pool { \n fallback-ip 192.168.200.1\n fallback-mode fallback-ip\n load-balancing-mode fallback-ip\n }" + ], + "allPossibleDestinations": [ + "192.168.200.1" ] }, { - "fqdn": "hue-up.benlab.io_pool", - "partition": "/hue-infra/hue-up/", + "fqdn": "hue-up.benlab.io", + "partition": "hue-infra", + "folder": "hue-up", "type": "a", "aliases": [ "hueUp.benlab.io" @@ -426,860 +814,639 @@ "gtm wideip a /hue-infra/hue-up/hue-up.benlab.io {\n aliases {\n hueUp.benlab.io\n }\n pools {\n /hue-infra/hue-up/hue-up.benlab.io_pool {\n order 0\n }\n }\n}", "gtm pool a /hue-infra/hue-up/hue-up.benlab.io_pool { \n fallback-ip 10.200.30.29\n fallback-mode fallback-ip\n load-balancing-mode global-availability\n members {\n /Common/coreltm01_02:/hue-infra/hue-up/hue-up.benlab.io_t443_vs {\n member-order 0\n }\n }\n }", "gtm server /Common/coreltm01_02 { \n datacenter /Common/home_dc\n devices {\n coreltm01 {\n addresses {\n 1.1.1.1 {\n translation 2.2.2.2\n }\n 10.200.30.5 { }\n }\n }\n coreltm02 {\n addresses {\n 10.200.30.6 { }\n }\n }\n }\n monitor /Common/bigip\n product bigip\n virtual-server-discovery enabled\n virtual-servers {\n /Common/bigiq.benlab.io_t443_vs {\n destination 10.200.244.15:443\n }\n /Common/dns_listener_coreltm2_tcp53_vs {\n destination 192.168.200.8:53\n }\n /Common/dns_listener_coreltm2_udp53_vs {\n destination 192.168.200.8:53\n }\n /Common/ipv6_listener {\n destination 2001:db8:200::7.53\n }\n /Common/russ.app/russ_iqdash_t80_vs {\n destination 192.168.200.160:80\n }\n /Common/sslvpn_tcp80_vs {\n destination 192.168.200.10:80\n }\n /Common/sslvpn_tcp443_vs {\n destination 192.168.200.10:443\n }\n /Common/test_listener_u53_vs {\n destination 192.168.200.7:53\n }\n /Sample_01/A1/serviceMain {\n destination 10.44.1.10:80\n }\n /com-load/Shared/loadhost-chd.openapi.starbucks.com_80 {\n destination 10.12.20.110:80\n }\n /com-load/Shared/loadhost-chd.openapi.starbucks.com_443 {\n destination 10.12.20.110:443\n }\n /core1_epic_01/epic/serviceMain {\n destination 10.0.1.10:80\n }\n /core1_pizza_02/pizza/serviceMain {\n destination 10.0.2.10:80\n }\n /external_proxy/extProxy/extExplicit_proxy_t8888_vs {\n destination 192.168.200.11:8888\n }\n /hue-infra/hue-up/hue-up.benlab.io_t80_vs {\n destination 192.168.200.29:80\n }\n /hue-infra/hue-up/hue-up.benlab.io_t443_vs {\n destination 192.168.200.29:443\n }\n /iqt1/iqt1/serviceMain {\n destination 192.168.200.164:443\n }\n /iqt1/iqt1/serviceMain-Redirect- {\n destination 192.168.200.164:80\n }\n /nas-infra/nas01/nas01_t0_vs {\n destination 192.168.200.27:0\n }\n /ntp-infra/ntp_vip/ntp_u123_vs {\n destination 192.168.200.9:123\n }\n /sap/main/ssl_bridge_443_vs {\n destination 172.24.82.67:443\n }\n /sap/main/ssl_bridge_443_vs-Redirect- {\n destination 172.24.82.67:80\n }\n /tenant_1/Shared/app1_443_vs {\n destination 172.24.80.163:443\n }\n /tenant_2/app_2/app2_443_vs {\n destination 172.24.80.217:443\n }\n /tenant_2/app_2/app2_443_vs-Redirect- {\n destination 172.24.80.217:80\n }\n /tenn1/app1/app1_t80_vs {\n destination 192.168.1.21:80\n }\n /tenn1/app1/app1_t443_vs {\n destination 192.168.1.21:443\n }\n /vcenter-infra/vcenter/vcenter.benlab.io_t443_vs {\n destination 192.168.200.50:443\n }\n test1 {\n depends-on {\n /Common/coreltm01_02:/Common/bigiq.benlab.io_t443_vs { }\n }\n destination 5.5.5.5:555\n monitor /Common/bigip\n translation-address 6.6.6.6\n translation-port 666\n }\n }\n }" + ], + "allPossibleDestinations": [ + "10.200.30.29", + "192.168.200.29:443" ] } ] }, "stats": { - "objectCount": 406, - "sourceSize": 43567, + "objectCount": 423, + "sourceSize": 45827, "objects": { - "virtuals": 11, + "virtuals": 15, "profiles": 6, "policies": 3, - "pools": 11, - "irules": 5, + "pools": 13, + "irules": 6, "monitors": 6, "nodes": 13, - "snatPools": 1, + "snatPools": 2, "gtm": { "datacenters": 1, "regions": 3, "servers": 5, "pools": 17, - "wideips": 5 + "wideips": 6 }, "apmPolicies": 3, "apmProfiles": 3, - "asmPolicies": 1 + "asmPolicies": 1, + "botProfiles": 1, + "dosProfiles": 3 }, "sourceTmosVersion": "15.1.8.2", - "parseTime": 25.5324, - "appTime": 2.5017, - "fqdnTime": 0.5226, - "packTime": 0.6334 + "parseTime": 48.6973, + "appTime": 1.5958, + "fqdnTime": 0.4956, + "packTime": 1.1301 }, "logs": [ - "[2023-04-27T20:22:44.883Z] DeBuG: 'regular date log message'", - "[4/27/2023, 3:22:44 PM] DeBuG: 'toLocalString date log message'", - "[Thu, 27 Apr 2023 20:22:44 GMT] DeBuG: 'to UTC date log message'", - "[2023-04-27T20:22:47.057Z] [ERROR]: >v19.0.0.0 tmos detected - this should never happen!!!", - "[2023-04-27T20:22:47.058Z] [ERROR]: automap", - "[2023-04-27T20:22:48.027Z] [DEBUG]: [/Common/app1_t443_vs] found snat configuration \n type automap", - "[2023-04-27T20:22:48.027Z] [INFO]: digging vs config for /Common/app2_t80_vs", - "[2023-04-27T20:22:48.027Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:48.028Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:48.028Z] [DEBUG]: [/Common/app2_t80_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:48.028Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect' ]", - "[2023-04-27T20:22:48.028Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details", - "[2023-04-27T20:22:48.028Z] [DEBUG]: [/Common/app2_t80_vs] found the following rules \n /Common/_sys_https_redirect", - "[2023-04-27T20:22:48.028Z] [INFO]: digging vs config for /Common/bigiq.benlab.io_t443_vs", - "[2023-04-27T20:22:48.028Z] [DEBUG]: digging pool config for /Common/bigiq.benlab.io_t443_pool", - "[2023-04-27T20:22:48.028Z] [DEBUG]: Pool /Common/bigiq.benlab.io_t443_pool members found: [ '/Common/10.200.244.15' ]", - "[2023-04-27T20:22:48.028Z] [DEBUG]: pool monitor references found: [ '/Common/https_head_f5' ]", - "[2023-04-27T20:22:48.028Z] [DEBUG]: pool monitor configs found: []", - "[2023-04-27T20:22:48.028Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_pool] references 1 system default monitors, compare previous arrays for details", - "[2023-04-27T20:22:48.028Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following pool /Common/bigiq.benlab.io_t443_pool", - "[2023-04-27T20:22:48.028Z] [DEBUG]: profile references found: [\n '/Common/ASM_basic_policy_1',\n '/Common/f5-tcp-progressive',\n '/Common/http',\n '/Common/websecurity'\n]", - "[2023-04-27T20:22:48.028Z] [DEBUG]: Found 4 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:48.028Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following profiles \n /Common/ASM_basic_policy_1 { }\n /Common/f5-tcp-progressive { }\n /Common/http { }\n /Common/websecurity { }", - "[2023-04-27T20:22:48.028Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:48.028Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found snat configuration \n type automap", - "[2023-04-27T20:22:48.028Z] [DEBUG]: policy references found: [ '/Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs' ]", - "[2023-04-27T20:22:48.028Z] [DEBUG]: policy found [/Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs]", - "[2023-04-27T20:22:48.028Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following policies \n /Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs { }", - "[2023-04-27T20:22:48.029Z] [INFO]: digging vs config for /Common/app2_t443_vs", - "[2023-04-27T20:22:48.029Z] [DEBUG]: digging pool config for /Common/app2_t80_pool", - "[2023-04-27T20:22:48.029Z] [DEBUG]: Pool /Common/app2_t80_pool members found: [ '/Common/app2_Node1', '/Common/app2_Node2' ]", - "[2023-04-27T20:22:48.029Z] [DEBUG]: pool monitor references found: [ '/Common/global_http_monitor', '/Common/global_https_monitor' ]", - "[2023-04-27T20:22:48.029Z] [DEBUG]: pool monitor configs found: [\n 'ltm monitor http /Common/global_http_monitor {\\n' +\n ' adaptive disabled\\n' +\n ' defaults-from /Common/http\\n' +\n ' interval 5\\n' +\n ' ip-dscp 0\\n' +\n ' recv \"ok 200\"\\n' +\n ' recv-disable none\\n' +\n ' send \"GET /anywebsite.com\\\\r\\\\n\"\\n' +\n ' time-until-up 0\\n' +\n ' timeout 16\\n' +\n '}',\n 'ltm monitor https /Common/global_https_monitor {\\n' +\n ' adaptive disabled\\n' +\n ' defaults-from /Common/https\\n' +\n ' interval 5\\n' +\n ' ip-dscp 0\\n' +\n ' recv \"201 continue\"\\n' +\n ' recv-disable none\\n' +\n ' send \"GET /any-secure-website.com\\\\r\\\\n\"\\n' +\n ' time-until-up 0\\n' +\n ' timeout 16\\n' +\n '}'\n]", - "[2023-04-27T20:22:48.029Z] [DEBUG]: [/Common/app2_t443_vs] found the following pool /Common/app2_t80_pool", - "[2023-04-27T20:22:48.029Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:48.029Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:48.029Z] [DEBUG]: [/Common/app2_t443_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:48.029Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:48.029Z] [DEBUG]: [/Common/app2_t443_vs] found snat configuration \n type automap", - "[2023-04-27T20:22:48.029Z] [INFO]: digging vs config for /Common/app3_t8443_vs", - "[2023-04-27T20:22:48.029Z] [DEBUG]: digging pool config for /Common/app3_t8443_pool", - "[2023-04-27T20:22:48.029Z] [DEBUG]: Pool /Common/app3_t8443_pool members found: [ '/Common/app3_Node1', '/Common/app3_Node2' ]", - "[2023-04-27T20:22:48.029Z] [DEBUG]: pool monitor references found: [\n '/Common/app1_tcp_half_open_quick_monitor',\n '/Common/http_head_f5',\n '/Common/http2_head_f5',\n '/Common/http',\n '/Common/tcp_half_open'\n]", - "[2023-04-27T20:22:48.030Z] [DEBUG]: pool monitor configs found: [\n 'ltm monitor tcp-half-open /Common/app1_tcp_half_open_quick_monitor {\\n' +\n ' defaults-from /Common/tcp_half_open\\n' +\n ' destination *:*\\n' +\n ' interval 1\\n' +\n ' time-until-up 0\\n' +\n ' timeout 4\\n' +\n '}'\n]", - "[2023-04-27T20:22:48.030Z] [DEBUG]: [/Common/app3_t8443_pool] references 4 system default monitors, compare previous arrays for details", - "[2023-04-27T20:22:48.030Z] [DEBUG]: [/Common/app3_t8443_vs] found the following pool /Common/app3_t8443_pool", - "[2023-04-27T20:22:48.030Z] [DEBUG]: profile references found: [\n '/Common/app3_clientssl',\n '/Common/app3_serverssl',\n '/Common/http',\n '/Common/tcp'\n]", - "[2023-04-27T20:22:48.030Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:48.030Z] [DEBUG]: [/Common/app3_t8443_vs] found the following profiles \n /Common/app3_clientssl {\n context clientside\n }\n /Common/app3_serverssl {\n context serverside\n }\n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:48.030Z] [DEBUG]: rule references found: [ '/Common/app3_rule', '/Common/app3_rule2', '/Common/app3_rule3' ]", - "[2023-04-27T20:22:48.030Z] [DEBUG]: [/Common/app3_t8443_vs] found the following rules \n /Common/app3_rule\n /Common/app3_rule2\n /Common/app3_rule3", - "[2023-04-27T20:22:48.030Z] [DEBUG]: [/Common/app3_t8443_vs] found snat configuration \n pool /Common/app3_snat_pool\n type snat", - "[2023-04-27T20:22:48.030Z] [DEBUG]: policy references found: [ '/Common/app3_ltm_policy' ]", - "[2023-04-27T20:22:48.030Z] [DEBUG]: policy found [/Common/app3_ltm_policy]", - "[2023-04-27T20:22:48.031Z] [DEBUG]: [/Common/app3_t8443_vs] found the following policies \n /Common/app3_ltm_policy { }", - "[2023-04-27T20:22:48.031Z] [DEBUG]: [/Common/app3_t8443_vs] found the following persistence \n /Common/app3_cookie {\n default yes\n }", - "[2023-04-27T20:22:48.031Z] [DEBUG]: [/Common/app3_t8443_vs] found the following persistence /Common/app3_srcAddr_persist", - "[2023-04-27T20:22:48.031Z] [INFO]: digging vs config for /Common/app4_t80_vs", - "[2023-04-27T20:22:48.031Z] [DEBUG]: digging pool config for /Common/app4_pool", - "[2023-04-27T20:22:48.031Z] [DEBUG]: Pool /Common/app4_pool members found: [ '/Common/api.chucknorris.io' ]", - "[2023-04-27T20:22:48.031Z] [DEBUG]: [/Common/app4_t80_vs] found the following pool /Common/app4_pool", - "[2023-04-27T20:22:48.031Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:48.031Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:48.031Z] [DEBUG]: [/Common/app4_t80_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:48.031Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect', '/Common/app4_pool_rule' ]", - "[2023-04-27T20:22:48.031Z] [DEBUG]: digging pool config for /Common/css_pool", - "[2023-04-27T20:22:48.031Z] [DEBUG]: digging pool config for /Common/jpg.pool", - "[2023-04-27T20:22:48.031Z] [DEBUG]: digging pool config for /Common/js.io_t80_pool", - "[2023-04-27T20:22:48.031Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details", - "[2023-04-27T20:22:48.032Z] [DEBUG]: [/Common/app4_t80_vs] found the following rules \n /Common/_sys_https_redirect\n /Common/app4_pool_rule", - "[2023-04-27T20:22:48.032Z] [DEBUG]: policy references found: [ '/Common/app4_ltPolicy' ]", - "[2023-04-27T20:22:48.032Z] [DEBUG]: policy found [/Common/app4_ltPolicy]", - "[2023-04-27T20:22:48.032Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/css_pool]", - "[2023-04-27T20:22:48.032Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/jpg.pool]", - "[2023-04-27T20:22:48.032Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/js.io_t80_pool]", - "[2023-04-27T20:22:48.032Z] [DEBUG]: [/Common/app4_t80_vs] found the following policies \n /Common/app4_ltPolicy { }", - "[2023-04-27T20:22:48.032Z] [INFO]: digging vs config for /Common/forwarder_net_0.0.0.0", - "[2023-04-27T20:22:48.032Z] [DEBUG]: profile references found: [ '/Common/fastl4_loose' ]", - "[2023-04-27T20:22:48.032Z] [DEBUG]: [/Common/forwarder_net_0.0.0.0] found the following profiles \n /Common/fastl4_loose { }", - "[2023-04-27T20:22:48.032Z] [INFO]: digging vs config for /foo/defaultsUDP_5555/serviceMain", - "[2023-04-27T20:22:48.032Z] [DEBUG]: digging pool config for /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1", - "[2023-04-27T20:22:48.032Z] [DEBUG]: Pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1 members found: [ '/foo/192.50.2.2' ]", - "[2023-04-27T20:22:48.032Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found the following pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1", - "[2023-04-27T20:22:48.032Z] [DEBUG]: profile references found: [ '/Common/udp' ]", - "[2023-04-27T20:22:48.032Z] [DEBUG]: Found 1 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:48.032Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found the following profiles \n /Common/udp { }", - "[2023-04-27T20:22:48.032Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:48.032Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found snat configuration \n type automap", - "[2023-04-27T20:22:48.032Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found the following persistence \n /Common/source_addr {\n default yes\n }", - "[2023-04-27T20:22:48.032Z] [INFO]: digging vs config for /hue-infra/hue-up/hue-up.benlab.io_t80_vs", - "[2023-04-27T20:22:48.032Z] [DEBUG]: digging pool config for /hue-infra/hue-up/hue-up.benlab.io_t80_pool", - "[2023-04-27T20:22:48.032Z] [DEBUG]: Pool /hue-infra/hue-up/hue-up.benlab.io_t80_pool members found: null", - "[2023-04-27T20:22:48.032Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found the following pool /hue-infra/hue-up/hue-up.benlab.io_t80_pool", - "[2023-04-27T20:22:48.032Z] [DEBUG]: profile references found: [ '/Common/f5-tcp-progressive', '/Common/http' ]", - "[2023-04-27T20:22:48.032Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:48.032Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found the following profiles \n /Common/f5-tcp-progressive { }\n /Common/http { }", - "[2023-04-27T20:22:48.032Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:48.032Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found snat configuration \n type automap", - "[2023-04-27T20:22:48.032Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found the following persistence \n /Common/cookie {\n default yes\n }", - "[2023-04-27T20:22:48.032Z] [INFO]: digging vs config for /hue-infra/hue-up/hue-up.benlab.io_t443_vs", - "[2023-04-27T20:22:48.032Z] [DEBUG]: digging pool config for /hue-infra/hue-up/hue-up.benlab.io_t443_pool", - "[2023-04-27T20:22:48.032Z] [DEBUG]: Pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool members found: null", - "[2023-04-27T20:22:48.032Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found the following pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool", - "[2023-04-27T20:22:48.033Z] [DEBUG]: profile references found: [ '/Common/f5-tcp-progressive', '/Common/http' ]", - "[2023-04-27T20:22:48.033Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:48.033Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found the following profiles \n /Common/f5-tcp-progressive { }\n /Common/http { }", - "[2023-04-27T20:22:48.033Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:48.033Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found snat configuration \n type automap", - "[2023-04-27T20:22:48.033Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found the following persistence \n /Common/cookie {\n default yes\n }", - "[2023-04-27T20:22:48.034Z] [INFO]: digging DO classes for base config info", - "[2023-04-27T20:22:48.034Z] [DEBUG]: no path \"cli global-settings\" in object", - "[2023-04-27T20:22:48.034Z] [DEBUG]: no path \"sys db\" in object", - "[2023-04-27T20:22:48.034Z] [DEBUG]: no path \"net trunk\" in object", - "[2023-04-27T20:22:48.034Z] [DEBUG]: no path \"net self\" in object", - "[2023-04-27T20:22:48.034Z] [DEBUG]: no path \"net route\" in object", - "[2023-04-27T20:22:48.034Z] [DEBUG]: no path \"net routing access-list\" in object", - "[2023-04-27T20:22:48.034Z] [DEBUG]: no path \"net routing as-path\" in object", - "[2023-04-27T20:22:48.034Z] [DEBUG]: no path \"net routing prefix-list\" in object", - "[2023-04-27T20:22:48.034Z] [DEBUG]: no path \"net routing route-map\" in object", - "[2023-04-27T20:22:48.034Z] [DEBUG]: no path \"net routing bgp\" in object", - "[2023-04-27T20:22:48.034Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", - "[2023-04-27T20:22:48.034Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", - "[2023-04-27T20:22:48.034Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", - "[2023-04-27T20:22:48.034Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", - "[2023-04-27T20:22:48.034Z] [DEBUG]: no path \"cm device-group\" in object", - "[2023-04-27T20:22:48.034Z] [DEBUG]: no path \"cm traffic-group\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"cm traffic-group\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"sys syslog\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"auth tacacs\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"auth remote-role role-info\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"auth ldap\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"sys snmp traps\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"sys snmp users\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"sys snmp communities\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"net dag-globals\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"ltm global-settings traffic-control\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"sys sshd\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"net tunnels vxlan\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"sys disk directory\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"gtm monitor http\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"gtm monitor https\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"gtm monitor gateway-icmp\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"gtm monitor tcp\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"gtm monitor udp\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"gtm prober-pool\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"security firewall policy\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"security firewall address-list\" in object", - "[2023-04-27T20:22:48.035Z] [DEBUG]: no path \"security firewall management-ip-rules\" in object", - "[2023-04-27T20:22:48.567Z] [DEBUG]: detected file: [/home/ted/f5-corkscrew/tests/artifacts/f5_corkscrew_test.qkview], size: [2580499]", - "[2023-04-27T20:22:48.569Z] [INFO]: config/profile_base.conf: default profile base file, stashing for later", - "[2023-04-27T20:22:48.569Z] [INFO]: config/low_profile_base.conf: default profile base file, stashing for later", - "[2023-04-27T20:22:48.570Z] [INFO]: Recieved .conf file of version: 15.1.8.2", - "[2023-04-27T20:22:48.841Z] [INFO]: digging vs config for /Common/app1_t80_vs", - "[2023-04-27T20:22:48.842Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:48.842Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:48.842Z] [DEBUG]: [/Common/app1_t80_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:48.842Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect' ]", - "[2023-04-27T20:22:48.842Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details", - "[2023-04-27T20:22:48.842Z] [DEBUG]: [/Common/app1_t80_vs] found the following rules \n /Common/_sys_https_redirect", - "[2023-04-27T20:22:48.842Z] [INFO]: digging vs config for /Common/app1_t443_vs", - "[2023-04-27T20:22:48.842Z] [DEBUG]: digging pool config for /Common/app1_t80_pool", - "[2023-04-27T20:22:48.843Z] [DEBUG]: Pool /Common/app1_t80_pool members found: [ '/Common/app1_Node1', '/Common/app1_Node2' ]", - "[2023-04-27T20:22:48.843Z] [DEBUG]: pool monitor references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:48.843Z] [DEBUG]: pool monitor configs found: []", - "[2023-04-27T20:22:48.843Z] [DEBUG]: [/Common/app1_t80_pool] references 2 system default monitors, compare previous arrays for details", - "[2023-04-27T20:22:48.843Z] [DEBUG]: [/Common/app1_t443_vs] found the following pool /Common/app1_t80_pool", - "[2023-04-27T20:22:48.843Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:48.843Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:48.843Z] [DEBUG]: [/Common/app1_t443_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:48.843Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:48.843Z] [DEBUG]: [/Common/app1_t443_vs] found snat configuration \n type automap", - "[2023-04-27T20:22:48.843Z] [INFO]: digging vs config for /Common/app2_t80_vs", - "[2023-04-27T20:22:48.843Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:48.843Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:48.843Z] [DEBUG]: [/Common/app2_t80_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:48.843Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect' ]", - "[2023-04-27T20:22:48.843Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details", - "[2023-04-27T20:22:48.843Z] [DEBUG]: [/Common/app2_t80_vs] found the following rules \n /Common/_sys_https_redirect", - "[2023-04-27T20:22:48.843Z] [INFO]: digging vs config for /Common/bigiq.benlab.io_t443_vs", - "[2023-04-27T20:22:48.843Z] [DEBUG]: digging pool config for /Common/bigiq.benlab.io_t443_pool", - "[2023-04-27T20:22:48.843Z] [DEBUG]: Pool /Common/bigiq.benlab.io_t443_pool members found: [ '/Common/10.200.244.15' ]", - "[2023-04-27T20:22:48.843Z] [DEBUG]: pool monitor references found: [ '/Common/https_head_f5' ]", - "[2023-04-27T20:22:48.843Z] [DEBUG]: pool monitor configs found: []", - "[2023-04-27T20:22:48.843Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_pool] references 1 system default monitors, compare previous arrays for details", - "[2023-04-27T20:22:48.843Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following pool /Common/bigiq.benlab.io_t443_pool", - "[2023-04-27T20:22:48.843Z] [DEBUG]: profile references found: [\n '/Common/ASM_basic_policy_1',\n '/Common/f5-tcp-progressive',\n '/Common/http',\n '/Common/websecurity'\n]", - "[2023-04-27T20:22:48.844Z] [DEBUG]: Found 4 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:48.844Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following profiles \n /Common/ASM_basic_policy_1 { }\n /Common/f5-tcp-progressive { }\n /Common/http { }\n /Common/websecurity { }", - "[2023-04-27T20:22:48.844Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:48.844Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found snat configuration \n type automap", - "[2023-04-27T20:22:48.844Z] [DEBUG]: policy references found: [ '/Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs' ]", - "[2023-04-27T20:22:48.844Z] [DEBUG]: policy found [/Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs]", - "[2023-04-27T20:22:48.844Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following policies \n /Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs { }", - "[2023-04-27T20:22:48.845Z] [INFO]: digging vs config for /Common/app2_t443_vs", - "[2023-04-27T20:22:48.845Z] [DEBUG]: digging pool config for /Common/app2_t80_pool", - "[2023-04-27T20:22:48.845Z] [DEBUG]: Pool /Common/app2_t80_pool members found: [ '/Common/app2_Node1', '/Common/app2_Node2' ]", - "[2023-04-27T20:22:48.845Z] [DEBUG]: pool monitor references found: [ '/Common/global_http_monitor', '/Common/global_https_monitor' ]", - "[2023-04-27T20:22:48.845Z] [DEBUG]: pool monitor configs found: [\n 'ltm monitor http /Common/global_http_monitor {\\n' +\n ' adaptive disabled\\n' +\n ' defaults-from /Common/http\\n' +\n ' interval 5\\n' +\n ' ip-dscp 0\\n' +\n ' recv \"ok 200\"\\n' +\n ' recv-disable none\\n' +\n ' send \"GET /anywebsite.com\\\\r\\\\n\"\\n' +\n ' time-until-up 0\\n' +\n ' timeout 16\\n' +\n '}',\n 'ltm monitor https /Common/global_https_monitor {\\n' +\n ' adaptive disabled\\n' +\n ' defaults-from /Common/https\\n' +\n ' interval 5\\n' +\n ' ip-dscp 0\\n' +\n ' recv \"201 continue\"\\n' +\n ' recv-disable none\\n' +\n ' send \"GET /any-secure-website.com\\\\r\\\\n\"\\n' +\n ' time-until-up 0\\n' +\n ' timeout 16\\n' +\n '}'\n]", - "[2023-04-27T20:22:48.845Z] [DEBUG]: [/Common/app2_t443_vs] found the following pool /Common/app2_t80_pool", - "[2023-04-27T20:22:48.845Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:48.845Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:48.845Z] [DEBUG]: [/Common/app2_t443_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:48.845Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:48.845Z] [DEBUG]: [/Common/app2_t443_vs] found snat configuration \n type automap", - "[2023-04-27T20:22:48.845Z] [INFO]: digging vs config for /Common/app3_t8443_vs", - "[2023-04-27T20:22:48.845Z] [DEBUG]: digging pool config for /Common/app3_t8443_pool", - "[2023-04-27T20:22:48.845Z] [DEBUG]: Pool /Common/app3_t8443_pool members found: [ '/Common/app3_Node1', '/Common/app3_Node2' ]", - "[2023-04-27T20:22:48.845Z] [DEBUG]: pool monitor references found: [\n '/Common/app1_tcp_half_open_quick_monitor',\n '/Common/http_head_f5',\n '/Common/http2_head_f5',\n '/Common/http',\n '/Common/tcp_half_open'\n]", - "[2023-04-27T20:22:48.845Z] [DEBUG]: pool monitor configs found: [\n 'ltm monitor tcp-half-open /Common/app1_tcp_half_open_quick_monitor {\\n' +\n ' defaults-from /Common/tcp_half_open\\n' +\n ' destination *:*\\n' +\n ' interval 1\\n' +\n ' time-until-up 0\\n' +\n ' timeout 4\\n' +\n '}'\n]", - "[2023-04-27T20:22:48.845Z] [DEBUG]: [/Common/app3_t8443_pool] references 4 system default monitors, compare previous arrays for details", - "[2023-04-27T20:22:48.845Z] [DEBUG]: [/Common/app3_t8443_vs] found the following pool /Common/app3_t8443_pool", - "[2023-04-27T20:22:48.845Z] [DEBUG]: profile references found: [\n '/Common/app3_clientssl',\n '/Common/app3_serverssl',\n '/Common/http',\n '/Common/tcp'\n]", - "[2023-04-27T20:22:48.845Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:48.845Z] [DEBUG]: [/Common/app3_t8443_vs] found the following profiles \n /Common/app3_clientssl {\n context clientside\n }\n /Common/app3_serverssl {\n context serverside\n }\n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:48.845Z] [DEBUG]: rule references found: [ '/Common/app3_rule', '/Common/app3_rule2', '/Common/app3_rule3' ]", - "[2023-04-27T20:22:48.846Z] [DEBUG]: [/Common/app3_t8443_vs] found the following rules \n /Common/app3_rule\n /Common/app3_rule2\n /Common/app3_rule3", - "[2023-04-27T20:22:48.846Z] [DEBUG]: [/Common/app3_t8443_vs] found snat configuration \n pool /Common/app3_snat_pool\n type snat", - "[2023-04-27T20:22:48.846Z] [DEBUG]: policy references found: [ '/Common/app3_ltm_policy' ]", - "[2023-04-27T20:22:48.846Z] [DEBUG]: policy found [/Common/app3_ltm_policy]", - "[2023-04-27T20:22:48.846Z] [DEBUG]: [/Common/app3_t8443_vs] found the following policies \n /Common/app3_ltm_policy { }", - "[2023-04-27T20:22:48.846Z] [DEBUG]: [/Common/app3_t8443_vs] found the following persistence \n /Common/app3_cookie {\n default yes\n }", - "[2023-04-27T20:22:48.846Z] [DEBUG]: [/Common/app3_t8443_vs] found the following persistence /Common/app3_srcAddr_persist", - "[2023-04-27T20:22:48.846Z] [INFO]: digging vs config for /Common/app4_t80_vs", - "[2023-04-27T20:22:48.846Z] [DEBUG]: digging pool config for /Common/app4_pool", - "[2023-04-27T20:22:48.846Z] [DEBUG]: Pool /Common/app4_pool members found: [ '/Common/api.chucknorris.io' ]", - "[2023-04-27T20:22:48.846Z] [DEBUG]: [/Common/app4_t80_vs] found the following pool /Common/app4_pool", - "[2023-04-27T20:22:48.846Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:48.846Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:48.846Z] [DEBUG]: [/Common/app4_t80_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:48.846Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect', '/Common/app4_pool_rule' ]", - "[2023-04-27T20:22:48.846Z] [DEBUG]: digging pool config for /Common/css_pool", - "[2023-04-27T20:22:48.846Z] [DEBUG]: digging pool config for /Common/jpg.pool", - "[2023-04-27T20:22:48.846Z] [DEBUG]: digging pool config for /Common/js.io_t80_pool", - "[2023-04-27T20:22:48.847Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details", - "[2023-04-27T20:22:48.847Z] [DEBUG]: [/Common/app4_t80_vs] found the following rules \n /Common/_sys_https_redirect\n /Common/app4_pool_rule", - "[2023-04-27T20:22:48.847Z] [DEBUG]: policy references found: [ '/Common/app4_ltPolicy' ]", - "[2023-04-27T20:22:48.847Z] [DEBUG]: policy found [/Common/app4_ltPolicy]", - "[2023-04-27T20:22:48.847Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/css_pool]", - "[2023-04-27T20:22:48.847Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/jpg.pool]", - "[2023-04-27T20:22:48.847Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/js.io_t80_pool]", - "[2023-04-27T20:22:48.847Z] [DEBUG]: [/Common/app4_t80_vs] found the following policies \n /Common/app4_ltPolicy { }", - "[2023-04-27T20:22:48.847Z] [INFO]: digging vs config for /Common/forwarder_net_0.0.0.0", - "[2023-04-27T20:22:48.847Z] [DEBUG]: profile references found: [ '/Common/fastl4_loose' ]", - "[2023-04-27T20:22:48.847Z] [DEBUG]: [/Common/forwarder_net_0.0.0.0] found the following profiles \n /Common/fastl4_loose { }", - "[2023-04-27T20:22:48.847Z] [INFO]: digging vs config for /foo/defaultsUDP_5555/serviceMain", - "[2023-04-27T20:22:48.847Z] [DEBUG]: digging pool config for /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1", - "[2023-04-27T20:22:48.847Z] [DEBUG]: Pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1 members found: [ '/foo/192.50.2.2' ]", - "[2023-04-27T20:22:48.847Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found the following pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1", - "[2023-04-27T20:22:48.847Z] [DEBUG]: profile references found: [ '/Common/udp' ]", - "[2023-04-27T20:22:48.847Z] [DEBUG]: Found 1 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:48.847Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found the following profiles \n /Common/udp { }", - "[2023-04-27T20:22:48.847Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:48.847Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found snat configuration \n type automap", - "[2023-04-27T20:22:48.847Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found the following persistence \n /Common/source_addr {\n default yes\n }", - "[2023-04-27T20:22:48.847Z] [INFO]: digging vs config for /hue-infra/hue-up/hue-up.benlab.io_t80_vs", - "[2023-04-27T20:22:48.847Z] [DEBUG]: digging pool config for /hue-infra/hue-up/hue-up.benlab.io_t80_pool", - "[2023-04-27T20:22:48.847Z] [DEBUG]: Pool /hue-infra/hue-up/hue-up.benlab.io_t80_pool members found: null", - "[2023-04-27T20:22:48.847Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found the following pool /hue-infra/hue-up/hue-up.benlab.io_t80_pool", - "[2023-04-27T20:22:48.847Z] [DEBUG]: profile references found: [ '/Common/f5-tcp-progressive', '/Common/http' ]", - "[2023-04-27T20:22:48.847Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:48.847Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found the following profiles \n /Common/f5-tcp-progressive { }\n /Common/http { }", - "[2023-04-27T20:22:48.847Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:48.847Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found snat configuration \n type automap", - "[2023-04-27T20:22:48.847Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found the following persistence \n /Common/cookie {\n default yes\n }", - "[2023-04-27T20:22:48.847Z] [INFO]: digging vs config for /hue-infra/hue-up/hue-up.benlab.io_t443_vs", - "[2023-04-27T20:22:48.847Z] [DEBUG]: digging pool config for /hue-infra/hue-up/hue-up.benlab.io_t443_pool", - "[2023-04-27T20:22:48.847Z] [DEBUG]: Pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool members found: null", - "[2023-04-27T20:22:48.847Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found the following pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool", - "[2023-04-27T20:22:48.847Z] [DEBUG]: profile references found: [ '/Common/f5-tcp-progressive', '/Common/http' ]", - "[2023-04-27T20:22:48.847Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:48.847Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found the following profiles \n /Common/f5-tcp-progressive { }\n /Common/http { }", - "[2023-04-27T20:22:48.847Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:48.847Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found snat configuration \n type automap", - "[2023-04-27T20:22:48.847Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found the following persistence \n /Common/cookie {\n default yes\n }", - "[2023-04-27T20:22:48.848Z] [INFO]: digging DO classes for base config info", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"cli global-settings\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"sys db\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"net trunk\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"net self\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"net route\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"net routing access-list\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"net routing as-path\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"net routing prefix-list\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"net routing route-map\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"net routing bgp\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"cm device-group\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"cm traffic-group\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"cm traffic-group\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"sys syslog\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"auth tacacs\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"auth remote-role role-info\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"auth ldap\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"sys snmp traps\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"sys snmp users\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"sys snmp communities\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"net dag-globals\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"ltm global-settings traffic-control\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"sys sshd\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"net tunnels vxlan\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"sys disk directory\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"gtm monitor http\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"gtm monitor https\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"gtm monitor gateway-icmp\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"gtm monitor tcp\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"gtm monitor udp\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"gtm prober-pool\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"security firewall policy\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"security firewall address-list\" in object", - "[2023-04-27T20:22:48.848Z] [DEBUG]: no path \"security firewall management-ip-rules\" in object", - "[2023-04-27T20:22:49.276Z] [DEBUG]: got .conf file [/home/ted/f5-corkscrew/tests/artifacts/f5_corkscrew_test.conf], size [76020]", - "[2023-04-27T20:22:49.276Z] [INFO]: Recieved .conf file of version: 15.1.8.2", - "[2023-04-27T20:22:49.293Z] [INFO]: digging vs config for /Common/app1_t80_vs", - "[2023-04-27T20:22:49.294Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:49.294Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:49.294Z] [DEBUG]: [/Common/app1_t80_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:49.294Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect' ]", - "[2023-04-27T20:22:49.294Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details", - "[2023-04-27T20:22:49.294Z] [DEBUG]: [/Common/app1_t80_vs] found the following rules \n /Common/_sys_https_redirect", - "[2023-04-27T20:22:49.294Z] [INFO]: digging vs config for /Common/app1_t443_vs", - "[2023-04-27T20:22:49.294Z] [DEBUG]: digging pool config for /Common/app1_t80_pool", - "[2023-04-27T20:22:49.294Z] [DEBUG]: Pool /Common/app1_t80_pool members found: [ '/Common/app1_Node1', '/Common/app1_Node2' ]", - "[2023-04-27T20:22:49.294Z] [DEBUG]: pool monitor references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:49.294Z] [DEBUG]: pool monitor configs found: []", - "[2023-04-27T20:22:49.294Z] [DEBUG]: [/Common/app1_t80_pool] references 2 system default monitors, compare previous arrays for details", - "[2023-04-27T20:22:49.294Z] [DEBUG]: [/Common/app1_t443_vs] found the following pool /Common/app1_t80_pool", - "[2023-04-27T20:22:49.294Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:49.294Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:49.294Z] [DEBUG]: [/Common/app1_t443_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:49.294Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:49.294Z] [DEBUG]: [/Common/app1_t443_vs] found snat configuration \n type automap", - "[2023-04-27T20:22:49.294Z] [INFO]: digging vs config for /Common/app2_t80_vs", - "[2023-04-27T20:22:49.294Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:49.294Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:49.294Z] [DEBUG]: [/Common/app2_t80_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:49.294Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect' ]", - "[2023-04-27T20:22:49.294Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details", - "[2023-04-27T20:22:49.294Z] [DEBUG]: [/Common/app2_t80_vs] found the following rules \n /Common/_sys_https_redirect", - "[2023-04-27T20:22:49.295Z] [INFO]: digging vs config for /Common/bigiq.benlab.io_t443_vs", - "[2023-04-27T20:22:49.295Z] [DEBUG]: digging pool config for /Common/bigiq.benlab.io_t443_pool", - "[2023-04-27T20:22:49.295Z] [DEBUG]: Pool /Common/bigiq.benlab.io_t443_pool members found: [ '/Common/10.200.244.15' ]", - "[2023-04-27T20:22:49.295Z] [DEBUG]: pool monitor references found: [ '/Common/https_head_f5' ]", - "[2023-04-27T20:22:49.295Z] [DEBUG]: pool monitor configs found: []", - "[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_pool] references 1 system default monitors, compare previous arrays for details", - "[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following pool /Common/bigiq.benlab.io_t443_pool", - "[2023-04-27T20:22:49.295Z] [DEBUG]: profile references found: [\n '/Common/ASM_basic_policy_1',\n '/Common/f5-tcp-progressive',\n '/Common/http',\n '/Common/websecurity'\n]", - "[2023-04-27T20:22:49.295Z] [DEBUG]: Found 4 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following profiles \n /Common/ASM_basic_policy_1 { }\n /Common/f5-tcp-progressive { }\n /Common/http { }\n /Common/websecurity { }", - "[2023-04-27T20:22:49.295Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found snat configuration \n type automap", - "[2023-04-27T20:22:49.295Z] [DEBUG]: policy references found: [ '/Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs' ]", - "[2023-04-27T20:22:49.295Z] [DEBUG]: policy found [/Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs]", - "[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following policies \n /Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs { }", - "[2023-04-27T20:22:49.295Z] [INFO]: digging vs config for /Common/app2_t443_vs", - "[2023-04-27T20:22:49.295Z] [DEBUG]: digging pool config for /Common/app2_t80_pool", - "[2023-04-27T20:22:49.295Z] [DEBUG]: Pool /Common/app2_t80_pool members found: [ '/Common/app2_Node1', '/Common/app2_Node2' ]", - "[2023-04-27T20:22:49.295Z] [DEBUG]: pool monitor references found: [ '/Common/global_http_monitor', '/Common/global_https_monitor' ]", - "[2023-04-27T20:22:49.295Z] [DEBUG]: pool monitor configs found: [\n 'ltm monitor http /Common/global_http_monitor {\\n' +\n ' adaptive disabled\\n' +\n ' defaults-from /Common/http\\n' +\n ' interval 5\\n' +\n ' ip-dscp 0\\n' +\n ' recv \"ok 200\"\\n' +\n ' recv-disable none\\n' +\n ' send \"GET /anywebsite.com\\\\r\\\\n\"\\n' +\n ' time-until-up 0\\n' +\n ' timeout 16\\n' +\n '}',\n 'ltm monitor https /Common/global_https_monitor {\\n' +\n ' adaptive disabled\\n' +\n ' defaults-from /Common/https\\n' +\n ' interval 5\\n' +\n ' ip-dscp 0\\n' +\n ' recv \"201 continue\"\\n' +\n ' recv-disable none\\n' +\n ' send \"GET /any-secure-website.com\\\\r\\\\n\"\\n' +\n ' time-until-up 0\\n' +\n ' timeout 16\\n' +\n '}'\n]", - "[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/app2_t443_vs] found the following pool /Common/app2_t80_pool", - "[2023-04-27T20:22:49.295Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:49.295Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/app2_t443_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:49.295Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/app2_t443_vs] found snat configuration \n type automap", - "[2023-04-27T20:22:49.295Z] [INFO]: digging vs config for /Common/app3_t8443_vs", - "[2023-04-27T20:22:49.295Z] [DEBUG]: digging pool config for /Common/app3_t8443_pool", - "[2023-04-27T20:22:49.295Z] [DEBUG]: Pool /Common/app3_t8443_pool members found: [ '/Common/app3_Node1', '/Common/app3_Node2' ]", - "[2023-04-27T20:22:49.295Z] [DEBUG]: pool monitor references found: [\n '/Common/app1_tcp_half_open_quick_monitor',\n '/Common/http_head_f5',\n '/Common/http2_head_f5',\n '/Common/http',\n '/Common/tcp_half_open'\n]", - "[2023-04-27T20:22:49.295Z] [DEBUG]: pool monitor configs found: [\n 'ltm monitor tcp-half-open /Common/app1_tcp_half_open_quick_monitor {\\n' +\n ' defaults-from /Common/tcp_half_open\\n' +\n ' destination *:*\\n' +\n ' interval 1\\n' +\n ' time-until-up 0\\n' +\n ' timeout 4\\n' +\n '}'\n]", - "[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/app3_t8443_pool] references 4 system default monitors, compare previous arrays for details", - "[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/app3_t8443_vs] found the following pool /Common/app3_t8443_pool", - "[2023-04-27T20:22:49.295Z] [DEBUG]: profile references found: [\n '/Common/app3_clientssl',\n '/Common/app3_serverssl',\n '/Common/http',\n '/Common/tcp'\n]", - "[2023-04-27T20:22:49.295Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:49.295Z] [DEBUG]: [/Common/app3_t8443_vs] found the following profiles \n /Common/app3_clientssl {\n context clientside\n }\n /Common/app3_serverssl {\n context serverside\n }\n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:49.295Z] [DEBUG]: rule references found: [ '/Common/app3_rule', '/Common/app3_rule2', '/Common/app3_rule3' ]", - "[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/app3_t8443_vs] found the following rules \n /Common/app3_rule\n /Common/app3_rule2\n /Common/app3_rule3", - "[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/app3_t8443_vs] found snat configuration \n pool /Common/app3_snat_pool\n type snat", - "[2023-04-27T20:22:49.296Z] [DEBUG]: policy references found: [ '/Common/app3_ltm_policy' ]", - "[2023-04-27T20:22:49.296Z] [DEBUG]: policy found [/Common/app3_ltm_policy]", - "[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/app3_t8443_vs] found the following policies \n /Common/app3_ltm_policy { }", - "[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/app3_t8443_vs] found the following persistence \n /Common/app3_cookie {\n default yes\n }", - "[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/app3_t8443_vs] found the following persistence /Common/app3_srcAddr_persist", - "[2023-04-27T20:22:49.296Z] [INFO]: digging vs config for /Common/app4_t80_vs", - "[2023-04-27T20:22:49.296Z] [DEBUG]: digging pool config for /Common/app4_pool", - "[2023-04-27T20:22:49.296Z] [DEBUG]: Pool /Common/app4_pool members found: [ '/Common/api.chucknorris.io' ]", - "[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/app4_t80_vs] found the following pool /Common/app4_pool", - "[2023-04-27T20:22:49.296Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:49.296Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/app4_t80_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:49.296Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect', '/Common/app4_pool_rule' ]", - "[2023-04-27T20:22:49.296Z] [DEBUG]: digging pool config for /Common/css_pool", - "[2023-04-27T20:22:49.296Z] [DEBUG]: digging pool config for /Common/jpg.pool", - "[2023-04-27T20:22:49.296Z] [DEBUG]: digging pool config for /Common/js.io_t80_pool", - "[2023-04-27T20:22:49.296Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details", - "[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/app4_t80_vs] found the following rules \n /Common/_sys_https_redirect\n /Common/app4_pool_rule", - "[2023-04-27T20:22:49.296Z] [DEBUG]: policy references found: [ '/Common/app4_ltPolicy' ]", - "[2023-04-27T20:22:49.296Z] [DEBUG]: policy found [/Common/app4_ltPolicy]", - "[2023-04-27T20:22:49.296Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/css_pool]", - "[2023-04-27T20:22:49.296Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/jpg.pool]", - "[2023-04-27T20:22:49.296Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/js.io_t80_pool]", - "[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/app4_t80_vs] found the following policies \n /Common/app4_ltPolicy { }", - "[2023-04-27T20:22:49.296Z] [INFO]: digging vs config for /Common/forwarder_net_0.0.0.0", - "[2023-04-27T20:22:49.296Z] [DEBUG]: profile references found: [ '/Common/fastl4_loose' ]", - "[2023-04-27T20:22:49.296Z] [DEBUG]: [/Common/forwarder_net_0.0.0.0] found the following profiles \n /Common/fastl4_loose { }", - "[2023-04-27T20:22:49.296Z] [INFO]: digging DO classes for base config info", - "[2023-04-27T20:22:49.296Z] [DEBUG]: no path \"sys global-settings\" in object", - "[2023-04-27T20:22:49.296Z] [DEBUG]: no path \"cli global-settings\" in object", - "[2023-04-27T20:22:49.296Z] [DEBUG]: no path \"sys db\" in object", - "[2023-04-27T20:22:49.296Z] [DEBUG]: no path \"sys management-ip\" in object", - "[2023-04-27T20:22:49.296Z] [DEBUG]: no path \"sys provision\" in object", - "[2023-04-27T20:22:49.296Z] [DEBUG]: no path \"sys ntp\" in object", - "[2023-04-27T20:22:49.296Z] [DEBUG]: no path \"sys dns\" in object", - "[2023-04-27T20:22:49.296Z] [DEBUG]: no path \"net trunk\" in object", - "[2023-04-27T20:22:49.296Z] [DEBUG]: no path \"net vlan\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"net self\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"net route\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"net routing access-list\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"net routing as-path\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"net routing prefix-list\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"net routing route-map\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"net routing bgp\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"cm device-group\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"cm traffic-group\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"cm traffic-group\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"sys management-route\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"sys syslog\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"auth tacacs\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"net route-domain\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"auth remote-role role-info\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"auth ldap\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"sys snmp\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"sys snmp traps\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"sys snmp\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"sys snmp users\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"sys snmp communities\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"net dag-globals\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"sys httpd\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"ltm global-settings traffic-control\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"sys sshd\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"net tunnels tunnel\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"net tunnels vxlan\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"sys disk directory\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"gtm global-settings general\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"gtm datacenter\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"gtm server\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"gtm monitor http\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"gtm monitor https\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"gtm monitor gateway-icmp\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"gtm monitor tcp\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"gtm monitor udp\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"gtm prober-pool\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"security firewall policy\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"security firewall address-list\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"security firewall port-list\" in object", - "[2023-04-27T20:22:49.297Z] [DEBUG]: no path \"security firewall management-ip-rules\" in object", - "[2023-04-27T20:22:49.301Z] [INFO]: digging vs config for /Common/app4_t80_vs", - "[2023-04-27T20:22:49.301Z] [DEBUG]: digging pool config for /Common/app4_pool", - "[2023-04-27T20:22:49.301Z] [DEBUG]: Pool /Common/app4_pool members found: [ '/Common/api.chucknorris.io' ]", - "[2023-04-27T20:22:49.301Z] [DEBUG]: [/Common/app4_t80_vs] found the following pool /Common/app4_pool", - "[2023-04-27T20:22:49.301Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:49.301Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:49.301Z] [DEBUG]: [/Common/app4_t80_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:49.301Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect', '/Common/app4_pool_rule' ]", - "[2023-04-27T20:22:49.301Z] [DEBUG]: digging pool config for /Common/css_pool", - "[2023-04-27T20:22:49.301Z] [DEBUG]: digging pool config for /Common/jpg.pool", - "[2023-04-27T20:22:49.301Z] [DEBUG]: digging pool config for /Common/js.io_t80_pool", - "[2023-04-27T20:22:49.301Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details", - "[2023-04-27T20:22:49.301Z] [DEBUG]: [/Common/app4_t80_vs] found the following rules \n /Common/_sys_https_redirect\n /Common/app4_pool_rule", - "[2023-04-27T20:22:49.301Z] [DEBUG]: policy references found: [ '/Common/app4_ltPolicy' ]", - "[2023-04-27T20:22:49.301Z] [DEBUG]: policy found [/Common/app4_ltPolicy]", - "[2023-04-27T20:22:49.301Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/css_pool]", - "[2023-04-27T20:22:49.301Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/jpg.pool]", - "[2023-04-27T20:22:49.301Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/js.io_t80_pool]", - "[2023-04-27T20:22:49.301Z] [DEBUG]: [/Common/app4_t80_vs] found the following policies \n /Common/app4_ltPolicy { }", - "[2023-04-27T20:22:49.302Z] [DEBUG]: detected file: [/home/ted/f5-corkscrew/tests/artifacts/badArchive1.tar.gz], size: [28643]", - "[2023-04-27T20:22:49.304Z] [INFO]: Recieved .conf file of version: 15.1.0.4", - "[2023-04-27T20:22:49.304Z] [ERROR]: Parsing [config/partitions/bd1/bigip.conf], tmos version of this file does not match previous file [15.1.0.4]", - "[2023-04-27T20:22:49.304Z] [ERROR]: tmos version not detected -> meaning this probably is not a bigip.conf", - "[2023-04-27T20:22:49.305Z] [ERROR]: failed to extract any parent tmos matches from config/partitions/bd2/bigip.conf - might be a scripts file...", - "[2023-04-27T20:22:49.311Z] [INFO]: digging vs config for /bd1/defaultsUDP_444/serviceMain", - "[2023-04-27T20:22:49.311Z] [DEBUG]: digging pool config for /bd1/defaultsUDP_444/defaultsUDP_444_Pool1", - "[2023-04-27T20:22:49.311Z] [DEBUG]: Pool /bd1/defaultsUDP_444/defaultsUDP_444_Pool1 members found: [ '/bd1/192.0.2.2' ]", - "[2023-04-27T20:22:49.311Z] [DEBUG]: [/bd1/defaultsUDP_444/serviceMain] found the following pool /bd1/defaultsUDP_444/defaultsUDP_444_Pool1", - "[2023-04-27T20:22:49.311Z] [DEBUG]: profile references found: [ '/Common/udp' ]", - "[2023-04-27T20:22:49.311Z] [DEBUG]: Found 1 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:49.311Z] [DEBUG]: [/bd1/defaultsUDP_444/serviceMain] found the following profiles \n /Common/udp { }", - "[2023-04-27T20:22:49.311Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:49.311Z] [DEBUG]: [/bd1/defaultsUDP_444/serviceMain] found snat configuration \n type automap", - "[2023-04-27T20:22:49.311Z] [DEBUG]: [/bd1/defaultsUDP_444/serviceMain] found the following persistence \n /Common/source_addr {\n default yes\n }", - "[2023-04-27T20:22:49.311Z] [INFO]: digging vs config for /Common/app1_t80_vs", - "[2023-04-27T20:22:49.311Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:49.311Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:49.311Z] [DEBUG]: [/Common/app1_t80_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:49.311Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect' ]", - "[2023-04-27T20:22:49.311Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details", - "[2023-04-27T20:22:49.311Z] [DEBUG]: [/Common/app1_t80_vs] found the following rules \n /Common/_sys_https_redirect", - "[2023-04-27T20:22:49.311Z] [INFO]: digging vs config for /Common/app1_t443_vs", - "[2023-04-27T20:22:49.311Z] [DEBUG]: digging pool config for /Common/app1_t80_pool", - "[2023-04-27T20:22:49.311Z] [DEBUG]: Pool /Common/app1_t80_pool members found: [ '/Common/app1_Node1', '/Common/app1_Node2' ]", - "[2023-04-27T20:22:49.312Z] [DEBUG]: pool monitor references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:49.312Z] [DEBUG]: pool monitor configs found: []", - "[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app1_t80_pool] references 2 system default monitors, compare previous arrays for details", - "[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app1_t443_vs] found the following pool /Common/app1_t80_pool", - "[2023-04-27T20:22:49.312Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:49.312Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app1_t443_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:49.312Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app1_t443_vs] found snat configuration \n type automap", - "[2023-04-27T20:22:49.312Z] [INFO]: digging vs config for /Common/app2_t80_vs", - "[2023-04-27T20:22:49.312Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:49.312Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app2_t80_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:49.312Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect' ]", - "[2023-04-27T20:22:49.312Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details", - "[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app2_t80_vs] found the following rules \n /Common/_sys_https_redirect", - "[2023-04-27T20:22:49.312Z] [INFO]: digging vs config for /Common/app2_t443_vs", - "[2023-04-27T20:22:49.312Z] [DEBUG]: digging pool config for /Common/app2_t80_pool", - "[2023-04-27T20:22:49.312Z] [DEBUG]: Pool /Common/app2_t80_pool members found: [ '/Common/app2_Node1', '/Common/app2_Node2' ]", - "[2023-04-27T20:22:49.312Z] [DEBUG]: pool monitor references found: [ '/Common/global_http_monitor', '/Common/global_https_monitor' ]", - "[2023-04-27T20:22:49.312Z] [DEBUG]: pool monitor configs found: [\n 'ltm monitor http /Common/global_http_monitor {\\n' +\n ' adaptive disabled\\n' +\n ' defaults-from /Common/http\\n' +\n ' interval 5\\n' +\n ' ip-dscp 0\\n' +\n ' recv \"ok 200\"\\n' +\n ' recv-disable none\\n' +\n ' send \"GET /anywebsite.com\\\\r\\\\n\"\\n' +\n ' time-until-up 0\\n' +\n ' timeout 16\\n' +\n '}',\n 'ltm monitor https /Common/global_https_monitor {\\n' +\n ' adaptive disabled\\n' +\n ' defaults-from /Common/https\\n' +\n ' interval 5\\n' +\n ' ip-dscp 0\\n' +\n ' recv \"201 continue\"\\n' +\n ' recv-disable none\\n' +\n ' send \"GET /any-secure-website.com\\\\r\\\\n\"\\n' +\n ' time-until-up 0\\n' +\n ' timeout 16\\n' +\n '}'\n]", - "[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app2_t443_vs] found the following pool /Common/app2_t80_pool", - "[2023-04-27T20:22:49.312Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:49.312Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app2_t443_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:49.312Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app2_t443_vs] found snat configuration \n type automap", - "[2023-04-27T20:22:49.312Z] [INFO]: digging vs config for /Common/app3_t8443_vs", - "[2023-04-27T20:22:49.312Z] [DEBUG]: digging pool config for /Common/app3_t8443_pool", - "[2023-04-27T20:22:49.312Z] [DEBUG]: Pool /Common/app3_t8443_pool members found: [ '/Common/app3_Node1', '/Common/app3_Node2' ]", - "[2023-04-27T20:22:49.312Z] [DEBUG]: pool monitor references found: [\n '/Common/app1_tcp_half_open_quick_monitor',\n '/Common/http_head_f5',\n '/Common/http2_head_f5',\n '/Common/http',\n '/Common/tcp_half_open'\n]", - "[2023-04-27T20:22:49.312Z] [DEBUG]: pool monitor configs found: [\n 'ltm monitor tcp-half-open /Common/app1_tcp_half_open_quick_monitor {\\n' +\n ' defaults-from /Common/tcp_half_open\\n' +\n ' destination *:*\\n' +\n ' interval 1\\n' +\n ' time-until-up 0\\n' +\n ' timeout 4\\n' +\n '}'\n]", - "[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app3_t8443_pool] references 4 system default monitors, compare previous arrays for details", - "[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app3_t8443_vs] found the following pool /Common/app3_t8443_pool", - "[2023-04-27T20:22:49.312Z] [DEBUG]: profile references found: [\n '/Common/app3_clientssl',\n '/Common/app3_serverssl',\n '/Common/http',\n '/Common/tcp'\n]", - "[2023-04-27T20:22:49.312Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app3_t8443_vs] found the following profiles \n /Common/app3_clientssl {\n context clientside\n }\n /Common/app3_serverssl {\n context serverside\n }\n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:49.312Z] [DEBUG]: rule references found: [ '/Common/app3_rule', '/Common/app3_rule2', '/Common/app3_rule3' ]", - "[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app3_t8443_vs] found the following rules \n /Common/app3_rule\n /Common/app3_rule2\n /Common/app3_rule3", - "[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app3_t8443_vs] found snat configuration \n pool /Common/app3_snat_pool\n type snat", - "[2023-04-27T20:22:49.312Z] [DEBUG]: policy references found: [ '/Common/app3_ltm_policy' ]", - "[2023-04-27T20:22:49.312Z] [DEBUG]: policy found [/Common/app3_ltm_policy]", - "[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app3_t8443_vs] found the following policies \n /Common/app3_ltm_policy { }", - "[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app3_t8443_vs] found the following persistence \n /Common/app3_cookie {\n default yes\n }", - "[2023-04-27T20:22:49.312Z] [DEBUG]: [/Common/app3_t8443_vs] found the following persistence /Common/app3_srcAddr_persist", - "[2023-04-27T20:22:49.313Z] [INFO]: digging vs config for /Common/app4_t80_vs", - "[2023-04-27T20:22:49.313Z] [DEBUG]: digging pool config for /Common/app4_pool", - "[2023-04-27T20:22:49.313Z] [DEBUG]: Pool /Common/app4_pool members found: [ '/Common/api.chucknorris.io' ]", - "[2023-04-27T20:22:49.313Z] [DEBUG]: [/Common/app4_t80_vs] found the following pool /Common/app4_pool", - "[2023-04-27T20:22:49.313Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:49.313Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:49.313Z] [DEBUG]: [/Common/app4_t80_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:49.313Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect', '/Common/app4_pool_rule' ]", - "[2023-04-27T20:22:49.313Z] [DEBUG]: digging pool config for /Common/css_pool", - "[2023-04-27T20:22:49.313Z] [DEBUG]: digging pool config for /Common/jpg.pool", - "[2023-04-27T20:22:49.313Z] [DEBUG]: digging pool config for /Common/js.io_t80_pool", - "[2023-04-27T20:22:49.313Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details", - "[2023-04-27T20:22:49.313Z] [DEBUG]: [/Common/app4_t80_vs] found the following rules \n /Common/_sys_https_redirect\n /Common/app4_pool_rule", - "[2023-04-27T20:22:49.313Z] [DEBUG]: policy references found: [ '/Common/app4_ltPolicy' ]", - "[2023-04-27T20:22:49.313Z] [DEBUG]: policy found [/Common/app4_ltPolicy]", - "[2023-04-27T20:22:49.313Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/css_pool]", - "[2023-04-27T20:22:49.313Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/jpg.pool]", - "[2023-04-27T20:22:49.313Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/js.io_t80_pool]", - "[2023-04-27T20:22:49.313Z] [DEBUG]: [/Common/app4_t80_vs] found the following policies \n /Common/app4_ltPolicy { }", - "[2023-04-27T20:22:49.313Z] [INFO]: digging vs config for /Common/forwarder_net_0.0.0.0", - "[2023-04-27T20:22:49.313Z] [DEBUG]: profile references found: [ '/Common/fastl4_loose' ]", - "[2023-04-27T20:22:49.313Z] [DEBUG]: [/Common/forwarder_net_0.0.0.0] found the following profiles \n /Common/fastl4_loose { }", - "[2023-04-27T20:22:49.313Z] [INFO]: digging DO classes for base config info", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"sys global-settings\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"cli global-settings\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"sys db\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"sys management-ip\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"sys provision\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"sys ntp\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"sys dns\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"net trunk\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"net vlan\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"net self\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"net route\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"net routing access-list\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"net routing as-path\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"net routing prefix-list\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"net routing route-map\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"net routing bgp\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"cm device-group\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"cm traffic-group\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"cm traffic-group\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"sys management-route\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"sys syslog\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"auth tacacs\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"net route-domain\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"auth remote-role role-info\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"auth ldap\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"sys snmp\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"sys snmp traps\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"sys snmp\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"sys snmp users\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"sys snmp communities\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"net dag-globals\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"sys httpd\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"ltm global-settings traffic-control\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"sys sshd\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"net tunnels tunnel\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"net tunnels vxlan\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"sys disk directory\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"gtm global-settings general\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"gtm datacenter\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"gtm server\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"gtm monitor http\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"gtm monitor https\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"gtm monitor gateway-icmp\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"gtm monitor tcp\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"gtm monitor udp\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"gtm prober-pool\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"security firewall policy\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"security firewall address-list\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"security firewall port-list\" in object", - "[2023-04-27T20:22:49.313Z] [DEBUG]: no path \"security firewall management-ip-rules\" in object", - "[2023-04-27T20:22:49.336Z] [DEBUG]: detected file: [/home/ted/f5-corkscrew/tests/artifacts/f5_corkscrew_test.ucs], size: [43567]", - "[2023-04-27T20:22:49.338Z] [INFO]: Recieved .conf file of version: 15.1.8.2", - "[2023-04-27T20:22:49.362Z] [INFO]: digging vs config for /Common/app1_t80_vs", - "[2023-04-27T20:22:49.362Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:49.362Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:49.362Z] [DEBUG]: [/Common/app1_t80_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:49.362Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect' ]", - "[2023-04-27T20:22:49.362Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details", - "[2023-04-27T20:22:49.362Z] [DEBUG]: [/Common/app1_t80_vs] found the following rules \n /Common/_sys_https_redirect", - "[2023-04-27T20:22:49.362Z] [INFO]: digging vs config for /Common/app1_t443_vs", - "[2023-04-27T20:22:49.362Z] [DEBUG]: digging pool config for /Common/app1_t80_pool", - "[2023-04-27T20:22:49.362Z] [DEBUG]: Pool /Common/app1_t80_pool members found: [ '/Common/app1_Node1', '/Common/app1_Node2' ]", - "[2023-04-27T20:22:49.362Z] [DEBUG]: pool monitor references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:49.362Z] [DEBUG]: pool monitor configs found: []", - "[2023-04-27T20:22:49.362Z] [DEBUG]: [/Common/app1_t80_pool] references 2 system default monitors, compare previous arrays for details", - "[2023-04-27T20:22:49.362Z] [DEBUG]: [/Common/app1_t443_vs] found the following pool /Common/app1_t80_pool", - "[2023-04-27T20:22:49.362Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:49.362Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:49.362Z] [DEBUG]: [/Common/app1_t443_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:49.362Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:49.362Z] [DEBUG]: [/Common/app1_t443_vs] found snat configuration \n type automap", - "[2023-04-27T20:22:49.362Z] [INFO]: digging vs config for /Common/app2_t80_vs", - "[2023-04-27T20:22:49.362Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:49.362Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:49.362Z] [DEBUG]: [/Common/app2_t80_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:49.362Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect' ]", - "[2023-04-27T20:22:49.362Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details", - "[2023-04-27T20:22:49.362Z] [DEBUG]: [/Common/app2_t80_vs] found the following rules \n /Common/_sys_https_redirect", - "[2023-04-27T20:22:49.362Z] [INFO]: digging vs config for /Common/bigiq.benlab.io_t443_vs", - "[2023-04-27T20:22:49.362Z] [DEBUG]: digging pool config for /Common/bigiq.benlab.io_t443_pool", - "[2023-04-27T20:22:49.362Z] [DEBUG]: Pool /Common/bigiq.benlab.io_t443_pool members found: [ '/Common/10.200.244.15' ]", - "[2023-04-27T20:22:49.362Z] [DEBUG]: pool monitor references found: [ '/Common/https_head_f5' ]", - "[2023-04-27T20:22:49.363Z] [DEBUG]: pool monitor configs found: []", - "[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_pool] references 1 system default monitors, compare previous arrays for details", - "[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following pool /Common/bigiq.benlab.io_t443_pool", - "[2023-04-27T20:22:49.363Z] [DEBUG]: profile references found: [\n '/Common/ASM_basic_policy_1',\n '/Common/f5-tcp-progressive',\n '/Common/http',\n '/Common/websecurity'\n]", - "[2023-04-27T20:22:49.363Z] [DEBUG]: Found 4 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following profiles \n /Common/ASM_basic_policy_1 { }\n /Common/f5-tcp-progressive { }\n /Common/http { }\n /Common/websecurity { }", - "[2023-04-27T20:22:49.363Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found snat configuration \n type automap", - "[2023-04-27T20:22:49.363Z] [DEBUG]: policy references found: [ '/Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs' ]", - "[2023-04-27T20:22:49.363Z] [DEBUG]: policy found [/Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs]", - "[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/bigiq.benlab.io_t443_vs] found the following policies \n /Common/asm_auto_l7_policy__bigiq.benlab.io_t443_vs { }", - "[2023-04-27T20:22:49.363Z] [INFO]: digging vs config for /Common/app2_t443_vs", - "[2023-04-27T20:22:49.363Z] [DEBUG]: digging pool config for /Common/app2_t80_pool", - "[2023-04-27T20:22:49.363Z] [DEBUG]: Pool /Common/app2_t80_pool members found: [ '/Common/app2_Node1', '/Common/app2_Node2' ]", - "[2023-04-27T20:22:49.363Z] [DEBUG]: pool monitor references found: [ '/Common/global_http_monitor', '/Common/global_https_monitor' ]", - "[2023-04-27T20:22:49.363Z] [DEBUG]: pool monitor configs found: [\n 'ltm monitor http /Common/global_http_monitor {\\n' +\n ' adaptive disabled\\n' +\n ' defaults-from /Common/http\\n' +\n ' interval 5\\n' +\n ' ip-dscp 0\\n' +\n ' recv \"ok 200\"\\n' +\n ' recv-disable none\\n' +\n ' send \"GET /anywebsite.com\\\\r\\\\n\"\\n' +\n ' time-until-up 0\\n' +\n ' timeout 16\\n' +\n '}',\n 'ltm monitor https /Common/global_https_monitor {\\n' +\n ' adaptive disabled\\n' +\n ' defaults-from /Common/https\\n' +\n ' interval 5\\n' +\n ' ip-dscp 0\\n' +\n ' recv \"201 continue\"\\n' +\n ' recv-disable none\\n' +\n ' send \"GET /any-secure-website.com\\\\r\\\\n\"\\n' +\n ' time-until-up 0\\n' +\n ' timeout 16\\n' +\n '}'\n]", - "[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/app2_t443_vs] found the following pool /Common/app2_t80_pool", - "[2023-04-27T20:22:49.363Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:49.363Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/app2_t443_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:49.363Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/app2_t443_vs] found snat configuration \n type automap", - "[2023-04-27T20:22:49.363Z] [INFO]: digging vs config for /Common/app3_t8443_vs", - "[2023-04-27T20:22:49.363Z] [DEBUG]: digging pool config for /Common/app3_t8443_pool", - "[2023-04-27T20:22:49.363Z] [DEBUG]: Pool /Common/app3_t8443_pool members found: [ '/Common/app3_Node1', '/Common/app3_Node2' ]", - "[2023-04-27T20:22:49.363Z] [DEBUG]: pool monitor references found: [\n '/Common/app1_tcp_half_open_quick_monitor',\n '/Common/http_head_f5',\n '/Common/http2_head_f5',\n '/Common/http',\n '/Common/tcp_half_open'\n]", - "[2023-04-27T20:22:49.363Z] [DEBUG]: pool monitor configs found: [\n 'ltm monitor tcp-half-open /Common/app1_tcp_half_open_quick_monitor {\\n' +\n ' defaults-from /Common/tcp_half_open\\n' +\n ' destination *:*\\n' +\n ' interval 1\\n' +\n ' time-until-up 0\\n' +\n ' timeout 4\\n' +\n '}'\n]", - "[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/app3_t8443_pool] references 4 system default monitors, compare previous arrays for details", - "[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/app3_t8443_vs] found the following pool /Common/app3_t8443_pool", - "[2023-04-27T20:22:49.363Z] [DEBUG]: profile references found: [\n '/Common/app3_clientssl',\n '/Common/app3_serverssl',\n '/Common/http',\n '/Common/tcp'\n]", - "[2023-04-27T20:22:49.363Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/app3_t8443_vs] found the following profiles \n /Common/app3_clientssl {\n context clientside\n }\n /Common/app3_serverssl {\n context serverside\n }\n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:49.363Z] [DEBUG]: rule references found: [ '/Common/app3_rule', '/Common/app3_rule2', '/Common/app3_rule3' ]", - "[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/app3_t8443_vs] found the following rules \n /Common/app3_rule\n /Common/app3_rule2\n /Common/app3_rule3", - "[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/app3_t8443_vs] found snat configuration \n pool /Common/app3_snat_pool\n type snat", - "[2023-04-27T20:22:49.363Z] [DEBUG]: policy references found: [ '/Common/app3_ltm_policy' ]", - "[2023-04-27T20:22:49.363Z] [DEBUG]: policy found [/Common/app3_ltm_policy]", - "[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/app3_t8443_vs] found the following policies \n /Common/app3_ltm_policy { }", - "[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/app3_t8443_vs] found the following persistence \n /Common/app3_cookie {\n default yes\n }", - "[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/app3_t8443_vs] found the following persistence /Common/app3_srcAddr_persist", - "[2023-04-27T20:22:49.363Z] [INFO]: digging vs config for /Common/app4_t80_vs", - "[2023-04-27T20:22:49.363Z] [DEBUG]: digging pool config for /Common/app4_pool", - "[2023-04-27T20:22:49.363Z] [DEBUG]: Pool /Common/app4_pool members found: [ '/Common/api.chucknorris.io' ]", - "[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/app4_t80_vs] found the following pool /Common/app4_pool", - "[2023-04-27T20:22:49.363Z] [DEBUG]: profile references found: [ '/Common/http', '/Common/tcp' ]", - "[2023-04-27T20:22:49.363Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:49.363Z] [DEBUG]: [/Common/app4_t80_vs] found the following profiles \n /Common/http { }\n /Common/tcp { }", - "[2023-04-27T20:22:49.363Z] [DEBUG]: rule references found: [ '/Common/_sys_https_redirect', '/Common/app4_pool_rule' ]", - "[2023-04-27T20:22:49.364Z] [DEBUG]: digging pool config for /Common/css_pool", - "[2023-04-27T20:22:49.364Z] [DEBUG]: digging pool config for /Common/jpg.pool", - "[2023-04-27T20:22:49.364Z] [DEBUG]: digging pool config for /Common/js.io_t80_pool", - "[2023-04-27T20:22:49.364Z] [DEBUG]: Found 1 system default iRules, compare previous arrays for details", - "[2023-04-27T20:22:49.364Z] [DEBUG]: [/Common/app4_t80_vs] found the following rules \n /Common/_sys_https_redirect\n /Common/app4_pool_rule", - "[2023-04-27T20:22:49.364Z] [DEBUG]: policy references found: [ '/Common/app4_ltPolicy' ]", - "[2023-04-27T20:22:49.364Z] [DEBUG]: policy found [/Common/app4_ltPolicy]", - "[2023-04-27T20:22:49.364Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/css_pool]", - "[2023-04-27T20:22:49.364Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/jpg.pool]", - "[2023-04-27T20:22:49.364Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [/Common/js.io_t80_pool]", - "[2023-04-27T20:22:49.364Z] [DEBUG]: [/Common/app4_t80_vs] found the following policies \n /Common/app4_ltPolicy { }", - "[2023-04-27T20:22:49.364Z] [INFO]: digging vs config for /Common/forwarder_net_0.0.0.0", - "[2023-04-27T20:22:49.364Z] [DEBUG]: profile references found: [ '/Common/fastl4_loose' ]", - "[2023-04-27T20:22:49.364Z] [DEBUG]: [/Common/forwarder_net_0.0.0.0] found the following profiles \n /Common/fastl4_loose { }", - "[2023-04-27T20:22:49.364Z] [INFO]: digging vs config for /foo/defaultsUDP_5555/serviceMain", - "[2023-04-27T20:22:49.364Z] [DEBUG]: digging pool config for /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1", - "[2023-04-27T20:22:49.364Z] [DEBUG]: Pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1 members found: [ '/foo/192.50.2.2' ]", - "[2023-04-27T20:22:49.364Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found the following pool /foo/defaultsUDP_5555/defaultsUDP_5555_Pool1", - "[2023-04-27T20:22:49.364Z] [DEBUG]: profile references found: [ '/Common/udp' ]", - "[2023-04-27T20:22:49.364Z] [DEBUG]: Found 1 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:49.364Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found the following profiles \n /Common/udp { }", - "[2023-04-27T20:22:49.364Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:49.364Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found snat configuration \n type automap", - "[2023-04-27T20:22:49.364Z] [DEBUG]: [/foo/defaultsUDP_5555/serviceMain] found the following persistence \n /Common/source_addr {\n default yes\n }", - "[2023-04-27T20:22:49.364Z] [INFO]: digging vs config for /hue-infra/hue-up/hue-up.benlab.io_t80_vs", - "[2023-04-27T20:22:49.364Z] [DEBUG]: digging pool config for /hue-infra/hue-up/hue-up.benlab.io_t80_pool", - "[2023-04-27T20:22:49.364Z] [DEBUG]: Pool /hue-infra/hue-up/hue-up.benlab.io_t80_pool members found: null", - "[2023-04-27T20:22:49.364Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found the following pool /hue-infra/hue-up/hue-up.benlab.io_t80_pool", - "[2023-04-27T20:22:49.364Z] [DEBUG]: profile references found: [ '/Common/f5-tcp-progressive', '/Common/http' ]", - "[2023-04-27T20:22:49.364Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:49.364Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found the following profiles \n /Common/f5-tcp-progressive { }\n /Common/http { }", - "[2023-04-27T20:22:49.364Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:49.364Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found snat configuration \n type automap", - "[2023-04-27T20:22:49.364Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t80_vs] found the following persistence \n /Common/cookie {\n default yes\n }", - "[2023-04-27T20:22:49.364Z] [INFO]: digging vs config for /hue-infra/hue-up/hue-up.benlab.io_t443_vs", - "[2023-04-27T20:22:49.364Z] [DEBUG]: digging pool config for /hue-infra/hue-up/hue-up.benlab.io_t443_pool", - "[2023-04-27T20:22:49.364Z] [DEBUG]: Pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool members found: null", - "[2023-04-27T20:22:49.364Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found the following pool /hue-infra/hue-up/hue-up.benlab.io_t443_pool", - "[2023-04-27T20:22:49.364Z] [DEBUG]: profile references found: [ '/Common/f5-tcp-progressive', '/Common/http' ]", - "[2023-04-27T20:22:49.364Z] [DEBUG]: Found 2 system default profiles, compare previous arrays for details", - "[2023-04-27T20:22:49.364Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found the following profiles \n /Common/f5-tcp-progressive { }\n /Common/http { }", - "[2023-04-27T20:22:49.364Z] [DEBUG]: snat configuration detected, but no pool reference found, presume -> automap", - "[2023-04-27T20:22:49.364Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found snat configuration \n type automap", - "[2023-04-27T20:22:49.364Z] [DEBUG]: [/hue-infra/hue-up/hue-up.benlab.io_t443_vs] found the following persistence \n /Common/cookie {\n default yes\n }", - "[2023-04-27T20:22:49.365Z] [INFO]: digging DO classes for base config info", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"cli global-settings\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"sys db\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"net trunk\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"net self\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"net route\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"net routing access-list\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"net routing as-path\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"net routing prefix-list\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"net routing route-map\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"net routing bgp\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"cm device-group\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"cm traffic-group\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"cm traffic-group\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"sys syslog\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"auth tacacs\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"auth remote-role role-info\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"auth ldap\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"sys snmp traps\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"sys snmp users\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"sys snmp communities\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"net dag-globals\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"ltm global-settings traffic-control\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"sys sshd\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"net tunnels vxlan\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"sys disk directory\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"gtm monitor http\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"gtm monitor https\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"gtm monitor gateway-icmp\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"gtm monitor tcp\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"gtm monitor udp\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"gtm prober-pool\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"security firewall policy\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"security firewall address-list\" in object", - "[2023-04-27T20:22:49.365Z] [DEBUG]: no path \"security firewall management-ip-rules\" in object" + "[2023-05-24T01:12:41.404Z] DeBuG: 'regular date log message'", + "[5/23/2023, 6:12:41 PM] DeBuG: 'toLocalString date log message'", + "[Wed, 24 May 2023 01:12:41 GMT] DeBuG: 'to UTC date log message'", + "[2023-05-24T01:12:43.861Z] [ERROR]: >v19.0.0.0 tmos detected - this should never happen!!!", + "[2023-05-24T01:12:43.862Z] [ERROR]: meaning this probably is not a bigip.conf", + "[2023-05-24T01:12:48.528Z] [ERROR]: failed to extract any parent tmos matches from config/partitions/bd2/bigip.conf - might be a scripts file...", + "[2023-05-24T01:12:48.539Z] [INFO]: digging vs config for /bd1/defaultsUDP_444/serviceMain", + "[2023-05-24T01:12:48.539Z] [ERROR]: findValueFromKey function expected object, got: undefined", + "[2023-05-24T01:12:48.540Z] [INFO]: digging vs config for /Common/app1_t80_vs", + "[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined", + "[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined", + "[2023-05-24T01:12:48.540Z] [INFO]: digging vs config for /Common/app1_t443_vs", + "[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined", + "[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined", + "[2023-05-24T01:12:48.540Z] [INFO]: digging vs config for /Common/app2_t80_vs", + "[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined", + "[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined", + "[2023-05-24T01:12:48.540Z] [INFO]: digging vs config for /Common/app2_t443_vs", + "[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined", + "[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined", + "[2023-05-24T01:12:48.540Z] [INFO]: digging vs config for /Common/app3_t8443_vs", + "[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined", + "[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined", + "[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined", + "[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined", + "[2023-05-24T01:12:48.540Z] [INFO]: digging vs config for /Common/app4_t80_vs", + "[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined", + "[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined", + "[2023-05-24T01:12:48.540Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [css_pool]", + "[2023-05-24T01:12:48.540Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [jpg.pool]", + "[2023-05-24T01:12:48.540Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [js.io_t80_pool]", + "[2023-05-24T01:12:48.540Z] [INFO]: digging vs config for /Common/forwarder_net_0.0.0.0", + "[2023-05-24T01:12:48.540Z] [ERROR]: findValueFromKey function expected object, got: undefined", + "[2023-05-24T01:12:48.540Z] [INFO]: digging DO classes for base config info", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"sys global-settings\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"cli global-settings\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"sys db\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"sys management-ip\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"sys provision\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"sys ntp\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"sys dns\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"net trunk\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"net vlan\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"net self\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"net route\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"net routing access-list\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"net routing as-path\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"net routing prefix-list\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"net routing route-map\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"net routing bgp\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"cm device-group\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"cm traffic-group\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"cm traffic-group\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"sys management-route\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"sys syslog\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"auth tacacs\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"net route-domain\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"auth remote-role role-info\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"auth ldap\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"sys snmp\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"sys snmp traps\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"sys snmp\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"sys snmp users\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"sys snmp communities\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"net dag-globals\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"sys httpd\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"ltm global-settings traffic-control\" in object", + "[2023-05-24T01:12:48.540Z] [DEBUG]: no path \"sys sshd\" in object", + "[2023-05-24T01:12:48.541Z] [DEBUG]: no path \"net tunnels tunnel\" in object", + "[2023-05-24T01:12:48.541Z] [DEBUG]: no path \"net tunnels vxlan\" in object", + "[2023-05-24T01:12:48.541Z] [DEBUG]: no path \"sys disk directory\" in object", + "[2023-05-24T01:12:48.541Z] [DEBUG]: no path \"gtm global-settings general\" in object", + "[2023-05-24T01:12:48.541Z] [DEBUG]: no path \"gtm datacenter\" in object", + "[2023-05-24T01:12:48.541Z] [DEBUG]: no path \"gtm server\" in object", + "[2023-05-24T01:12:48.541Z] [DEBUG]: no path \"gtm monitor http\" in object", + "[2023-05-24T01:12:48.541Z] [DEBUG]: no path \"gtm monitor https\" in object", + "[2023-05-24T01:12:48.541Z] [DEBUG]: no path \"gtm monitor gateway-icmp\" in object", + "[2023-05-24T01:12:48.541Z] [DEBUG]: no path \"gtm monitor tcp\" in object", + "[2023-05-24T01:12:48.541Z] [DEBUG]: no path \"gtm monitor udp\" in object", + "[2023-05-24T01:12:48.541Z] [DEBUG]: no path \"gtm prober-pool\" in object", + "[2023-05-24T01:12:48.541Z] [DEBUG]: no path \"security firewall policy\" in object", + "[2023-05-24T01:12:48.541Z] [DEBUG]: no path \"security firewall address-list\" in object", + "[2023-05-24T01:12:48.541Z] [DEBUG]: no path \"security firewall port-list\" in object", + "[2023-05-24T01:12:48.541Z] [DEBUG]: no path \"security firewall management-ip-rules\" in object", + "[2023-05-24T01:12:48.565Z] [DEBUG]: detected file: [/home/ted/f5-corkscrew/tests/artifacts/f5_corkscrew_test.ucs], size: [45827]", + "[2023-05-24T01:12:48.566Z] [INFO]: Recieved .conf file of version: 15.1.8.2", + "[2023-05-24T01:12:48.614Z] [INFO]: digging vs config for /Common/app1_t80_vs", + "[2023-05-24T01:12:48.614Z] [INFO]: digging vs config for /Common/app1_t443_vs", + "[2023-05-24T01:12:48.614Z] [INFO]: digging vs config for /Common/app2_t80_vs", + "[2023-05-24T01:12:48.614Z] [INFO]: digging vs config for /Common/bigiq.benlab.io_t443_vs", + "[2023-05-24T01:12:48.614Z] [INFO]: digging vs config for /Common/app2_t443_vs", + "[2023-05-24T01:12:48.614Z] [INFO]: digging vs config for /Common/persistTest_80_vs", + "[2023-05-24T01:12:48.614Z] [INFO]: digging vs config for /Common/app3_t8443_vs", + "[2023-05-24T01:12:48.615Z] [INFO]: digging vs config for /Common/app4_t80_vs", + "[2023-05-24T01:12:48.615Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [css_pool]", + "[2023-05-24T01:12:48.615Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [jpg.pool]", + "[2023-05-24T01:12:48.615Z] [DEBUG]: policy [/Common/app4_ltPolicy], pool found [js.io_t80_pool]", + "[2023-05-24T01:12:48.615Z] [INFO]: digging vs config for /Common/forwarder_net_0.0.0.0", + "[2023-05-24T01:12:48.615Z] [INFO]: digging vs config for /foo/defaultsUDP_5555/serviceMain", + "[2023-05-24T01:12:48.615Z] [INFO]: digging vs config for /foo/t1.lab.io_80vs", + "[2023-05-24T01:12:48.615Z] [INFO]: digging vs config for /foo/wiffle_redirect_vs", + "[2023-05-24T01:12:48.615Z] [INFO]: digging vs config for /foo/app8_80vs", + "[2023-05-24T01:12:48.615Z] [INFO]: digging vs config for /hue-infra/hue-up/hue-up.benlab.io_t80_vs", + "[2023-05-24T01:12:48.615Z] [INFO]: digging vs config for /hue-infra/hue-up/hue-up.benlab.io_t443_vs", + "[2023-05-24T01:12:48.616Z] [INFO]: digging DO classes for base config info", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"cli global-settings\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"sys db\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"net trunk\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"net self\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"net route\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"net routing access-list\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"net routing as-path\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"net routing prefix-list\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"net routing route-map\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"net routing bgp\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"cm device ~Common~{{deviceName}}\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"cm device-group\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"cm traffic-group\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"cm traffic-group\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"sys syslog\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"auth tacacs\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"auth remote-role role-info\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"auth ldap\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"sys snmp traps\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"sys snmp users\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"sys snmp communities\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"net dag-globals\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"ltm global-settings traffic-control\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"sys sshd\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"net tunnels vxlan\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"sys disk directory\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"gtm monitor http\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"gtm monitor https\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"gtm monitor gateway-icmp\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"gtm monitor tcp\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"gtm monitor udp\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"gtm prober-pool\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"security firewall policy\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"security firewall address-list\" in object", + "[2023-05-24T01:12:48.616Z] [DEBUG]: no path \"security firewall management-ip-rules\" in object" ] } \ No newline at end of file diff --git a/tests/explosionOutput.ts b/tests/explosionOutput.ts index a6a433b..889ca3e 100644 --- a/tests/explosionOutput.ts +++ b/tests/explosionOutput.ts @@ -22,13 +22,13 @@ export function logOutput (configObject: BigipConfObj, explosion: Explosion): st output += JSON.stringify(explosion.stats, undefined, 2); output += `\n################################################\n`; - explosion.config.apps.forEach( el => { + explosion.config.apps?.forEach( el => { output += '\n################################################\n'; output += `#### app name: ${el.name}\n`; - output += `#### app map: `; - output += JSON.stringify(el.map, undefined, 4); + // output += `#### app map: `; + // output += JSON.stringify(el.map, undefined, 4); output += `\n####\n`; - output += el.configs.join('\n'); + output += el.lines.join('\n'); output += '\n################################################\n'; }) diff --git a/tests/outside_files.tests.ts b/tests/outside_files.tests.no.ts similarity index 82% rename from tests/outside_files.tests.ts rename to tests/outside_files.tests.no.ts index dba36ac..8fe7725 100644 --- a/tests/outside_files.tests.ts +++ b/tests/outside_files.tests.no.ts @@ -24,7 +24,7 @@ import BigipConfig from '../src/ltm'; const privateFolder = path.join(__dirname, '..', '..', 'private'); let device: BigipConfig; const log = []; -const events = [] +const events: any = [] let mainErr; let expld; // let load; @@ -51,16 +51,13 @@ describe('corkscrew explode tests on multiple archives', async function () { device.on('parseObject', x => events.push(x)) device.on('extractApp', x => events.push(x)) - expld = await device.load(path.join(privateFolder, file)) - .then(async loadTime => { - return await device.parse() - .then(async parseTime => { - return await device.explode(); - }) + expld = await device.loadParseAsync(path.join(privateFolder, file)) + .then(async parseTime => { + return await device.explode(); }) .catch(async err => { mainErr = err; - log.push(...await device.logs()); + // log.push(...await device.logs()); debugger; })