• Stars
    star
    183
  • Rank 210,154 (Top 5 %)
  • Language
    Go
  • License
    GNU Affero Genera...
  • Created almost 7 years ago
  • Updated 6 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

HEP Capture Server for HOMER

image

heplify-server is a stand-alone HOMER capture server developed in Go, optimized for speed and simplicity. Distributed as a single binary ready to capture TLS and UDP HEP, Protobuf encapsulated packets from heplify or any other HEP enabled agent, indexing to database and rotating using H5 or H7 table format. heplify-server provides precise SIP and RTCP metrics with the help of Prometheus and Grafana. It gives you the possibility to get a global view on your network and individual SIP trunk monitoring.

TLDR; minimal, stand-alone HOMER capture server without Kamailio or OpenSIPS dependency. It's not as customizeable as Kamailio or OpenSIPS with their configuration language, the focus is simplicity!


Installation

You have 3 options to get heplify-server up and running:

  • Download a release

  • Docker compose

  • Compile from sources:

    Install luajit dev libary

    apt-get install libluajit-5.1-dev

    or

    yum install luajit-devel

    or for macOS

    # Assuming brew installs to /usr/local/
    brew install [email protected] luajit
    ln -s /usr/local/lib/pkgconfig/luajit.pc /usr/local/lib/pkgconfig/luajit-5.1.pc
    export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig/

    install Go 1.11+

    go build cmd/heplify-server/heplify-server.go

Requirements

These depend on which features you want to use and on whether you use homer5 or homer7 schema. For homer5, you need MySQL >= 5.7 or MariaDB >= 10. For homer7 you need PostgreSQL >= 10.

Configuration

heplify-server can be configured using command-line flags, environment variables, or a local configuration file or via web form by setting ConfigHTTPAddr

image

To set up a systemd service, use the sample service file and follow the instructions found at the top of the file.

Since version 0.92 it is possible to hot reload PromTargetIP and PromTargetName when you change them inside the configuration file.

killall -HUP heplify-server

Running

Stand-Alone
./heplify-server -h
Docker

A sample Docker compose file is available providing heplify-server, Homer 5 UI, Prometheus, Alertmanager and Grafana in seconds!

cd heplify-server/docker/hom5-hep-prom-graf/
docker-compose up -d

Support

  • Testers, Reporters and Contributors welcome

Screenshots

sip_metrics xrtp loki

Made by Humans

This Open-Source project is made possible by actual Humans without corporate sponsors, angels or patreons.
If you use this software in production, please consider supporting its development with contributions or donations

Donate

More Repositories

1

homer

HOMER - 100% Open-Source SIP, VoIP, RTC Packet Capture & Monitoring
Shell
1,625
star
2

homer-app

HOMER 7.x Front-End and API Server
Go
204
star
3

heplify

Portable and Lightweight HEP Capture Agent for HOMER
Go
182
star
4

captagent

100% Open-Source Packet Capture Agent for HEP
C
167
star
5

sipgrep

SIPGREP: Display and Troubleshoot SIP signaling over IP networks in console
C
160
star
6

paStash

pastaΚƒ'Κƒ = Spaghetti I/O Event Data Processing, Interpolation, Correlation and beyond 🍝
JavaScript
102
star
7

homer7-docker

HOMER 7 Docker Images
JavaScript
93
star
8

homer-ui

HOMER Front-End Application (UI)
TypeScript
62
star
9

HEP

HEP-EEP: Extensible Encapsulation Protocol (Specs & Technical Docs)
44
star
10

homer5-docker

HOMER 5 Docker Containers (OBSOLETE)
M4
40
star
11

homer-installer

HOMER Install Scripts and Install Packages
Shell
36
star
12

rtcagent

RTCAgent is an eBPF powered HEP Agent for HOMER/HEPIC
C
35
star
13

awesome-hep

A curated list of HEP / EEP enabled projects
27
star
14

hep-wireshark

HOMER HEP Wireshark Dissector
Lua
27
star
15

homer-api

HOMER 5: Back-End (API) DEPRICATED - use sipcapture/homer-app
PHP
27
star
16

hepipe.js

Pipe arbitrary data rows (logs, events, cdrs, esl, etc) to HEP Server (HOMER)
JavaScript
24
star
17

rtpbreakr

RTP Audio Juicer
C
23
star
18

HEPop

Multi-Protocol HEP Server & RTC Collector in NodeJS 🎈
JavaScript
22
star
19

hepipe

HEP-PIPE: Pipe arbitrary data (logs, events, cdrs, etc) to HEP server (HOMER)
C
16
star
20

homer-config

HOMER Project Configuration Repo
PHP
13
star
21

homer-docker

HOMER 10 Docker
JavaScript
13
star
22

hep-js

HEP: Javascript/Node implementation of HEP/EEP Encapsulation Protocol
JavaScript
11
star
23

hepsub-voipmonitor

HEP Pub-Sub Client for OSS Voipmonitor Sniffer
JavaScript
10
star
24

homer-view-react

Experimental React Viewer for HEP APIs
JavaScript
10
star
25

pastash_plugins

NPM Plugin Modules for Pastash
JavaScript
9
star
26

homer-view

Homer view interface for sharing
TypeScript
9
star
27

hepfix.js

IPFIX Gateway for HEP & HOMER
JavaScript
9
star
28

hepgen.js

Barebone HEP Generator for SIP-less Devs
JavaScript
9
star
29

HEPjack.js

Elegantly Sniff Forward-Secrecy TLS/SIP to HEP at the source using Frida
JavaScript
9
star
30

captagent-js

Captagent Sample implementation in NodeJS w/ HEP3 and ES Bulk API Support
JavaScript
9
star
31

hepagent

Next-Gen HEP Capture Agent in Rust
Rust
8
star
32

hepsub-rtpengine

HEPSub Middleware for RTPEngine Meta & Recordings
JavaScript
8
star
33

hepsub

HEP Pub-Sub API Example
JavaScript
8
star
34

hepsub-apiban

HOMER/HEPSUB Integration for APIban.org
JavaScript
7
star
35

hep-go

HEP: GO implementation of HEP/EEP Encapsulation Protocol
Go
7
star
36

hepsub-cgrates

HOMER HEPSub client example for CGRages
JavaScript
6
star
37

homer-snmp

HOMER SNMP Bridge
JavaScript
6
star
38

statstrmr

JSON-HEP Statistics Streamer for HOMER 5.x
JavaScript
6
star
39

cacheep

Real-Time Lookup Cache (LRU + API + DNS)
JavaScript
6
star
40

hep-c

HEP: C implementation of HEP/EEP Encapsulation Protocol
C
6
star
41

hepsub-elastic

HEP Subscibe Client for Elasticsearch
JavaScript
6
star
42

hep-java

HEP: JAVA implementation of HEP/EEP Encapsulation Protocol
Java
5
star
43

hep-erlang

HEP: Erlang implementation of HEP/EEP Encapsulation Protocol
Erlang
5
star
44

homer-puppet

HOMER Puppet Modules
Puppet
5
star
45

hepgen-bash

An HEP generator written in bash
Shell
4
star
46

docs

HOMER/HEP Documentation
4
star
47

libhep

HEP Library C/C++
C
4
star
48

helm-charts

HOMER helm charts
Smarty
3
star
49

hep-python

HEP: Python implementation of HEP/EEP Encapsulation Protocol
Python
3
star
50

sipcapture.github.io

sipcapture.github.io
HTML
2
star
51

teardown-js

Synthetic SIP Teardown Generator module for NodeJS
JavaScript
2
star
52

hsp-output-elasticsearch

ESP/HSP template for Elasticsearch
2
star
53

hep-perl

HEP Perl implementation. Provided by SipGate
Perl
1
star
54

builders

Package Builders for SIPCAPTURE/QXIP Projects
Shell
1
star