GNU/Linux >> Belajar Linux >  >> Ubuntu

Cara Menginstal SuiteCRM di Ubuntu 20.04 dengan Apache/Nginx

Tutorial ini akan menunjukkan cara memasang SuiteCRM di Ubuntu 20.04 dengan server web Apache atau Nginx. SuiteCRM adalah solusi perangkat lunak manajemen hubungan pelanggan open-source gratis yang memberikan pandangan 360 derajat dari pelanggan dan bisnis Anda. Ini adalah cabang dari SugarCRM yang populer perangkat lunak karena SugarCRM berhenti merilis edisi komunitas sumber terbuka pada tahun 2014.

Fitur SuiteCRM

  • Sistem Kalender/Pengingat
  • Penyimpanan dokumen
  • Pemasaran email
  • Integrasi obrolan internal
  • kualifikasi pemimpin
  • otomatisasi pemasaran
  • akses seluler
  • Kuota/Perkiraan
  • Segmentasi
  • Integrasi media sosial
  • manajemen tugas
  • pengelolaan wilayah
  • otomatisasi tenaga penjualan, kampanye pemasaran, dukungan pelanggan, kolaborasi, CRM Seluler, CRM Sosial, dan pelaporan.
  • Instal plugin untuk memperluas fungsionalitas SuiteCRM.
  • SuiteCRM dapat dengan mudah diintegrasikan dengan layanan relai SMTP pihak ketiga seperti Gmail, Mandrill, Sendgrid, Amazon SES. Anda juga dapat menggunakan server email Anda sendiri.
  • Dapat berintegrasi mulus dengan banyak aplikasi pihak ketiga populer seperti Mautic, Gmail, Facebook, Twitter, GoToMeeting, MailChimp, Zoom, Quickbooks, Avaya, DocuSign, dll.
  • Mendukung banyak akun dan peran pengguna.
  • Dan masih banyak lagi

Prasyarat menginstal SuiteCRM di Ubuntu 20.04 Server

SuiteCRM ditulis dalam PHP dan bergantung pada server database MySQL/MariaDB. Jadi, Anda perlu menyiapkan tumpukan LAMP atau tumpukan LEMP. Jika Anda lebih suka Apache server web, lalu siapkan tumpukan LAMP.

  • Cara Memasang LAMP Stack di Ubuntu 20.04

Jika Anda lebih suka Nginx server web, lalu siapkan tumpukan LEMP.

  • Cara Memasang LEMP Stack di Ubuntu 20.04

Anda juga memerlukan nama domain. Saya mendaftarkan nama domain saya dari NameCheap karena harganya rendah dan mereka memberikan perlindungan privasi whois gratis seumur hidup. Tanpa basa-basi lagi, mari kita instal SuiteCRM di server Ubuntu 20.04.

Langkah 1:Unduh SuiteCRM ke Server Ubuntu 20.04 Anda

Unduh versi stabil terbaru dengan menjalankan perintah berikut di server Anda.

wget https://suitecrm.com/files/162/SuiteCRM-7.11/525/SuiteCRM-7.11.18.zip

Instal unzip utilitas dan unzip ke /var/www/ direktori.

sudo apt install unzip

sudo mkdir -p /var/www/

sudo unzip SuiteCRM-7.11.18.zip -d /var/www/

Ini akan disimpan di bawah /var/www/SuiteCRM-7.11.18/ direktori. Kami mengganti namanya untuk membuatnya lebih sederhana.

sudo mv /var/www/SuiteCRM-7.11.18/ /var/www/suitecrm

Kemudian jalankan perintah berikut untuk mengatur izin yang benar.

cd /var/www/suitecrm

sudo chown -R www-data:www-data /var/www/suitecrm/

sudo chmod -R 755 .

sudo chmod -R 775 cache custom modules themes data upload

sudo chmod 775 config_override.php 2>/dev/null

Langkah 2:Buat Database dan Pengguna MariaDB untuk SuiteCRM

Masuk ke konsol MariaDB.

sudo mysql -u root

Selanjutnya, buat database baru untuk SuiteCRM menggunakan perintah berikut. Tutorial ini menamainya suitecrm , Anda dapat menggunakan nama apa pun yang Anda suka untuk database.

CREATE DATABASE suitecrm;

Perintah berikut akan membuat pengguna dan kata sandi basis data, dan pada saat yang sama memberikan semua izin basis data baru kepada pengguna baru sehingga nanti SuiteCRM dapat menulis ke basis data. Ganti teks merah dengan nama database, nama pengguna, dan kata sandi pilihan Anda.

GRANT ALL ON suitecrm.* TO 'suitecrm'@'localhost' IDENTIFIED BY 'password';

Hapus tabel hak istimewa dan keluar dari konsol MariaDB.

FLUSH PRIVILEGES;

EXIT;

Langkah 3:Instal Modul PHP yang Diperlukan dan Direkomendasikan.

Jalankan perintah berikut untuk menginstal modul PHP yang diperlukan atau direkomendasikan oleh SuiteCRM

sudo apt install php-imagick php7.4-fpm php7.4-mysql php7.4-common php7.4-gd php7.4-imap php7.4-json php7.4-curl php7.4-zip php7.4-xml php7.4-mbstring php7.4-bz2 php7.4-intl php7.4-gmp

Jika Anda menggunakan server web Apache, maka Anda perlu menonaktifkan modul PHP untuk Apache.

sudo a2dismod php7.4

Anda juga perlu menonaktifkan modul MPM prefork di Apache.

sudo a2dismod mpm_prefork

Sekarang Anda perlu menjalankan perintah berikut untuk mengaktifkan tiga modul agar dapat menggunakan PHP-FPM di Apache, terlepas dari apakah mod_php diinstal di server Anda.

sudo a2enmod mpm_event proxy_fcgi setenvif

Kemudian restart Apache.

sudo systemctl restart apache2

Langkah 4:Buat Apache Virtual Host atau File Konfigurasi Nginx untuk SuiteCRM

Apache

Jika Anda menggunakan server web Apache, buat host virtual untuk SuiteCRM.

sudo nano /etc/apache2/sites-available/suitecrm.conf

Masukkan teks berikut ke dalam file. Ganti suitecrm.example.com dengan nama domain asli Anda dan jangan lupa untuk membuat catatan DNS A untuk itu.

<VirtualHost *:80>
  ServerName suitecrm.example.com
  DocumentRoot /var/www/suitecrm/

  ErrorLog ${APACHE_LOG_DIR}/suitecrm_error.log
  CustomLog ${APACHE_LOG_DIR}/suitecrm_access.log combined

  <Directory />
    Options FollowSymLinks
    AllowOverride All
  </Directory>

  <Directory /var/www/suitecrm/>
    Options FollowSymLinks MultiViews
    AllowOverride All
    Order allow,deny
    allow from all
  </Directory>

Include /etc/apache2/conf-available/php7.4-fpm.conf

</VirtualHost>

Simpan dan tutup file. Kemudian aktifkan host virtual ini dengan:

sudo a2ensite suitecrm.conf

Muat ulang Apache agar perubahan diterapkan.

sudo systemctl reload apache2

Sekarang Anda seharusnya dapat melihat wizard penginstalan berbasis web SuiteCRM di http://suitecrm.example.com/install.php .

Nginx

Jika Anda menggunakan server web Nginx, buat host virtual untuk SuiteCRM.

sudo nano /etc/nginx/conf.d/suitecrm.conf

Masukkan teks berikut ke dalam file. Ganti suitecrm.example.com dengan nama domain asli Anda dan jangan lupa untuk membuat catatan DNS A untuk itu.

server {
   listen 80;
   listen [::]:80;
   server_name suitecrm.example.com;

   root /var/www/suitecrm;
   error_log /var/log/nginx/suitecrm.error;
   access_log /var/log/nginx/suitecrm.access;
   client_max_body_size 20M;

   index index.php index.html index.htm index.nginx-debian.html;

   location / {
     # try to serve file directly, fallback to app.php
     try_files $uri /index.php$is_args$args;
   }

   location ~ \.php$ {
     include snippets/fastcgi-php.conf;
     fastcgi_pass unix:/run/php/php7.4-fpm.sock;
     #Note: If you install SuiteCRM on iRedMail server, you should use the TCP socket instead. 
     #fastcgi_pass 127.0.0.1:9999
   }

   location ~* ^/index.php {
     # try_files $uri =404;
     fastcgi_split_path_info ^(.+\.php)(/.+)$;
     # NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini

     fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
     #Note: If you install SuiteCRM on iRedMail server, you should use the TCP socket instead.
     #fastcgi_pass 127.0.0.1:9999
     fastcgi_index index.php;
     fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
     include fastcgi_params;

     fastcgi_buffer_size 128k;
     fastcgi_buffers 256 16k;
     fastcgi_busy_buffers_size 256k;
     fastcgi_temp_file_write_size 256k;
   }

    # Don't log favicon
    location = /favicon.ico {
        log_not_found off;
        access_log off;
    }

    # Don't log robots
    location = /robots.txt  {
        access_log off;
        log_not_found off;
    }

    # Deny all attempts to access hidden files/folders such as .htaccess, .htpasswd, .DS_Store (Mac), etc...
    location ~ /\. {
        deny all;
        access_log off;
        log_not_found off;
    }

     # A long browser cache lifetime can speed up repeat visits to your page
  location ~* \.(jpg|jpeg|gif|png|webp|svg|woff|woff2|ttf|css|js|ico|xml)$ {
       access_log        off;
       log_not_found     off;
       expires           360d;
  }
}

Simpan dan tutup file. Kemudian uji konfigurasi Nginx.

sudo nginx -t

Jika pengujian berhasil, muat ulang Nginx agar perubahan diterapkan.

sudo systemctl reload nginx

Sekarang Anda seharusnya dapat melihat wizard penginstalan berbasis web SuiteCRM di http://suitecrm.example.com/install.php .

Langkah 5:Mengaktifkan HTTPS

Untuk mengenkripsi lalu lintas HTTP, kita dapat mengaktifkan HTTPS dengan memasang sertifikat TLS gratis yang dikeluarkan dari Let's Encrypt. Jalankan perintah berikut untuk menginstal klien Let's Encrypt (certbot) di server Ubuntu 20.04.

sudo apt install certbot

Jika Anda menggunakan Nginx , maka Anda juga perlu menginstal plugin Certbot Nginx.

sudo apt install python3-certbot-nginx

Selanjutnya, jalankan perintah berikut untuk mendapatkan dan menginstal sertifikat TLS.

sudo certbot --nginx --agree-tos --redirect --hsts --staple-ocsp --email [email protected] -d suitecrm.example.com

Jika Anda menggunakan Apache , instal plugin Certbot Apache.

sudo apt install python3-certbot-apache

Dan jalankan perintah ini untuk mendapatkan dan menginstal sertifikat TLS.

sudo certbot --apache --agree-tos --redirect --hsts --staple-ocsp --email [email protected] -d suitecrm.example.com

Dimana

  • --nginx :Gunakan plugin nginx.
  • --apache :Gunakan plugin Apache.
  • --agree-tos :Menyetujui persyaratan layanan.
  • --redirect :Memaksa HTTPS dengan pengalihan 301.
  • --hsts :Tambahkan header Strict-Transport-Security ke setiap respons HTTP. Memaksa browser untuk selalu menggunakan TLS untuk domain. Mempertahankan dari SSL/TLS Stripping.
  • --staple-ocsp :Mengaktifkan Stapel OCSP. Respons OCSP yang valid ditempelkan ke sertifikat yang ditawarkan server selama TLS.

Sertifikat sekarang harus diperoleh dan diinstal secara otomatis.

Langkah 6:Tingkatkan Batas Ukuran File Unggah

PHP menetapkan batas ukuran file unggahan. Ukuran file maksimum default untuk mengunggah adalah 2MB. Untuk menambah ukuran upload, edit file konfigurasi PHP.

sudo nano /etc/php/7.4/fpm/php.ini

Temukan baris berikut (baris 846).

upload_max_filesize = 2M

Ubah nilainya seperti di bawah ini. Disarankan untuk mengaturnya setidaknya 20MB.

upload_max_filesize = 20M

Simpan dan tutup file. Atau, Anda dapat menjalankan perintah berikut untuk mengubah nilai tanpa membuka file secara manual.

sudo sed -i 's/upload_max_filesize = 2M/upload_max_filesize = 20M/g' /etc/php/7.4/fpm/php.ini

Kemudian restart PHP-FPM.

sudo systemctl restart php7.4-fpm

Mulai ulang juga Apache/Nginx.

sudo systemctl restart apache2

atau

sudo systemctl restart nginx

Langkah 7:Selesaikan Instalasi SuiteCRM di Browser Web

Sekarang di bilah alamat browser Anda, ketik nama domain Anda untuk SuiteCRM untuk mengakses wizard penginstalan web.

https://suitecrm.your-domain.com/install.php

Pertama, terima lisensi GNU AGPL.

Kemudian akan memeriksa lingkungan server Anda. Jika semuanya baik-baik saja, klik Berikutnya .

Kemudian masukkan detail database MariaDB/MySQL yang dibuat pada langkah 2. Anda juga perlu mengatur kata sandi untuk pengguna admin, yang akan digunakan untuk masuk ke antarmuka web. Ubah URL menjadi https://suitecrm.your-domain.com dan masukkan alamat email Anda.

Di more options bagian, Anda dapat mengonfigurasi pengaturan email, seperti mengatur nama Dari dan alamat Dari.

Jika SuiteCRM diinstal pada server email Anda, maka Anda dapat menggunakan 127.0.0.1 sebagai server SMTP dan port 25 sebagai port SMTP, sehingga SuiteCRM akan menggunakan server email Anda sendiri untuk mengirim email.

Jika SuiteCRM dan server email Anda berjalan di host yang berbeda dan Anda ingin SuiteCRM mengirim email melalui server email Anda, maka Anda harus memilih Other sebagai transportasi surat. Kemudian

  • Masukkan nama host server email Anda
  • Pilih port 587
  • Pilih enkripsi TLS.
  • Masukkan kredensial login alamat email di server email Anda.

Klik tombol Berikutnya dan SuiteCRM akan diinstal.

Langkah 8:Aktifkan HTTP2 untuk Meningkatkan Kinerja

Anda dapat mengaktifkan protokol HTTP2 untuk meningkatkan kinerja pemuatan halaman untuk SuiteCRM.

Apache

Pertama, Anda perlu mengaktifkan modul HTTP2.

sudo a2enmod http2

Kemudian buka file host virtual SSL.

sudo nano /etc/apache2/sites-enabled/suitecrm-le-ssl.conf

Letakkan direktif berikut setelah pembukaan <VirtualHost *:443> tag.

Protocols h2 http/1.1

Simpan dan tutup file. Kemudian restart Apache agar perubahan diterapkan.

sudo systemctl restart apache2

Nginx

Untuk mengaktifkan protokol HTTP2 di virtual host Nginx, temukan baris berikut.

listen 443 ssl; # managed by Certbot

Cukup tambahkan http2 setelah ssl .

listen 443 ssl http2; # managed by Certbot

Simpan dan tutup file. Kemudian muat ulang Nginx.

sudo systemctl reload nginx

Langkah 9:Tambahkan Pekerjaan Cron

SuiteCRM bergantung pada pekerjaan Cron untuk bekerja dengan baik. Edit file crontab pengguna www-data. (Anda tidak boleh menambahkan perintah SuiteCRM di file crontab pengguna root.)

sudo -u www-data crontab -e

Tambahkan baris berikut di akhir file ini.

######  SuiteCRM Cron Job #######
* * * * *  php7.4 -f /var/www/suitecrm/cron.php > /dev/null 2>&1

Simpan dan tutup file.

Cara Mengintegrasikan dengan Mautic

Mautic adalah alternatif sumber terbuka gratis untuk penyedia layanan email komersial seperti MailChimp. Mautic memiliki plugin SugarCRM, dan karena SuiteCRM didasarkan pada SugarCRM 6.x, kita dapat menggunakan plugin SugarCRM untuk berintegrasi dengan Mautic.

Pertama, kita perlu membuka antarmuka web SuiteCRM, klik panah tarik-turun di sudut kanan atas untuk mengakses modul administrasi.

Kemudian gulir ke bawah dan pilih OAuth Keys.

Buat kunci OAuth baru. Beri nama kunci seperti mautic . Masukkan sesuatu seperti matuic-suitecrm di Consumer key bidang. Kemudian masukkan beberapa karakter acak di Consumer Secret bidang. Simpan perubahan Anda.

Selanjutnya, buka Settings Mautic -> Plugins -> SugarCRM . Masukkan URL SuiteCRM Anda, kunci klien (kunci konsumen), dan rahasia klien (rahasia konsumen). Kemudian masukkan nama pengguna dan kata sandi admin SuiteCRM. Pilih versi 6.x/komunitas. Klik tombol Otorisasi Aplikasi.

Setelah diotorisasi, Anda dapat mengubah status publikasi dari No ke Yes . Jika Anda mengalami kesalahan saat mencoba mengotorisasi aplikasi, pastikan data DNS untuk subdomain Mautic dan SuiteCRM Anda disebarkan ke Internet.


Ubuntu
  1. Cara Menginstal Apache di Ubuntu 18.04

  2. Cara menginstal Apache di Ubuntu 20.04

  3. Cara menginstal Elgg dengan Nginx di Ubuntu 14.04

  1. Cara Menginstal Nginx di Ubuntu 16.04

  2. Cara Menginstal Joomla dengan Apache di Ubuntu 18.04

  3. Cara Menginstal SuiteCRM dengan Nginx di Ubuntu 16.04

  1. Cara menginstal osTicket dengan Nginx di Ubuntu 18.04 LTS

  2. Cara Menginstal WordPress 5.x Dengan Nginx Di Ubuntu 18.04 / Ubuntu 16.04

  3. Cara Menginstal NextCloud di Ubuntu 20.04 dengan Apache