Pesquisa de site

Como hospedar um site com HTTPS usando Caddy no Linux


Um servidor web é um aplicativo do lado do servidor projetado para processar solicitações HTTP entre cliente e servidor. HTTP é o protocolo de rede básico e amplamente utilizado.

O servidor HTTP Apache desempenhou um papel importante no design do que a web é hoje. Só ela tem uma participação de mercado de 37,3%. O Nginx vem em segundo lugar na lista, com uma participação de mercado de 32,4%. Microsoft IIS e LiteSpeed aparecem nos números 3 e 4, com uma participação de mercado de 7,8% e 6,9%, respectivamente.

Recentemente, encontrei um servidor web chamado Caddy. Quando tentei perguntar sobre seus recursos e o implantei em testes, devo dizer que é incrível. Um servidor web portátil e que não necessita de nenhum arquivo de configuração. Achei um projeto muito legal e queria compartilhar com vocês. Aqui nós demos uma chance ao Caddy!

O que é Caddie?

Caddy é uma alternativa a um servidor web apache fácil de configurar e usar. Matthew Holt – O líder do projeto Caddy afirma que Caddy é um servidor web de uso geral, afirma ter sido projetado para humanos e é provavelmente o único de seu tipo.

Caddy é o único primeiro servidor web que pode adquirir e renovar certificados SSL/TLS automaticamente usando Let’s Encrypt.

Características do Caddie

  1. Solicitações HTTP rápidas usando HTTP/2.
  2. Servidor Web capaz com configuração mínima e implantação descomplicada.
  3. A criptografia TLS garante a criptografia entre aplicativos e usuários em comunicação pela Internet. Você pode usar suas próprias chaves e certificados.
  4. Fácil de implantar/usar. Apenas um único arquivo e sem dependência de nenhuma plataforma.
  5. Nenhuma instalação necessária.
  6. Executáveis Portáteis.
  7. Execute em várias CPUs/núcleos.
  8. Tecnologia WebSockets avançada – sessão de comunicação interativa entre navegador e servidor.
  9. Documentos de Markdown do servidor em tempo real.
  10. Suporte total para o IPv6 mais recente.
  11. Cria um log em um formato personalizado.
  12. Sirva FastCGI, proxy reverso, reescrita e redirecionamentos, URL limpo, compactação Gzip, navegação em diretório, hosts virtuais e cabeçalhos.
  13. Disponível para todas as plataformas conhecidas – Windows, Linux, BSD, Mac, Android.

O que torna o caddie diferente?

  1. A Caddy pretende servir a web como deveria ser no ano de 2020 e não no estilo tradicional.
  2. Ele foi projetado não apenas para atender solicitações HTTP, mas também para humanos.
  3. Carregado com os recursos mais recentes – HTTP/2, IPv6, Markdown, WebSockets, FastCGI, modelos e outros recursos prontos para uso.
  4. Execute os executáveis sem a necessidade de instalação.
  5. Documentação detalhada com o mínimo de descrição técnica.
  6. Desenvolvido pensando na necessidade e facilidade de Designers, Desenvolvedores e Bloggers.
  7. Suporte Virtual Host – Defina quantos sites desejar.
  8. Adequado para você – não importa se seu site é estático ou dinâmico. Se você é humano, é para você.
  9. Você se concentra no que alcançar e não em como alcançá-lo.
  10. Disponibilidade de suporte para a maioria das plataformas – Windows, Linux, Mac, Android, BSD.
  11. Normalmente, você tem um arquivo Caddy por site.
  12. Configure em menos de 1 minuto, mesmo que você não seja muito amigável com o computador.
Ambiente de teste

Vou testá-lo no servidor CentOS, bem como no servidor Debian, mas as mesmas instruções também funcionam no RHEL e no Debian distribuições baseadas. Para ambos os servidores usarei executáveis de 64 bits.

Operating Systems: CentOS 8 and Debian 10 Buster
Caddy Version: v2.0.0

Instalação do Caddy Web Server no Linux

Não importa qual plataforma e tipo de arquitetura você esteja usando, o caddy fornece pacotes binários prontos para uso, que podem ser instalados usando seu gerenciador de pacotes padrão, conforme mostrado.

Instale o Caddy no Fedora, RedHat, CentOS

Instalaremos a versão mais recente do servidor web Caddy do repositório CORP no Fedora ou RHEL/CentOS 8.

dnf install 'dnf-command(copr)'
dnf copr enable @caddy/caddy
dnf install caddy

No RHEL/CentOS 7 use os seguintes comandos.

yum install yum-plugin-copr
yum copr enable @caddy/caddy
yum install caddy

Instale o Caddy no Debian e Ubuntu

echo "deb [trusted=yes] https://apt.fury.io/caddy/ /" \
    | sudo tee -a /etc/apt/sources.list.d/caddy-fury.list
sudo apt update
sudo apt install caddy

Uma vez instalado o servidor web caddy, você pode iniciar, habilitar e verificar o status do serviço usando os seguintes comandos systemctl.

systemctl start caddy
systemctl enable caddy
systemctl status caddy

Agora abra seu navegador e aponte-o para o seguinte endereço e você poderá ver a página de boas-vindas do caddy.

http://Server-IP
OR
http://yourdomain.com

Configurando Domínios com Caddy

Para configurar um domínio, primeiro você precisa apontar os registros DNS A/AAAA do seu domínio para este servidor em seu painel de controle DNS. Em seguida, crie um diretório raiz de documentos para o seu site "example.com" na pasta /var/www/html conforme mostrado.

mkdir /var/www/html/example.com

Se estiver usando o SELinux, você precisará alterar o contexto de segurança do arquivo para conteúdo da web.

chcon -t httpd_sys_content_t /var/www/html/example.com -R
chcon -t httpd_sys_rw_content_t /var/www/html/example.com -R

Agora abra e edite o arquivo de configuração do caddy em /etc/caddy/Caddyfile.

vim /etc/caddy/Caddyfile

Substitua :80 pelo seu nome de domínio e altere a raiz do site para /var/www/html/example.com conforme mostrado.

Recarregue o serviço Caddy para salvar a alteração de configuração.

systemctl reload caddy

Agora crie qualquer página HTML (você pode criar a sua própria) e salve a página no diretório raiz do documento do seu site.

touch /var/www/html/example.com/index.html

Adicione o seguinte exemplo de código HTML à página de índice do seu site.

echo '<!doctype html><head><title>Caddy Test Page at TecMint</title></head><body><h1>Hello, World!</h1></body></html>' | sudo tee /var/www/html/index.html

Agora visite novamente seu site para ver sua página.

Se tudo estiver configurado corretamente, seu domínio será servido através de um protocolo HTTPS indicando que sua conexão é segura.

Conclusão

Se você é novato e deseja configurar um servidor web sem sujar a mão na configuração, esta ferramenta é para você. Mesmo se você for um usuário experiente que precisa de um servidor web simples e instantâneo, vale a pena tentar o Caddy. Com um pouco de configuração, você também pode definir permissão de pasta, controlar autenticação, páginas de erro, Gzip, redirecionamento HTTP e outros, caso precise configurar um servidor web mais complexo e avançado.

Não tome o Caddy como um substituto do Apache ou Nginx. O Caddy não foi projetado para lidar com ambientes de produção de alto tráfego. Ele foi projetado para uma configuração rápida de servidor web quando sua preocupação é velocidade e confiabilidade.

Referências

Guia do usuário completo/documentação completa do Caddy Web Server

Trouxemos esta documentação que visa uma rápida revisão e instruções de instalação com imagens sempre que necessário. Se você encontrar algum prós/contras do projeto ou alguma sugestão, você pode nos fornecer em nossa seção de comentários.

Para mim, este projeto é muito jovem, ainda funciona perfeitamente e parece poderoso e promissor. O maior ponto positivo que vejo é que o caddy não precisa carregar seu arquivo de configuração para qualquer lugar. O objetivo é fornecer o melhor de Nginx, Lighttpd, vagrant e Websocketd. Isso é tudo da minha parte. Mantenha-se conectado à Tecmint. Parabéns