Este é um tutorial de instalação do Mautic básico, mas pronto para produção, que você pode executar em um ambiente de produção com dados reais de seus clientes.
Este tutorial mantém tudo o mais simples possível, mas exigirá algum conhecimento básico da linha de comando do Linux.
Se você é novo no Mautic ou na linha de comando do Linux, primeiro tente este tutorial mais simples do Mautic: Instalação do Mautic em 3 etapas simples, é a maneira mais simples de começar e a probabilidade de algo dar errado é mínima.
Ele foi projetado para dar a você um sucesso rápido usando a linha de comando para que você possa ter uma vitória fácil e ganhar confiança para avançar mais tarde com esta segunda parte.
Este é um processo de instalação um pouco mais avançado, permitindo uma instalação mais segura do Mautic 2.15.3 em um Servidor Privado Virtual (VPS) com PHP 7.2 em cima do Ubuntu 18.04 LTS.
Este tutorial deve levar de 10 a 20 minutos, dependendo do seu nível de conhecimento com Mautic e Linux.
Pré-instalação
Para ter um servidor seguro, você deve começar a protegê-lo antes mesmo de iniciá-lo.
Na última etapa, você estará habilitando o SSL, para fazer isso, você precisará de um domínio válido apontando para o seu Mautic, portanto, como a propagação do DNS leva algum tempo, você deve começar criando um novo registro DNS para a sua instalação do Mautic agora, por exemplo: mautic.yourdomain.com
Outra etapa muito importante antes de iniciar a instalação do Mautic é proteger seu novo servidor com um firewall.
Configurando um firewall:
Existem 2 opções principais para isso, firewall externo e firewall interno. Um firewall externo é fornecido por sua empresa de nuvem, o firewall interno é aquele que você configura dentro de seu VPS.
a) Usando um firewall externo: a maioria dos provedores de nuvem oferece um firewall externo, provavelmente de graça. Firewalls externos na AWS, Google Cloud e outros provedores de nível superior são excelentes.
A principal vantagem de usar um bom firewall externo é que você pode configurar suas regras de firewall antes mesmo de iniciar seu novo VPS, protegendo-o assim desde o momento de sua criação.
O firewall do Digital Ocean é relativamente simples de configurar, no entanto, você não pode atribuir uma regra de firewall a um novo droplet antes que ele exista, deixando o droplet desprotegido pelos poucos minutos que leva para configurá-lo.
Essa é uma grande falha de design que tenho certeza que eles vão consertar em breve, mas, por enquanto, o firewall deles não é melhor do que um firewall interno.
b) Usando um firewall interno: Esta opção é mais simples e rápida de configurar, funciona perfeitamente em nossa situação, e é uma boa prática configurá-la mesmo que você também use um externo.
O Ubuntu vem com UFW (Uncomplicated FireWall) pré-instalado, o que torna a proteção do seu VPS muito fácil.
O UFW fecha todas as portas por padrão, portanto, basicamente, fecha todos os pontos de entrada possíveis para o seu servidor, tornando-o bastante seguro.
Como todas as portas serão fechadas, a menos que “abramos um buraco” (abramos uma porta) no firewall, ninguém conseguirá acessar seu VPS, nem mesmo você.
Como estamos usando o protocolo SSH para nos conectar ao nosso servidor, precisaremos abrir a porta 22 antes de ativar o firewall ou não poderemos acessar nosso próprio VPS.
Para configurar o firewall para que a porta 22 esteja aberta:
sudo su
ufw allow 22
Se você decidiu habilitar um firewall externo, esta é a hora de abrir a porta 22 TAMBÉM no firewall externo.
Na verdade, toda vez que abrimos uma porta no firewall interno com o comando ufw allow, você deve se lembrar de abrir a mesma porta no firewall externo.
Agora podemos iniciar o firewall:
ufw enable
Veja como funcionam as portas: Todo computador tem cerca de 65.000 portas, se houver um serviço ouvindo essa porta, esse serviço é responsável pela segurança dessa porta, por exemplo, se você iniciar um servidor SSH, ele assume o controle da porta 22 e é responsável por todas as informações que entram e saem dessa porta.
Se você habilitar o Apache ou NginX, eles assumirão a propriedade das portas 80 e 443, cada serviço usa uma ou mais portas para se comunicar com o mundo externo.
O que acontece com o resto dessas 65.000 portas? se não há serviço escutando em uma porta … então não há “ninguém” responsável pelo que acontece nessas portas, o que deixa 65K portas abertas para qualquer pessoa, um grande risco de segurança.
Um firewall cuida disso bloqueando todas as portas que você não precisa usar.
Não usando o usuário root:
No primeiro tutorial, para simplificar, usamos a conta root para emitir todos os comandos, isso é considerado uma má prática em termos de segurança, então considere criar um novo usuário e dar a ele direitos suficientes para fazer todas as tarefas necessárias .
Pessoalmente, acredito que criar um novo usuário e, em seguida, dar a ele acesso sudo é tão perigoso quanto usar a conta root diretamente, então não uso essa técnica, exceto quando haverá vários usuários gerenciando um servidor, então faz muito mais sentido ter um controle mais preciso sobre quem pode fazer o quê e um registro de quem fez o quê.
Se você decidir criar um novo usuário, torne-o um sudo, feche sua conexão atual (root) e conecte-se novamente com o novo usuário.
OK, a pré-instalação está concluída, podemos prosseguir com a instalação do Mautic.
Instalando Mautic:
A maioria das etapas a seguir são exatamente as mesmas do primeiro tutorial; se você já as seguiu, pode pular diretamente para a seção “Protegendo seu servidor MySQL” abaixo.
Certifique-se de que nosso servidor está atualizado atualizando a instalação do Ubuntu.
apt update && apt upgrade -y
Instalando todos os pacotes requeridos (Aplicativos) que são necessários para executar o Mautic.
apt install apache2 libapache2-mod-php php unzip mariadb-server php-xml php-mysql php-imap php-zip php-intl php-curl ntp -y
Ativando certos módulos do Apache 2 que não estão ativos por padrão após a instalação.
a2enmod rewrite
Baixando e descompactando os arquivos do Mautic.
cd /var/www/html
wget https://github.com/mautic/mautic/releases/download/2.15.3/2.15.3.zip
unzip 2.15.3.zip
rm 2.15.3.zip
Certificando-se de que o Apache e o Mautic têm permissões de propriedade e acesso de gravação aos arquivos.
chown -R www-data:www-data /var/www/html
chmod -R 775 /var/www/html
Configurando o Apache:
wget https://mauteam.org/wp-content/uploads/2019/10/000-default.txt
mv 000-default.txt /etc/apache2/sites-available/000-default.conf
Criando um banco de dados para Mautic.
mysql -u root
Este comando irá conectá-lo ao seu banco de dados, a única diferença que você notará é que o texto antes do seu prompt de comando mudará para “MariaDB [(none)]”
CREATE DATABASE mautic DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;
GRANT ALL ON mautic.* TO 'root'@'localhost' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;
EXIT;
Após o “EXIT;” comando você retornará ao modo normal …
Protegendo seu servidor MySQL:
Proteger seu servidor MariaDB (MySQL) é muito simples e pode ser feito com apenas um comando, este é apenas um script de segurança muito básico, que fará algumas perguntas a fim de tornar seu servidor mais seguro, mas mantê-lo utilizável para seus propósitos.
Para este tipo de configuração, ele fará o trabalho perfeitamente.
mysql_secure_installation
Isso iniciará o script interativo, você só precisa responder às perguntas com estas respostas:
Digite a senha atual para o root (digite nenhum):
Alterar a senha do root? [y] Remover usuários anônimos? [y] Desautorizar login de root remotamente? [y] Remover banco de dados de teste e acesso a ele? [y] Atualizar tabelas de privilégios agora? [y]
Você terminou, como pode ver, basicamente você só precisa responder sim a todas as perguntas e deixar que o script faça o trabalho para você.
Quase pronto, o servidor Mautic agora está instalado e protegido, antes de executarmos o Mautic Configuration Wizard, precisamos abrir a porta 80 no firewall para poder conectar ao nosso servidor a partir de um navegador:
ufw allow 80
Agora vamos recarregar a configuração do Apache para aplicar nossas mudanças.
service apache2 reload
Execute o Mautic Configuration Wizard.
O Mautic agora está pronto para ser configurado, basta usar um navegador, como Chrome ou Firefox, e navegar até o IP do seu servidor.
Aqui está um trecho de sua configuração para o Mautic Installation Wizard:
- Driver de banco de dados: MySQL PDO
- Host do banco de dados: localhost
- Porta do banco de dados: 3306
- Nome do DB: Mautic
- Prefixo da tabela do banco de dados: deixe em branco
- Usuário do banco de dados: root
- Senha do banco de dados: senha
- Faça backup das tabelas existentes: Não
Se precisar de ajuda com as etapas do assistente, verifique esta outra postagem com instruções passo a passo:
Instalação do Mautic: O assistente de configuração
Habilitar HTTPS com certbot
É importante habilitar conexões seguras para os usuários que se conectam ao Mautic a partir de um navegador. O Certbot é a maneira mais simples de habilitar SSL em seu servidor.
Antes de poder prosseguir com a habilitação de HTTPS, você precisa ter um domínio habilitado para Mautic, portanto, se seu domínio se chamar seudominio.com, você precisará criar um subdomínio para Mautic, por exemplo: mautic.seudominio.com. Isso geralmente é configurado no painel de controle de seu registrador de domínio (o site onde você comprou seu domínio).
Se outra pessoa estiver fazendo isso por você, apenas peça a ela: “Adicionar um registro A para mautic.seudominio.com” Claro, altere “seudominio.com” pelo seu nome de domínio real.
Eles perguntarão algo como “Qual é o IP?” Ou talvez “Para onde aponto o registro?” Qualquer que seja a formulação da pergunta, a resposta é sempre o IP do seu VPS.
OK, então o Certbot é outro script automatizado que faz muito trabalho para você e instala automaticamente os certificados necessários e modifica automaticamente a configuração do Apache 2 para que você não precise fazer isso.
Ele também executa um processo de verificação que exige que a porta 80 seja open para fazer uma solicitação aos servidores Open SSL para verificar sua propriedade do servidor e, durante o processo de instalação, desejaremos forçar o redirecionamento de SSL, portanto, também precisaremos acessar a porta 443.
Como já havíamos aberto a porta 80 antes, agora abriremos a porta 443 para conexões https seguras.
ufw allow 443
Você pode verificar quais portas estão abertas com:
ufw status
Para instalar os pacotes necessários para que o Certbot funcione, já que o Certbot não é encontrado nos repositórios padrão do Ubuntu, primeiro precisaremos adicionar o repositório do Certbot à lista do seu servidor:
sudo add-apt-repository ppa:certbot/certbot
Como adicionamos um novo repo, é importante garantir que todos os pacotes estejam atualizados:
apt update && apt upgrade -y
Agora podemos finalmente instalar o Cerbot para Apache 2:
sudo apt-get install python-certbot-apache
Agora vamos lançar a configuração interativa do Certbot:
certbot --apache -d mautic.yourdomain.com
Agora responda às perguntas e o certbot cuidará do resto … Assim que a configuração for concluída, você desejará habilitar a renovação automática do certificado
sudo certbot renew --dry-run
Você está pronto para ir, abra seu navegador e tente se conectar ao servidor Mautic com HTTPS.
Instale os cron jobs
O Mautic agora está funcionando e você pode navegar para todas as seções e explorar, mas se quiser segmentos e campanhas funcionais, você também precisará instalar os cron jobs do Mautic:
wget https://mauteam.org/wp-content/uploads/2019/10/cron-jobs.txt
crontab cron-jobs.txt
Feito! A maneira mais simples de instalar cron jobs, de todos os tempos …
Tem alguma dúvida? preso em uma das etapas? algo não está funcionando como planejado?
Confira também nosso artigo como instalar e configurar Cron Jobs no Mautic.
Não hesite em perguntar nos comentários aqui abaixo !!