All Projects → arkime → Arkime

arkime / Arkime

Licence: other
Arkime (formerly Moloch) is an open source, large scale, full packet capturing, indexing, and database system.

Programming Languages

javascript
184084 projects - #8 most used programming language
c
50402 projects - #5 most used programming language
Vue
7211 projects
perl
6916 projects
HTML
75241 projects
lua
6591 projects

Projects that are alternatives of or similar to Arkime

Nfstream
NFStream: a Flexible Network Data Analysis Framework.
Stars: ✭ 622 (-87.55%)
Mutual labels:  network-monitoring, pcap, packet-capture
zeek-docs
Documentation for Zeek
Stars: ✭ 41 (-99.18%)
Mutual labels:  pcap, network-monitoring, nsm
Zeek
Zeek is a powerful network analysis framework that is much different from the typical IDS you may know.
Stars: ✭ 4,180 (-16.3%)
Mutual labels:  network-monitoring, pcap, nsm
Suricata
Suricata git repository maintained by the OISF
Stars: ✭ 2,274 (-54.47%)
Mutual labels:  network-monitoring, nsm
Dnscap
Network capture utility designed specifically for DNS traffic
Stars: ✭ 234 (-95.31%)
Mutual labels:  pcap, packet-capture
Packages
The default package source of the Zeek Package Manager
Stars: ✭ 94 (-98.12%)
Mutual labels:  network-monitoring, pcap
Tcpdump
the TCPdump network dissector
Stars: ✭ 1,731 (-65.34%)
Mutual labels:  pcap, packet-capture
NetworkAlarm
A tool to monitor local network traffic for possible security vulnerabilities. Warns user against possible nmap scans, Nikto scans, credentials sent in-the-clear, and shellshock attacks. Currently supports live monitoring and network capture (pcap) scanning.
Stars: ✭ 17 (-99.66%)
Mutual labels:  pcap, network-monitoring
Sniff Probes
Plug-and-play bash script for sniffing 802.11 probes requests 👃
Stars: ✭ 200 (-96%)
Mutual labels:  network-monitoring, packet-capture
dsc
DNS Statistics Collector
Stars: ✭ 94 (-98.12%)
Mutual labels:  pcap, packet-capture
SnifferUI
基于MFC和WinPcap库开发的网络抓包和协议分析软件
Stars: ✭ 86 (-98.28%)
Mutual labels:  pcap, packet-capture
Cuishark
A protocol analyzer like a wireshark on CUI. cuishark is using libwireshark to analyze packets. https://cuishark.slankdev.net
Stars: ✭ 208 (-95.84%)
Mutual labels:  pcap, packet-capture
tcpslice
tcpslice concatenates multiple pcap files together, or extracts time slices from one or more pcap files.
Stars: ✭ 48 (-99.04%)
Mutual labels:  pcap, packet-capture
Zeek-Network-Security-Monitor
A Zeek Network Security Monitor tutorial that will cover the basics of creating a Zeek instance on your network in addition to all of the necessary hardware and setup and finally provide some examples of how you can use the power of Zeek to have absolute control over your network.
Stars: ✭ 38 (-99.24%)
Mutual labels:  pcap, network-monitoring
Passer
Passive service locator, a python sniffer that identifies servers, clients, names and much more
Stars: ✭ 144 (-97.12%)
Mutual labels:  network-monitoring, pcap
Libpcap
the LIBpcap interface to various kernel packet capture mechanism
Stars: ✭ 1,785 (-64.26%)
Mutual labels:  pcap, packet-capture
Homer
HOMER - 100% Open-Source SIP / VoIP Packet Capture & Monitoring
Stars: ✭ 855 (-82.88%)
Mutual labels:  pcap, packet-capture
Crafter
🔬 An R package to work with PCAPs
Stars: ✭ 27 (-99.46%)
Mutual labels:  pcap, packet-capture
network-tools
Network Tools
Stars: ✭ 27 (-99.46%)
Mutual labels:  pcap, network-monitoring
Pypcap
pypcap - python libpcap module, forked from code.google.com/p/pypcap, now actively maintained
Stars: ✭ 255 (-94.89%)
Mutual labels:  pcap, packet-capture

Arkime

Arkime (formerly Moloch) is a large scale, open source, indexed packet capture and search system.

banner

Arkime augments your current security infrastructure to store and index network traffic in standard PCAP format, providing fast, indexed access. An intuitive and simple web interface is provided for PCAP browsing, searching, and exporting. Arkime exposes APIs which allow for PCAP data and JSON formatted session data to be downloaded and consumed directly. Arkime stores and exports all packets in standard PCAP format, allowing you to also use your favorite PCAP ingesting tools, such as wireshark, during your analysis workflow.

Arkime is built to be deployed across many systems and can scale to handle tens of gigabits/sec of traffic. PCAP retention is based on available sensor disk space. Metadata retention is based on the Elasticsearch cluster scale. Both can be increased at anytime and are under your complete control.

Learn more on our website

Table of Contents

Background

Arkime was created to replace commercial full packet systems at AOL in 2012. By having complete control of hardware and costs, we found we could deploy full packet capture across all our networks for the same cost as just one network using a commercial tool.

The Arkime system is comprised of 3 components:

  • capture - A threaded C application that monitors network traffic, writes PCAP formatted files to disk, parses the captured packets, and sends metadata (SPI data) to elasticsearch.
  • viewer - A node.js application that runs per capture machine. It handles the web interface and transfer of PCAP files.
  • elasticsearch - The search database technology powering Arkime.

Once installed, a user can look at the data Arkime has captured using a simple web interface. Arkime provides multiple views of the data. The primary view is the Sessions page that contains a list of sessions. Each session can be opened to view the metadata and PCAP data.

Another way to view the data is the SPI View page, which allows the user to see all the unique values for each field that Arkime understands.

Install

Most users should use the prebuilt binaries available at our Downloads page and follow the simple install instructions on that page.

For advanced users, you can build Arkime yourself:

  • git clone https://github.com/arkime/arkime
  • ./easybutton-build.sh --install downloads all the prerequisites, build, and install
  • make config - performs an initial Arkime configuration

Configuration

Most of the system configuration will take place in the /data/arkime/etc/config.ini file. The variables are documented in our Settings Wiki page.

Usage

Once Arkime is running, point your browser to http://localhost:8005 to access the web interface. Click on the Owl to reach the Arkime help page.

Security

Access to Arkime is protected by using HTTPS with digest passwords or by using an authentication providing web server proxy. All PCAPs are stored on the sensors and are only accessed using the Arkime interface or API. Arkime is not meant to replace an IDS but instead work alongside them to store and index all the network traffic in standard PCAP format, providing fast access.

Elasticsearch provides NO security by default, so iptables MUST be used to allow only Arkime machines to talk to the elasticsearch machines (ports 9200-920x) and for them to mesh connect (ports 9300-930x). An example with 3 ES machines 2 nodes each and a viewer only machine

    for ip in arkimees1 arkimees2 arkimees3 arkimevieweronly1; do
      iptables -A INPUT -i eth0 -p tcp --dport 9300 -s $ip -j ACCEPT
      iptables -A INPUT -i eth0 -p tcp --dport 9200 -s $ip -j ACCEPT
      iptables -A INPUT -i eth0 -p tcp --dport 9301 -s $ip -j ACCEPT
      iptables -A INPUT -i eth0 -p tcp --dport 9201 -s $ip -j ACCEPT
    done
    iptables -A INPUT -i eth0 -p tcp --dport 9300 -j DROP
    iptables -A INPUT -i eth0 -p tcp --dport 9200 -j DROP
    iptables -A INPUT -i eth0 -p tcp --dport 9301 -j DROP
    iptables -A INPUT -i eth0 -p tcp --dport 9201 -j DROP
  • Arkime machines should be locked down, however they need to talk to each other (port 8005), to the elasticsearch machines (ports 9200-920x), and the web interface needs to be open (port 8005).

  • Arkime viewer should be configured to use SSL.

    • It's easiest to use a single certificate with multiple DNs.
    • Make sure you protect the cert on the filesystem with proper file permissions.
  • It is possible to set up a Arkime viewer on a machine that doesn't capture any data that gateways all requests.

    • It is also possible to place Apache in front of Arkime, so it can handle the authentication and pass the username on to Arkime.
    • This is how we deploy it.
  • A shared password stored in the Arkime configuration file is used to encrypt password hashes AND for inter-Arkime communication.

    • Make sure you protect the config file on the filesystem with proper file permissions.
    • Encrypted password hashes are used so a new password hash can not be inserted into elasticsearch directly in case it hasn't been secured.

API

You can learn more about the Arkime API on our API Wiki page.

Contribute

Please refer to the CONTRIBUTING.md file for information about how to get involved. We welcome issues, feature requests, pull requests, and documentation updates in GitHub. For questions about using and troubleshooting Arkime please use the Slack channels.

Maintainers

The best way to reach us is on Slack. Please request an invitation to join the Arkime Slack workspace here.

License

This project is licensed under the terms of the Apache 2.0 open source license. Please refer to LICENSE for the full terms.

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].