Com o Caddy Web Server, você obtém https ou nada. Então, vamos ver como você pode instalar o Caddy no Ubuntu e configurá -lo para servir seu aplicativo da web. Receberemos nossos certificados TLS da LetSencrypt.
Configurar
Suponha que você tenha um VPS com endereço IP: 10.20.30.40 e um subdomínio FQDN.exemplo.com quem é um disco está apontando para este IP.
O VPS está executando o Ubuntu 18.04 LTS Server Edition e as configurações seguintes são feitas como usuário root.
Etapa 1: Instalando o servidor da Web Caddy
Caddy está escrito em Go e pode ser executado como um binário executável independente. No entanto, existem vários plugins que você pode construir nele para servidores DNS específicos, etc. Estaremos instalando o binário simples sem nenhum plug -in, para que funcione em todas as personalizações.
Para obter sua página de downloads oficiais binários e selecione todos os plugins e telemetria que você precisa. Abaixo, será um comando bash para baixar e colocar o binário do servidor Caddy no local certo. Como usuário root, execute:
$ curl https: // getcaddy.com | BASH -S PESSOAL
Uma vez feito isso, podemos localizar o binário, executando:
$ whereis caddy
Caddy:/usr/local/bin/caddy
Se você precisar remover o servidor ou atualizá -lo com um executável mais recente, agora sabe onde procurar.
Etapa 2: testando seu site
Se você não tiver um site, basta criar uma pasta vazia e executar os comandos lá. Você pode receber um erro 404 no seu navegador, mas a configuração do servidor ainda pode ser testada. Se você tem um site atravessando o diretório onde o webroot do seu site está localizado em. Como um exemplo típico, estarei selecionando o /var/www/mysite Como exemplo com o seguinte índice.HTML armazenado dentro dele.
/var/www/mysite/index.htmlEsta página é servida pelo servidor Caddy
Este é um parágrafo.
Isso é suficiente para nos começar. Agora, no mesmo diretório que este índice.Página HTML, execute o seguinte Commad:
$ caddy
Ativando os recursos de privacidade ... feitos.
http: //: 2015
Aviso: o limite do descritor de arquivos 1024 é muito baixo para servidores de produção. Pelo menos 8192 é recomendado. Corrija com 'ulimit -n 8192'.
Deixe o Caddy funcionando neste estado.
Você pode ir ao IP público do servidor no número da porta 2015 para testar isso: http: // 10.20.30.40: 2015 Verifique se o seu firewall não está bloqueando esta porta.
E você verá aquele índice.HTML é servido automaticamente. Isso segue a convenção antiga de que a primeira página de qualquer site é nomeada Index, que a maioria dos servidores da Web como Nginx, Apache e até Caddy serve como a primeira página, mesmo quando você não especifica esta página usando /índice.HTML no final do URL.
Etapa 3: Configurando HTTPS
Agora que você confirmou que seu site realmente funciona com o Caddy e pode ser servido com ele, é hora de configurar https. Para fazer isso, você pode usar a interface da linha de comando ou usar um arquivo de configuração chamado como CaddyFile. Usaremos a linha de comando primeiro.
No mesmo diretório do seu site, execute o seguinte comando:
$ caddy -Host Subdomínio.exemplo.com
## pela primeira vez, ele pedirá seu endereço de e -mail para que você possa obter
Notificação de renovação de certificado da LetSencrypt
Saída:
Ativando os recursos de privacidade…É isso! Seu site agora está em funcionamento. Você pode visitar subdomínio.exemplo.com e será redirecionado automaticamente para https sem qualquer número de porta personalizado ou outras nuances.
É tão fácil! Você pode Ctrl+C para interromper o servidor, na próxima vez que ele apenas reutilizará este certificado.
Etapa 4: escrevendo seu caddyfile
O método acima é bom para casos de uso experimental em que você está apenas testando a água. Mas se você deseja um servidor da Web em execução como um processo de fundo, você precisa escrever um caddyfile e dizer ao servidor da web para usar essa configuração para executar seu servidor.
Este é o exemplo mais simples para o mesmo site que hospedamos acima:
subdomínio.exemplo.com
raiz/var/www/mysite
A diretiva raiz diz ao servidor da web onde o site está localizado. Você não pode sair deste diretório do lado do cliente. Geralmente é uma boa ideia colocar seu arquivo de caddy em qualquer lugar, mas dentro deste webroot. Você pode colocá -lo em / etc / pasta ou seu diretório inicial. Por exemplo, se o arquivo for criado em /etc /caddyfile, você poderá dizer ao servidor para usar essa configuração, executando o comando:
$ caddy -conf /etc /caddyfile
Existem várias diretivas que você pode usar para ajustar seu servidor. Você pode ativar a extração de madeira, compressão, proxy reverso, etc. A documentação oficial é um bom lugar para começar a procurar diretivas relacionadas ao seu caso de uso. Aqui está outro exemplo em que dois sites com dois nomes de domínio diferentes estão sendo servidos:
subdomínio.exemplo.com
raiz/var/www/mysite
Subdomínio2.exemplo.com
raiz/var/www/mysite2
gzip
log… /acesso.registro
A diretiva GZIP permite a compactação, se o cliente suportar. Isso melhora o desempenho à medida que mais dados podem ser enviados ao longo da largura de banda e o mesmo intervalo de tempo. O registro ajuda na depuração e acompanhamento da atividade da rede.
A maior força do servidor da Web Caddy é seu arquivo de configuração fácil de escrever e ler e sua flexibilidade em várias plataformas. No entanto, devido ao seu licenciamento estranho, o servidor não é estritamente de código aberto. O código -fonte é de código aberto e você pode compilá -lo totalmente e usar o executável resultante, mas o binário que você recebe do site oficial não deve ser usado para fins comerciais sem licença adequada.
Isso nos leva de volta à questão das complicações em que, em vez de lidar com apenas arquivos de configuração, também precisamos lidar com a compilação do código -fonte derrotando o objetivo de ser servidor web fácil de usar. Deixe -nos saber se você tiver alguma opinião sobre o Caddy e se algum de seus sites estiver em cima dele.