Instal·lació i configuració
Compilació des del codi font
Requisits:
- Go 1.25 o posterior
- Make
- Capçaleres de desenvolupament de libpcap (
libpcap-deva Debian/Ubuntu,libpcap-devela RHEL/Fedora)
Clonar el repositori:
git clone https://github.com/endorses/lippycat.git
Entrar al directori del projecte:
cd lippycat
Crear una compilació de desenvolupament (conjunt complet, amb símbols de depuració):
make build
Alternativament, crear una compilació de publicació optimitzada (sense símbols):
make build-release
Per a una compilació ràpida de desenvolupament sense informació de versió:
make dev
Compilacions especialitzades
lippycat utilitza etiquetes de compilació de Go per crear binaris més petits i especialitzats. Si només necessiteu un subconjunt de funcions:
Compilar totes les variants a bin/:
make binaries
| Objectiu | Binari | Finalitat | Mida aproximada |
|---|---|---|---|
make all | bin/lc | Conjunt complet | 22 MB |
make hunter | bin/lc-hunt | Agent de captura a la perifèria | 18 MB |
make processor | bin/lc-process | Agregació central | 14 MB |
make tap | bin/lc-tap | Captura i processament autònoms | — |
make cli | bin/lc-cli | Només ordres CLI | — |
make tui | bin/lc-tui | Només interfície TUI | — |
Per a la majoria d’usuaris, el conjunt complet (make build) és l’opció més senzilla. Les compilacions especialitzades són útils per a desplegaments de producció en què voleu binaris mínims a cada node.
Acceleració GPU
Per a acceleració GPU amb CUDA (requereix GPU NVIDIA i el conjunt d’eines CUDA):
make build-cuda
Consulteu Optimització del rendiment per obtenir detalls sobre els motors GPU.
Objectius d’instal·lació
Instal·lar a $GOPATH/bin:
make install
Instal·lar per a tot el sistema a /usr/local/bin (requereix sudo):
make install-system
Permisos
La captura de paquets requereix accés a sòcols de xarxa en brut. Teniu dues opcions:
Opció 1: executar amb sudo
L’opció més senzilla per a desenvolupament i proves:
sudo lc sniff -i eth0
Opció 2: capacitats de Linux (recomanada)
Concedir només la capacitat específica necessària:
sudo setcap cap_net_raw+ep $(which lc)
Després d’això, lc pot capturar sense sudo:
lc sniff -i eth0
Nota: la capacitat s’assigna al fitxer binari. Si el torneu a compilar i el sobreescriviu, heu d’assignar-li la capacitat de nou.
Configuració
lippycat cerca un fitxer de configuració YAML en aquestes ubicacions (per ordre de prioritat):
$HOME/.config/lippycat/config.yaml(preferida)$HOME/.config/lippycat.yaml(estàndard XDG)$HOME/.lippycat.yaml(heretada)
Ordre de prioritat (guanya la més alta):
CLI flags > Environment variables > Config file > Defaults
Exemple de configuració:
# PCAP read timeout (ms)
pcap_timeout_ms: 200
# Promiscuous mode
promiscuous: false
# DNS settings
dns:
ports: "53"
track_queries: true
detect_tunneling: true
# VoIP settings
voip:
tcp_performance_mode: balanced
L’arrel del repositori inclou un example-config.yaml complet amb totes les opcions disponibles documentades. Consulteu l’Apèndix B: referència de configuració per veure l’esquema complet.
Variables d’entorn
| Variable | Finalitat |
|---|---|
LIPPYCAT_PRODUCTION | Establiu-lo a true per imposar el xifratge TLS (bloqueja l’opció --insecure) |
Verificació de la instal·lació
Després de la instal·lació, verifiqueu que tot funciona:
Comprovar la versió:
lc version
Llistar les interfícies de xarxa disponibles:
lc list interfaces
Mostrar la configuració actual:
lc show config
Si lc list interfaces mostra les vostres interfícies de xarxa, ja podeu començar a capturar. Continueu amb Captura CLI amb lc sniff.