- - Como instalar o servidor Web Caddy no Linux

Como instalar o servidor Web Caddy no Linux

Atualmente, o HTTPS é essencial ao hospedar um site. Sem ele, seus usuários podem estar vazando dados muito pessoais do seu site para o mundo. Para resolver isso, muitos webmasters do Linux passaram a usar as ferramentas LetsEncrypt, pois facilitam a geração de um certificado. Ainda assim, por mais fácil que seja o LetsEncrpyt, habilitá-lo no Nginx ou Apache no Linux ainda pode ser um pouco trabalhoso. Felizmente, há uma maneira melhor. Apresentando o servidor da web Caddy. É um servidor Web que possui HTTPS ativado por padrão. Se você está cansado de incomodar os certificados SSL, o Caddy pode ser exatamente o que você precisa.

Instalando o Caddy

A instalação do servidor da web Caddy funciona praticamenteo mesmo, independentemente do sistema operacional do servidor que você está usando. O motivo pelo qual o Caddy é tão fácil de instalar é a escolha do desenvolvedor de usar um script Bash para download para instalar o software, em vez de adicionar repositórios de software de terceiros ou instalar via binários.

Neste tutorial, usaremos o Ubuntu Server, embora a execução do servidor da web Caddy também funcione bem na maioria dos outros sistemas operacionais Linux, mesmo os de desktop. Para começar, verifique se você tem o Ondulação aplicativo no seu PC Linux. Caso contrário, abra um terminal, procure por "curl" no gerenciador de pacotes e instale-o.

Nota: determine se você já se curvou executando ondulação no terminal. Se a caixa de diálogo "ajuda" aparecer para o programa, você tem Ondulação na sua máquina Linux.

curl https://getcaddy.com | bash -s personal

O servidor da web Caddy é gratuito para uso pessoal, mas você deve especificá-lo. Planejando usar o Caddy em um ambiente corporativo? Execute o comando de instalação com:

curl https://getcaddy.com | bash -s commercial

A execução do Curl direcionará o Bash e iniciará automaticamente o processo de instalação. O instalador do Caddy levará tempo para baixar o binário do servidor da Web e colocá-lo no / usr / local / bin / diretório. Se a instalação for bem-sucedida, você verá uma mensagem dizendo "Instalado com sucesso".

Neste ponto, você precisará modificar o binário Caddy. Execute o seguinte comando no terminal, com sudo privilégios.

sudo setcap cap_net_bind_service=+ep /usr/local/bin/caddy

Configurando o Caddy

O Caddy está instalado no servidor. A próxima etapa do processo é configurar a estrutura de diretórios. Comece obtendo um terminal raiz. Isso fará com que a modificação de pastas no sistema de arquivos seja muito mais rápida, pois você não precisará entrar sudo para cada comando, seguido por uma senha.

Na maioria dos sistemas, os usuários podem fazer login diretamente na conta raiz com:

su

No servidor Ubuntu, no entanto, a conta Raiz está bloqueada por motivos de segurança. Para contornar isso, obtenha um shell raiz com sudo.

sudo -s

Agora que temos acesso root, crie os diretórios necessários para o servidor Caddy operar corretamente.

mkdir /etc/caddy
mkdir /etc/ssl/caddy

Nota: Se o seu servidor já tiver um / var / www / diretório, pule este último mkdir comando.

mkdir /var/www

Em seguida, crie um novo “Caddyfile” dentro do / etc / caddy /.

touch /etc/caddy/Caddyfile

Usando o chmod comando, atualize as permissões para a subpasta Caddy dentro de / etc / ssl /.

chmod 0770 /etc/ssl/caddy

Por fim, chown a / var / www / diretório:

chown www-data: /var/www

Arquivo Caddy Systemd

A maioria dos servidores, especialmente o servidor Ubuntu, torna pesadouso do sistema systemd init. No entanto, como o servidor da Web é instalado via script Bash, um arquivo systemd não está presente. Em vez disso, precisamos criar nossos próprios. Use o toque comando para criar um novo arquivo de serviço em branco.

touch /lib/systemd/system/caddy.service

Abra o novo caddy.service e cole o seguinte código nele:

[Unit]
Description=Caddy HTTP/2 web server
Documentation=https://caddyserver.com/docs
After=network-online.target
Wants=network-online.target

[Service]
Restart=on-failure
StartLimitInterval=86400
StartLimitBurst=5

User=www-data
Group=www-data
; Letsencrypt-issued certificates will be written to this directory.
Environment=CADDYPATH=/etc/ssl/caddy

ExecStart=/usr/local/bin/caddy -log stdout -agree=true -conf=/etc/caddy/Caddyfile -root=/var/tmp
ExecReload=/bin/kill -USR1 $MAINPID

LimitNOFILE=1048576
LimitNPROC=64

PrivateTmp=true
PrivateDevices=true
ProtectHome=true
ProtectSystem=full
ReadWriteDirectories=/etc/ssl/caddy

; The following additional security directives only work with systemd v229 or later.
; They further retrict privileges that can be gained by caddy. Uncomment if you like.
; Note that you may have to add capabilities required by any plugins in use.
;CapabilityBoundingSet=CAP_NET_BIND_SERVICE
;AmbientCapabilities=CAP_NET_BIND_SERVICE
;NoNewPrivileges=true

[Install]
WantedBy=multi-user.target

Há muito código para o caddy.service arquivo, faça o possível para garantir que tudo esteja lá. Quando tiver certeza, salve as alterações pressionando o Ctrl + X combinação de teclado. Saia do editor com Ctrl + X.

systemctl enable caddy.service
systemctl start caddy.service

Depois de configurar o systemd, tudo deve estar pronto.

Configurando domínios

O Caddy, como qualquer outro servidor web, precisa de um pouco de configuração antes de usá-lo. Comece criando uma pasta de domínio:

Nota: certifique-se de renomear "test-domain.org" com seu domínio.

mkdir -p /var/www/test-domain.org/

Em seguida, edite o arquivo Caddyfile nós criamos anteriormente.

nano /etc/caddy/Caddyfile

Cole o seguinte código para ativar seu novo domínio:

my-domain.com {
root /var/www/test-domain.org
}

Reinicie o serviço do sistema Caddy para salvar as alterações. Quando o serviço terminar de reiniciar, o Caddy estará pronto para uso em seu servidor.

systemctl restart caddy.service
</p>

Comentários