Como criar um servidor web simples com darkhttpd
Darkhttpd é um daemon de servidor web leve e binário único para Linux. Ele fornece uma maneira simples de “zero config” para implementar sites o mais rápido possível no seu servidor. Aqui, mostramos como instalar o darkhttpd no Ubuntu Linux, como ele se compara a servidores web populares e o guiamos pelo processo de criação do seu primeiro site.
Darkhttpd vs Apache vs Nginx
Darkhttpd não é o único servidor web que você pode instalar na sua máquina Linux. Há Apache, Nginx, Caddy, Lighttpd e muitos outros. Nesta seção, vamos comparar darkhttpd com Apache e Nginx e ver como ele se sai.
Em relação à facilidade de uso, o darkhttpd supera o Apache e o Nginx de cara. O Darkhttpd foca em manter tudo em um único programa. Isso significa que você pode compartilhar seu site sem se preocupar com sua configuração e com o serviço init do seu sistema.
Em termos de segurança, o darkhttpd usa um chroot para seus arquivos. Ele também tem timeouts automáticos para conexões ociosas e registro básico. Isso é muito diferente do Apache e do Nginx. Ambos têm filtros poderosos de limitação de taxa e opções para ajustar os cabeçalhos HTTP em seus sites.
A simplicidade do Darkhttpd também se presta inflexível às demandas personalizadas do usuário. Os desenvolvedores do programa o projetaram como uma maneira rápida de servir conteúdo estático da web. Isso significa que, comparado ao Apache e ao Nginx, o darkhttpd não pode executar scripts CGI ou atuar como um proxy reverso para seus aplicativos.
Categoria | httpd escuro | Apache | Nginx |
---|---|---|---|
Fácil de usar | Não requer configuração adicional para hospedar sites. | Requer configuração específica do sistema e do site para funcionar. | Requer configuração específica do site para funcionar. |
Segurança geral | Vem com recursos básicos de chroot e registro. | Vem com limitadores de taxa e cabeçalhos HTTP focados em segurança. | Vem com limitadores de taxa e cabeçalhos HTTP focados em segurança. |
Suporte SSL | Não há suporte SSL integrado. | Vem com “mod_ssl” para suporte SSL. | Vem com suporte SSL integrado. |
Flexibilidade de aplicação | Só pode funcionar com conteúdo web estático. | Pode trabalhar com conteúdo web estático e dinâmico. | Pode funcionar como servidor web, balanceador de carga e proxy reverso. |
Preparando seu sistema para darkhttpd
O primeiro passo para criar um site com darkhttpd no Ubuntu Linux é obter as dependências do Docker e do Docker Compose.
Comece baixando a chave de assinatura para o projeto Docker:
Use seu editor de texto favorito para criar um novo arquivo de repositório:
Cole a seguinte linha de código dentro do seu arquivo de repositório:
Recarregue os repositórios de pacotes da sua máquina e atualize todo o seu sistema:
Instale o Docker, seu plugin Compose e o Git usando o apt:
Instalando e executando o darkhttpd
Vá para seu diretório inicial e baixe a versão mais recente do darkhttpd para seu sistema:
Vá para dentro do repositório Git e crie um novo arquivo Docker Compose usando seu editor de texto favorito:
Cole o seguinte bloco de código dentro do seu arquivo Compose:
Salve seu novo arquivo Compose e execute o seguinte comando para criar e executar seu contêiner Docker darkhttpd:
Crie uma pasta “html” dentro do repositório Linux darkhttpd e copie os arquivos estáticos do seu site para ela:
Confirme se o darkhttpd está sendo executado corretamente listando os contêineres disponíveis no sistema:
Executando darkhttpd sobre SSL com stunnel
Neste ponto, você tem um servidor darkhttpd em execução na porta 8080. No entanto, para acessá-lo pela internet, você precisa primeiro encapsulá-lo em SSL por meio de um proxy reverso.
Para começar, crie um novo registro DNS “A” para seu domínio apontando para o endereço IPv4 do seu darkhttpd. No meu caso, vou apontar o endereço IPv4 da minha máquina para o registro: “web.myvpsserver.top.”
Obtenha e instale o stunnel, o pacote snap “core” e o Certbot em sua máquina:
Registre sua instância darkhttpd na Electronic Frontier Foundation:
Gere um certificado SSL simples para seu nome de domínio:
Crie um novo arquivo de configuração para seu proxy reverso stunnel:
Cole o seguinte bloco de código dentro do seu novo arquivo de configuração:
Salve seu novo arquivo de configuração e execute o seguinte comando para iniciar o proxy reverso:
Confirme se seu site estático está funcionando corretamente abrindo seu subdomínio em um navegador da web.
Hospedar seu próprio site simples usando darkhttpd é apenas o primeiro passo para explorar o maravilhoso mundo dos serviços web de auto-hospedagem. Aprenda como você pode criar RSS Feeds para suas mídias sociais usando RSS-Bridge.
Crédito da imagem: Ilya Pavlov via Unsplash . Todas as alterações e capturas de tela por Ramces Red.
Deixe um comentário