Como instalar e proteger o apache no Ubuntu 20.04

Como instalar e proteger o apache no Ubuntu 20.04

Este tutorial ajudará você a instalar o Apache Web Server no Ubuntu 20.04 LTS (fossa focal) Sistema operacional. Você também aprenderá como proteger seu domínio usando o certificado Let's Crypt SSL. Este tutorial também funcionará no Ubuntu 18.04, Ubuntu 16.04 e Ubuntu 19.10 sistemas Linux.

Antes de começarmos

Antes de começar seu trabalho:

  • Executando o Ubuntu 20.04 Sistema com sudo privilegias de acesso shell.
  • Concluir instruções iniciais de configuração do servidor
  • Um nome de domínio registrado e apontado para o endereço IP público do seu servidor. Para este tutorial, usamos o webhost.Tecadmin.net, que é apontado para o nosso servidor.

Etapa 1 - Instalando o Apache

Os pacotes Apache estão disponíveis nos repositórios de software padrão em ubunts. Você pode instalá -lo facilmente usando a ferramenta de gerenciamento de pacotes convencional.

Primeiro de tudo, atualize o índice de pacotes local para refletir as mais recentes mudanças upstream. Em seguida, instale o servidor web Apache2.

sudo apt update sudo apt install apache2 

Após a confirmação, o APT instalará o Apache e outras dependências necessárias em seu sistema.

Etapa 2 - Teste seu servidor da web

Depois que a instalação terminar, o serviço Apache começará automaticamente no seu sistema Ubuntu. Você pode encontrar o status do serviço Apache executando o seguinte comando:

SUDO SYSTEMCTL STATUS APACHE2 

Saída de amostra:

● Apache2.Serviço - o servidor Apache HTTP carregado: carregado (/lib/systemd/System/Apache2.serviço; habilitado; Preset do fornecedor: habilitado) ativo: ativo (em execução) desde o sol 2020-04-26 05:28:08 UTC; 10min atrás Docs: https: // httpd.apache.org/docs/2.4/ PID principal: 15464 (Apache2) Tarefas: 55 (Limite: 2283) Memória: 6.9m CGROUP: /Sistema.Slice/Apache2.Serviço ├─15464/usr/sbin/apache2 -k START ├─18646/usr/sbin/apache2 -k Iniciar └─18647/usr/sbin/apache2 -k Início 26 de abril 05:28:08 Sistema de tecadmin [1]: Iniciando o servidor Apache HTTP… 26 de abril 05:28:08 Tecadmin Systemd [1]: iniciou o servidor Apache HTTP. 

O status do resultado como “Ativo: ativo (em execução)” significa que o serviço apache começou com sucesso. No entanto, a melhor maneira de testar o servidor da web, solicitar uma página do Apache no navegador da web.

Você verá a página de destino padrão do Apache. Isso significa que o servidor da Web do Apache está funcionando corretamente no seu sistema.

Etapa 3 - Crie um host virtual

Com a ajuda de hosts virtuais, você pode hospedar mais de um domínio de um único servidor. Um host virtual encapsula a configuração de um domínio. Vamos configurar um host virtual com um subdomínio chamado webhost.Tecamin.rede, mas você deve substituir isso por seu próprio nome de domínio.

Vamos começar com um diretório para o nosso domínio da seguinte forma:

sudo mkdir/var/www/webhost sudo chmod -r 755/var/www/webhost sudo chown -r www -data: www -data/var/www/webhost 

Em seguida, crie um índice de amostra.página html para hospedar neste subdomínio. Edite este arquivo em seu editor de texto favorito como Vim ou Nano:

nano/var/www/webroot/index.html 

Adicione o seguinte conteúdo HTML de amostra:

Bem -vindo a Tecadmin.líquido!

Sucesso!!!

12345678 Bem -vindo a Tecadmin.líquido!

Sucesso!!!

Salve o arquivo e feche -o.

Com o recém-instalado servidor Apache, você verá um arquivo de configuração do host virtual padrão localizado em etc/apache2/sites-averable/000-default.conf. Mas este é um bom hábito para criar um arquivo de configuração separado para cada host virtual. Portanto, crie um novo arquivo de host virtual como/etc/apache2/sites-available/webhost.Tecadmin.líquido.conf:

sudo nano/etc/apache2/sites-averable/webhost.Tecadmin.líquido.conf 

Adicione a seguinte configuração ao arquivo de host virtual. Certifique -se de alterar o endereço de email do serverAdmin adequado, nome do servidor para o seu nome de domínio. Você também pode incluir o Serveralias para adicionar mais domínio ou subdomínios. Em seguida, defina o documentroot correto como criado acima.

ServerAdmin [email protected] ServerName WebHost.Tecadmin.Net #Serveralias www.webhost.Tecadmin.NET ## Uncomment It para usar documentroot/var/www/webhost allowoverride todos os erroslog $ apache_log_dir/erro.Log CustomLog $ apache_log_dir/acesso.log combinado
1234567891011 ServerAdmin [email protected] ServerName WebHost.Tecadmin.Net #Serveralias www.webhost.Tecadmin.NET ## Uncomment It para usar documentroot/var/www/webhost Allowoverride tudo ErrorLog $ apache_log_dir/erro.Log CustomLog $ apache_log_dir/acesso.log combinado

Salve o arquivo e feche -o.

Por padrão, o Apache lê arquivos de configuração do host virtual em/etc/Apache2/sites-Diretório disponível. Use a ferramenta A2ensite para ativar este host virtual:

SUDO A2ensite webhost.Tecadmin.líquido.conf 

O comando acima criará um link simbólico que.Tecadmin.líquido.Conf.

Depois de concluído, execute o comando abaixo para verificar os arquivos de configuração:

sudo apache2ctl configtest 

Você deve ver a seguinte saída:

Sintaxe OK 

Em seguida, reinicie o serviço Apache para aplicar suas alterações:

sudo systemctl reiniciar apache2 

Apache está pronto para servir seu conteúdo em seu nome de domínio configurado. Você pode testar isso navegando para http: // webhost.Tecadmin.líquido,

Etapa 4 - Configurar vamos criptografar SSL

Usamos o Certificado SSL Let's Crypt para proteger o site Apache Web Server. CertBot é o utilitário de linha de comando para trabalhar com certificados Let's Crypt. Execute o seguinte comando para instalar o certbot binário:

sudo apt install python3-certbot-apache 

Isso instalará todos os pacotes necessários para o certbot.

Depois que o processo de instalação terminou. Execute o comando abaixo para solicitar a autoridade de certificação Let's Crypt para emitir certificado para o nosso domínio WebHost.Tecadmin.líquido. Você pode adicionar vários domínios ou subdomínios usando parâmetros "-d" separados.

CertBot -D WebHost.Tecadmin.líquido 

Assistente solicitará seu endereço de e -mail para enviar suas atualizações. Em seguida, aceite os termos de serviço para continuar. Abaixo está os registros completos do comando:

Salvando o log de depuração para/var/log/letSencrypt/letsencrypt.Plug -ins selecionados: Autenticador Apache, Instalador Apache Digite Endereço de email (usado para avisos urgentes de renovação e segurança) (Digite 'C' para Cancelar): [Email protegido] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Leia os termos de serviço em https: // LetSencrypt.org/documentos/le-sa-v1.2 de novembro-15-2017.pdf. Você deve concordar para se registrar no servidor ACME em https: // acme-v02.API.LetSencrypt.org/diretório - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - (a) gree/(c (c ) Ancho: A - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Você estaria disposto a compartilhar seu endereço de e-mail com a Electronic Frontier Foundation, um parceiro fundador do projeto Let's Encrypt e a organização sem fins lucrativos que desenvolve o CERTBOT? Gostaríamos de enviar um e -mail sobre nosso trabalho criptografar na web, notícias, campanhas e maneiras de apoiar a liberdade digital. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - (Sim não: Y Obtenção de um novo certificado executando os seguintes desafios: HTTP-01 Desafio para WebHost.Tecadmin.Módulo de reescrita Apache habilitado para NET Aguardando a verificação… A limpeza de desafios criou um SSL VHOST em/etc/apache2/sites-disponível/webhost.Tecadmin.Net-le-SSL.Módulo Apache Socache_shmcb habilitado para Apache habilitado Módulo Apache SSL implantando Certificado para VirtualHost/etc/apache2/sites-Available/WebHost.Tecadmin.Net-le-SSL.conf como habilitar o site disponível:/etc/apache2/sites-available/webhost.Tecadmin.Net-le-SSL.Conful. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1: sem redirecionamento - não faça mais alterações na configuração do servidor da web. 2: Redirecionar - faça com que todas as solicitações sejam redirecionadas para garantir o acesso HTTPS. Escolha isso para novos sites ou se você está confiante de que seu site funciona no HTTPS. Você pode desfazer essa alteração editando a configuração do seu servidor da web. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Selecione o número apropriado [1-2] depois [ENTER] (pressione 'C' para cancelar): 2 Módulo de reescrita Apache habilitado redirecionando vhost em/etc/apache2/sites-inabled/webhost.Tecadmin.líquido.conf para ssl vhost in/etc/ap ache2/sites-available/webhost.Tecadmin.Net-le-SSL.conf - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Parabéns! Você ativou com sucesso https: // webhost.Tecadmin.NET Você deve testar sua configuração em: https: // www.ssllabs.com/ssltest/analise.html?D = WebHost.Tecadmin.net - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Notas importantes: - Parabéns! Seu certificado e cadeia foram salvos em:/etc/letsencrypt/Live/webhost.Tecadmin.net/fullchain.PEM Seu arquivo -chave foi salvo em:/etc/letSencrypt/Live/webhost.Tecadmin.Net/Privkey.PEM Seu certificado expirará em 2020-07-25. Para obter uma versão nova ou ajustada deste certificado no futuro, basta executar o certbot novamente com a opção "Certonly". Para renovar de forma interativa * todos * de seus certificados, execute "certbot renovada" - suas credenciais de conta foram salvas no seu diretório de configuração de certbot em /etc /letsencrypt. Você deve fazer um backup seguro desta pasta agora. Este diretório de configuração também conterá certificados e chaves privadas obtidas pelo certbot, portanto, fazer backups regulares desta pasta é ideal. - Se você gosta do CERTBOT, considere apoiar nosso trabalho: Doando para ISRG/Let's Encrypt: https: // LetSencrypt.org/doar doação para eff: https: // eff.org/doar-le 

Você configurou com sucesso seu domínio com certificado SSL. Agora, você pode acessar seu domínio sobre o protocolo HTTPS, como mostrado na captura de tela abaixo:

Etapa 5 - Ajuste as regras do firewall

Você pode usar o nome do serviço como "http" ou "https" para permitir o firewalld. Para abrir a porta HTTP e HTTPS no firewalld, execute os comandos abaixo:

sudo firewall-cmd --permanent --add-service = http sudo firewall-cmd --permanent --add-service = https 

Depois de adicionar as regras, recarregue as mudanças usando o seguinte comando.

SUDO Firewall-CMD--Reload 

Etapa 6 - Gerenciar o serviço Apache

Agora, você tem seu servidor da Web Apache em funcionamento, vamos com os comandos de gerenciamento de serviços Apache.

Para impedir o servidor da web do Apache, digite:

sudo systemctl stop apache2 

Para iniciar o Apache Web Server (se parado), digite:

sudo systemctl start apache2 

Para reiniciar (parar e iniciar) o serviço Apache, digite:

sudo systemctl reiniciar apache2 

Em vez de parar, inicie um servidor em execução, use a opção Reload para aplicar alterações no arquivo de configuração sem soltar as conexões atuais. Mas isso não lerá nenhum novo arquivo de configuração:

sudo systemctl recarregar apache2 

Para desativar o serviço Apache para iniciar automaticamente a inicialização do sistema, digite:

sudo systemctl desativar apache2 

Para ativar o serviço Apache para iniciar automaticamente a inicialização do sistema, digite:

sudo systemctl Ativar apache2 

Conclusão

O servidor da Web Apache está em execução no seu Ubuntu 20.04 LTS Operating System.