
Cliente de linha de comando da API do Sensor Corelight
.. _corelight-client:
.. O número da versão é preenchido automaticamente. .. |version| replace:: 1.5.17
.. contents::
Esta ferramenta fornece um cliente de linha de comando para o Corelight Sensor <https://www.corelight.com>, um appliance Bro <https://www.bro.org>
projetado do zero pelos criadores do Bro para transformar tráfego de rede em
dados de alta fidelidade para o seu pipeline de análise. Usando o cliente de
linha de comando, você pode configurar e controlar um Corelight Sensor
remotamente por meio de sua API RESTful abrangente. Consulte a documentação do
Corelight Sensor para uma versão estendida desta visão geral do cliente.
:Versão: |version|
:Página inicial: http://www.corelight.com
:GitHub: https://github.com/corelight/corelight-client
:Autor: Corelight, Inc. <https://www.corelight.com>_ [email protected]
Este cliente é de código aberto sob uma licença BSD. Consulte COPYING para
obter detalhes.
O cliente de linha de comando precisa de Python >= 3.4 com o módulo requests
instalado como sua principal dependência.
A maneira mais fácil de instalar o cliente é por meio do Python Package Index::
# pip3 install corelight-client
Alternativamente, você pode instalar a versão mais recente do GitHub::
# git clone https://github.com/corelight/corelight-client
# cd corelight-client
# python3 setup.py install
Se tudo estiver instalado corretamente, --help exibirá uma mensagem de
uso::
# corelight-client --help
Usage: corelight-client [<global options>] <command> <subcommand> [<options>]
[--ssl-ca-cert SSL_CA_CERT] [--ssl-no-verify-certificate]
[--ssl-no-verify-hostname] [--cache CACHE]
[...]
Observe que, inicialmente, --help ainda não mostrará nenhum comando
adicional a ser usado. Prossiga para a próxima seção para permitir que o
cliente se conecte ao seu dispositivo.
Você precisa habilitar o acesso à API Corelight por meio da interface de
configuração do dispositivo. Você também precisa definir senhas para os
usuários da API admin (para acesso ilimitado) e monitor (para acesso
somente leitura). Consulte a documentação do Corelight Sensor para obter mais
informações.
Em seguida, você precisa informar ao corelight-client o endereço de rede do
seu Corelight Sensor. Você tem três opções para fazer isso:
Adicione -b <address> à linha de comando.
Crie um arquivo de configuração ~/.corelight-client.rc com o conteúdo
device=<address>.
Defina a variável de ambiente CORELIGHT_DEVICE=<address>.
Se tudo isso estiver configurado, o corelight-client --help agora solicitará
um nome de usuário e senha e, em seguida, mostrará a lista completa de comandos
que a API do dispositivo permite que o cliente ofereça. Se você confirmar o
salvamento das credenciais, o cliente as armazenará em
~/.corelight-client/credentials para reutilização futura. Você também pode
especificar informações de autenticação por meio do Arquivo de Configuração_
ou como Opções Globais_.
O cliente oferece a funcionalidade da API por meio de um conjunto de comandos no
formato <command> <subcommand> [options]. Ao adicionar --help a qualquer
comando, você obtém uma descrição de toda a sua funcionalidade e opções.
Se a saída do --help listar uma opção de comando como sendo do tipo file,
o cliente exige que você especifique o caminho para um arquivo a ser enviado.
Além disso, você pode prefixar o valor de qualquer opção com file:// para ler
seu conteúdo de um arquivo em vez de fornecê-lo na própria linha de comando.
(Nota: a saída do --help conterá a lista de comandos somente se o cliente
puder se conectar e autenticar no dispositivo.)
.. _corelight-client-options:
O corelight-client suporta as seguintes opções globais de linha de comando.
As opções --device e --fleet devem ser usadas de forma mutuamente
exclusiva. Todas as outras opções se aplicam a todas as solicitações:
--async
Não aguarda a conclusão de comandos assíncronos antes de sair.
--device
Especifica o endereço de rede de um dispositivo Corelight Sensor.
--fleet
Especifica o endereço de rede de um Corelight Fleet Manager.
--uid
Especifica o UID de um Corelight Sensor gerenciado por meio do Corelight
Fleet Manager especificado.
--cache=<file>
Define um arquivo personalizado para armazenar em cache os metadados do
Corelight Sensor.
--debug
Ativa a saída de depuração mostrando as solicitações e respostas HTTP.
--password
Especifica a senha para autenticação.
--mfa
Especifica o código de verificação 2FA para autenticação com o Corelight
Fleet Manager especificado. Use '-' para perguntar ao usuário.
--ssl-ca-cert
Especifica um arquivo contendo um certificado SSL CA personalizado para
validar a autenticidade do dispositivo.
--ssl-no-verify-certificate
Instrui o cliente a aceitar qualquer certificado SSL do Corelight Sensor.
--ssl-no-verify-hostname
Instrui o cliente a aceitar o certificado SSL do Corelight Sensor mesmo que
ele não corresponda ao seu nome de host.
--socket
Instrui o cliente a usar um soquete de domínio unix para enviar solicitações.
--user
Especifica o nome de usuário para autenticação.
--version
Exibe a versão do corelight-client e sai.
--ignore-meta
Não envie informações de metadados para a chamada de API do sensor, a menos
que seja especificado na CLI.
.. _corelight-client-config:
O corelight-client procura um arquivo de configuração
~/.corelight-client.rc. O arquivo deve consistir em linhas
<key>=<value>. Comentários que começam com # são ignorados. O
corelight-client suporta as seguintes chaves:
device
O endereço de rede de um dispositivo Corelight Sensor.
fleet
O endereço de rede de um Corelight Fleet Manager.
uid
O UID de um Corelight Sensor gerenciado por meio do Corelight Fleet Manager
especificado.
user
O nome de usuário para autenticação.
password
A senha para autenticação.
mfa
O código de verificação 2FA para autenticação com um Corelight Fleet
Manager. Use '-' para perguntar ao usuário.
ssl-ca-cert
Um arquivo contendo um certificado SSL CA personalizado para validar a
autenticidade do dispositivo.
ssl-no-verify-certificate
Se definido como false, o cliente aceitará qualquer certificado SSL do
Corelight Sensor.
ssl-no-verify-hostname
Se definido como false, o cliente aceitará o certificado SSL do
Corelight Sensor mesmo que ele não corresponda ao seu nome de host.
socket
Um soquete de domínio unix a ser usado para enviar solicitações.