Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Instal·lació i configuració

Compilació des del codi font

Requisits:

  • Go 1.25 o posterior
  • Make
  • Capçaleres de desenvolupament de libpcap (libpcap-dev a Debian/Ubuntu, libpcap-devel a 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
ObjectiuBinariFinalitatMida aproximada
make allbin/lcConjunt complet22 MB
make hunterbin/lc-huntAgent de captura a la perifèria18 MB
make processorbin/lc-processAgregació central14 MB
make tapbin/lc-tapCaptura i processament autònoms—
make clibin/lc-cliNomés ordres CLI—
make tuibin/lc-tuiNomé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

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):

  1. $HOME/.config/lippycat/config.yaml (preferida)
  2. $HOME/.config/lippycat.yaml (estàndard XDG)
  3. $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

VariableFinalitat
LIPPYCAT_PRODUCTIONEstabliu-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.