Skip to content

webHomer settings

lmangani edited this page Nov 23, 2014 · 8 revisions

HOMER

Before you can start using HOMER, a few things need to be configured.

webHomer: Base Settings

webHomer ships with two example configuration files (configuration_example.php and preferences_example.php) that need to be filled in by the administrator and renamed before use.

Insert the minimum DB access details in "configuration.php":

/* Access db of homer users */
define(HOST, "localhost");
define(USER, "root");
define(PW, "password");
define(DB, "homer_users");

Also define username and password for HOMER SIP Capture DB. This user must be defined in all your nodes DB. Don't forget to insert all your database nodes into homer_nodes table.

Configure the proper details in "configuration.php":

/* Homer connection 
*  this user must have the same password for all Homer nodes
*  please define all your nodes in homer_nodes table
*/

define(HOMER_HOST, "localhost"); /* DEFAULT. Don't forget insert this host to your DB nodes table */
define(HOMER_USER, "homer_users");
define(HOMER_PW, "homer_password");
define(HOMER_DB, "homer_db");
define(HOMER_TABLE, "sip_capture");

The application also needs a temporary folder to store its generated files. Configure full write permissions to the /tmp folder inside webHomer root and configure the following parameters accordingly in "configuration.php":

PCAPDIR - this directory will be used to store temporary pcap files and call flow SVG/HTMLs. Must be absolute path and must reflect the location of the webhomer folder from GIT. THIS FOLDER MUST BE WRITEABLE!

WEBPCAPLOC - web location of PCAPDIR. (If the URL for your PCAPDIR is http://domain.com/webhomer/tmp, then this should be set to /webhomer/tmp).

/* Settings 
*
*/

/* here */
define(PCAPDIR,"/var/www/webhomer/tmp/");
define(WEBPCAPLOC,"/webhomer/tmp/");
define(APILOC,"/webhomer/api/");

A number of customizable, non critical parameters such as timezones and modules, and user interface preferences are set separately in "preferences.php" - rename the example file and set your preferences accordingly.


WEBHOMER: USERS

Remove the default user and add your own accounts (permission/levels in preferences.php)


WEBHOMER: DB NODES

Homer can function using one or more database nodes

Make sure the node name value defined in your Kamailio capture node script is correctly reflected in ADMIN > DB Nodes with a properly configured entry.

modparam("sipcapture", "capture_node", "node1");

Without this parameter, some search filtering options might not work as intended!

Basic example with 1 Node and 2 Capture Agents:

      CaptAgent hep-id: 111 -----> [NODE1] <----- CaptAgent hep-id: 222

      HOMER Search-Filtering options:

      ALL TRAFFIC - node1
      AGENT1 ONLY - node1:111
      AGENT2 ONLY - node1:222
      etc...

webHomer: Correlation Settings

WEBHOMER: ALIASES IP -> HOSTNAME

This feature is used in Call-Flow generators to convert IP addresses to Hostnames, and more importantly to correlate traffic to gateways with multiple iterfaces (public/private) or networks (ipv4/ipv6)

Example:
    Soft-Switch Public IP: AA.BB.CC.DD
    Soft-Switch Private IP: EE.FF.GG.HH
    Soft-Switch IPv6: III::LLLL:MMMM:NNNN:OOOO

In Homer add several ALIASES with the exact same NAME:

    IP: AA.BB.CC.DD
    NAME: SWITCH1
    STATUS: 1

    IP: EE.FF.GG.HH
    NAME: SWITCH1
    STATUS: 1

    IP: [III::LLLL:MMMM:NNNN:OOOO]
    NAME: SWITCH1
    STATUS: 1

WEBHOMER CFLOW: Internal/External HOSTS Correlation

In order for HOMER to identify and correlated messages between internal Hosts using IP:PORT schema, change the following in webhomer/preferences.php:

   define('CFLOW_HPORT', 2); /* Column/Host Mode = Plain: 0, +Port: 1, Auto-Select: 2 */

In order for HOMER to visually merge messages between Internal and External CE services, create the following ALIASES via UI (Browse: WebHomer > Admin > Aliases > New):

       HOST                              NAME
       -----------------------           -----------
       {external_IP}:5060                NGCP-LB
       127.0.0.1:5060                    NGCP-LB
       127.0.0.1:5062                    NGCP-Proxy
       127.0.0.1:5080                    NGCP-B2BUA

NOTE: NAME field for internal & external LBs (5060) MUST BE IDENTICAL to correlate!

If your system uses other custom IPs or Interfaces, follow the same logic above to add them.


WEBHOMER CFLOW: B2BUA Call Correlation

In order for HOMER to correlate call legs forked by the SPCE B2BUA, set the following in webhomer/preferences.php:

      /* BLEG DETECTION */
      define('BLEGDETECT', 1); /* always detect BLEG leg in CFLOW/PCAP*/
      define('BLEGCID', "b2b"); /* options: x-cid, b2b */
      define('BLEGTAIL', "_b2b-1"); /* session-ID correlation suffix for SPCE b2b mode */

WEBHOMER: SECURITY CONSIDERATIONS

webHomer (and HOMER in general) is designed to be deployed on a private, well protected network segment and it's not intended to be bare facing public access. Please make sure you protect/firewall/ACL your capture setup properly!

Clone this wiki locally