You can use the 360 resource to perform some administrative tasks in Kemp 360 Central.

License Kemp 360 Central

The following section outlines all the commands that are required to license Kemp 360 Central.

  1. Accept the Welcome Page.

Example Command

curl -X PUT "https://Kemp360CentralIPAddress/api/v1/config/1/" -H "Content-Type: application/json" -k -v -d "{\"deployment_date\":\"null\",\"id\":\"1\",\"isAdminPassSet\":\"false\",\"isEulaAccepted\":\"true\",\"isLicensed\":\"false\",\"is_fingerprint_generated\":\"false\",\"resource_uri\":\"/api/v1/config/1/\"}"

Expected Output

HTTP/1.1 204 NO CONTENT
Date: Mon, 05 Mar 2018 09:46:27 GMT
Server: Apache
X-Frame-Options: SAMEORIGIN
Vary: Accept
Content-Length: 0
Content-Type: text/html; charset=utf-8
*

2. Retrieve the API key. The API key is required in subsequent commands.

Example Command

curl -X POST "https://Kemp360CentralIPAddress/api/v1/user/authenticate/" -H "Content-Type: application/json" -k -v -d "{\"username\":\"admin\",\"password\":\"admin\"}"

Expected Output

HTTP/1.1 200 OK
Date: Mon, 05 Mar 2018 10:12:36 GMT
Server: Apache
Vary: Accept
X-Frame-Options: SAMEORIGIN
Transfer-Encoding: chunked
Content-Type: application/json
{"apikey": "1d2046ad8e89a301edca3ce1cc5152fae949a216", "id": 1, "success": true}*

3. Configure the proxy. This command should be run as is.

Example Command

curl -k --dump-header - -X GET "https://Kemp360CentralIPAddress/api/v1/360/unset_proxy/?api_key=1d2046ad8e89a301edca3ce1cc5152fae949a216&username=admin"

Expected Output

HTTP/1.1 200 OK
Date: Mon, 05 Mar 2018 10:15:01 GMT
Server: Apache
X-Frame-Options: SAMEORIGIN
Vary: Accept
Cache-Control: no-cache
Transfer-Encoding: chunked
Content-Type: application/json
{"message": "Proxy parameters unset"}

4. License Kemp 360 Central.

This command allows the user to license their Kemp 360 Central. In the MELA case, the Contract ID is provided by Kemp Operations and is a mandatory parameter.

Example Command

curl -X POST "https://Kemp360CentralIPAddress/api/v1/360/license/?api_key=1d2046ad8e89a301edca3ce1cc5152fae949a216&username=admin" -H "Content-Type: application/json" -k -v -d "{\"kempid\":\"KempIDEmailAddress\",\"password\":\"KempIDPassword\",\"order_id\":\"ContractID\"}"

Expected Output

HTTP/1.1 200 OK
Date: Mon, 05 Mar 2018 10:21:45 GMT
Server: Apache
X-Frame-Options: SAMEORIGIN
Vary: Accept
Content-Length: 54
Content-Type: application/json
{"message": "Kemp360 has been licensed successfully."}

5. Configure the admin username and password.

This is a two-step process, where initially the admin account is confirmed. Subsequently, the password is updated.

Example Command

curl -X POST "https://Kemp360CentralIPAddress/api/v1/user/authenticate/?api_key=1d2046ad8e89a301edca3ce1cc5152fae949a216&username=admin" -H "Content-Type: application/json" -k -v -d "{\"username\":\"admin\",\"password\":\"admin\"}"

Expected Output

HTTP/1.1 200 OK
Date: Mon, 05 Mar 2018 10:24:29 GMT
Server: Apache
X-Frame-Options: SAMEORIGIN
Vary: Accept
Transfer-Encoding: chunked
Content-Type: application/json
{"apikey": "1d2046ad8e89a301edca3ce1cc5152fae949a216", "id": 1, "success": true}

Example Command

curl -X PUT "https://Kemp360CentralIPAddress/api/v1/user/1/?api_key=1d2046ad8e89a301edca3ce1cc5152fae949a216&username=admin" -H "Content-Type: application/json" -k -v -d "{\"password\":\"Kemp360CentralPassword\"}"

Expected Output

HTTP/1.1 200 OK
Date: Mon, 05 Mar 2018 10:30:44 GMT
Server: Apache
Vary: Accept
X-Frame-Options: SAMEORIGIN
Transfer-Encoding: chunked
Content-Type: application/json
{"email": "", "groups": ["/api/v1/resourcegroup/2/", "/api/v1/resourcegroup/1/"], "id": 1, "is_active": true, "is_superuser": true, "permissions": ["SystemSettings.read", "SystemSettings.write", "Monitoring", "ServiceConfiguration.read", "ServiceConfiguration.write"], "pk": "1", "resource_uri": "/api/v1/user/1/", "username": "admin"}

6. Confirm all the settings. This command should be run as is.

Example Command

curl -X PUT "https://Kemp360CentralIPAddress/api/v1/config/1/" -H "Content-Type: application/json" -k -v -d "{\"isAdminPassSet\":\"true\",\"isEulaAccepted\":\"true\",\"isLicensed\":\"true\",\"is_fingerprint_generated\":\"true\"}"

Expected Output

HTTP/1.1 204 NO CONTENT
Date: Mon, 05 Mar 2018 10:28:25 GMT
Server: Apache
Vary: Accept
X-Frame-Options: SAMEORIGIN
Content-Length: 0
Content-Type: text/html; charset=utf-8
*

View the Details of a License

You can use a GET command to view the details of a Kemp 360 Central license.

/api/v1/360/license/details/

Example Command

curl -k --dump-header - -X GET "https://Kemp360CentralIPAddress/api/v1/360/license/details/?&api_key=179d4f59c5ef97e7b6f7035eb296cdcefcc1e88f&username=admin"

Expected Output

HTTP/1.1 200 OK
Date: Fri, 02 Mar 2018 11:10:51 GMT
Server: Apache
Cache-Control: no-cache
X-Frame-Options: SAMEORIGIN
Vary: Accept
Transfer-Encoding: chunked
Content-Type: application/json
{"access_code": "8DPtDB4QvD", "asl_enabled": true, "asl_instance_grace_period": 30, "asl_instance_sku": "", "blob_create": "", "blob_delete": "", "fingerprint": "QNY34-Etl76-jS7uB-Myny5-rfk9X-82Cww-awft3-e", "id": 1, "ignore_kts_hwid": true, "is_mela": true, "is_tethered": false, "kemp360_ip": "10.0.0.16", "kts_mela_grace_period": 90, "license_expiration": "Unlimited", "license_name": "K360-MELA-VLM-WAF", "license_status": "Single Perm", "max_loadmaster_activations": 500, "max_loadmasters": 500, "serial_number": "KTS1082322", "status": "In Use", "support_expiration": "2019-07-20T00:00:00", "support_name": "Premium"}

Reboot Kemp 360 Central

You can use a GET method to reboot Kemp 360 Central.

/api/v1/360/reboot/?&api_key=APIKey&username=Username

Example Command

curl -k --dump-header - -X GET "https://10.154.190.179/api/v1/360/reboot/?&api_key=de26b104526be42ec7e0454d363345a15be4c453&username=admin"

Expected Output

{
    "message": "System rebooting."
}   

Shut Down Kemp 360 Central

You can use a GET method to shut down Kemp 360 Central.

This shuts down the Kemp 360 Central Virtual Machine. After shutting down, the Virtual Machine must be powered back on to turn the Kemp 360 Central instance back on.

/api/v1/360/shutdown/?&api_key=APIKey&username=Username

Example Command

curl -k --dump-header - -X GET "https://10.154.190.179/api/v1/360/shutdown/?&api_key=de26b104526be42ec7e0454d363345a15be4c453&username=admin"

Expected Output

{
    "message": "System shutting down."
}

Set the Email Options

To configure the email options for Kemp 360 Central, you can use a PUT method.

/api/v1/360/1/?api_key=APIKey&username=Username

Example Command

curl -X PUT "https://Kemp360CentralIPAddress/api/v1/360/1/?api_key=1d2046ad8e89a301edca3ce1cc5152fae949a216&username=admin" -H "Content-Type: application/json" -k -v -d "{\"email_host\":\"2.2.2.2\",\"email_port\":\"25\",\"email_address_list\":\"jbloggs@kemptechnologies.com\",\"from_email_address\":\"jbloggs@customernetwork.com\"}"

Available Parameters

Parameter

Parameter Type

Parameter Description

email_address_list

String

Semi-colon separated list of email addresses. This is mandatory.

email_host

String

The host to use for sending emails. Either an IP address or DNS style entry is acceptable for this parameter. This is mandatory.

email_port

Integer

The port to use for the SMTP host. This is the external SMTP server from which emails notifications are sent. This is mandatory.

email_host_user

String

Username to use for the SMTP host.

email_host_password

String

Password to use for the SMTP host.

email_use_tls

Boolean

Set this to 1 to use TLS as the SMTP secure connection type.

email_use_ssl

Boolean

Set this to 1 to use SSL as the SMTP secure connection type.

from_email_address

String

The email address that Kemp 360 Central uses to send email. This is mandatory.

Expected Output

HTTP/1.1 200 OK
Date: Mon, 05 Mar 2018 10:49:30 GMT
Server: Apache
X-Frame-Options: SAMEORIGIN
Vary: Accept
Transfer-Encoding: chunked
Content-Type: application/json
{"created_at": "2018-01-09T18:43:48", "current_asl_instances": 0, "email_address_list": "jbloggs@kemptechnologies.com", "email_host": "2.2.2.2", "email_host_user": "", "email_port": 25, "email_use_ssl": false, "email_use_tls": false, "from_email_address": "jbloggs@customernetwork.com", "grace_period_active": false, "grace_period_expires": null, "id": 1, "pk": "1", "report_start_date": "2018-01-09T18:43:48", "resource_uri": "/api/v1/360/1/", "update_available": false, "updated_at": "2018-03-05T10:49:30.817437", "usage_report_bcc_address": "", "usage_report_via_alsi": true, "usage_report_via_smtp": false}

Download the System Logs

You can download syslogs by running the following command:

/api/v1/360/syslogs/?&api_key=APIKey&username=Username

Note that the system logs returned cover the period from when the Kemp 360 Central Virtual Machine was first booted to when the download system logs command is run.

Example Command

curl -k --dump-header - "https://Kemp360CentralIPAddress/api/v1/360/syslogs/?api_key=179d4f59c5ef97e7b6f7035eb296cdcefcc1e88f&username=admin"

Expected Output

HTTP/1.1 200 OK
Date: Fri, 02 Mar 2018 11:12:57 GMT
Server: Apache
Cache-Control: no-cache
Content-Disposition: attachment; filename=syslog.log
X-Frame-Options: SAMEORIGIN
Vary: Accept,Accept-Encoding
Transfer-Encoding: chunked
Content-Type: text/plain
syslog
Jul 19 16:26:55 K360Central rsyslogd: [origin software="rsyslogd" swVersion="7.4.4" x-pid="1038" x-info="http://www.rsyslog.com"] start
Jul 19 16:26:55 K360Central rsyslogd-2307: warning: ~ action is deprecated, consider using the 'stop' statement instead [try http://www.rsyslog.com/e/2307 ]
Jul 19 16:26:55 K360Central rsyslogd: rsyslogd's groupid changed to 104
Jul 19 16:26:55 K360Central rsyslogd: rsyslogd's userid changed to 101
Jul 19 16:26:55 K360Central kernel: [    0.000000] Initializing cgroup subsys cpuset
Jul 19 16:26:55 K360Central kernel: [    0.000000] Initializing cgroup subsys cpu
Jul 19 16:26:55 K360Central kernel: [    0.000000] Initializing cgroup subsys cpuacct

Download the Audit Logs

You can download the audit logs by running the following command:

/api/v1/360/auditlogs/?&api_key=APIKey&username=Username

Note that the audit logs returned cover the period from when the Kemp 360 Central Virtual Machine was first booted to when the download audit logs command is run.

Example Command

curl -k --dump-header - "https://Kemp360CentralIPAddress/api/v1/360/auditlogs/?api_key=179d4f59c5ef97e7b6f7035eb296cdcefcc1e88f&username=admin"

Example Output

HTTP/1.1 200 OK
Date: Fri, 02 Mar 2018 11:14:29 GMT
Server: Apache
X-Frame-Options: SAMEORIGIN
Vary: Accept,Accept-Encoding
Content-Disposition: attachment; filename=audit.log
Cache-Control: no-cache
Transfer-Encoding: chunked
Content-Type: text/plain
audit.log.1
[02/Mar/2018 07:30:03] INFO Database: HAPeer data written - {'preferred_master': False, 'ha_username': 'hauser', 'disable': False, 'retries': 0, 'last_heartbeat_sent': None, 'error_state': 1, 'last_heartbeat_received': None, 'ip_address': '127.0.0.1', 'state': 1, 'ssh_public_key': 'ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQChHyY7W65wHQFMrcO1S91VwpzD1Afi/5SLoN/SP1qLk2OjjXxCPd0PAGYE/lJjxmYk+pKNuXE4x++oItLjcv+tFY3M+HMCgqF/oRvspa3b5Wn2h7lHF5H3dEIrkyYalB362GuNp3rIdqwo6Lk4mlTbjbBpG3B2ZnabIY2ivOxhELl70JsTBq8abIN5ImpyQq3a0Sw+9r7WIp8jbQ+geiw5RIjbRwVJenlMbYBwpWzwyfozyUAgyyDEliRWpzjYkXN9Btqw1LCGMKTECOqqqThudn1J4g4PTC0uFrW+3DzpI4ATPgfQ7f4o+CuQJxYYNomPpDwE2vZWY1L0kGtxSQHd www-data@K360Central', 'last_sequence_sync': 0, 'last_sequence_no': 7306, 'id': 1, 'stats_timestamp_sync': 0, 'api_shared_key': '74246ec8d9253cde946e91aefa4f805be70b84fb', 'version': '1.21.0.1577', 'is_processing': True, 'local': True, 'last_heartbeat_response': None}

Download the Debug Logs

You can download the debug logs by running the following command:

/api/v1/360/debuglogs/?&api_key=APIKey&username=Username

Note that the debug logs returned cover the period from when the Kemp 360 Central Virtual Machine was first booted to when the download debug logs command is run.

Example Command

curl -k --dump-header - "https://Kemp360CentralIPAddress/api/v1/360/debuglogs/?api_key=179d4f59c5ef97e7b6f7035eb296cdcefcc1e88f&username=admin"

Example Output

HTTP/1.1 200 OK
Date: Fri, 02 Mar 2018 11:15:23 GMT
Server: Apache
Cache-Control: no-cache
Content-Disposition: attachment; filename=debug.log
X-Frame-Options: SAMEORIGIN
Vary: Accept,Accept-Encoding
Transfer-Encoding: chunked
Content-Type: text/plain
debug.log.1
[01/Mar/2018 10:00:07] ERROR [poll:193] Error connecting to device ARM-MELA-HA-0 (10.0.0.23:8443) due to HTTPSConnectionPool(host='10.0.0.23', port=8443): Max retries exceeded with url: /access/get?param=version (Caused by NewConnectionError('<requests.packages.urllib3.connection.VerifiedHTTPSConnection object at 0x7f3e1ade88d0>: Failed to establish a new connection: [Errno 113] No route to host',))
[01/Mar/2018 10:00:07] ERROR [poll:193] Error connecting to device ARM-MELA-HA-1 (10.0.0.29:8443) due to HTTPSConnectionPool(host='10.0.0.29', port=8443): Max retries exceeded with url: /access/get?param=version (Caused by NewConnectionError('<requests.packages.urllib3.connection.VerifiedHTTPSConnection object at 0x7f3e1adf4358>: Failed to establish a new connection: [Errno 113] No route to host',))
[01/Mar/2018 10:00:08] ERROR [poll:193] Error connecting to device ARM-LM-SPLA02 (10.0.0.21:8443) due to HTTPSConnectionPool(host='10.0.0.21', port=8443): Max retries exceeded with url: /access/get?param=version (Caused by NewConnectionError('<requests.packages.urllib3.connection.VerifiedHTTPSConnection object at 0x7f3e1adf4d30>: Failed to establish a new connection: [Errno 113] No route to host',))
[01/Mar/2018 10:00:10] ERROR [poll:193] Error connecting to device ARM-LM-SPLA03 (10.0.0.28:8443) due to HTTPSConnectionPool(host='10.0.0.28', port=8443): Max retries exceeded with url: /access/get?param=version (Caused by NewConnectionError('<requests.packages.urllib3.connection.VerifiedHTTPSConnection object at 0x7f3e1ade8470>: Failed to establish a new connection: [Errno 113] No route to host',))