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.