> For the complete documentation index, see [llms.txt](https://docs.linuxcontrolcenter.com.br/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.linuxcontrolcenter.com.br/custom-scripts/script_linux.md).

# Scripts Linux

## Requisitos

Linux Control Center = 2.10.X ou superior

## Objetivo

Este manual tem como objetivo apresentar todos os recursos que o módulo Scripts do LCC oferece.

## Overview

No Linux Control Center (LCC), o módulo Scripts desempenha um papel importante na administração, oferecendo aos usuários a capacidade de executar Scripts personalizados em hosts gerenciados pelo LCC. O uso do módulo Scripts é semelhante ao módulo Playbooks.

A execução de um Script pelo LCC oferece uma visão completa do processo, permitindo monitorar o andamento em tempo real e gerar relatórios detalhados. Além disso, a execução pode ser realizado pelo Workflow, que permite tomar decisões dinâmicas com base nos resultados de cada etapa.

## Upload e Configuração de Scripts

1. Para iniciar, acesse o LCC e clique em **Scripts** no menu lateral esquerdo.

   ![](/files/0qRBC2YgJAMG1WOLijgQ)
2. Clique em **Create**

   ![](/files/6GB0YGf36dLzALVtS7Ru)
3. Insira um nome para identificar o Script no campo **Name**.
4. Clique em **Host Type** e escolha o tipo de Script **Windows ou Linux**

   ![](/files/cLwESoRGgfyUW7naRETr)
5. Preencha o campo **Remote Path** com **/** no final. Este será o diretório em que o Script será salvo e executado.
6. Clique em **User for Execution** cujo recomendamos que seja o usuário **lcc.local**

   ![](/files/JpHjQcTGCuPtS2A5bK2w)
7. Clique em **Upload File** e escolha o Script desejado em seu computador.
8. Veja que o nome do Script será exibido no campo **Current File**

   ![](/files/Kpwm5MqAqKNUhOvi70en)
9. Clique em **Save** e logo em seguida o Script estará salvo no banco de dados do LCC.

   ![](/files/A6ciDqAyI94wAAB93e5F)
10. Clique no Script que foi criado e sera possível ver as seguintes telas:

### Informações Gerais

1. Tela que exibe a data e hora em que o Script foi criado, data e hora da ultima alteração e também é possível alterar as informações do campo **Name** e **Descrição**. Também é possível baixar o arquivo ao clicar em **Download**, deletar ao clicar em **Delete** e realizar o upload de um novo arquivo ao clicar em **Change File**

   ![](/files/W7pZq46w7TRCzQGgGIPE)

### Variáveis Dinâmicas no Script

Semelhante aos *Playbooks Customizáveis* os Scripts também possuem a capacidade de inserir variáveis. Isso permite a execução do mesmo Script em momentos diferentes com valores distintos, oferecendo adaptabilidade conforme necessário. O formato da variável é **${:::Nome da variável:::}**, sendo o *Nome da variável* o identificador daquela variável.

Após criar o Script com a variável nesse formato e realizar o upload do arquivo para a console, será possível alterar seu valor diretamente pela interface web do LCC sempre que necessário. O valor atualizado será salvo automaticamente no arquivo do Script salvo no banco de dados.

1. Veja um exemplo de implementação deste formato de variável

   *var\_name: **${:::var\_name:::}***

   ![](/files/ZEV12l83PbnUVxKo7n4m)

{% hint style="warning" %}
É importante notar que caso sejam escritas variáveis com o mesmo *identificador*/*nome* o LCC irá substituir o valor da ultima variável inserida pelo usuário em todas as outras. Logo é recomendado utilizar nomes diferentes caso os valores desejados de execução sejam distintos.
{% endhint %}

### Conteúdo do Script

1. A tela Content exibe todo o conteúdo do Script. Na imagem abaixo está a variável citada no tópico anterior.

   ![](/files/buQWz5JT6m4xTZ14DcXy)

### Credenciais de execução

1. Na tela **Credentials** O LCC permite que o Script seja executado com uma credencial diferente da padrão *lcc.local*. É possível utilizar Credenciais Linux que estão cadastradas na console do LCC, Credenciais do cofre de senha Password Safe da BeyondTrust por meio de integração e por meio da funcionalidade Hook Bridge Params do LCC.

   ![](/files/3OQLzClVOLpgjRO0zgSX)

   ![](/files/1xrdCGrvZmPjporA5ogg)

### Tenable Plugins

1. Esta tela facilita a correção de vulnerabilidades identificadas como Tenable Plugins por meio da integração com o Tenable Vulnerability Manager e/ou Tenable Security Center. A correção é realizada executando scripts do repositório **7 Library** do Linux Control Center, desenvolvidos para corrigir **Tenable Plugins** específicos.

* Este exemplo mostra o Script *Configure SSH Ciphers and Algorithms* que corrige o Tenable Plugin 153588.

  ![](/files/5O4aMyKXzjBrelrii07F)

## Execução de Scripts

1. Acesse a tela **Hosts**

   ![](/files/9WUUC7U0P1AqJnAWNsj7)
2. Clique clique em **Actions** da linha e um Host desejado e clique em **Execute Custom Script**.

   ![](/files/IzGAEo4RZUVrfnLDNR77)
3. Para executar em vários Hosts simulteaneamente, selecione os Hosts desejados e clique em **Actions** do topo da página e clique em **Execute Custom Script**.

   ![](/files/c8PJhV7HYA1bgObKHVGr)
4. Escolha o Script que deseja executar no campo **Scripts**

   ![](/files/9RFYiPwrQQffFq2Owfgv)
5. Clique em **Yes** para executar o Script.

   ![](/files/JrIW8zjd9mAbTaR1IaHM)
6. Clique no botão **Queue Working** no topo da página para acompanhar a execução da ação.

   **Observação:** Será criada uma Action **Execute Custom Script** independente para cada Host caso a ação seja executada em mais de um Host simultaneamente, com logs separados para cada execução.

   ![](/files/9CjzxIMJpogOFUs0FBb2)
