See which processes make remote network connections
Project description
picosnitch
- Monitors your system to notify you whenever a program makes its first remote network connection (while picosnitch has been running)
- Or when the sha256 changes for one of these programs
- Logs and config are stored in ~/.config/picosnitch/snitch.json
- Inspired by programs such as:
- GlassWire
- Little Snitch
- OpenSnitch
- simplewall
- tinysnitch
- picosnitch only provides monitoring and notification capabilities, see the above programs for features such as a GUI, bandwidth tracking, firewall configuration, or filtering
getting started
linux
- install from PyPI with
pip3 install picosnitch --upgrade --user
- depends on the BPF Compiler Collection
sudo apt install python3-bpfcc
- run daemon with
sudo -E python3 -m picosnitch
windows
- no longer supported for now, use a version <= v0.2.5
building from source
- install from source using python 3 with
python setup.py install --user
- required dependencies (installed automatically from PyPI on setup if not already present)
filelock plyer psutil python-daemon vt-py
- additional dependency (requires manual installation)
bcc
- picosnitch.py can also be run directly
configuration
- stored in ~/.config/picosnitch/snitch.json
- terminate picosnitch if it is currently running before making any edits otherwise your changes will be lost
{
"Config": {
"Only log connections": True, # Only log processes that make remote network connections
# otherwise log every new process from exec()
"Remote address unlog": [80, "firefox"], # List of process names (str) or remote ports (int)
# will omit connections that match any of these from the log of remote addresses to avoid clutter
# the process and executable will still be logged if it has not been already
"VT API key": "", # API key for VirusTotal, leave blank otherwise
"VT file upload": False, # Only hashes are uploaded by default
"VT limit request": 15 # Number of seconds between requests
},
"Errors": [], # Log of errors by time
"Latest Entries": [], # Log of entries by time
"Names": {}, # Log of processes by name containing respective executable(s)
"Processes": {}, # Log of processes by executable containing:
# cmdlines, days seen, first seen, last seen, name, ports, remote addresses
# some cmdlines are consolidated using * as a wildcard
"Remote Addresses": {} # Log of remote addresses containing respective executable(s)
}
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
picosnitch-0.3.0.tar.gz
(23.2 kB
view hashes)
Built Distribution
picosnitch-0.3.0-py3-none-any.whl
(23.6 kB
view hashes)
Close
Hashes for picosnitch-0.3.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 32ccdacf296637bc592c0020f5a0f18fcfd0bbaf762829352614322fe49cf221 |
|
MD5 | 331609fc772edb4018ca21c2ed48c7d0 |
|
BLAKE2b-256 | cce7b5471c28edeb8ac7b687834fa1aa648e5a4d82e762c73bc8dc211b0b0703 |