blog

Integração Typebot com Chatwoot via N8N

Roteiro para criação de chatbot.

Pré requisitos
  • Ter instaldo e configurado o n8n.
  • Ter instaldo e configurado o TypeBot.
  • Ter instaldo e configurado o EvolutionAPI.

Passo 1 – Criar instância com EvolutionAPI

curl -X POST http://127.0.0.1:8081/instance/create \
-H "Content-Type: application/json" \
-H "apikey: Lqxb8hZvimasdfadsfIqQEYikZEmN5gYg3LKiHT" \
-d '{
    "instanceName": "TypeBot",
    "token": "",
    "qrcode": true,
    "number": "55629841xxxx6"
}'

Passo 2 – Configurar instância criada para conectar com TypeBot

curl -X POST http://127.0.0.1:8081/typebot/set/TypeBot \
-H "Content-Type: application/json" \
-H "apikey: Lqxb8hZvimZi2L0OXOxdfgsdfgdsgIqQEYikZEmN5gYg3LKiHT" \
-d '{
    "enabled": true,
    "url": "https://bot.meutypebot.com.br",
    "typebot":  "NomeDoFlowDoTypeBot",
    "expire": 20,
    "keyword_finish": "#SAIR",
    "delay_message": 1000,
    "unknown_message": "Mensagem não reconhecida",
    "listening_from_me": false
}'

Passo 3 – Ao concluir fluxo do TypeBot redirecionar conversa para o ChatWoot via N8N

  • Criar variável remoteJid para pegar o número do remetente.
  • Criar variável numeroLimpo para remover sufixo.
  • Após construir todo fluxo criar um Webhook com as seguintes variáveis
    • URL do Webhook – https://n8n.minhaempresa.com.br/webhook-test/typebot
    • Method POST
    • Body:
      {
        "number": "{{numeroLimpo}}",
        "name": "{{name}}"
      }

Passo 4- Configurar N8N para receber o webhook e enviar para Chatwoot

  • Fazer downlaod do flow n8n
  • Em Infobase1 Configurar
    • Token (Chatwoot)
    • Url Chatwoot
    • ID Conta
    • ID Caixa
    • NomeContato
      • TypeBot Minha Empresa
    • MensagemEnvio
      • ” Contato recebido via TypeBot “

Basicamente é isso.

Tutorial – EvolutionAPI – Instalando e Usando

Para o sucesso desse tutorial presume-se que o Chatwoot encontra-se instalado e configurado.

Documentação Oficial: http://doc.evolution-api.com/

Git para download: https://github.com/EvolutionAPI/evolution-api

Passo 1 – Baixar e instalar via Docker-Compose o EvolutionAPI

cd 
git clone https://github.com/EvolutionAPI/evolution-api.git
  • Renomear docker-compose.yaml.example para docker-compose.yaml.example
mv docker-compose.yaml.example docker-compose.yaml

Passo 2 – Configurar o arquivo .env

cd Docker
mv .env.exemple .env
vim .env
  • Principais ajustes dentro do arquivo .env são
  • Server URL : Endereço e porta do endopint que irá receber instruções de API
  • Name: Nome que irá aparecer no WhatsApp do Cliente
  • AUTHENTICATION_API_KEY: Senha que irá proteger a API do seu endpoint. Gere uma senha nova. Sugestão de gerador: https://generate-random.org/api-key-generator
# Server URL - Set your application url
SERVER_URL=http://192.168.0.254:8081

# Name that will be displayed on smartphone connection
CONFIG_SESSION_PHONE_CLIENT=CuidadoDigital

## Define a global apikey to access all instances.
### OBS: This key must be inserted in the request header to create an instance.
AUTHENTICATION_API_KEY=Lqxb8hZvimZi2L0OXOxeoy7OmF91tChJjnoC6h5tKejIqQEYikZEmN5gYg3LKiHT

  • Levantar o seviço dentro de ~/evolution-api
cd ~/evolution-api
docker-compose up -d
  • Teste o serviço com seguinte comando:
# Comando
curl 127.0.0.1:8081

# Resposta esperada
{"status":200,"message":"Welcome to the Evolution API, it is working!","version":"1.5.1"}

Passo 3 – Usando EvolutionAPI

  • Criando uma instância
  • Ajustar a URL para o seu endpoint
  • Ajustar APIKEY: ( a mesma do passo anterior)
  • Definir o InstanceName: ( Nome da caixa de entrada que irá aparecer dentro do chatwoot.
  • Chatwoot_account_id: Pegar o ID dentro do Chatwoot, a caixa será instalada dentro desse ID
  • Chatwoot_token: cndZK3xzxxxxxUNzfxxx8FPx (Pegar o Token dentro do Chatwoot e colar aqui)
  • Chatwoot_url: https://app.minhaempresa.com.br/ (Url do Chatwoot)
curl -X POST http://127.0.0.1:8081/instance/create \
-H "apikey: B6D711FCDE4D4120E713976" \
-H "Content-Type: application/json" \
-d '{
"instanceName": "Whatsapp",
"token": "",
"qrcode": true,
"chatwoot_account_id": 1,
"chatwoot_token": "cndZK3pd6safasdfas1seb27oUNzf8FPx",
"chatwoot_url": "https://app.minhaempresa.com.br/",
"chatwoot_sign_msg": true,
"chatwoot_reopen_conversation": true,
"chatwoot_conversation_pending": false
}'
  • Ajustando parametros de uma instância
  • Obs. O último parametro da URL é nome da caixa postal criada anteriormente.
  • reject_call: true ( Utilize esse recurso para rejeitar automaticamente chamadas)
  • msg_call: “Não recebemos ligação” ( Se reject_call estiver true uma mensagem será enviada)
  • groups_ignore: true ( Ignorar grupos de Whatsapp
  • always_online: true ( Mostrar sempre Online
  • read_messages: false ( Se false, as mensagens no smartphone aparecerão como não lidas. Se true as mensagens serão marcadas como lida)
  • read_status: false ( Ler status)
curl -X POST http://127.0.0.1:8081/settings/set/Whatsapp \
-H "apikey: B6D711FCDE4D4FD5936544120E713976" \
-H "Content-Type: application/json" \
-d '{
"reject_call": false,
"msg_call": "",
"groups_ignore": true,
"always_online": true,
"read_messages": false,
"read_status": false
}'
  • Logout de uma instância
curl -X DELETE http://127.0.0.1:8081/instance/logout/Whatsapp \
-H "apikey: B6D711FCDE4D4FD5936544120E713976" \
-H "Content-Type: application/json"
  • Apagando uma instância
curl -X DELETE http://127.0.0.1:8081/instance/delete/Whatsapp \
-H "apikey: B6D711FCDE4D4FD5936544120E713976" \
-H "Content-Type: application/json"
  • Buscando Instâncias Ativas
curl -X GET http://127.0.0.1:8081/instance/fetchInstances \
-H "apikey: B6D711FCDE4D4FD5936544120E713976" \
-H "Content-Type: application/json"
  • Reiniciando uma instência
curl -X GET http://127.0.0.1:8081/instance/restart/Whatsapp \
-H "apikey: B6D711FCDE4D4FD5936544120E713976" \
-H "Content-Type: application/json"

 

Configuração FTP Server Debian com Vsftp e CHROOT

Passo 1 – Instalar vsftp

apt install vsftpd

Passo 2 – Fazer Backup do arquivo Original

cd /etc
cp vsftpd.conf vsftpd.conf.bak

Passo 3 – Configurar arquivo vsftp.conf

listen=YES
listen_ipv6=NO
connect_from_port_20=YES

anonymous_enable=NO
local_enable=YES
write_enable=YES
chroot_local_user=YES
allow_writeable_chroot=YES
secure_chroot_dir=/var/run/vsftpd/empty

pam_service_name=vsftpd

pasv_enable=YES
pasv_min_port=40000
pasv_max_port=45000

userlist_enable=YES
userlist_file=/etc/vsftpd.userlist
userlist_deny=NO
~

Passo 4 – Definiar usuário que ficará em CHROOT

vim /etc/vsftpd.chroot_list
SeuUsuario

Passo 5 – Criar conta de usuário

adduser SeuUsuario

Passo 6 – Habilitar e Ativar vsftp server

systemctl enable vsftpd
systemctl start vsftpd

 

Tutorial: Como configurar CSAT do Chatwoot

Nesse breve tutorial iremos ver como configurar o recurso CSAT do Chatwoot.

Necessário ja ter o N8N instalado e funcional.

1º Passo Liberar Acesso Postgres

Editar os seguintes arquivos

vim /etc/postgresql/12/main/pg_hba.conf
host all all 0.0.0.0/0 md5

vim /etc/postgresql/12/main/postgresql.conf
listen_addresses = '*'

2º Passo – Baixar e configurar script N8N

Url para download

https://github.com/delcain/csat-chatwoot

Após importar o script

Node 1 – ConsultaIDBanco ( Configurar acesso ao banco de dados )

# Host
Usar IP Público do Servidor 38.xxx.xxx.138

# Database
chatwoot_production

#User
postgres

#Password
!@aSDFSA231@!

Obs. Pegar senha no arquivo .env ou docker-compose.yml

Node 2 – SetMensagem

  • Expression
  • Vá até o campo value e procure pela variavél #suaurlchatwoot e adicione o endereço de instalação do seu chatwoot

Node 3 NODE SendMSGCodechat

  • Na URL onde ta escrito #urlcodechat adicione o endereço da api codechat.
  • Em #suainstancia é o nome de sua caixa de entrada
  • Exemplo http://38.xxx.xxx.138:8083/message/sendText/whatsapp

Specify Headers

  • apikey
  • Colocar a mesma chave apikey configurada em Whatsapp-API

Obs: em todos os nodes configurar Continue on Fail

3º Passso – Dentro do Chatwoot

  • Acessar Configurações, depois em Caixa de Entrada abra as configrações, encontre a opção Habilitar CSAT e deixe como ativado.
  • Acessar as automações e crie uma nova automação com o evento Conversation Updated e deixe o status como resolvida.
  • Em ações escolha Send Webhook Event e adicione o webhook do workflow baixado.
  • Ex: https://n8n.minhaempresa.com.br/webhook/csat-codechat

 

 

 

Como instalar Chatwoot via Docker + Codechat + API Whatsapp

Passo 1  – Instalação Docker

  • Remover possíveis versões anteriores
for pkg in docker.io docker-doc docker-compose podman-docker containerd runc; do sudo apt-get remove $pkg; done
  • Add Docker’s official GPG key
sudo apt-get update
sudo apt-get install ca-certificates curl gnupg
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg
  • Add the repository to Apt sources
echo \
  "deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian \
  "$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

  • Instalação docker
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
curl -SL https://github.com/docker/compose/releases/download/v2.20.3/docker-compose-linux-x86_64 -o /usr/local/bin/docker-compose

Passo 2 – Instalação do Chatwoot via Docker Compose

  • Download the env file template
  • Download the Docker compose template
  • Rename .env file
cd /root
mkdir chatwoot
wget -O .env https://raw.githubusercontent.com/chatwoot/chatwoot/develop/.env.example
wget -O docker-compose.yaml https://raw.githubusercontent.com/chatwoot/chatwoot/develop/docker-compose.production.yaml
  • Ajustando o .env file
  • Atenção para senha do postgres
Main
SECRET_KEY_BASE - criar senha segura
FRONTEND_URL=https://app.sacbr.com.br
DEFAULT_LOCALE=pt_BR

Postgres
    POSTGRES_HOST=postgres
    POSTGRES_USERNAME=postgres
    POSTGRES_PASSWORD=908AS7DF89ASIUAFSDAS89034K
    RAILS_ENV=development
Mail
    MAILER_SENDER_EMAIL=SacBR <[email protected]>
    SMTP_DOMAIN=smtp.gmail.com
    SMTP_ADDRESS=smtp.gmail.com
    SMTP_PORT=465
    SMTP_USERNAME=sacbr{at}sacbr.com.br
    SMTP_PASSWORD=Senha123
    SMTP_AUTHENTICATION=plain
    SMTP_ENABLE_STARTTLS_AUTO=true
    SMTP_OPENSSL_VERIFY_MODE=peer
    SMTP_SSL=true
  • Ajustando o docker-compose.yml
  • Atenção para senha do postgres
version: '3'
services:
  base: &base
    image: chatwoot/chatwoot:latest
    env_file: .env ## Change this file for customized env variables
    volumes:
      - ./data/storage:/app/storage

  rails:
    <<: *base
    depends_on:
      - postgres
      - redis
    ports:
      - '127.0.0.1:3000:3000'
    environment:
      - NODE_ENV=production
      - RAILS_ENV=production
      - INSTALLATION_ENV=docker
    entrypoint: docker/entrypoints/rails.sh
    command: ['bundle', 'exec', 'rails', 's', '-p', '3000', '-b', '0.0.0.0']

  sidekiq:
    <<: *base
    depends_on:
      - postgres
      - redis
    environment:
      - NODE_ENV=production
      - RAILS_ENV=production
      - INSTALLATION_ENV=docker
    command: ['bundle', 'exec', 'sidekiq', '-C', 'config/sidekiq.yml']

  postgres:
    image: postgres:12
    restart: always
    ports:
      - '5432:5432'
    volumes:
      - ./data/postgres:/var/lib/postgresql/data
    environment:
      - POSTGRES_DB=chatwoot
      - POSTGRES_USER=postgres
      - POSTGRES_PASSWORD=SENHA SUPER SEGURA AQUI

  redis:
    image: redis:alpine
    restart: always
    command: ["sh", "-c", "redis-server --requirepass \"$REDIS_PASSWORD\""]
    env_file: .env
    volumes:
      - ./data/redis:/data
    ports:
      - '127.0.0.1:6379:6379'
  • Preparar banco de dados
docker compose run --rm rails bundle exec rails db:chatwoot_prepare
  • Levantando o serviço
docker compose up -d
  • Instalando Nginx e Configurando Proxy Reverso
sudo apt-get install nginx
cd /etc/nginx/sites-enabled
vim yourdomain.com.conf
  • Configurando Virtual Host
  • Em server name: chatwoot.minhaempresa.com.br
server {
  server_name <yourdomain.com>;

  # Point upstream to Chatwoot App Server
  set $upstream 127.0.0.1:3000;

  # Nginx strips out underscore in headers by default
  # Chatwoot relies on underscore in headers for API
  # Make sure that the config is set to on.
  underscores_in_headers on;
  location /.well-known {
    alias /var/www/ssl-proof/chatwoot/.well-known;
  }

  location / {
    proxy_pass_header Authorization;
    proxy_pass http://$upstream;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "upgrade";
    proxy_set_header Host $host;
    proxy_set_header X-Forwarded-Proto $scheme;
    proxy_set_header X-Forwarded-Ssl on; # Optional

    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

    proxy_http_version 1.1;
    proxy_set_header Connection “”;
    proxy_buffering off;

    client_max_body_size 0;
    proxy_read_timeout 36000s;
    proxy_redirect off;
  }
  listen 80;
}
  • Checando as configurações
nginx -t
systemctl reload nginx
  • Instalando Certbot e gerando certififcado
apt  install certbot
apt install python3-certbot-nginx
mkdir -p /var/www/ssl-proof/chatwoot/.well-known
certbot --webroot -w /var/www/ssl-proof/chatwoot/ -d yourdomain.com -i nginx
  • Ao chegar nessa etapa do processo de instalação do Chatwoot deverá estar rodando na porta 3000.
  • O nginx deverá estar rodando nas portas 80 e 443.
  • Proxy reverso deverá estar funcional e buscando chatwoot no localhost.
  • Crie sua conta.
  • Faça Login para seguir adiante.

Passo 3 – Instalando NodeJS versão 16 (Obrigatório)

–> Adicionar repositório

sudo apt-get update
sudo apt-get install -y ca-certificates curl gnupg
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | sudo gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg

–> Instalar versão 16

NODE_MAJOR=16
echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_$NODE_MAJOR.x nodistro main" | sudo tee /etc/apt/sources.list.d/nodesource.list

Passo 4 – Instalar Codechat

git clone https://github.com/w3nder/chatwoot-codechat.git
mv chatwoot-codechat/ codechat
cd codechat
mv .env.example .env

–> Pegar token do usuário dentro do Chatwoot e atualizar
–> Gerar uma chave particular e colocar no CODECHAT_API_KEY Ex: ” 301803677cd97069a55a79038fb0a2ebd4be1e49 ”
–> Se desejar assinar as mensagens como o nome de usuário mude para TOSIGN=true
–> Se desejar receber mensagens enviadas fora do chatwoot mude para IMPORT_MESSAGES_SENT=false

####################################  EXEMPLO ############################
        PORT = 1234
        CHATWOOT_TOKEN = wV7yJG7q28h3RdQY7m4sDzVM
        CHATWOOT_BASE_URL = http://localhost:3000
        CODECHAT_BASE_URL = http://localhost:8080
        CODECHAT_API_KEY = 301803677cd97069a55a79038fb0a2ebd4be1e49
        TOSIGN=true
        IMPORT_MESSAGES_SENT=true
####################################  EXEMPLO ############################

Explicando em sequência:

  • Instalar dependências
  • Construir aplicação (bildar)
  • Rodar aplicação, o prompt ficará preso, assim poderá acompanhar os logs.
npm install
npm run build 
npm start

Passo 5 – Instalar API

  • Baixando API
  • Renomeando dev-env.yml para env.yml
cd
git clone https://github.com/code-chat-br/whatsapp-api.git
cd whatsapp-api
mv src/dev-env.yml src/env.yml
  • Ajustar Server Port
  • Ajustar Server URL
  • Habilitar Webhook
  • Ajustar Client
  • Usar chave de acesso configurada no Codechat
vim src/env.yml

Server Port 8080 http
Webhook --> URL: Colocar o link da url webhook: http://0.0.0.0:1234/webhook/codechat
Webhook Enabled: True

Client: Sac BR
--> Autehtication ( PEGAR A CHAVE DO CODECHAT EM cat /root/codechat/.env )
  • Explicando em sequência:

    • Instalar dependências
    • Construir aplicação (bildar)
    • Rodar aplicação, o prompt ficará preso, assim poderá acompanhar os logs.
npm install
npm run build
npm run start

Passo 6 – Instalar PM2

  • Instalar PM2
  • Configurar Codechat como Serviço
  • Configurar API como Serviço
npm install pm2 -g

cd /root/codechat
pm2 start dist/app.js --name codechat

cd /root/whatsapp-api
pm2 start 'npm run start prod' --name whatsapp-api

Passo 7 – Criando caixa de entrada no Chatwoot

  • Configurações
  • Caixa de Entrada
  • Adicionar Caixa de Entrada
  • API
URL: http://192.168.0.254:1234/webhook/chatwoot

PS. Usar endereço IP do Host. Não Usar Localhost - Não Usar 127.0.0.1
  • Criar contato para chamar o bot
  • Contatos
  • Novo Contato
    • Nome: Bot
    • Número: +123456
  • Abrir contato
    • Nova Mensagem
    • Caixa de Entrada: Whatsapp
    • Mensagem: /iniciar

 

  • Comandos do Code Chat
    • /iniciar
      • Este comando irá criar uma nova instância e gerar um QR code
    • /status
      • Este comando irá verificar o status da instância
    • /desconectar
      • Este comando irá desconectar o WhatsApp da instância

Passo 7 – Liberando personalização do chatwoot

  • Instalar PostgreSQL Client
apt install postgresql-client postgresql-client-common
  • Logar no banco de dados
  • Selecionar o chatwoot_production
  • Atualizar update installation_configs set locked = false;
psql -U postgres -h localhost -w
\c chatwoot_production
update installation_configs set locked = false;
\q

 

| Tutorial | Como instalar n8n via docker com proxy Reverso- Passo a Passo

INSTALAR N8N VIA DOCKER

Referência

https://docs.n8n.io/hosting/installation/server-setups/docker-compose/#5-create-docker-compose-file

Passo 1

cd /root
mkdir n8n
vim docker-compose.yml

Ler mais

Graylog Server Docker

Siga os seguintes passos

Criar diretórios

sudo mkdir -p /docker/graylog/mongo/data;
sudo mkdir -p /docker/graylog/elasticsearch/data;
sudo mkdir -p /docker/graylog/data;
sudo chmod -R 777 /docker/graylog;

Criar instância Mongo

docker run --name mongo --restart=always \
  -v /docker/graylog/mongo/data:/data/db -d mongo:5.0.13;

Criar instância Elastic Search

docker run -d --name elasticsearch \
  --restart=always \
  -e "http.host=0.0.0.0" \
  -e "discovery.type=single-node" \
  -e "ES_JAVA_OPTS=-Xms512m -Xmx512m" \
  -v /docker/graylog/elasticsearch/data:/usr/share/elasticsearch/data \
  docker.elastic.co/elasticsearch/elasticsearch-oss:7.10.2;

Criar instância Graylog

docker run -d --name graylog \
 --hostname graylog-server \
 --restart=always \
 --link mongo \
 --link elasticsearch \
 -v /docker/graylog/data:/usr/share/graylog/data/journal \
 -p 9000:9000 -p 12201:12201 -p 5140:5140 -p 5140:5140/udp \
 -e GRAYLOG_HTTP_EXTERNAL_URI="http://log.MEUDNS.com.br:9000/" \
 graylog/graylog:4.0;

Para parar os serviços use:

docker stop graylog 
docker stop elasticsearch 
docker stop mongo

Para iniciar os serviços use:

docker start graylog 
docker start elasticsearch 
docker start mongo

Se preferir

docker stop graylog && docker stop elasticsearch && docker stop mongo

docker start graylog && docker start elasticsearch && docker start mongo

Para visualizar os logs.

docker logs graylog
docker logs elasticsearch
docker logs mongo

Logue no pinel como admin:

usr: admin
pwd: admin

Para alterar a senha do admin siga os respectivos passos

Você DEVE definir um segredo para proteger/salvar as senhas de usuário armazenadas Use pelo menos 64 caracteres.

Gere uma senha usando pwgen. Por exemplo:

pwgen -N 1 -s 96

ATENÇÃO: Este valor deve ser o mesmo em todos os nós Graylog do cluster.
A alteração desse valor após a instalação tornará todas as sessões de usuário e valores criptografados no banco de dados inválidos. (por exemplo, tokens de acesso criptografados)

GRAYLOG_PASSWORD_SECRET="x6dn4BjyLN37qZh0R2b0FckMzOrORLUivljy7a3PMqRItwtZ6SJdu2PxMbn6U6qJrMXKoh7mqOZ0jtHKTUv2UcaOLwoDbKpX"

 

Você DEVE especificar uma senha hash para o usuário root (que você só precisa configurar inicialmente o sistema e caso você perca a conectividade com seu back-end de autenticação)
Esta senha não pode ser alterada usando a API ou por meio da interface da web. Se precisar alterá-lo, modifique-o neste arquivo.
Crie uma senha usando shasum. Por exemplo:

echo -n SenhaSuperSecreta!@# | shasum -a 256
GRAYLOG_ROOT_PASSWORD_SHA2="8c586a074ed73366348cecd0dc6574b53d7515e313bafc4fa95191887cfd3989"

Sua configuração deverá ficar assim com ajuste de usuário admin e timezone

docker run -d --name graylog \
 --hostname graylog-server \
 --restart=always \
 --link mongo \
 --link elasticsearch \
 -v /docker/graylog/data:/usr/share/graylog/data/journal \
 -p 9000:9000 -p 12201:12201 -p 5140:5140 -p 5140:5140/udp \
 -e GRAYLOG_HTTP_EXTERNAL_URI="http://log.cuidadodigital.com.br:9000/" \
 -e GRAYLOG_PASSWORD_SECRET="x6dn4BjyLN37qZh0R2b0FckMzOrORLUivljy7a3PMqRItwtZ6SJdu2PxMbn6U6qJrMXKoh7mqOZ0jtHKTUv2UcaOLwoDbKpX" \
 -e GRAYLOG_ROOT_PASSWORD_SHA2="8c586a074ed73366348cecd0dc6574b53d7515e313bafc4fa95191887cfd3989" \
 -e GRAYLOG_TZ="America/Sao_Paulo" \
 -e GRAYLOG_TIMEZONE="America/Sao_Paulo" \
 -e GRAYLOG_ROOT_TIMEZONE="America/Sao_Paulo" \
 graylog/graylog:4.0;

 

Como instalar a configurar o Nxlog para enviar Log para Graylog

Arquivo de configurção para enviar arquvios deletados do servidor windows para o GrayLog

Acesse https://nxlog.co/downloads/nxlog-ce#nxlog-community-edition para baixar a aplicação para Windows

Instale o Nxlog em C:\nxlog

Edite o arquivo c:\nxlog\conf\nxlog.conf

 

Copie e cole essa diretiva.

Maiores inforamções em:

https://docs.nxlog.co/userguide/integrate/windows-eventlog.html

 

Panic Soft
#NoFreeOnExit TRUE

define ROOT     C:\nxlog
define CERTDIR  %ROOT%\cert
define CONFDIR  %ROOT%\conf\nxlog.d
define LOGDIR   %ROOT%\data

include %CONFDIR%\\*.conf
define LOGFILE  %LOGDIR%\nxlog.log
LogFile %LOGFILE%

Moduledir %ROOT%\modules
CacheDir  %ROOT%\data
Pidfile   %ROOT%\data\nxlog.pid
SpoolDir  %ROOT%\data

<Extension _syslog>
    Module      xm_syslog
</Extension>

<Extension _charconv>
    Module      xm_charconv
    AutodetectCharsets iso8859-2, utf-8, utf-16, utf-32
</Extension>

<Extension _exec>
    Module      xm_exec
</Extension>

<Extension _fileop>
    Module      xm_fileop

    # Check the size of our log file hourly, rotate if larger than 5MB
    <Schedule>
        Every   1 hour
        Exec    if (file_exists('%LOGFILE%') and \
                   (file_size('%LOGFILE%') >= 5M)) \
                    file_cycle('%LOGFILE%', 8);
    </Schedule>

    # Rotate our log file every week on Sunday at midnight
    <Schedule>
        When    @weekly
        Exec    if file_exists('%LOGFILE%') file_cycle('%LOGFILE%', 8);
    </Schedule>
</Extension>

<Extension _gelf>
    Module      xm_gelf
</Extension>

# <Input in>
    # Module      im_msvistalog
# </Input>

<Input security_events>
    Module    im_msvistalog
    <QueryXML>
        <QueryList>
            <Query Id="0">
                <Select Path="Security">
                *[System[(Level=0) and (EventID=5145)]]
                and
                *[EventData[Data[@Name='AccessMask']and(Data='0x110080')]]
                </Select>
            </Query>
         </QueryList>
    </QueryXML>
</Input>

<Output out>
    Module          om_udp
    Host            log.cuidadodigital.com.br
    Port            12201
    Exec            to_syslog_snare();
    OutputType      GELF_UDP
</Output>

<Route 1>
    # Path        in => security_events => out
    Path        security_events => out
</Route>

 

Como instalar Windows 11 SEM CONTA Microsoft

Para instalar o Windows 11 sem necessáriamente ter que fazer login em um conta Microsoft, siga os seguintes passos.

Assim que inicar o Wizard de instalação APÓS a cópia dos arquivos precione no teclado SWIFT + F10, assim que aparecer o promtp de comando digite.

oobe\bypassnroe

Ao reiniciar o computador prossiga sem acesso a internet.

 

Script Backup Robocopy com Relatórios por e-mail

Nesse breve tutorial iremos aprender como configurar um Script de Backup para Windows usando o robocopy em Power Shell com relatório sendo enviado por e-mail.

Ler mais