SuiteCRM là phần mềm CRM (Quản lý quan hệ khách hàng) miễn phí và mã nguồn mở được viết bằng PHP. Phần mềm này giúp bạn tổ chức và quản lý các bộ phận tiếp thị, bán hàng và dịch vụ khách hàng của doanh nghiệp. SuiteCRM phù hợp với hầu hết mọi ngành, chẳng hạn như sản xuất, khu vực công, công nghệ, tài chính, giáo dục, v.v.
Trong hướng dẫn này, chúng tôi sẽ hướng dẫn bạn từng bước cài đặt SuiteCRM trên máy chủ Debian 12. Bạn sẽ cài đặt và chạy SuiteCRM với LAMP Stack (Apache2, MariaDB và PHP) trên máy Debian của mình. Bạn cũng sẽ bảo mật SuiteCRM bằng chứng chỉ SSL/TLS từ Letsencrypt.
Trước tiên, hãy cập nhật chỉ mục gói Debian của bạn thông qua lệnh apt update bên dưới.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22204%22%3E%3C/svg%3E
Bây giờ hãy cài đặt các gói LAMP Stack (Apache2, MariaDB và PHP) với một số phần mở rộng PHP bằng lệnh sau.
Nhập y để tiếp tục cài đặt.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22162%22%3E%3C/svg%3E
Tiếp theo, chạy lệnh systemctl sau để xác minh dịch vụ apache2. Điều này sẽ đảm bảo rằng dịch vụ apache2 được bật và đang chạy.
Đầu ra enabled xác nhận rằng apache2 đã được bật và đầu ra active (running) xác nhận rằng apache2 đang chạy.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22256%22%3E%3C/svg%3E
Xác minh dịch vụ mariadb bằng lệnh sau.
Tương tự như đầu ra dịch vụ apache2, bạn sẽ thấy dịch vụ mariadb được bật và đang chạy.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22283%22%3E%3C/svg%3E
Cuối cùng, hãy xác minh phiên bản PHP và một số tiện ích mở rộng đã bật bằng cách thực hiện lệnh sau lệnh.
Kết quả đầu ra sau đây cho thấy PHP 8.2 được cài đặt với một số mô-đun được kích hoạt như curl, exif, fileinfo và gd.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22617%22%20height=%22500%22%3E%3C/svg%3E
Thực hiện lệnh mariadb-secure-installation bên dưới để bảo mật MariaDB server của bạn.
Trong quá trình này, hãy nhập Y để xác nhận cấu hình hoặc n để xác nhận Không và từ chối các thay đổi.
Đăng nhập vào máy chủ MariaDB thông qua lệnh máy khách mariadb bên dưới. Nhập mật khẩu gốc MariaDB của bạn khi được nhắc.
Tiếp theo, chạy các truy vấn sau để tạo cơ sở dữ liệu mới suitecrmdb và người dùng suitecrm với mật khẩu password. Hãy chắc chắn thay đổi mật khẩu bằng mật khẩu của riêng bạn.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22298%22%3E%3C/svg%3E
Bây giờ hãy chạy truy vấn sau để xác minh người dùng suitecrm.
Trong kết quả sau, bạn sẽ thấy người dùng suitecrm có quyền truy cập vào cơ sở dữ liệu suitecrmdb.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22229%22%3E%3C/svg%3E
Gõ quit để thoát khỏi MariaDB server.
Mở cấu hình PHP mặc định /etc/php/8.2/apache2/php.ini và /etc/php/8.2/cli/php.ini bằng lệnh nano editor sau.
Thay đổi các tham số mặc định của một số cấu hình bằng các dòng sau. Hãy chắc chắn điều chỉnh date.timezone theo múi giờ máy chủ của bạn và memory_limit theo bộ nhớ máy chủ.
Thay đổi tham số error_reporting mặc định như sau:
Bỏ chú thích Tham số session.save_path để cấu hình đường dẫn phiên mặc định đến /var/lib/php/sessions.
Bây giờ hãy bật tiện ích mở rộng OPCache và điều chỉnh một số cài đặt như sau:
Lưu và đóng tệp khi bạn hoàn tất.
Bây giờ chạy lệnh systemctl sau để khởi động lại dịch vụ apache2 và áp dụng những thay đổi bạn đã thực hiện.
Tạo một thư mục mới /var/www/suitecrm sẽ được sử dụng làm mục tiêu cài đặt cho SuiteCRM.
Di chuyển đến thư mục /var/www/suitecrm và tải xuống mã nguồn SuiteCRM bằng lệnh wget bên dưới. Hãy nhớ kiểm tra Trang tải xuống SuiteCRM để tải xuống phiên bản mới nhất của mã nguồn. Hiện tại, SuiteCRM 8.4 là phiên bản mới nhất.
Sau khi tải xuống, hãy giải nén tệp suitecrm-8-4-0.zip bằng lệnh giải nén bên dưới.
Sau đó, chạy lệnh sau để thiết lập quyền và quyền sở hữu phù hợp cho nguồn SuiteCRM mã.
Cuối cùng, chạy tệp nhị phân /var/www/suitecrm/bin/console để cài đặt SuiteCRM qua dòng lệnh. Hãy đảm bảo thay đổi thông tin chi tiết về tên cơ sở dữ liệu, người dùng, máy chủ, tên miền đích, người dùng quản trị và mật khẩu sẽ được sử dụng để cài đặt SuiteCRM của bạn.
Sau khi quá trình cài đặt hoàn tất, đầu ra sau sẽ hiển thị trên thiết bị đầu cuối của bạn:
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22338%22%3E%3C/svg%3E
Chạy lệnh a2enmod bên dưới để kích hoạt các mô-đun Apache2 được SuiteCRM yêu cầu.
Sau đó, tạo cấu hình máy chủ ảo Apache2 mới /etc/apache2/sites-available/suitecrm.conf bằng trình chỉnh sửa nano sau lệnh.
Chèn cấu hình sau và đảm bảo thay đổi tùy chọn ServerName bằng tên miền của bạn.
Lưu và đóng tệp khi bạn hoàn tất.
Bây giờ hãy chạy lệnh sau để kích hoạt tệp máy chủ ảo suitecrm.conf và xác minh Apache2 của bạn cấu hình.
Nếu bạn có cú pháp đúng, bạn sẽ nhận được đầu ra Cú pháp OK.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22720%22%20height=%22311%22%3E%3C/svg%3E
Tiếp theo, chạy lệnh systemctl bên dưới để khởi động lại dịch vụ apache2 và áp dụng thay đổi.
Cuối cùng, hãy mở trình duyệt web và truy cập tên miền cài đặt SuiteCRM của bạn, chẳng hạn như http://suitecrm.howtoforge.local/. Nếu mọi thứ diễn ra tốt đẹp, bạn sẽ thấy trang đăng nhập của SuiteCRM.
Cài đặt Certbot và plugin Certbot Apache bằng lệnh apt install sau. Nhập y để tiếp tục cài đặt.
Bây giờ hãy thực thi lệnh certbot bên dưới để tạo chứng chỉ SSL/TLS. Hãy đảm bảo thay đổi tên miền và địa chỉ email trong lệnh sau.
Sau khi quá trình hoàn tất, chứng chỉ SSL của bạn sẽ được tạo tại thư mục /etc/letsencrypt/live/suitecrm.howtoforge.local. Ngoài ra, tệp máy chủ ảo SuiteCRM suitecrm.conf sẽ tự động được định cấu hình bằng HTTPS.
Quay lại trình duyệt web của bạn và truy cập tên miền SuiteCRM của bạn, bạn sẽ được chuyển hướng đến trang đăng nhập SuiteCRM để kết nối HTTPS an toàn. Nhập tên người dùng và mật khẩu quản trị viên, sau đó nhấp vào Đăng nhập.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22332%22%3E%3C/svg%3E
Nếu mọi thứ diễn ra tốt đẹp, bạn sẽ thấy bảng điều khiển quản trị SuiteCRM như sau:
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22455%22%3E%3C/svg%3E
Trong hướng dẫn này, chúng tôi sẽ hướng dẫn bạn từng bước cài đặt SuiteCRM trên máy chủ Debian 12. Bạn sẽ cài đặt và chạy SuiteCRM với LAMP Stack (Apache2, MariaDB và PHP) trên máy Debian của mình. Bạn cũng sẽ bảo mật SuiteCRM bằng chứng chỉ SSL/TLS từ Letsencrypt.
Điều kiện tiên quyết
Cần có các yêu cầu sau để tiếp tục với hướng dẫn này:- Máy chủ Debian 12.
Người dùng không phải root có quyền quản trị viên.
Tên miền trỏ đến địa chỉ IP của máy chủ.
Cài đặt Dependencies
SuiteCRM là phần mềm CRM được viết bằng PHP với MySQL/MariaDB làm cơ sở dữ liệu. Trong hướng dẫn này, bạn sẽ chạy SuiteCRM với LAMP Stack (Apache2, MariaDB và PHP) và bây giờ bạn sẽ cài đặt các gói LAMP Stack với các tiện ích mở rộng PHP bổ sung.Trước tiên, hãy cập nhật chỉ mục gói Debian của bạn thông qua lệnh apt update bên dưới.
Mã:
sudo apt update
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22204%22%3E%3C/svg%3E
Bây giờ hãy cài đặt các gói LAMP Stack (Apache2, MariaDB và PHP) với một số phần mở rộng PHP bằng lệnh sau.
Mã:
sudo apt install apache2 mariadb-server php php-cli php-mysql php-bcmath php-xml php-zip php-curl php-mbstring php-gd php-tidy php-intl php-cli php-opcache php-soap php-imap php-ldap unzip
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22162%22%3E%3C/svg%3E
Tiếp theo, chạy lệnh systemctl sau để xác minh dịch vụ apache2. Điều này sẽ đảm bảo rằng dịch vụ apache2 được bật và đang chạy.
Mã:
sudo systemctl is-enabled apache2
sudo systemctl status apache2
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22256%22%3E%3C/svg%3E
Xác minh dịch vụ mariadb bằng lệnh sau.
Mã:
sudo systemctl is-enabled mariadb
sudo systemctl status mariadb
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22283%22%3E%3C/svg%3E
Cuối cùng, hãy xác minh phiên bản PHP và một số tiện ích mở rộng đã bật bằng cách thực hiện lệnh sau lệnh.
Mã:
php -v
php -m
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22617%22%20height=%22500%22%3E%3C/svg%3E
Cấu hình MariaDB Server
Sau khi cài đặt các phụ thuộc, bạn sẽ bảo mật cài đặt MariaDB server của mình và tạo một cơ sở dữ liệu và người dùng mới sẽ được sử dụng cho SuiteCRM.Thực hiện lệnh mariadb-secure-installation bên dưới để bảo mật MariaDB server của bạn.
Mã:
sudo mariadb-secure-installation
- Chuyển sang xác thực unix_socket?. Nhập n và nhấn ENTER. Người dùng gốc MariaDB mặc định đã được bảo vệ. Tùy chọn, bạn cũng có thể bật nó bằng cách nhập y cho yes.
- Thay đổi mật khẩu gốc?. Nhập y để xác nhận và thiết lập mật khẩu gốc MariaDB mới của bạn.
- Xóa người dùng ẩn danh?. Nhập y để xác nhận.
- Không cho phép đăng nhập gốc từ xa? Nhập y để xác nhận. Chỉ cho phép kết nối cục bộ nếu bạn đang sử dụng người dùng gốc MariaDB.
- Xóa cơ sở dữ liệu thử nghiệm và quyền truy cập vào cơ sở dữ liệu đó?. Nhập y để xác nhận và xóa cơ sở dữ liệu mặc định 'test'.
- Cuối cùng, nhập y một lần nữa để tải lại tất cả các đặc quyền bảng trên máy chủ MariaDB của bạn và áp dụng các thay đổi mới.
Đăng nhập vào máy chủ MariaDB thông qua lệnh máy khách mariadb bên dưới. Nhập mật khẩu gốc MariaDB của bạn khi được nhắc.
Mã:
sudo mariadb -u root -p
Mã:
CREATE DATABASE suitecrmdb;
CREATE USER 'suitecrm'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON suitecrmdb.* TO 'suitecrm'@'localhost';
FLUSH PRIVILEGES;
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22298%22%3E%3C/svg%3E
Bây giờ hãy chạy truy vấn sau để xác minh người dùng suitecrm.
Mã:
SHOW GRANTS FOR 'suitecrm'@'localhost';
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22229%22%3E%3C/svg%3E
Gõ quit để thoát khỏi MariaDB server.
Cấu hình PHP
Bây giờ máy chủ MariaDB đã được cấu hình, bước tiếp theo là cấu hình cài đặt PHP của bạn. SuiteCRM yêu cầu một số thay đổi về cấu hình PHP, chẳng hạn như error_reporting tùy chỉnh, kích hoạt mô-đun OPCache và upload_max_filesize và post_max_size tùy chỉnh.Mở cấu hình PHP mặc định /etc/php/8.2/apache2/php.ini và /etc/php/8.2/cli/php.ini bằng lệnh nano editor sau.
Mã:
sudo nano /etc/php/8.2/apache2/php.ini
sudo nano /etc/php/8.2/cli/php.ini
Mã:
date.timezone = Europe/Amsterdam
max_execution_time = 60
memory_limit = 256M
upload_max_filesize = 25M
post_max_size = 25M
Mã:
error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT & ~E_NOTICE & ~E_WARNING
Mã:
session.save_path = "/var/lib/php/sessions"
Mã:
opcache.enable=1
; The OPcache shared memory storage size.
opcache.memory_consumption=256
; The maximum number of keys (scripts) in the OPcache hash table.
; Only numbers between 200 and 100000 are allowed.
opcache.max_accelerated_files=20000
; When disabled, you must reset the OPcache manually or restart the
; webserver for changes to the filesystem to take effect.
opcache.validate_timestamps=0
Bây giờ chạy lệnh systemctl sau để khởi động lại dịch vụ apache2 và áp dụng những thay đổi bạn đã thực hiện.
Mã:
sudo systemctl restart apache2
Tải xuống và cài đặt SuiteCRM
Lúc này, LAMP Stack đã được định cấu hình cho SuiteCRM. Bây giờ bạn sẽ tải xuống mã nguồn SuiteCRM và cài đặt thông qua dòng lệnh.Tạo một thư mục mới /var/www/suitecrm sẽ được sử dụng làm mục tiêu cài đặt cho SuiteCRM.
Mã:
mkdir -p /var/www/suitecrm
Mã:
cd /var/www/suitecrm
wget https://suitecrm.com/download/142/suite84/562972/suitecrm-8-4-0.zip
Mã:
unzip suitecrm-8-4-0.zip
Mã:
find . -type d -not -perm 2755 -exec chmod 2755 {} \;
find . -type f -not -perm 0644 -exec chmod 0644 {} \;
find . ! -user www-data -exec chown www-data:www-data {} \;
chmod +x bin/console
Mã:
sudo -u www-data ./bin/console suitecrm:app:install -u "alice" -p "password" -U "suitecrm" -P "password" -H "127.0.0.1" -N "suitecrmdb" -S "http://suitecrm.howtoforge.local/"
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22338%22%3E%3C/svg%3E
Cấu hình Máy chủ ảo Apache2 cho Suite
Trong bước tiếp theo, bạn sẽ tạo cấu hình máy chủ ảo Apache2 mới sẽ được sử dụng để chạy SuiteCRM. Trước khi tiếp tục, hãy đảm bảo rằng bạn có tên miền được trỏ đến địa chỉ IP máy chủ của mình.Chạy lệnh a2enmod bên dưới để kích hoạt các mô-đun Apache2 được SuiteCRM yêu cầu.
Mã:
sudo a2enmod rewrite ssl header
Mã:
sudo nano /etc/apache2/sites-available/suitecrm.conf
Mã:
DocumentRoot /var/www/suitecrm/public
ServerName suitecrm.howtoforge.local
Options FollowSymLinks
AllowOverride All
ErrorLog /var/log/apache2/suitecrm-error.log
CustomLog /var/log/apache2/suitecrm-access.log common
Bây giờ hãy chạy lệnh sau để kích hoạt tệp máy chủ ảo suitecrm.conf và xác minh Apache2 của bạn cấu hình.
Mã:
sudo a2ensite suitecrm.conf
sudo apachectl configtest
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22720%22%20height=%22311%22%3E%3C/svg%3E
Tiếp theo, chạy lệnh systemctl bên dưới để khởi động lại dịch vụ apache2 và áp dụng thay đổi.
Mã:
sudo systemctl restart apache2
Bảo mật SuiteCRM bằng SSL/TLS từ Letsencrypt
Sau khi cấu hình mọi thứ, giờ đây bạn sẽ bảo mật SuiteCRM bằng chứng chỉ SSL/TLS từ Letsencrypt.Cài đặt Certbot và plugin Certbot Apache bằng lệnh apt install sau. Nhập y để tiếp tục cài đặt.
Mã:
sudo apt install certbot python3-certbot-apache
Mã:
sudo certbot --apache --agree-tos --no-eff-email --redirect --hsts --staple-ocsp --email [emailprotected] -d suitecrm.howtoforge.local
Quay lại trình duyệt web của bạn và truy cập tên miền SuiteCRM của bạn, bạn sẽ được chuyển hướng đến trang đăng nhập SuiteCRM để kết nối HTTPS an toàn. Nhập tên người dùng và mật khẩu quản trị viên, sau đó nhấp vào Đăng nhập.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22332%22%3E%3C/svg%3E
Nếu mọi thứ diễn ra tốt đẹp, bạn sẽ thấy bảng điều khiển quản trị SuiteCRM như sau:
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22455%22%3E%3C/svg%3E