Como implantar aplicativos de frasco no Vultr – SitePoint


Introdução

O Flask é uma estrutura Python para criar aplicativos da Web. Com o Flask, os desenvolvedores podem definir facilmente rotas, lidar com solicitações e respostas HTTP e renderizar conteúdo dinâmico usando modelos Jinja2. Ele também suporta extensões, permitindo que os desenvolvedores integrem recursos como acesso ao banco de dados, manuseio de formulários e autenticação do usuário.

Neste artigo, vamos implantar um aplicativo de frasco usando o Gunicorn, juntamente com a implementação das políticas de proteção e segurança de conteúdo da CSRF. Também vamos configurar um proxy reverso usando o NGINX e implementar o HTTPS solicitando um certificado SSL gratuito da Let’s Encrypt.

Implante a instância de nuvem otimizada do Vultr

  1. Inscreva -se e faça login no Portal do cliente Vultr.
  2. Navegue até o Produtos página.
  3. No menu lateral, selecione Calcular.
  4. Clique no Implantar servidor botão no centro.
  5. Escolha computação de nuvem otimizada como o tipo de servidor.
  6. Escolha um local do servidor.
  7. Escolha o Ubuntu 24.04 como o sistema operacional.
  8. Escolha um plano adequado.
  9. Escolha qualquer Recursos adicionais se necessário.
  10. Clique Implantar agora.

Adicione seus arquivos de código de aplicação de demonstração

Configure um ambiente virtual python

  1. Instale o python3-venv pacote
  2. Crie um ambiente virtual.
  3. Ative o ambiente virtual.

Adicionar arquivos de código de aplicação de demonstração

  1. Clone o repositório do GitHub.
  2. Navegue até o diretório do projeto.
  3. Instale pacotes de frasco e gunicorn.
  4. Permitir conexões de entrada para o porto 5000.

Aplicar políticas de proteção e segurança de conteúdo CSRF

A falsificação de solicitação entre sites (CORS) é uma vulnerabilidade que permite que alguém explore e aproveite a sessão conectada de um usuário em um site confiável para fazer solicitações não autorizadas a um site diferente em que o usuário confia. O WTForms é uma extensão de frasco que integra a proteção de CSRF por padrão para impedir os ataques dos CORS.

A Política de Segurança de Conteúdo (CSP) é uma camada extra de segurança para aplicativos da Web que os protege de ataques maliciosos. O CSP instrui o navegador sobre quais recursos podem carregar em uma página da Web específica. Geralmente, o administrador do site configura um CSP adicionando um cabeçalho especial à resposta do servidor para uma página da Web, o navegador recebe o cabeçalho do CSP e entende quais recursos podem carregar. O Talisman é uma extensão do Flask que simplifica o processo de adição de CSP às aplicações de frasco.

  1. Instalar flask-wtf e talisman pacotes
  2. Abra o app.py arquivo.
  3. Editar o app.py arquivo para incluir políticas de segurança de conteúdo.
  4. No app.py Arquive, importe e configure proteção CSRF.

    Salve e feche o arquivo.

  5. Navegue até o templates diretório.
  6. Abra o index.html arquivo.
  7. Edite a página HTML para incluir a configuração do CSRF.

    Salve e feche o arquivo.

  8. Saia do templates diretório.

Configurando o nginx como um proxy reverso

O NGINX atua como um proxy reverso entre o seu servidor da Web e os clientes. Ele direciona as solicitações recebidas com base nas configurações de configuração da sua solicitação. Nesta seção, configuraremos nosso aplicativo para proxy reverso para manuseio eficiente de solicitações e balanceamento de carga. Também solicitaremos um certificado SSL gratuito da Let’s Encrypt para implementar o HTTPS que protege a comunicação entre um usuário e um servidor da Web para o nosso domínio.

  1. Faça login no Portal do cliente Vultr.
  2. Navegue até a página de produtos.
  3. No menu lateral, expanda o suspensão da rede e selecione DNS.
  4. Clique no botão Adicionar domínio no centro.
  5. Siga o procedimento de configuração para adicionar seu nome de domínio selecionando o endereço IP do seu servidor.
  6. Defina os seguintes nomes de host como os servidores de nomes primários e secundários do seu domínio com o seu registrador de domínio.
  7. Instale o nginx.
  8. Crie um novo arquivo de configuração nginx.
  9. Cole a seguinte configuração no arquivo.
  10. Ative a configuração do host virtual.
  11. Teste a configuração Nginx.
  12. Recarregue Nginx.
  13. Permitir conexões de entrada para o porto 80 e 443.
  14. Instale o pacote CERTBOT.
  15. Solicite um certificado SSL.
  16. Inicie um servidor Gunicorn.
  17. Agora você pode acessar seu aplicativo de frasco em https://.

Faça mais com aplicativos Python no Vultr

Conclusão

Neste artigo, exploramos como implantar um aplicativo de frasco usando o proxy reverso do Nginx e o Gunicorn com proteção de CSRF e CSPs. Também garantimos o aplicativo adicionando um certificado SSL e permitindo o acesso HTTPS.

Este é um artigo patrocinado da Vultr. A Vultr é a maior plataforma de computação em nuvem de capital privado do mundo. A favorita dos desenvolvedores, a Vultr atendeu a mais de 1,5 milhão de clientes em 185 países com soluções flexíveis, escaláveis ​​e globais de nuvem, GPU em nuvem, metal nu e armazenamento em nuvem. Saiba mais sobre Vultr



Source link