Skip to end of metadata
Go to start of metadata

You are viewing an old version of this content. View the current version.

Compare with Current View Version History

Version 1 Current »

updateFirewallConfiguration

This wiki is to capture the Firewall module provided GraphQL APIs.

Please find below list of APIs supported by Firewall module.

firewall module APIs are useful to create, delete and fetch the values of existing configured ringgroup. 

Enable Firewall

Enable firewall configuration to into Freepbx/PBXact system.

API: enableFirewall

API Parameters -none

Query Parameters 

status
message

API Request 

GQL API:  /admin/api/api/gql
 
mutation {
  enableFirewall(input: { }){
  message
  status
  }
}

API Response 

{
  "data": {
    "enableFirewall": {
      "message": "Firewall enable process has been completed.",
      "status": true
    }
  }
}

Disable Firewall

Disable firewall configuration to into Freepbx/PBXact system.

API: disableFirewall

API Parameters -none

Query Parameters 

status
message

API Request 

GQL API:  /admin/api/api/gql
 
mutation {
  disableFirewall(input: { }){
  message
  status
  }
}

API Response 

{
  "data": {
    "disableFirewall": {
      "message": "Firewall has been disabled",
      "status": true
    }
  }
}

Add BlacklistIP

Add ( configure ) firewall configuration to into Freepbx/PBXact system.

API: addBlackListIP

API Parameters -

Name

Required

Type

Default

Description

IP

Mandatory

String

IP address that needs to be blocked

Query Parameters 

status
message

API Request 

GQL API:  /admin/api/api/gql
 
parameters:
 
mutation {
    addBlackListIP(input: {
    IP: "100.100.100.100"
  }) {
        status message
    }
}

API Response 

{
  "data": {
    "addBlackListIP": {
      "status": true,
      "message": "IP has been added to blacklist"
    }
  }
}

Delete BlacklistIP

Delete( Blacklist) firewall configuration to into Freepbx/PBXact system.

API: deleteBlackListIP

API Parameters -

Name

Required

Type

Default

Description

IP

Mandatory

String

IP address that needs to be blocked

Query Parameters 

status
message

API Request 

GQL API:  /admin/api/api/gql
 
parameters:
 
mutation {
    deleteBlackListIP(input: {
    IP: "100.100.100.100"
  }) {
        status message
    }
}

API Response 

{
  "data": {
    "deleteBlackListIP": {
      "status": true,
      "message": "IP removed from blacklist"
    }
  }
}

Add an IP to White List

Add Whitelist IP configuration to into Freepbx/PBXact system.

API: addWhiteListIP

API Parameters -

Name

Required

Type

Default

Description

sourceIp

Mandatory

String

IP address to whitelist

zone

Mandatory

String

Describe the service zone to be trusted or not

hidden

Mandatory

Boolean

Setting to true will hide this value from GUI

Query Parameters 

status
message

API Request 

GQL API:  /admin/api/api/gql
 
parameters:
 
mutation {
  addWhiteListIP(input: {sourceIp: "100.100.100.100", zone: "trusted", hidden: false}) {
    status
    message
  }
}

API Response 

{
  "data": {
    "addWhiteListIP": {
      "status": true,
      "message": "IP has been Whitelisted"
    }
  }
}

Update Firewall Configuration

Update firewall configuration to into Freepbx/PBXact system.

API: updateFirewallConfiguration

API Parameters -

Name

Required

Type

Default

Description

status

Boolean

true

To enable/disable a firewall

responsiveFirewall

Boolean

true

To enable/disable a responsive firewall

chansip

Boolean

true

Set the chainSIP configuration

pjsip

Boolean

true

Set the pjSIP Configuration

safeMode

String

"disabled"

To enable/disable safe mode

currentJiffies

String

"1000"

Set the current Jiffer value, default is 1000

serviceZone

String

["external", "other", "internal"]

Set OOBE an external setup options

enableTrustedHost

Boolean

true

Set the trusted host. true/false

enableResponsive

Boolean

true

Set OOBE answered enabled/disabled. true/false

externalSetup

Boolean

true

Set the service Zone, default is true

Query Parameters 

status
message

API Request 

GQL API:  /admin/api/api/gql
 
parameters:
 
mutation {
   updateFirewallConfiguration(
     input: {
       status: true
       responsiveFirewall: true
       chansip: true
       pjsip: true
       safeMode: "disabled"
       currentJiffies: "1100"
       enableTrustedHost: false
       enableResponsive: false
       externalSetup: false
       serviceZone: ["external", "other", "internal"]
     }
   ) {
     status
     message
   }
}

API Response 

{
  "data": {
    "updateFirewallConfiguration": {
      "status": true,
      "message": "Firewall configurations have been saved successfully"
    }
  }
}

Fetch BlacklistIP

Fetch ( Blacklist) firewall configuration to into Freepbx/PBXact system.

API: fetchAllBlacklistIPs

API Parameters -none

Query Parameters 

status
message
blacklistIps {
     sourceIp
     trusted
   }

API Request 

GQL API:  /admin/api/api/gql
 
parameters:
 
query {
  fetchAllBlacklistIPs{
    message status blacklistIps {
      sourceIp
      trusted
    }
  }
}

API Response 

{
  "data": {
    "fetchAllBlacklistIPs": {
      "message": "List of all blacklistedIPs",
      "status": true,
      "blacklistIps": [
        {
          "sourceIp": "100.100.101.102",
          "trusted": false
        },
        {
          "sourceIp": "100.101.101.101",
          "trusted": false
        }
      ]
    }
  }
}

Fetch All White Listed IPs

Fetch ( WhiteList) IPs firewall configuration to into Freepbx/PBXact system.

API: fetchAllWhitelistIPs

API Query Parameters 

Query Parameters 

whitelistIps {
  sourceIp
  trusted
}
 status
 message

API Request 

GQL API:  /admin/api/api/gql
 
parameters:
 
query{
  fetchAllWhitelistIPs {
    status
    message
    whitelistIps {
      sourceIp
      trusted
    }
  }
}

API Response 

{
  "data": {
    "fetchAllWhitelistIPs": {
      "status": true,
      "message": "List of all whiltelistedIPs",
      "whitelistIps": [
        {
          "sourceIp": "100.100.100.100",
          "trusted": true
        },
        {
          "sourceIp": "100.100.100.101",
          "trusted": true
        }
      ]
    }
  }
}

Fetch Firewall Configurations

Fetch  firewall configuration from Freepbx/PBXact system.

API: fetchFirewallConfiguration

API Query Parameters 

Query Parameters 

status, message,
  configurations {
   status
   responsiveFirewall
   chainSip
   pjSip
   safemode
   currentJiffies
   enableTrustedHost
   enableResponsive
   externalSetup
   provision
 }

API Request 

GQL API:  /admin/api/api/gql
 
Parameters:
 
query{
  fetchFirewallConfiguration{
    status, message,
     configurations {
      status
      responsiveFirewall
      chainSip
      pjSip
      safemode
      currentJiffies
      enableTrustedHost
      enableResponsive
      externalSetup
      provision
    }
  }
}

API Response 

{
  "data": {
    "fetchFirewallConfiguration": {
      "status": true,
      "message": "List of firewall configurations",
      "configurations": [
        {
          "status": true,
          "responsiveFirewall": true,
          "chainSip": false,
          "pjSip": false,
          "safemode": "enabled",
          "currentJiffies": "1000",
          "enableTrustedHost": true,
          "enableResponsive": true,
          "externalSetup": true,
          "provision": false
        }
      ]
    }
  }
}

Fetch Firewall Interfaces

Fetch  firewall interfaces from Freepbx/PBXact system.

API: fetchInterface 

API Query Parameters 

Query Parameters 

status
    message
    interfaces {
        ints
        zone
        description
    }

API Request 

query{
  fetchInterface {
    status
    message
    interfaces {
        ints
        zone
        description
    }
  }
}

API Response 

{
    "data": {
        "fetchInterface": {
            "status": true,
            "message": "List of firewall interface and default zones",
            "interfaces": [
                {
                    "ints": "eth0",
                    "zone": "Internet (Default Firewall)",
                    "description": "dsfdsfds"
                }
            ]
        }
    }
}

Update Firewall Interface

Update firewall Interface into Freepbx/PBXact system.

API: updateFirewallInterface

API Parameters -

Name

Required

Type

Default

Description

ints

Mandatory

string

Interface name which has to be updated

zone

Mandatory

string

Describe the service zone to be trusted or not.

Allowed values for zone - external, internal, other, reject, trusted

description

Optional

string

Description

Query Parameters 

ints
zone
description
message

API Request 

mutation {
    updateFirewallInterface(input: {
    ints: "eth0"
    zone:"external",
    description:"dsfdsfds"
  }) {
      ints
      zone
      description
      message
  }
}

API Response 

{
    "data": {
        "updateFirewallInterface": {
            "clientMutationId": "12432",
            "ints": "eth0",
            "zone": "external",
            "description": "dsfdsfds",
            "message": "Firewall Interface updated successfully"
        }
    }
}

Fetch Firewall Advance Settings

Fetch  firewall settings from Freepbx/PBXact system.

API: fetchFirewallAdvanceSettings 

API Query Parameters 

Query Parameters 

status
message
advanceSettings {
    safemode
    lefilter
    customrules
    rejectpackets
    id_service
    id_sync_fw
    import_hosts
}

API Request 

query{
  fetchFirewallAdvanceSettings {
    status
    message
    advanceSettings {
        safemode
        lefilter
        customrules
        rejectpackets
        id_service
        id_sync_fw
        import_hosts
    }
  }
}

API Response 

{
    "data": {
        "fetchFirewallAdvanceSettings": {
            "status": true,
            "message": "List of firewall advance settings",
            "advanceSettings": {
                "safemode": "disabled",
                "lefilter": "enabled",
                "customrules": "enabled",
                "rejectpackets": "enabled",
                "id_service": "disabled",
                "id_sync_fw": "legacy",
                "import_hosts": "disabled"
            }
        }
    }
}

Update Firewall Advance Settings

Update firewall Advance Settings into Freepbx/PBXact system.

API: updateFirewallAdvanceSettings

API Parameters -

Name

Required

Type

Description

safemode

Optional

string

Set Safe Mode enable/disable

lefilter

Optional

string

Set Responsive LetsEncrypt Rules enable/disable

customrules

Optional

string

Set Custom Firewall Rules enable/disable

rejectpackets

Optional

string

Set Reject Packets enable/disable

id_service

Optional

string

Set Intrusion Detection Service enable/disable

id_sync_fw

Optional

string

Set Intrusion Detection Sync Firewall enable/legacy

import_hosts

Optional

string

Set Add etc/hosts as Trusted enable/disable

Query Parameters 

status
message

API Request 

mutation {
    updateFirewallAdvanceSettings(input: {
    safemode: "enabled"
    lefilter: "disabled"
    customrules: "disabled"
    rejectpackets: "disabled"
    id_service: "enabled"
    id_sync_fw: "enabled"
    import_hosts: "disabled"
  }) {
      status
      message
  }
}

API Response 

{
    "data": {
        "updateFirewallAdvanceSettings": {
            "status": true,
            "message": "Firewall advance settings updated succefully"
        }
    }
}
  • No labels