Lamp
Em menos de um minuto, crie um servidor na nuvem com Apache, MySQL e PHP instalados.
Softwares inclusos:
APACHE - 2.4.41
MYSQL - 8.0.30
PHP - 8.1
Fail2ban - 0.11.1
Postfix - 3.4.13
Certbot - 0.40.0
Ao iniciar após a implantação do LAMP:
Permita o acesso às portas no firewall apenas para SSH (porta 22, com limite de taxa), HTTP (porta 80) e HTTPS (porta 443). Conforme Como criar Regras de Firewall.
Configure a senha root do MySQL e execute a instalação segura do MySQL.
Você será desconectado da instância e exibido com a mensagem abaixo até que a instância seja implantada. NÃO FAÇA LOGIN NA INSTÂNCIA POR 2 MINUTOS APÓS A CRIAÇÃO.
Please wait until the installation is completed....Connection to $IPADDRESS closed.
Assim que o LAMP for implantado:
Você pode visualizar a instância do LAMP imediatamente visitando o endereço IP da instância em seu navegador.
Você pode fazer login na instância como ubuntu usando a senha que você definiu quando criou a instância ou com uma chave SSH se você adicionou uma durante a criação.
Você pode então mudar o usuário para root sem uma senha digitando o seguinte comando. <sudo su - >
A senha root do MySQL é armazenada em /root/.mysql_root_password
Faça login no MySQL usando o comando abaixo.
<mysql -u root -p <$senha armazenada no arquivo acima> >
A raiz da web é /var/www/html
Para proteger sua conexão, você precisará de um domínio registrado configurado para sua instância.
Além disso, existem algumas etapas de configuração personalizadas que recomendamos que você faça:
A criação de um arquivo de hosts virtuais do Apache para cada site mantém a configuração padrão como backup, como pretendido, e facilita o gerenciamento de alterações ao hospedar vários sites.
Para fazer isso, você precisará criar duas coisas para cada domínio: um novo diretório em /var/www para o conteúdo desse domínio e um novo arquivo de host virtual em /etc/apache2/sites-available para a configuração desse domínio.
Configurar um certificado SSL permite o HTTPS no servidor da web, que protege o tráfego entre o servidor e os clientes que se conectam a ele. O Certbot é uma maneira gratuita e automatizada de configurar certificados SSL em um servidor. Ele está incluído como parte da implantação do LAMP para tornar a segurança do domínio mais fácil.
Para usar o Certbot, você precisará de um nome de domínio registrado e dois registros DNS:
Um registro A de um domínio (e.g., exemplo.com) para o endereço IP do servidor
Um registro A de um domínio com prefixo www (e.g., www.exemplo.com) para o endereço IP do servidor
Além disso, se você estiver usando um arquivo de hosts virtuais, precisará garantir que a diretiva do nome do servidor no bloco VirtualHost (e.g., ServerName exemplo.com) esteja configurada corretamente para o domínio.
Depois que os registros DNS e, opcionalmente, os arquivos de hosts virtuais são configurados, você pode gerar o certificado SSL. Certifique-se de substituir o domínio no comando.
certbot --apache -d exemple.com -d www.exemple.com
O tráfego HTTPS na porta 443 precisa ser permitido pelo firewall. Depois de configurar o HTTPS, você pode optar por negar o tráfego HTTP na porta 80:
Configurando o Postfix:
Defina um nome de host válido usando o comando "hostnamectl set-hostname test.example.com". Certifique-se de que o nome de host "test.example.com" tenha um registro A adequado.
O endereço IP da instância deve ter um registro PTR adequado.
Configure o nome de host no arquivo de configuração do postfix /etc/postfix/main.cf
Na seção abaixo, substitua o $hostname pelo nome de host válido
myhostname = $hostname
Reinicie o postfix usando o comando
systemctl restart postfix
Depois que a etapa acima for concluída, você pode verificar os emails de saída usando o comando
echo "Postfix test" | mail -s "Subject" test@gmail.com"
Inicialmente, os emails serão enviados para a pasta de spam. Como este é um IP NOVO, a reputação é desconhecida. Assim que a reputação for calculada com base nos emails recebidos e enviados, os emails serão entregues na caixa de entrada.