Tutorial: Instalar uma pilha LAMP em uma VM Linux do Azure
Aplica-se a: ✔️ Linux VMs
Este artigo explica como implementar um servidor Web Apache, o MySQL e o PHP (pilha LAMP) numa VM do Ubuntu no Azure. Para ver o servidor LAMP em ação, opcionalmente, pode instalar e configurar um site do WordPress. Neste tutorial, ficará a saber como:
- Criar uma VM do Ubuntu
- Abrir a porta 80 para o tráfego da Web
- Instalar o Apache, o MySQL e o PHP
- Verificar a instalação e a configuração
- Instalar o WordPress
Esta configuração é para testes rápidos ou uma prova de conceito. Para obter mais informações sobre a pilha LAMP, incluindo as recomendações para um ambiente de produção, veja a Documentação do Ubuntu.
Este tutorial usa a CLI no Azure Cloud Shell, que é constantemente atualizado para a versão mais recente. Para abrir o Cloud Shell, selecione Experimentar na parte superior de qualquer bloco de código.
Se você optar por instalar e usar a CLI localmente, este tutorial exigirá que você esteja executando a CLI do Azure versão 2.0.30 ou posterior. Executar az --version
para localizar a versão. Se precisar de instalar ou atualizar, veja Install Azure CLI (Instalar o Azure CLI).
Criar um grupo de recursos
Crie um grupo de recursos com o comando az group create. Um grupo de recursos do Azure é um contentor lógico no qual os recursos do Azure são implementados e geridos.
O exemplo seguinte cria um grupo de recursos com o nome myResourceGroup na localização eastus.
az group create --name myResourceGroup --location eastus
Criar uma máquina virtual
Crie uma VM com o comando az vm create.
O exemplo a seguir cria uma VM chamada myVM e cria chaves SSH se elas ainda não existirem em um local de chave padrão. Para utilizar um conjunto específico de chaves, utilize a opção --ssh-key-value
. O comando também define azureuser como um nome de utilizador administrador. Utilize este nome mais tarde para ligar à VM.
az vm create \
--resource-group myResourceGroup \
--name myVM \
--image Ubuntu2204 \
--admin-username azureuser \
--generate-ssh-keys
Quando a VM tiver sido criada, a CLI do Azure mostra informações semelhantes ao seguinte exemplo. Tome nota do publicIpAddress
. Este endereço é utilizado para aceder à VM nos passos posteriores.
{
"fqdns": "",
"id": "/subscriptions/<subscription ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
"location": "eastus",
"macAddress": "00-0D-3A-23-9A-49",
"powerState": "VM running",
"privateIpAddress": "10.0.0.4",
"publicIpAddress": "40.68.254.142",
"resourceGroup": "myResourceGroup"
}
Abrir a porta 80 para o tráfego da Web
Por predefinição, só são permitidas ligações SSH a VMs do Linux implementadas no Azure. Uma vez que esta VM vai ser um servidor Web, tem de abrir a porta 80 a partir da Internet. Utilize o comando az vm open-port para abrir a porta pretendida.
az vm open-port --port 80 --resource-group myResourceGroup --name myVM
Para obter mais informações sobre como abrir portas para sua VM, consulte Abrir portas.
Aceder através de SSH à VM
Se ainda não souber o endereço IP público da sua VM, execute o comando az network public-ip list. Precisará deste endereço IP para vários passos posteriores.
az network public-ip list --resource-group myResourceGroup --query [].ipAddress
Utilize o seguinte comando para criar uma sessão SSH com a máquina virtual. Substitua o endereço IP público correto da sua máquina virtual. Neste exemplo, o endereço IP é 40.68.254.142. azureuser é o nome de utilizador administrador que definiu quando criou a VM.
ssh azureuser@40.68.254.142
Instalar o Apache, o MySQL e o PHP
Execute os comandos seguintes para atualizar as origens do pacote Ubuntu e instalar o Apache, o MySQL e o PHP. Tenha em atenção ao acento circunflexo (^) no final do comando, que faz parte do nome do pacote lamp-server^
.
sudo apt update && sudo apt install lamp-server^
Você será solicitado a instalar os pacotes e outras dependências. Este processo instala as extensões PHP mínimas necessárias para utilizar o PHP com o MySQL.
Verificar Apache
Verifique a versão do Apache com o seguinte comando:
apache2 -v
Com o Apache instalado e a porta 80 aberta para a VM, torna-se possível aceder ao servidor Web a partir da Internet. Para a Página Predefinida do Apache2 Ubuntu, abra um browser e introduza o endereço IP público da VM. Utilize o endereço IP público que utilizou para encaminhar o SSH para a VM:
Verifique e proteja o MySQL
Verifique a versão do MySQL com o seguinte comando (tenha em atenção o parâmetro V
em maiúscula):
mysql -V
Para ajudar a proteger a instalação do MySQL, incluindo a definição de uma senha de root, execute o mysql_secure_installation
script.
sudo mysql_secure_installation
Opcionalmente, você pode configurar o plug-in Validar senha (recomendado). Em seguida, defina uma senha para o usuário root do MySQL e defina as configurações de segurança restantes para o seu ambiente. Recomendamos que responda "Y" (sim) a todas as perguntas.
Se pretender experimentar funcionalidades do MySQL (criar uma base de dados MySQL, adicionar utilizadores ou alterar as definições de configuração), inicie sessão no MySQL. Esta etapa não é necessária para concluir este tutorial.
sudo mysql -u root -p
Quando terminar, sair da linha de comandos do mysql, escrevendo \q
.
Verificar PHP
Verifique a versão do PHP com o seguinte comando:
php -v
Se pretender mais testes, crie uma página de informações do PHP rápida, para a ver num browser. O comando seguinte cria a página de informações do PHP:
sudo sh -c 'echo "<?php phpinfo(); ?>" > /var/www/html/info.php'
Agora pode verificar a página de informações do PHP que criou. Abra um browser e aceda a http://yourPublicIPAddress/info.php
. Substitua o endereço IP público da sua VM. Deve ter um aspeto semelhante a esta imagem.
Instalar o WordPress
Se quiser experimentar a sua pilha, instale uma aplicação de exemplo. Por exemplo, os seguintes passos instalam a plataforma de WordPress de código-fonte aberto para criar sites e blogues. Outras cargas de trabalho tentam incluir o Drupal e o Moodle.
Esta configuração do WordPress é apenas para prova de conceito. Para instalar o WordPress mais recente na produção com as definições de segurança recomendadas, veja a documentação do WordPress.
Instalar o pacote do WordPress
Execute o seguinte comando:
sudo apt install wordpress
Configurar WordPress
Configure o WordPress para utilizar o MySQL e PHP.
No diretório de trabalho, crie um ficheiro de texto wordpress.sql
para configurar a base de dados do MySQL para o WordPress:
sudo sensible-editor wordpress.sql
Adicione os seguintes comandos, ao substituir uma palavra-passe da base de dados à sua escolha para yourPassword (deixe os outros valores inalterados). Se configurou anteriormente uma política de segurança do MySQL para validar a força da palavra-passe, certifique-se de que a palavra-passe cumpre os requisitos de segurança. Guarde o ficheiro.
CREATE DATABASE wordpress;
GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,ALTER
ON wordpress.*
TO wordpress@localhost
IDENTIFIED BY 'yourPassword';
Execute o comando seguinte para criar a base de dados:
cat wordpress.sql | sudo mysql --defaults-extra-file=/etc/mysql/debian.cnf
Uma vez que o ficheiro wordpress.sql
contém credenciais de base de dados, elimine-o depois de o utilizar:
sudo rm wordpress.sql
Para configurar o PHP, execute o seguinte comando para abrir um editor de texto à sua escolha e crie o ficheiro /etc/wordpress/config-localhost.php
:
sudo sensible-editor /etc/wordpress/config-localhost.php
Copie as seguintes linhas para o ficheiro, ao substituir a palavra-passe da base de dados do WordPress por yourPassword (deixe os outros valores inalterados). Em seguida, guarde o ficheiro.
<?php
define('DB_NAME', 'wordpress');
define('DB_USER', 'wordpress');
define('DB_PASSWORD', 'yourPassword');
define('DB_HOST', 'localhost');
define('WP_CONTENT_DIR', '/usr/share/wordpress/wp-content');
?>
Mova a instalação do WordPress para a raiz do documento do servidor Web:
sudo ln -s /usr/share/wordpress /var/www/html/wordpress
sudo mv /etc/wordpress/config-localhost.php /etc/wordpress/config-default.php
Agora, pode concluir a configuração do WordPress e publicar na plataforma. Abra um browser e aceda a http://yourPublicIPAddress/wordpress
. Substitua o endereço IP público da sua VM. Deve ter um aspeto semelhante a esta imagem.
Próximos passos
Neste tutorial, implementou um servidor LAMP no Azure. Aprendeu a:
- Criar uma VM do Ubuntu
- Abrir a porta 80 para o tráfego da Web
- Instalar o Apache, o MySQL e o PHP
- Verificar a instalação e a configuração
- Instalar o WordPress no servidor LAMP
Avance para o próximo tutorial para aprender a proteger servidores Web com certificados TLS/SSL.