sicoobcredicom-crediconf

3.0.9 • Public • Published

Configuração automática do Nginx com CrediConf

crediconf run [CrediConfFile] [nginxConfigFile] [nginxSiteConfigFile]

Este comando gerará um novo arquivo de configuração do nginx com base nas configurações do arquivo CrediConf.json. Os arquivos nginxConfigFile e nginxSiteConfigFile serão alterados com as novas configurações.

Exemplo de uso

Para executar o comando, você precisaria passar os seguintes argumentos (opcionais):

  • CrediConfFile: O caminho para o arquivo CrediConf.json.
  • nginxConfigFile: O caminho para o arquivo nginx.conf.
  • nginxSiteConfigFile: O caminho para o arquivo nginx-site.conf.

Por exemplo, para executar o comando com os arquivos acima, você executaria o seguinte comando no diretório raiz do projeto que contém o CrediConf.json e execurar o comando abaixo será alterado os arquivos nginx.conf e nginx-site.conf que estão no diretório padrão do nginx.

crediconf run 

Caso haja a necessidade de alterar os arquivos de configuração do nginx, você pode passar os caminhos dos arquivos como argumentos para o comando, como no exemplo abaixo:

crediconf run /meu_caminho_ate_o_arquivo/CrediConf.json /meu_caminho_ate_o_arquivo/nginx.conf /meu_caminho_ate_o_arquivo/nginx-site.conf

Arquivo CrediConf.json

O arquivo CrediConf.json é um arquivo JSON que contém as seguintes configurações:

  • headers: Uma lista de cabeçalhos HTTP que serão adicionados a todas as respostas.
  • application_root: O diretório raiz da aplicação.

No exemplo abaixo o arquivo CrediConf.json geraria um novo arquivo de configuração do nginx que define os cabeçalhos e o diretório raiz da aplicação:

{
  "application_root": "/var/www/html", //diretório raiz da aplicação onde está o index.php
    "headers": { //cabeçalhos HTTP que serão adicionados a todas as respostas do servidor
        "X-Frame-Options": "SAMEORIGIN", //define quem pode incorporar a página em um frame ou iframe
        "X-Content-Type-Options": "nosniff", //define que o navegador não deve permitir que a página seja interpretada como um tipo MIME diferente do declarado no cabeçalho Content-Type
        "X-XSS-Protection": "1; mode=block", //ativa o filtro de XSS do navegador
        "Referrer-Policy": "strict-origin-when-cross-origin", //define como o navegador deve enviar o cabeçalho Referer em solicitações de origem cruzada
        "Strict-Transport-Security": "max-age=31536000; includeSubDomains; preload", //define que o navegador deve acessar o site somente por HTTPS
        "Content-Security-Policy":{ //define uma lista de fontes de conteúdo válidas para o site
            //define o conjunto de fontes válidas para cada tipo de recurso
            "default-src":[ //define o conjunto de fontes válidas para todos os tipos de recursos que não possuem uma diretiva de política correspondente
                "'self'"
            ],
            "script-src":[ //define o conjunto de fontes válidas para scripts
                "'self'",
                "https://cdnjs.cloudflare.com",
                "https://www.google.com",
                "https://www.gstatic.com",
                "https://www.googletagmanager.com",
                "https://connect.facebook.net",
                "https://googleads.g.doubleclick.net",
                "https://www.googleadservices.com"
            ],
            "style-src":[ //define o conjunto de fontes válidas para folhas de estilo
                "'self'",
                "'unsafe-inline'",
                "https://fonts.googleapis.com"
            ],
            "img-src":[ //define o conjunto de fontes válidas para imagens
                "'self'",
                "data:",
                "https://www.google.com.br",
                "https://googleads.g.doubleclick.net",
                "https://www.google.com"
            ],
            "font-src":[ //define o conjunto de fontes válidas para fontes
                "'self'",
                "https://fonts.googleapis.com",
                "https://fonts.gstatic.com"
            ],
            "connect-src":[ //define o conjunto de fontes válidas para conexões
                "'self'",
                "https://analytics.google.com"
            ],
            "frame-src":[ //define o conjunto de fontes válidas para frames
                "'self'",
                "https://www.facebook.com",
                "https://connect.facebook.net",
                "https://www.google.com"
            ],
            "media-src":[ //define o conjunto de fontes válidas para mídia
                "'self'"
            ],
            "object-src":[ //define o conjunto de fontes válidas para objetos
                "'self'"
            ],
            "child-src":[ //define o conjunto de fontes válidas para frames e workers
                "'self'"
            ],
            "frame-ancestors":[ //define o conjunto de fontes válidas para frames que podem incorporar a página
                "'self'"
            ],
            "sandbox":[ //define o conjunto de recursos que podem ser usados pelo documento
                "allow-forms",
                "allow-same-origin",
                "allow-scripts",
                "allow-popups",
                "allow-modals",
                "allow-top-navigation"
            ],
            "form-action":[ //define o conjunto de fontes válidas para formulários
                "'self'"
            ],
            "worker-src":[ //define o conjunto de fontes válidas para workers
                "'self'"
            ],
            "manifest-src":[ //define o conjunto de fontes válidas para manifestos
                "'self'"
            ],
            "report-uri":"", //define o URL para o qual o navegador deve enviar relatórios de violação de política
            "upgrade-insecure-requests": true, //define que o navegador deve atualizar automaticamente solicitações inseguras para HTTPS
            "block-all-mixed-content": true //define que o navegador deve bloquear solicitações mistas
        }
    }    
}

Readme

Keywords

none

Package Sidebar

Install

npm i sicoobcredicom-crediconf

Weekly Downloads

2

Version

3.0.9

License

ISC

Unpacked Size

20.5 kB

Total Files

6

Last publish

Collaborators

  • sicoobcredicom