TheCodeNaked

Configuração do OrdemAPP - Ep. 1 (Copy)

Muitos vezes desenvolvedores, de todos os níveis, ficam com dúvidas de como montar um ambiente para funcionamento de um servidor RESTful. Como fazer Balanceamento de Carga (normalmente só ouviu falar), como usar SSL, como aplicar os certificados, controlar a validade, se existem certificados gratuitos etc. Para desenvolvedores Delphi, por exemplo, nada disso é explorado, talvez porque a maioria desenvolva somente para ambiente Windows e "essas coisas de SSL, balanceamento de carga" estão mais inseridos em ambientes Linux.

Na verdade, é possível se ter "todas essas coisas no Windows também". Imagine poder colocar um servidor RESTful, criando um subdomínio, criando e aplicando um certificado SSL para esse subdomínio, controlar sua validade automaticamente, criar a base de dados para o seu servidor, aplicar configurações, configurar um balanceador de carga (NGINX) com segurança, configurar um Bucket no Amazon S3 para ser usado pelo seu servidor RESTful. Fazer tudo isso e ainda ter backups automáticos das configurações, logs automáticos, determinar a quantidade de instâncias do servidor a ser executado. Tudo isso em menos de 5 minutos. O que acha?

Pois bem, nesse artigo vou lhe mostrar como instalar aplicativos gratuitos que lhe ajudaram a fazer tudo isso. Evidente que vou disponibilizar dois arquivos, uma para rodar no prompt Command e outro no PowerShell, isso mesmo, código nativo do próprio Windows. Você verá que conhecimento básico pode ser mais difícil de se conhecer e de se aprender pensando que "linguagens da moda" é que fazem tudo.


Claro! Abaixo está um texto explicativo e objetivo sobre o uso dos serviços da AWS no contexto do OrdemApp, abordando LightsailS3 e Route 53, focado em uma documentação técnica que pode ser incluída na seção de infraestrutura ou instalação do sistema.


Infraestrutura com AWS – Lightsail, S3 e Route 53

A infraestrutura do OrdemApp foi estrategicamente planejada para operar de forma robusta, econômica e escalável utilizando os serviços da Amazon Web Services (AWS). A seguir, apresentamos os principais serviços utilizados:


1. AWS Lightsail – Servidor Aplicativo

AWS Lightsail é utilizado como servidor principal do OrdemApp. Ele hospeda a aplicação desenvolvida em Delphi(RESTful Server) e é responsável por processar as requisições dos aplicativos clientes (mobile e desktop).

Motivos para a escolha do Lightsail:

  • Preço fixo mensal, ideal para previsibilidade de custos.
  • Configuração simplificada comparada ao EC2.
  • Recursos suficientes para aplicações de médio porte.
  • Possibilidade de acesso rootsnapshots automáticos e upgrade de plano com facilidade.

Configuração típica usada:

  • Sistema Operacional: Windows Server ou Linux.
  • CPU: 2 vCPU ou mais.
  • Memória: 4GB a 8GB RAM.
  • Armazenamento: SSD de 80GB ou mais.
  • Serviços adicionais: NGINX como proxy reverso, firewall configurado na própria interface do Lightsail.

AWS S3 – Armazenamento de Arquivos

Amazon S3 (Simple Storage Service) é utilizado para armazenar arquivos enviados pelos aplicativos, como:

  • Fotos de comprovação de limpeza.
  • Imagens de antes/depois dos serviços.
  • Arquivos de apoio (relatórios, planilhas, PDFs etc).

Vantagens do S3 no OrdemApp:

  • Alta durabilidade e disponibilidade dos dados.
  • URLs públicas e privadas controladas por política de acesso (IAM).
  • Suporte a buckets separados por cliente ou ambiente (produção/teste).
  • Integração direta com o servidor para upload e download via HTTP/HTTPS.

Boas práticas aplicadas:

  • Uso de nomenclatura padronizada por cliente/data.
  • Controle de acesso via políticas e tokens temporários.
  • Possibilidade de integração futura com o CloudFront para CDN.

🔷 3. AWS Route 53 – Gerenciamento de Domínios e DNS

Amazon Route 53 é usado para o gerenciamento de domínios personalizados de cada cliente, permitindo a segmentação do acesso ao OrdemApp por subdomínios dedicados. Exemplo:

cliente1.ordemapp.com
cliente2.ordemapp.com

Por que usar o Route 53:

  • Integração direta com S3, Lightsail e ACM (certificados SSL).
  • Alta performance e confiabilidade no roteamento DNS.
  • Fácil automação via scripts ou interface AWS.
  • Suporte a subdomínios aninhados (ex: status.cliente1.ordemapp.com).

Exemplos de uso:

  • Criação dinâmica de registros A ou CNAME para cada cliente.
  • Associação com certificado SSL via Let's Encrypt automatizado.
  • Redirecionamento e failover configurável se necessário.

✅ Resumo da Arquitetura

ServiçoFunção PrincipalObservações
LightsailHospedagem da aplicação RESTfulAcesso via RDP ou SSH
S3Armazenamento seguro e escalável de arquivosSuporta integração direta com o app
Route 53Gerenciamento de domínios e subdomíniosDomínio raiz e subdomínios gerenciados via API

Se desejar, posso complementar com fluxogramasscripts de automação (em .bat ou .sh), ou ainda o processo passo a passo de provisionamento completo (instância + domínio + certificado + bucket).

Deseja que eu inclua essa parte também?


Acesso Remoto

Desabilitar as Atualizações Automáticas do Windows

Para evitar que o Servidor de Aplicativos - RESTful seja encerrado é necessário reduzir ou adiar as atualizações automáticas do Windows. Mas, vale lembrar que a Microsoft recomenda manter o sistema atualizado para garantir segurança e estabilidade. Dessa forma é importante agendar atualizações manuais em horários em que o aplicativo servidor não esteja sendo utilizado.

Usando o Editor de Política de Grupo (gpedit.msc):

  1. Abra o Menu Iniciar, digite gpedit.msc e pressione ENTER
  2. Navegue até Computer Configuration Administrative Templates Windows Components Windows Update.
  3. Localize e edite a política Configure Automatic Updates.
  4. Selecione Disabled e clique em Apply.


MS SQL SERVER

Para utilizar a padronização criada para o Aplicativo OrdemApp é necessário criar no MSSQL Server um usuário com o nome de admin e senha F8YxQEPi. Para isso siga os passos abaixo:


Habilitar o Modo de Autenticação Misto no SQL Server:

  1. Abra o SQL Server Management Studio (SSMS) e conecte-se ao servidor usando as credenciais de autenticação do Windows.
  1. Clique com o botão direito do mouse sobre o nome do servidor no painel do Object Explorer e selecione Properties.
  1. Na janela Server Properties, vá para a seção Security. Certifique-se de que a opção SQL Server and Windows Authentication Mode esteja selecionada. Clique em OK para aplicar as alterações.

  1. Reinicie o Serviço do SQL Server. Abra o SQL Server Configuration Manager, na seção SQL Server Services, localize o serviço correspondente à sua instância do SQL Server. Clique com o botão direito do mouse no serviço e selecione Restart.


Criar um Novo Usuário no SQL Server

  1. Abra novamente o SQL Server Management Studio (SSMS) e conecte-se ao servidor usando as credenciais de autenticação do Windows.
    1. No Painel do Object Explorer, expanda a pasta Security e clique com o botão direito do mouse em Logins e selecione New Login...

b. Na janela Login - New preencha Login name com admin, selecione a opção SQL Server authentication. Preencha Password e Confirm password com F8YxQEPi. Selecione a opção Enforce password policy e desselecione as opções Enforce password expiration e User must change password at next login

      1. Vá para a seção Server Roles e selecione as permissões apropriadas para o usuário:
        1. sysadmin: Dá permissões administrativas completas, selecione essa.
        2. Ou escolha outras permissões, como dbcreator, dependendo das necessidades do usuário.
      2. Opcionalmente vá para a seção User Mapping e mapeie o usuário a um banco de dados específico, atribuindo permissões como: db_owner, db_datareader ou db_datawriter.
      3. Clique em OK para criar o usuário.
  1. Testar a conexão:
    1. Abra o SQL Server Management Studio (SSMS).
    2. Na janela de login, altere o Authentication para SQL Server Authentication.
    3. Insira o Login name e a Password do usuário criado.
    4. Tente conectar-se ao servidor.

Visualizar todos os registros de Tabelas no MSSQL Server

Para habilitar a edição e visualização de todos os registros no Microsoft SQL Server Management Studio (SSMS), siga os passos abaixo:

Por padrão, o SSMS permite visualizar apenas os “top 1000 registros” ao clicar com o botão direito na tabela e selecionar Select Top 1000 Rows. Para visualizar todos os registros, é necessário “Alterar a configuração do SSMS”:

  1. No SSMS, vá até o menu Tools (Ferramentas)  Options (Opções).
  2. No painel esquerdo, expanda SQL Server Object Explorer.
  3. Selecione Commands.
  4. Altere os valores de: 
    • Value for Select Top N Rows (Padrão: 1000) → Defina como um número maior ou ”0” para remover o limite.
    • Value for Edit Top N Rows (Padrão: 200) → Defina como um número maior ou ”0” para remover o limite.
  5. Clique em OK para salvar.

Configurar o FireWall para o SQL Server

No Firewall “Inbound Rules” verifique se as portas “1433 e 1434” já estão abertas. Caso não estejam é necessários abri-las. Acesse o Firewall:

“Control Panel → System and Security → Windows Defender Firewall → Advanced Settings → Inbound Rules → Botão direito e clique em “New Rule”. 

Proceda de acordo com as imagens abaixo tanto para a porta 1433 quanto para a 1434.


Firewall para o NGINX

É necessário se abrir as portas 80 e 443 para o NGINX. Para isso proceda da mesma forma utilizada para abrir as portas do MSSQL Server. Dê os seguintes nomes para as portas:

  • NGINX HTTP – Porta 80
  • NGINX HTTPS – Porta 443 

 Firewall no LightSail

É necessário habilitar a Porta 443 no Firewall do LightSail. A Porta 80 está habilitada por default.

Instalar o AWS CLI

  1. Baixar o Instalador:

A AWS disponibiliza a Interface da linha de comando da AWS através do seguinte link: Download AWS CLI para Windows

  1. Depois de baixar o instalador:
    1. Execute o arquivo .msi baixado.
    2. A tela do instalador será exibida. Clique em Next para continuar.
    3. Leia e aceite os termos de licença, depois clique em Next.
    4. Escolha o diretório de instalação - por padrão: C:\Program Files\Amazon\AWSCLI, clique em Next.
    5. Clique em Install e aguarde a conclusão.
    6. Quando a instalação for concluída, clique em Finish.

  1. Verificar a Instalação: Após instalar, é importante verificar se tudo foi instalado corretamente:
    1. Abra o Prompt de Comando (cmd) ou PowerShell (win + X Windows Terminal).
    2. Digite o seguinte comando e pressione ENTER: aws --version
    3. A saída esperada deve ser semelhante a essa: aws-cli/2.x.x Python/x.x.x Windows/x.x.x - Se aversão aparecer corretamente, a instalação foi bem-sucedida.
  1. Configurar o AWSCLI: Agora que o AWSCLI está instalado, você pode configurá-lo para acessar sua conta AWS.
    1. No prompt de Comando ou PowerShell digite: aws configure
    2. Você será solicitado a inserir as seguintes informações:
      1. AWS Access Key ID: Insira sua chave de acesso AWS.
      2. AWS Secret Access Key: Insira sua chave secreta.
      3. Default Region Name: Defina a região padrão (ap-northeast-1).
      4. Default output format: Deixe como none (ou escolha JSON, TEXT ou TABLE se preferir).
  1. Testar a Configuração: Digite aws configure list
  1. Testar a Configuração tentando acessar o AMZ S3: digite aws s3 ls - Se sua conta tiver buckets S3, a lista será exibida. Caso contrário, a saída será vazia, o que indica que o AWSCLI está funcionando corretamente.

Atualizar o AWSCLI

Para garantir que você tenha sempre a versão mais recente, utilize: aws --version . Se precisar atualizar, baixe e reinstale o AWSCLI com o instalador MSI, ou use o seguinte comando no PowerShell (como Administrador):
msiexec.exe /i https://awscli.amazonaws.com/AWSCLIV2.msi


Desinstalar o AWSCLI

Se precisar remover o AWSCLI:

  1. Acesse Configurações Aplicativos Aplicativos e recursos.
  2. Encontre o AWS Command Line Interface na lista.
  3. Clique em Desinstalar e siga as instruções.
  4. Alternativamente, use o comando abaixo no PowerShell:
    msiexec.exe /x https://awscli.amazonaws.com/AWSCLIV2.msi

Outros Comandos Úteis:

Verificar a configuração manualmente:

Se precisar conferir as configurações armazenadas no computador, pode acessar os arquivos de configuração do AWSCLI:

  • Credenciais: C:\Users\SEU_USUARIO\.aws\credentials
  • Configuração: C:\Users\SEU_USUARIO\.aws\config
  • Para visualizar as configurações via PowerShell: Get-Content $env:USERPROFILE\.aws\credentials
  • E também: Get-Content $env:USERPROFILE\.aws\config
  • Se precisar editar, pode abrir esses arquivos no Bloco de Notas:
    notepad $env:USERPROFILE\.aws\credentials

Editar a Região:

notepad $env:USERPROFILE\.aws\config


Testar um comando para outro serviço:

Se quiser testar outro serviço além do S3, tente listar instâncias no EC2 (caso tenha permissões):
aws ec2 describe-instances

Se o usuário IAM tiver permissão para verificar as instâncias EC2 elas serão apresentadas, nesse caso particular o usuário IAM que estamos utilizando não tem esse acesso.


Conclusão

Agora você tem o AWSCLI instalado e configurado no Windows. Você pode utilizá-lo para gerenciar seus recursos na AWS de forma eficiente.


Win-ACME


Tutorial: Instalando e usando o JQ no Windows (jq-windows-amd64)

O que é o JQ

O JQ é uma ferramenta de linha de comando leve e poderosa para processar, filtrar e formatar JSON. Ele é útil para manipular saídas de APIs e arquivos JSON diretamente no terminal.

Principais uso do JQ

  • Formatar JSON para facilitar a leitura;
  • Filtrar campos específicos de um JSON;
  • Modificar ou extrair informações de JSONs complexos;
  • Usado junto com curl, aws-cli, powershell etc.

Exemplo

{
  "nome": "João",
  "idade": 30,
  "cidade": São Paulo"
}

Você pode exibir apenas o nome com:

echo {"nome":"João","idade":30,"cidade":"São Paulo"} | jq ".nome"

Saída:

"João"

Como instalar o JQ no Windows

Siga os passos abaixo para instalar o jq-windows-amd64

Passo 1: Download

  • Acesse a página oficial do jq:  Download jq para Windows
  • Baixe o arquivo "jq-win64.exe" para sistemas 64-bit - ou jq-win32.exe para sistemas 32-bit.

Passo 2: Renomear e Mover para um Local Padrão

Para facilitar o uso, renomeie e mova o arquivo baixado:

  • Renomeie o arquivo de jq-win64 para apenas jq.exe
  • Mova o arquivo para o diretório: c:\jq

Passo 3: Adicionar o JQ ao Path

Copiar do Win-ACME

Passo4: Testar a Instalação:

Agora, abra o Prompt de Comando (cmd) e execute:

jq --version

Se o jq estiver instalado corretamente, você verá algo como: jq-1.6


Tutorial: Instalando e Usando o OpenSSL no Windows (Win64OpenSSL-3_4_0)

Introdução

Instalar o OpenSSL

  1. Execute o instalador (Win64OpenSSL-3_4_0.exe).
  2. Se aparecer um alerta do Windows, clique em Executar assim mesmo.
  3. Aceite os termos de licença e clique em Next.
  4. Escolha o diretório de instalação (recomendado: C:\Program Files\OpenSSL-Win64\).
  5. Na opção "Copy OpenSSL DLLs to:", escolha: 
    • ✅ The OpenSSL binaries directory (RECOMENDADO).
  6. Clique em Install e aguarde a conclusão.
  7. Clique em Finish para finalizar.

🔹 Configurar o Path do OpenSSL (Opcional, mas Recomendado)

Para rodar o OpenSSL de qualquer lugar no terminal, adicione-o ao Path do Windows:

  1. Pressione Win + R, digite sysdm.cpl e pressione Enter.
  2. Vá até a aba Avançado e clique em Variáveis de Ambiente.
  3. Na seção Variáveis do Sistema, selecione Path e clique em Editar.
  4. Clique em Novo e adicione os seguintes caminhos: 
5.  
  1. Clique em OK para salvar.

🔹 Testar a Instalação

Agora, abra o Prompt de Comando (cmd) e execute:

openssl version

Se a instalação estiver correta, a saída será algo como:

OpenSSL 3.4.0 10 Jan 2024 (Library: OpenSSL 3.4.0 10 Jan 2024)


Explorando o htpasswd.exe do Apache (https-2.4.62-240904-win64-VS17)

É somente para usar o htpasswd.


Instalar o NGINX


Instalar o NotePad++

Sobre o autor

TheCodeNaked

No TheCodeNaked, programar é consequência, não ponto de partida. Antes do código, vem a dúvida, a análise, o contexto. Não seguimos fórmulas — questionamos. Criar software é pensar com clareza. O resto é só digitação.

TheCodeNaked

Criar com clareza. Codificar com intenção.

TheCodeNaked

Ótimo! Você se inscreveu com sucesso.

Bem-vindo de volta! Você acessou com sucesso.

Você se inscreveu com sucesso o TheCodeNaked.

Sucesso! Verifique seu e-mail para acessar com o link mágico.

As suas informações de faturamento foram atualizadas.

Seu pagamento não foi atualizado