Pesquisa de site

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.

Artigos relacionados: