f5os
26 TopicsCredentialed Scanning - F5OS - Rseries
After solving the remote authentication issue previously with F5OS. My next question is related to credentialed scanning on R series appliances running F5OS. The tenable agent logs in via SSH and tries to run commands in the shell to pull system information. This has never been on issues on the iseries appliances and BIG-IP guests as they allow uses directly to the shell upon login. All linux commands run as intended. F5OS is a new beast for me to understand as it dumps you into its own OS. The shell is protected and only root at the local level is allowed access to the linux shell. This is the issue I face with credentialed scanning. Authentication works perfectly fine but the ability to run the proper commands at the appropriate level seems to be locked and it doesn't appear I can grant shell access to remote accounts. Anyone have any experience running authenticated scans on their rseries appliances with f50S?79Views0likes1CommentAutomate F5OS license activation using ansible
Hello, working to automate the process of licensing the F5OS platform (r-series) using ansible but with the version we have in our production we cannot use F5OS ansible galaxy modules so we are using ansible uri module to get dossier from F5OS r-series system by API. any-leads on how to achieve this license activation which requires dossier signing from "https://activate.f5.com/license/dossier.jsp" or if anyone can lead me to how the payload to this site should look like ?Solved61Views0likes4CommentsF5OS Tenant Radius Issues
Hello All, Finished deploying new R-Series equipment to replace some i-Series. Working through some issues that I hope there is an easier solution for in regards to radius authentication on tenants/guests running on my new appliances. I cannot seem to get the tenants running on my r-series appliances to use the Mgmt IP address for radius authentication. They seem to want to use a self-ip that is within the network on the gateway for the default routing domain. For additional information the configuration on the i-series were ported over via UCS files to my r-series tenants. They're near identical besides new MGMT ips. Quick breakdown of what works for Radius R-Series Appliance (F5OS) - MGMT 1.1.1.1 <---Radius auth works using MGMT IP - Makes sense, no virtual routers - BIG-IP Tenant - MGMT 1.1.1.2 <-----Radius fails (Uses self-ip 10.10.10.10) - BIG-IP Tenant - MGMT 1.1.1.3 <-----Radius fails (Uses self-ip 23.23.23.23) - BIG-IP Tenant - MGMT 1.1.1.4 <-----Radius fails (Uses self-ip 5.5.5.5) The self IPs are all on different networks that serve different purposes on different security zones on my firewall. The solution as it stands now is allow the specific reporting self-ips to reach my radius server. I'd rather not do that if I can find a way to force to tenants to use their mgmt IP.Solved25Views0likes2CommentsF5 Velos/rSeries/F5OS code for automating config backup with the new RESTCONF API and Ansible
On the new F5OS devices a new RESTCONF based API interface is used that allows everything to be done via that API. Now you can even send API command to make F5 to export the configuration file in outbound connection with HTTPS/SCP and this is an extra security for me. F5 has even released Ansible collections for Velos but some things are still not possible with the collection but with Ansible the URI module can used to do the things I am doing with Postman as even the HTTP headers can be added in the URI module. Some may use python but personally I like Ansible more (look at the end of this article for the Ansible Example) 🙂 https://clouddocs.f5.com/products/orchestration/ansible/devel/velos/velos.html https://clouddocs.f5.com/products/orchestration/ansible/devel/f5os/f5os.html https://docs.ansible.com/ansible/latest/collections/ansible/builtin/uri_module.html This code allows the automation of the configuration backups for the F5 Velos/rSeries using the new API. To get started with the F5OS API I recommend going through the Devcentral article https://community.f5.com/t5/technical-articles/exploring-f5os-automation-features-on-velos/ta-p/295318 The Velos Postman collections are at https://clouddocs.f5.com/api/velos-api/velos-api-workflows.html The Velos API documentation can be found at F5OS/F5OS-C OpenAPI Documentation . The F5OS API supports Basic and Bearer token authentication but it is much better to use the BASIC auth just to retrive the Token as shown in the examples below. Generate Bearer Token in Postman. This is from the F5 Postman collection. Endpoint: https://{{Chassis1_System_Controller_IP}}:8888/restconf/data/openconfig-system:system/aaa 'No body' 2. Create a config backup (now it is not called UCS but database configuration backup in F5OS). Endpoint: 8888/restconf/data/openconfig-system:system/f5-database:database/f5-database:config-backup Body: { "f5-database:name": "api-backup", "f5-database:overwrite": "true" } Note! For rSeries "f5-database:overwrite": "true" may need to be removed as 1.3.1 does not support to select to overwrite an existing backup or not. 3a. Download the config backup with ‘root’ with SCP from ‘/var/confd/configs/’, for example Back up and restore the F5OS-C configuration on a VELOS system 3b. Make F5 to send the backup with HTTPS to the backup server with the new file transfer utility that can be triggered with API commands for the F5 to start the file transfer. Endpoint: :8888/restconf/data/f5-utils-file-transfer:file/export Body: { "f5-utils-file-transfer:username": "test", "f5-utils-file-transfer:password": "test", "f5-utils-file-transfer:local-file": "configs/api-backup", "f5-utils-file-transfer:remote-url": "https://1.1.1.1/file" } In some versions the variable "insecure" : "true" can't be set, so maybe the web server will need a valid and not self-signed SSL cert. 3c. Export the backup with SCP/AFTP initiated from the F5 device with an API command. This is something that will be possible in the future as it seems as of now it is still not possible as I tried to follow the API documentation but sometimes, I get errors about missing element ‘’known-hosts’’ but this file should be created with the below API call as maybe the workaround is to go to the Linux with a root account and create this file but I still have not found where to create it. Another error is unknown element ‘remote-host’ but this should exist, so it is a bug or the documentation has some mistakes but as this is a new feature it will work eventually. As a note you need to add the fingerprints for the Velos or rSeries to start the SCP connection as an extra security step and this is really nice 😀 Endpoint: /restconf/data/f5-utils-file-transfer:file/known-hosts Body: { "f5-utils-file-transfer:known-host": [ { "remote-host": "string", "config": { "remote-host": "string", "key-type": "rsa", "fingerprint": "string" }, "state": { "remote-host": "string", "key-type": "rsa", "fingerprint": "string" } } ] } Now with F5OS when accessing the GUI, you can use Fiddler or F12 (the devtools) just to see the RESTCONF commands that are used and the use them in Postman/Ansible/Python etc. EDIT: 4. Using Ansible URI Module with F5OS for Basic Auth, Token generation and Config Backup Here is an example to do the same tasks but with using the Ansible URI module. The Ansible URI module allows us to make our own API requests when there is no build-in module and it even supports basic and form based authentication and after that the token can be saved and used a varible in the next requests that generate the backup and then the backup can be transfered with SCP triggered with cron job or another URI module task can be written that uses the file transfer utility. Ansible Playbook using jinja2 template as json body: root@niki1:/home/niki/ansible# cat f5os_backup.yml --- - name: F5OS_BACKUP hosts: lb connection: local gather_facts: false vars: Chassis_IP : X.X.X.X backup_name : api3_backup tasks: - name: Create a Basic request ansible.builtin.uri: url: https://{{ Chassis_IP }}:8888/restconf/data/openconfig-system:system/aaa user: xxx password: xxx method: GET force_basic_auth: yes status_code: 200 body_format: json validate_certs: false headers: Content-Type: application/yang-data+json X-Auth-Token: rctoken return_content: yes register: result - name: Save the token to a fact variable set_fact: metatoken: "{{ result.x_auth_token }}" - name: Create Backup ansible.builtin.uri: url: https://{{ Chassis_IP }}:8888/restconf/data/openconfig-system:system/f5-database:database/f5-database:config-backup method: POST status_code: 200 body_format: json validate_certs: false body: "{{ lookup('ansible.builtin.template','f5os.json') }}" headers: Content-Type: application/yang-data+json X-Auth-Token: "{{ metatoken }}" f5os.json Template: { "f5-database:name": "{{ backup_name }}", "f5-database:overwrite": "true" } Edit: Now there is an F5 Ansible collection for this 🙂 https://clouddocs.f5.com/products/orchestration/ansible/devel/f5os/modules_3_0/f5os_config_backup_module.html As of F5OS 1.8 now ":8888/restconf" can be replaced with ":443/api".2.9KViews0likes0CommentsF5OS (R-series) changing admin/root password
Hi, I have question / observation. I have have been running F5 R5900 for almost a year now, when i want to change the admin and root password via the GUI or CLI. The first next attempt to log in, it asking me change again. I also noticed when i change the password, the colomn "last change" in the GUI is empty. Does any one have the same thing? Is there a way to diable the force changing the password for admin and root account?871Views0likes4CommentsrSeries Management route
Hi Experts, I have a situation in rSeries where I want to define a management route for a specific IP (outside the OOB network). I'm facing a scenario where this server is outside the OOB network and cannot be reached from rSeries. I can see from the PCAP that rSeries is able to receive the ICMP request, but rSeries is not sending an ICMP reply and only an ARP request, as if it doesn't know how to reach the server IP. The following steps I tried but still fail: Adding the allowed IP address: server network and server IP with all protocols. Adding a route to the Linux kernel. Note that only the IP outside the OOB network is not reachable, and no ACL/FW in between. Thanks.159Views0likes2CommentsNetScaler to F5 Migration
Hi Team, I am facing difficulties while converting the NetScaler ns.conf file into an F5 BIG-IP LTM configuration, particularly with VIPs, pools, and nodes. I have attempted multiple methods to perform this conversion but have not had success. If you have any recommended approaches or tools to facilitate this process, please share them with us. NetScaler Version: v13.5 Build 52137Views0likes1CommentR2600 device and tenant/partition configuration
Hello, I'm working with configuration on r2600 where is one tenant with multiple vlans. On tenant perspective I want to add each vlan to specific partition. How to do this in correct way for rSeries? There is a bug http://cdn.f5.com/product/bugtracker/ID1231889.html which says that all vlans need to be in Common partition. On vCMP or bare metal there was an option to create vlan in partition, add it to route domain and then configure all other things (IP, routes, etc). So - what is proper way? Where can I find F5 document?489Views0likes11Comments