All Projects → ovh → fossil

ovh / fossil

Licence: other
Fossil is a proxy for securing unencrypted Graphite metrics collection

Programming Languages

go
31211 projects - #10 most used programming language
Makefile
30231 projects

Projects that are alternatives of or similar to fossil

Enigmakit
Enigma encryption in Swift
Stars: ✭ 108 (+414.29%)
Mutual labels:  cipher
nanotube
High-performance router for Graphite.
Stars: ✭ 56 (+166.67%)
Mutual labels:  graphite
dyndnsd
A small, lightweight and extensible DynDNS server written with Ruby and Rack.
Stars: ✭ 69 (+228.57%)
Mutual labels:  graphite
Simon Speck
The SIMON and SPECK families of lightweight block ciphers. #nsacyber
Stars: ✭ 146 (+595.24%)
Mutual labels:  cipher
Encrypt
🔒 A set of high-level APIs over PointyCastle for two-way cryptography.
Stars: ✭ 199 (+847.62%)
Mutual labels:  cipher
mbedcrypto
a portable, small, easy to use and fast c++14 library for cryptography.
Stars: ✭ 38 (+80.95%)
Mutual labels:  cipher
Cipher.so
A simple way to encrypt your secure data like passwords into a native .so library.
Stars: ✭ 1,308 (+6128.57%)
Mutual labels:  cipher
CTF-CryptoTool
CTF-CryptoTool is a tool written in python, for breaking crypto text of CTF challenges. It tries to decode the cipher by bruteforcing it with all known cipher decoding methods easily. Also works for the cipher which does not have a key.
Stars: ✭ 38 (+80.95%)
Mutual labels:  cipher
Lua Openssl
Openssl binding for Lua
Stars: ✭ 206 (+880.95%)
Mutual labels:  cipher
CppSecurity
C++ Security Library
Stars: ✭ 24 (+14.29%)
Mutual labels:  cipher
Crypto Async
Fast, reliable cipher, hash and hmac methods executed in Node's threadpool for multi-core throughput.
Stars: ✭ 161 (+666.67%)
Mutual labels:  cipher
Sboot stm32
Secure USB DFU1.1 bootloader for STM32
Stars: ✭ 181 (+761.9%)
Mutual labels:  cipher
Fingerprint
Android library that simplifies the process of fingerprint authentications.
Stars: ✭ 68 (+223.81%)
Mutual labels:  cipher
Chinese Cipher Of Sm2 Sm3 Sm4
This is an android-project about sending messages after encryption or getting cipher text from message database of mobile phone.U could also get the original points through your secret key
Stars: ✭ 109 (+419.05%)
Mutual labels:  cipher
promate
Graphite On VictoriaMetrics
Stars: ✭ 68 (+223.81%)
Mutual labels:  graphite
Javascript
A repository for All algorithms implemented in Javascript (for educational purposes only)
Stars: ✭ 16,117 (+76647.62%)
Mutual labels:  cipher
opsbro
Ops Best friend
Stars: ✭ 37 (+76.19%)
Mutual labels:  graphite
jsish
Jsi is a small, C-embeddable javascript interpreter with tightly woven Web and DB support.
Stars: ✭ 32 (+52.38%)
Mutual labels:  fossil
django-mirage-field
Django model field encrypt/decrypt your data, keep secret in database.
Stars: ✭ 86 (+309.52%)
Mutual labels:  cipher
AES
C++ AES implementation
Stars: ✭ 365 (+1638.1%)
Mutual labels:  cipher

Fossil

Fossil is a proxy for Graphite.

Why would I need a proxy?

Well if you're confortable with the idea of pushing data in clear over the wire without cipher them, ok then. But it's an issue for us 😄.

Fossil is a drop-down replacement for your Graphite deployment. It will listen TCP connection on the port 2003 and translate them into sensision before flush them in a directory.

We use it in combination with Beamium. This combination allow us to send our data in a ciphered way.

Installation

Dependencies

Before install fossil you need some tools:

Install from sources

First, you have to clone it:

git clone https://github.com/ovh/fossil.git $GOPATH/src/github.com/ovh/fossil

Go into the fresh installation:

cd $GOPATH/src/github.com/ovh/fossil

Install project dependencies using Dep:

dep ensure

Now, the best part compilation:

make release

Finally, install fossil:

sudo make install

NB: make install will also enable a systemd fossil service, to start fossil you just need to do systemctl start fossil.service

Usage

$ fossil --help
Fossil fossil Graphite to beamium forwarder

Usage:
  fossil [flags]
  fossil [command]

Available Commands:
  version     Print the version number

Flags:
  -b, --batch int          batch count per file (default 10000)
      --config string      config file to use
  -d, --directory string   directory to write metrics file (default "./sources")
  -l, --listen string      listen address (default ":2003")
  -t, --timeout int        batch timeout for flushing datapoints (default 5)
  -v, --verbose            verbose output

Use "fossil [command] --help" for more information about a command.

Configuration

Fossil configuration file is in JSON format. By default Fossil will look for a configuration file named: config.json in these directories:

/etc/fossil/
$HOME/.fossil
.

Here is an example :

{
  "listen": ":2003",
  "verbose": "true",
  "batch": "10000",
  "timeout": "5",
  "directory": "/home/fossil/sources/"
}

find a sample in the config directory of this repository

Example

fossil -d /opt/beamium/source

In this example fossil, will listen TCP connection on port 2003 and will translate all graphite datapoints into sensision and flush them into /opt/beamium/source directory.

The flush is realized all 5 seconds or all 10000 datapoints.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].