Voltar ao blog

Instalando o Servidor Apache no Ubuntu 18.04: Um Guia Prático

Instalando o Servidor Apache no Ubuntu 18.04: Um Guia Prático

Introdução

O Apache HTTP Server é um servidor web de código aberto da Apache Software Foundation. É um software que conecta o seu servidor local aos servidores de sites como o Firefox ou o Google Chrome. Esta conexão é usada para enviar e receber arquivos e dados.

É o servidor mais popular em todo o mundo. Mais de 40% de todos os sites na world wide web são alimentados pelo Apache HTTP. Os motivos por trás da sua popularidade são a sua alta capacidade de personalização, grande capacidade de integração e suporte de mídia confiável. O Apache opera em uma arquitetura baseada em módulos. Você pode modificar módulos individuais para adicionar e remover várias funcionalidades. Neste tutorial, iremos guiá-lo sobre como instalar o servidor Apache no Ubuntu 18.04.

Antes da Instalação

Antes de começar a instalar o Apache, você precisa cuidar de alguns pré-requisitos. Para começar, certifique-se de que já configurou um usuário não-root com privilégios sudo no servidor local. A outra coisa que você precisará é de um firewall. Você deve habilitar o seu firewall básico e bloquear as portas não essenciais. Antes de iniciar a instalação, faça login no seu usuário não-root com privilégios. Você pode instalar facilmente o seu servidor seguindo o nosso tutorial sobre como configurar um servidor Ubuntu.

Como Instalar o Servidor Web Apache no Ubuntu 18.04

Se você já cuidou dos pré-requisitos, pode passar para a instalação propriamente dita. Você pode instalar e explorar o servidor web Apache em 6 passos simples:

Passo 1: Instalar o Apache

Você ficará feliz em saber que o Apache já faz parte do Ubuntu. Isso significa que você pode instalar o Apache no seu servidor usando as ferramentas típicas de gerenciamento de pacotes. Ele está disponível como um software padrão no repositório. Primeiro, você precisará atualizar o índice de pacotes local:

Este comando faz com que as alterações recentes do upstream apareçam no índice de pacotes. Em seguida, precisamos dar o comando para instalar o pacote apache2:

Passo 2: Alterar as Configurações do Seu Firewall

Ao cuidar dos pré-requisitos, você deve ter configurado o seu firewall UFW. Se você seguiu as instruções, o seu firewall estará bloqueando o seu acesso ao servidor. Precisamos dar acesso às portas web padrão ao servidor antes de operar o Apache. Como resultado, as configurações do firewall devem ser alteradas.

No momento da instalação, o Apache se registra no UFW. O resultado desse registro é a criação de alguns perfis de aplicativos. Além disso, você pode usar esses perfis para habilitar ou desabilitar o acesso do firewall ao Apache. Em seguida, visualize esses aplicativos ufw com o seguinte comando:

Você verá o seu perfil de aplicativo em uma lista como esta:

Apache Server ufw app list

A lista acima mostra que três perfis de aplicativos foram criados, a saber: Apache, Apache Full e Apache Secure. Aqui estão alguns detalhes úteis sobre cada um desses perfis:

  • Apache:

O perfil Apache é capaz de abrir apenas a porta 80. Esta porta permite tráfego web normal e não criptografado.

  • Apache Full:

O perfil Apache Full tem a capacidade de abrir tanto a porta 80 quanto a 443. Enquanto a porta 80 permite tráfego web normal e não criptografado, a porta 443 é responsável pelo tráfego criptografado TLS/SSL.

  • Apache Secure:

Por fim, Apache Secure abre apenas a porta 443. Como mencionado acima, ele é responsável por permitir a entrada de tráfego web criptografado TLS ou SSL.

Ao escolher entre esses perfis, pense no tráfego que você configurou. Você vai querer garantir que o tráfego desejado passe enquanto opta pelo perfil mais restritivo. A configuração SSL está fora do nosso escopo no momento. Portanto, focaremos no tráfego que passa pela porta 80 por enquanto. Isso significa que estamos habilitando o perfil de aplicativo ‘Apache’ neste cenário. Você pode fazer isso assim:

Para verificar a modificação, digite o seguinte:

Este comando exibirá uma saída contendo o tráfego HTTP que atualmente tem permissão para passar. Você verá algo como isto:

Apache Server firewall status

O fluxo de tráfego mostra que o perfil do Apache desejado foi ativado. O acesso ao servidor web foi concedido através do firewall.

Passo 3: Verifique o seu Servidor Web

A instalação do Apache está concluída e as configurações do firewall foram modificadas. No final deste processo, o Ubuntu 18.04 iniciará automaticamente o Apache. Em seguida, você precisa verificar com o sistema de inicialização systemd se o serviço está em execução a qualquer momento. Se você quiser saber mais sobre sistemas de inicialização, pode conferir o nosso tutorial sobre como gerenciar serviços e unidades do Systemd com o Systemctl. Para verificar se o serviço está em execução, digite:

O resultado será o seguinte:

apache2 status

Você precisa procurar pelo status Active ou running do serviço acima. Isso mostra que o serviço foi iniciado e está sendo executado com sucesso. Existe outra maneira, preferível, de testar o funcionamento do serviço. Você pode verificar o status dele solicitando uma página do Apache. Usando o endereço IP do seu servidor, você pode confirmar se o software está funcionando na página de destino padrão do Apache. Aqui está um comando que você pode usar para obter o endereço IP do seu servidor, caso ainda não o saiba:

Este comando mostrará um resultado com vários endereços IP separados por espaços. Teste cada um individualmente no navegador. Outra forma de acessá-lo é obter o seu endereço IP público. Você pode usar um comando como este:

Isso mostrará o seu endereço IP como visto de outros locais na web. Em seguida, assim que tiver o seu endereço IP, acesse o seu navegador web. Na barra de endereços, digite e execute o seguinte:

Isso abrirá a página web padrão do Apache no Ubuntu 18.04. Ela se parece com isso:

ubuntu homepage

Esta página contém algumas informações básicas sobre seus arquivos e diretórios. Como ela foi aberta ao digitar o endereço, isso indica que o Apache está funcionando corretamente.

Passo 4: Gerenciamento Básico no Apache

A verificação confirma que o Apache está em execução e seu servidor está operacional. Agora, exploraremos alguns dos comandos básicos que você pode usar no servidor para gerenciamento.

A configuração padrão do seu Apache o inicia sempre que o servidor é inicializado. Você tem a opção de desativar essa configuração. Digite:

Para reativar esse recurso padrão, use este comando:

Em seguida, digite o seguinte se quiser parar o servidor manualmente:

Se quiser iniciá-lo novamente após pará-lo, use o comando:

Para parar e iniciar o servidor, ou essencialmente atualizá-lo, digite:

Quando você para o servidor, ele tende a perder todas as suas conexões. Iniciá-lo novamente significa que ele encontra e vincula essas conexões novamente. Se desejar, você também pode recarregar o Apache sem perder a conexão. Isso é particularmente útil ao fazer alterações de configuração. Digite o seguinte para recarregar sem derrubar as conexões:

Passo 5: Configuração de Virtual Host

Embora isso não seja obrigatório, é altamente recomendável que você configure seus virtual hosts. Virtual hosts são pequenos blocos no servidor que contêm grupos de detalhes de configuração. Você pode hospedar vários domínios em um único virtual host a partir do seu servidor.

Por padrão, se você estiver usando o Apache no Ubuntu 18.04, haverá um bloco de servidor ativado que servirá documentos no diretório /var/www/html. Você desejará alterar essa configuração se estiver hospedando vários sites em vez de apenas um. No entanto, existe outra opção possível que funciona ainda melhor. Deixe o diretório /var/www/html intocado. Em vez disso, vá para /var/www/ para criar uma estrutura de diretórios para os sites no domínio desejado. Se você fizer isso, o diretório /var/www/html será configurado como o diretório padrão. Caso uma solicitação de cliente não corresponda a nenhum dos sites no seu domínio, ela será servida a partir daqui.

Depois disso, veremos como você pode criar um novo domínio e seu diretório associado. Para fins deste exemplo, usaremos um nome hipotético, your_domain. Substitua your_domain onde quer que esteja presente nas instruções subsequentes pelo seu próprio nome de domínio. Para começar, vejamos como você pode criar um novo diretório para your_domain:

Agora, você deve atribuir a propriedade do diretório. Você pode usar a variável de ambiente $USER para essa finalidade:

Para continuar, as permissões da sua raiz web devem estar corretas. Se você não alterou o valor de umask na configuração, suas permissões devem estar corretas. Mas se não tiver certeza, você sempre pode confirmar com:

A seguir, criaremos uma página index.html. Você pode usar o nano como nós ou qualquer outro editor, se tiver preferência:

Adicione este HTML de exemplo dentro do index, depois Salve e Feche:

O próximo passo é criar um arquivo de host virtual. Um arquivo de host virtual com todas as diretivas corretas é necessário para fazer o Apache servir o conteúdo de exemplo acima. O arquivo de configuração padrão estará localizado em: /etc/apache2/sites-available/000-default.conf. Em vez de modificar esse arquivo, criaremos um novo em: /etc/apache2/sites-available/your_domain.conf.

De forma semelhante a antes, adicionaremos um exemplo de configuração. Desta vez, no entanto, nós o atualizaremos em relação ao nome de domínio e ao novo diretório que acabamos de criar. Adicione este bloco, depois Salve e Feche:

Como você pode ver acima, também atualizamos nosso e-mail ServerAdmin. Este é um endereço que o administrador do site your_domain pode acessar. Não apenas isso, mas também atualizamos o DocumentRoot para o novo diretório e adicionamos duas novas diretivas. Essas diretivas incluem ServerName e ServerAlias. O ServerName é usado para definir o domínio base. O domínio base deve corresponder para definir o host virtual. O ServerAlias, por outro lado, fornece outros nomes que também devem corresponder, semelhantes ao nome base. Você pode habilitar o arquivo usando a ferramenta a2ensite facilmente:

Para desativar o site padrão mencionado em 000-default.conf, use este comando:

Agora que a configuração está pronta, você pode verificar se há erros digitando:

Isso mostrará a seguinte saída se não houver erros de configuração:

Para aplicar as alterações, você deve reiniciar o servidor Apache como instruído anteriormente:

Voilá! Você configurou seu host virtual e definiu seu nome de domínio. Para verificar se o Apache está, de fato, servindo o seu your_domain, acesse http://your_domain.

Passo 6: Navegando pelos Arquivos e Diretórios

Você realizou com sucesso algumas configurações básicas do seu servidor Apache. Além disso, você sabe como gerenciar o seu serviço Apache. A seguir, você pode dedicar algum tempo para explorar alguns dos diretórios e arquivos mais críticos.

Conteúdo
  • /var/www/html

Nós já falamos sobre este diretório antes também. Ele contém a página padrão do Apache. Se quiser, você pode alterar o conteúdo desta página. Para fazer isso, você terá que modificar os arquivos de configuração do Apache.

Configuração do Servidor

 

  • /etc/apache2

Este é o diretório principal de configuração do Apache. Ou seja, este diretório consiste em todos os arquivos de configuração associados ao Apache.

  • /etc/apache2/apache2.conf

Como a adição no final do diretório sugere, este é o arquivo de configuração principal. Este arquivo carrega vários outros arquivos no diretório e pode ser usado para fazer modificações na configuração do Apache. Se você quiser fazer qualquer alteração na configuração do servidor Apache, é aqui que você fará as alterações.

  • /etc/apache2/ports.conf

Como sugerido pelo nome, este arquivo refere-se às portas que discutimos anteriormente. A porta 80 está habilitada por padrão e a porta 443 é ativada quando módulos que contêm SSL são introduzidos. Este arquivo contém detalhes sobre quais portas estão abertas e habilitadas.

  • /etc/apache2/sites-available/

É aqui que os seus hosts virtuais ficarão. Toda e qualquer configuração de bloco de servidor a ser feita é realizada neste diretório. Para habilitar os blocos de servidor, eles devem ser vinculados a outros diretórios através do a2ensite. O Apache só terá acesso aos arquivos neste diretório se eles tiverem sido habilitados por meio de um link para o diretório sites-enabled.

  • /etc/apache2/sites-enabled/

Este é o diretório onde os hosts virtuais habilitados estão localizados. Como mencionamos, os hosts são habilitados quando você vincula os arquivos no diretório sites-available através do comando a2ensite. Os arquivos neste diretório são importantes para quando o Apache inicia, recarrega ou compila uma configuração.

  • /etc/apache2/conf-available/, /etc/apache2/conf-enabled/

Estes diretórios funcionam de maneira semelhante ao sites-available e sites-enabled. Para habilitar os arquivos no diretório conf-available, você deve usar o comando a2enconf. O comando de desativação é o a2disconf. Em vez de armazenar hosts virtuais por site, estes diretórios consistem em detalhes de configuração que não são relevantes para o host virtual:

  • /etc/apache2/mods-available/, /etc/apache2/mods-enabled/

Estes diretórios também têm uma relação semelhante aos dois exemplos acima. Eles contêm os módulos, os disponíveis e os habilitados pelo comando a2enmod. Para desabilitar um módulo, você pode usar o comando a2dismod. Arquivos com o sufixo .load possuem fragmentos que podem carregar um determinado módulo. Arquivos com o sufixo .conf contêm os detalhes de configuração relevantes para o módulo em questão.

Logs do Servidor

 

  • /var/log/apache2/access.log

Este arquivo de log contém todas as requisições feitas ao seu servidor. Isso acontece por padrão. Você tem a opção de configurar o Apache para registrar as requisições de forma diferente.

  • /var/log/apache2/error.log

Este é o log de erros. Todos os erros que você comete vão direto para este arquivo por padrão. Você pode ver o nível de detalhe com que os logs de erro são registrados através da diretiva LogLevel.

Conclusão

Finalmente, ao seguir os passos acima, você pode instalar facilmente o servidor web Apache no seu Ubuntu 18.04. Assim que tiver o servidor no seu sistema, você poderá explorar as várias opções que tem na plataforma. Você pode usar diferentes tecnologias para produzir vários tipos de conteúdo. Dessa forma, você pode cultivar uma experiência única e facilitadora para si mesmo no servidor.

Você também pode aprender como proteger o seu servidor Apache com o Let’s Encrypt seguindo o nosso tutorial passo a passo. Se você quiser aprender como instalar o Apache no CentOS 7, siga o nosso tutorial sobre como instalar a pilha Linux, Apache, MySQL, PHP (LAMP) no CentOS 7.

Feliz computação!

author

Akshay Nagpal

Autor · CloudSigma

Preslav Dobrev é um designer criativo na CloudSigma, focado na construção de uma identidade empresarial consistente por meio de canais de marketing tradicionais e inovadores. Ele é hábil em combinar a visão artística com o marketing estratégico para criar narrativas de marca impactantes.

Comentários

Nenhum comentário ainda. Seja o primeiro.