Como instalar o SuiteCRM com Apache e Let's Encrypt SSL grátis no Debian 11
SuiteCTM é uma solução de código aberto de gerenciamento de relacionamento com o cliente escrita em PHP. É um aplicativo CRM completo e altamente extensível que roda em qualquer sistema operacional. Tornou-se popular quando o SugarCRM decidiu interromper o desenvolvimento de sua edição comunitária. É usado para criar estratégias, ações e decisões de negócios. É uma solução de CRM alternativa para outros CRM comerciais, como SugarCRM, Salesforce e Microsoft.
Neste post, mostraremos como instalar o SuiteCRM com Apache e Let's Encrypt SSL no Debian 11.
Pré-requisitos
- Um servidor rodando Debian 11.
- Um nome de domínio válido apontado com o IP do seu servidor.
- Uma senha root é configurada no servidor.
Instale Apache, MariaDB e PHP
SuiteCRM é um aplicativo baseado em PHP e usa MariaDB como backend de banco de dados. Portanto, você precisará instalar o servidor Apache, o servidor de banco de dados MariaDB, PHP e outras extensões PHP necessárias em seu servidor. Você pode instalar todos eles usando o seguinte comando:
apt-get install apache2 mariadb-server mariadb-client php php-common php-zip php-mysql php-gd php-curl php-imap php-mbstring php-xml php-json libapache2-mod-php unzip libpcre3 -y
Depois que todos os pacotes estiverem instalados, edite o arquivo php.ini e altere algumas configurações padrão:
nano /etc/php/7.4/apache2/php.ini
Altere as seguintes configurações:
memory_limit = 256M
post_max_size = 64M
upload_max_filesize = 64M
Salve e feche o arquivo e reinicie o serviço Apache para aplicar as alterações:
systemctl restart apache2
Crie um banco de dados MariaDB para SuiteCRM
Primeiro, você precisará proteger a instalação do MariaDB e definir uma senha de root. Você pode fazer isso executando o seguinte script:
mysql_secure_installation
Responda a todas as perguntas conforme mostrado abaixo:
Enter current password for root: Press
Set root password? [Y/n] y
Remove anonymous users? [Y/n] y
Disallow root login remotely? [Y/n] y
Remove test database and access to it? [Y/n] y
Reload privilege tables now? [Y/n] y
Quando terminar, faça login no shell MariaDB com o seguinte comando:
mysql -u root -p
Assim que estiver conectado ao MariaDB, crie um banco de dados e um usuário para SuiteCRM usando o seguinte comando:
MariadDB [(none)]> CREATE DATABASE suitecrm;
MariaDB [(none)]> CREATE USER 'suitecrm'@'localhost' IDENTIFIED BY 'password';
A seguir, conceda todos os privilégios ao banco de dados SuiteCRM com o seguinte comando:
MariaDB [(none)]> GRANT ALL PRIVILEGES ON suitecrm.* TO 'suitecrm'@'localhost';
Em seguida, libere os privilégios e saia do shell MariaDB com o seguinte comando:
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;
Depois de criar o banco de dados e o usuário MariaDB, você pode prosseguir para a próxima etapa.
Instale o SuiteCRM
Primeiro, baixe a versão mais recente do SuiteCRM usando o comando wget:
wget https://suitecrm.com/files/147/SuiteCRM-7.12/578/SuiteCRM-7.12.1.zip
Em seguida, descompacte o arquivo baixado com o seguinte comando:
unzip SuiteCRM-7.12.1.zip
Em seguida, mova o diretório extraído para o diretório raiz padrão do Apache:
mv SuiteCRM-7.12.1 /var/www/html/suitecrm
A seguir, altere a propriedade e a permissão do diretório SuiteCRM:
chown -R www-data:www-data /var/www/html/suitecrm
chmod -R 755 /var/www/html/suitecrm
Quando terminar, você pode prosseguir para a próxima etapa.
Configurar o Apache para SuiteCRM
Em seguida, você precisará configurar o Apache para hospedar o SuiteCRM na internet. Para fazer isso, crie um arquivo de configuração do host virtual Apache com o seguinte comando:
nano /etc/apache2/sites-available/suitecrm.conf
Adicione as seguintes linhas:
<VirtualHost *:80>
DocumentRoot /var/www/html/suitecrm
ServerName suitecrm.example.com
<Directory /var/www/html/suitecrm>
Options FollowSymLinks
AllowOverride All
</Directory>
ErrorLog /var/log/apache2/suitecrm-error.log
CustomLog /var/log/apache2/suitecrm-access.log common
</VirtualHost>
Salve e feche o arquivo e ative o arquivo de configuração do host virtual SuiteCRM com o seguinte comando:
a2ensite suitecrm.conf
Em seguida, recarregue o serviço Apache para aplicar as alterações de configuração:
systemctl reload apache2
Para verificar o status do serviço Apache, execute o seguinte comando:
systemctl status apache2
Você obterá a seguinte saída:
? apache2.service - The Apache HTTP Server
Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
Active: active (running) since Fri 2021-11-19 16:36:48 UTC; 4s ago
Docs: https://httpd.apache.org/docs/2.4/
Process: 16290 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS)
Main PID: 16296 (apache2)
Tasks: 6 (limit: 4679)
Memory: 15.5M
CPU: 99ms
CGroup: /system.slice/apache2.service
??16296 /usr/sbin/apache2 -k start
??16297 /usr/sbin/apache2 -k start
??16298 /usr/sbin/apache2 -k start
??16299 /usr/sbin/apache2 -k start
??16300 /usr/sbin/apache2 -k start
??16301 /usr/sbin/apache2 -k start
Nov 19 16:36:48 debian11 systemd[1]: Starting The Apache HTTP Server...
Depois de configurar o servidor web Apache, você pode acessar a interface web do SuiteCRM.
Acesse a interface da Web do SuiteCRM
Agora, abra seu navegador da web e digite o URL http://suitecrm.example.com para acessar a interface da web do SuiteCRM. Você deverá ver a seguinte tela:
Aceite o contrato de licença e clique no botão Avançar. Você deverá ver a seguinte página:
Certifique-se de que todas as verificações retornem OK e clique no botão Avançar para continuar. Você deverá ver a página de configuração do SuiteCRM:
Forneça as informações do seu banco de dados, detalhes do usuário administrador, especificação do servidor SMTP, detalhes da marca, configurações de segurança do site e clique no botão Avançar. Você deverá ver a seguinte página:
Clique no botão Avançar. Você deverá ver a página de login do SuiteCRM:
Forneça seu nome de usuário e senha de administrador e clique no botão ENTRAR. Você deverá ver o painel do SuiteCRM na seguinte tela:
SuiteCRM seguro com Let's Encrypt SSL
Após configurar o Apache, é recomendado proteger seu site com o certificado Let's Encrypt SSL. Para fazer isso, você precisará instalar o cliente Certbot em seu sistema. O Certbot é um cliente fácil de usar que busca um certificado da Let's Encrypt, uma autoridade de certificação aberta lançada pela EFF, Mozilla e outros, e o implanta em um servidor web. Usando o cliente Certbot Let's Encrypt você pode facilmente baixar, instalar e renovar o certificado SSL para o seu domínio.
Você pode instalar o Certbot com o seguinte comando:
apt-get install certbot python3-certbot-apache -y
Assim que o cliente Certbot tiver sido instalado com sucesso, execute o seguinte comando para instalar o Let's Encrypt SSL para o seu site:
certbot --apache -d suitecrm.example.com
Você será solicitado a fornecer seu e-mail válido e aceitar o termo de serviço conforme mostrado abaixo:
Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator apache, Installer apache
Enter email address (used for urgent renewal and security notices) (Enter 'c' to
cancel): [email
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Please read the Terms of Service at
https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. You must
agree in order to register with the ACME server at
https://acme-v02.api.letsencrypt.org/directory
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(A)gree/(C)ancel: A
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Would you be willing to share your email address with the Electronic Frontier
Foundation, a founding partner of the Let's Encrypt project and the non-profit
organization that develops Certbot? We'd like to send you email about our work
encrypting the web, EFF news, campaigns, and ways to support digital freedom.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(Y)es/(N)o: Y
Obtaining a new certificate
Performing the following challenges:
http-01 challenge for suitecrm.example.com
Enabled Apache rewrite module
Waiting for verification...
Cleaning up challenges
Created an SSL vhost at /etc/apache2/sites-available/suitecrm-le-ssl.conf
Enabled Apache socache_shmcb module
Enabled Apache ssl module
Deploying Certificate to VirtualHost /etc/apache2/sites-available/suitecrm-le-ssl.conf
Enabling available site: /etc/apache2/sites-available/suitecrm-le-ssl.conf
Em seguida, selecione se deseja ou não redirecionar o tráfego HTTP para HTTPS ou configure o Nginx para redirecionar todo o tráfego para acesso HTTPS seguro, conforme mostrado na saída a seguir:
Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1: No redirect - Make no further changes to the webserver configuration.
2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for
new sites, or if you're confident your site works on HTTPS. You can undo this
change by editing your web server's configuration.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Select the appropriate number [1-2] then [enter] (press 'c' to cancel): 2
Digite 2 e pressione Enter para iniciar o processo. Assim que a instalação for concluída, você deverá obter a seguinte saída:
Enabled Apache rewrite module
Redirecting vhost in /etc/apache2/sites-enabled/suitecrm.conf to ssl vhost in /etc/apache2/sites-available/suitecrm-le-ssl.conf
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Congratulations! You have successfully enabled https://suitecrm.example.com
You should test your configuration at:
https://www.ssllabs.com/ssltest/analyze.html?d=suitecrm.example.com
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
IMPORTANT NOTES:
- Congratulations! Your certificate and chain have been saved at:
/etc/letsencrypt/live/suitecrm.example.com/fullchain.pem
Your key file has been saved at:
/etc/letsencrypt/live/suitecrm.example.com/privkey.pem
Your cert will expire on 2022-02-21. To obtain a new or tweaked
version of this certificate in the future, simply run certbot again
with the "certonly" option. To non-interactively renew *all* of
your certificates, run "certbot renew"
- If you like Certbot, please consider supporting our work by:
Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate
Donating to EFF: https://eff.org/donate-le
Conclusão
Parabéns! você instalou com sucesso o SuiteCRM com Apache e Let's Encrypt SSL no Debian 11. Agora você pode explorar o SuiteCRM para obter mais recursos. Sinta-se à vontade para me perguntar se tiver alguma dúvida.