Tutorial: Implementando SSL no localhost para desenvolvimento Ruby on Rails com mkcert
Neste tutorial, você aprenderá como implementar um certificado SSL em seu ambiente de desenvolvimento Ruby on Rails usando o mkcert. Isso pode ser útil para testar a funcionalidade SSL em sua aplicação antes de implantá-la em um servidor de produção.
Requisitos
- Ruby on Rails 6 ou 7 instalado em sua máquina.
- Mkcert instalado. Você pode obtê-lo aqui: **https://github.com/FiloSottile/mkcert**
Passo 1: Instalar o mkcert
Se você ainda não instalou o mkcert, siga as instruções no link mencionado acima. O mkcert é uma ferramenta simples de linha de comando que gera certificados SSL autoassinados válidos para uso em ambientes de desenvolvimento local.
Passo 2: Gerar certificados SSL
Abra seu terminal e navegue até a pasta onde deseja armazenar os certificados. Em seguida, execute o seguinte comando:
mkcert localhost
Isso gerará dois arquivos: localhost.pem
e localhost-key.pem
. Esses arquivos são o certificado e a chave privada, respectivamente. Certifique-se de que esses arquivos estejam em um local seguro e de fácil acesso.
Passo 3: Configurar o Rails para usar SSL
Agora que temos os certificados, precisamos dizer ao Rails para usá-los. Para fazer isso, vá até a pasta do seu projeto Rails e edite ou crie um arquivo chamado Procfile
na raiz do projeto (para Rails 6) ou edite o arquivo Procfile.dev
já existente (para Rails 7). Adicione a seguinte linha ao arquivo:
web: unset PORT && bin/rails server -b 'ssl://localhost:3000?key=localhost-key.pem&cert=localhost.pem'
Certifique-se de que os caminhos para os arquivos localhost-key.pem
e localhost.pem
estão corretos. Se você armazenou os arquivos em uma pasta diferente, ajuste os caminhos conforme necessário.
Passo 4: Iniciar o servidor Rails com SSL (somente para Rails 6)
Se você estiver usando Rails 6, é necessário instalar o foreman
. Abra o terminal e navegue até a pasta do seu projeto Rails. Em seguida, execute o seguinte comando:
gem install foreman
Agora que o foreman
está instalado, você pode iniciar o servidor Rails com SSL executando:
foreman start
Se você estiver usando Rails 7, o foreman
já está incluído por padrão, e você pode simplesmente iniciar o servidor Rails com SSL executando:
bin/dev
Agora seu servidor Rails deve estar em execução com SSL habilitado. Você pode acessar sua aplicação navegando até https://localhost:3000
em seu navegador.