Cách cài đặt Matomo (Piwik) Web Analytics trên CentOS 8

theanh

Administrator
Nhân viên
Matomo trước đây được gọi là Piwik là một ứng dụng phân tích nguồn mở cho hệ điều hành Linux. Nó rất giống với Google Analytics giúp bạn theo dõi và hiển thị vị trí truy cập của người dùng. Nó được phát triển bởi một nhóm các nhà phát triển quốc tế chạy trên máy chủ web PHP/MySQL. Nó cung cấp rất nhiều tính năng, một số tính năng được liệt kê dưới đây:
  • Tính linh hoạt, Độ tin cậy & Bảo mật
  • Tự lưu trữ, Đơn giản và dễ sử dụng
  • Quyền sở hữu dữ liệu 100%
  • Tuân thủ GDPR
  • Phân tích web và thiết bị di động
Trong hướng dẫn này, chúng tôi sẽ chỉ cho bạn cách cài đặt và thiết lập ứng dụng phân tích Piwik trên máy chủ CentOS 8.

Điều kiện tiên quyết​

  • Một máy chủ chạy CentOS 8.
  • Một tên miền hợp lệ được trỏ bằng IP máy chủ của bạn.
  • Một mật khẩu gốc được cấu hình trên máy chủ của bạn.

Cài đặt Máy chủ LAMP​

Piwik chạy trên máy chủ LAMP nên bạn sẽ cần cài đặt Apache, MariaDB, PHP và các tiện ích mở rộng PHP khác vào hệ thống của mình. Bạn có thể cài đặt tất cả chúng bằng lệnh sau:
Mã:
dnf install httpd mariadb-server php php-mysqlnd php-fpm unzip wget php-json php-dom php-gd php-mbstring -y
Sau khi tất cả các gói được cài đặt, hãy chỉnh sửa tệp php.ini và đặt một số giá trị mong muốn:
Mã:
nano /etc/php.ini
Thay đổi các giá trị sau:
Mã:
upload_max_filesize = 10Mpost_max_size = 10Mmax_execution_time = 300max_input_time = 300memory_limit = 256M
Lưu và đóng tệp, sau đó khởi động dịch vụ Apache và MariaDB và cho phép chúng khởi động khi khởi động lại hệ thống:
Mã:
systemctl start mariadb
systemctl start httpd
systemctl enable mariadb
systemctl enable httpd

Tạo cơ sở dữ liệu cho Piwik​

Tiếp theo, bạn sẽ cần tạo cơ sở dữ liệu và người dùng cho Piwik. Trước tiên, hãy đăng nhập vào MariaDB bằng lệnh sau:
Mã:
mysql
Sau khi đăng nhập, hãy tạo cơ sở dữ liệu và người dùng bằng lệnh sau:
Mã:
mysql> CREATE DATABASE matomo;
mysql> CREATE USER `matomo`@`localhost` IDENTIFIED BY 'password';
Tiếp theo, cấp tất cả các quyền cho cơ sở dữ liệu bằng lệnh sau:
Mã:
mysql> GRANT ALL ON matomo.* TO `matomo`@`localhost`;
Tiếp theo, xóa các quyền và thoát khỏi MariaDB bằng lệnh sau:
Mã:
mysql> FLUSH PRIVILEGES;
mysql> EXIT;

Cài đặt Piwik​

Tiếp theo, bạn sẽ cần tải xuống phiên bản Piwik mới nhất từ trang web chính thức của họ. Trước tiên, hãy thay đổi thư mục thành gốc web Apache bằng lệnh sau:
Mã:
cd /var/www/html
Tiếp theo, tải xuống Piwik bằng lệnh sau:
Mã:
wget https://builds.matomo.org/matomo-latest.zip
Sau khi tải xuống hoàn tất, hãy giải nén tệp đã tải xuống bằng lệnh sau:
Mã:
unzip matomo-latest.zip
Tiếp theo, đặt quyền và quyền sở hữu thích hợp cho gốc web bằng lệnh sau:
Mã:
chown -R apache:apache /var/www/html/matomo
chmod -R 775 /var/www/html/matomo
Sau khi hoàn tất, bạn có thể tiến hành bước tiếp theo.

Cấu hình SELinux và Tường lửa​

Tiếp theo, bạn sẽ cần để cho phép cổng 80 và 443 đi qua tường lửa. Bạn có thể cho phép chúng bằng lệnh sau:
Mã:
firewall-cmd --permanent --zone=public --add-service=http
firewall-cmd --permanent --zone=public --add-service=https
Tiếp theo, tải lại firewalld để áp dụng các thay đổi:
Mã:
firewall-cmd --reload
Tiếp theo, bạn cũng sẽ cần thiết lập SELinux cho Piwik. Bạn có thể thiết lập bằng lệnh sau:
Mã:
chcon -R -t httpd_sys_rw_content_t /var/www/html/matomo/
setsebool httpd_can_network_connect on -P
Sau khi hoàn tất, bạn có thể tiến hành bước tiếp theo.

Cấu hình Apache cho Piwik​

Tiếp theo, bạn sẽ cần cấu hình máy chủ web Apache để lưu trữ trang web Piwik. Bạn có thể thực hiện bằng cách tạo tệp cấu hình máy chủ ảo Apache mới:
Mã:
nano /etc/httpd/conf.d/piwik.conf
Thêm các dòng sau:
Mã:
ServerAdmin [emailprotected]DocumentRoot "/var/www/html/matomo"ServerName piwik.example.comOptions MultiViews FollowSymlinksAllowOverride AllOrder allow,denyAllow from allTransferLog /var/log/httpd/matomo_access.logErrorLog /var/log/httpd/matomo_error.log
Lưu và đóng tệp khi bạn hoàn tất. Sau đó, khởi động lại máy chủ web Apache để áp dụng các thay đổi:
Mã:
systemctl restart httpd
Bây giờ bạn có thể kiểm tra trạng thái của Apache bằng lệnh sau:
Mã:
systemctl status httpd
Bạn sẽ nhận được đầu ra sau:
Mã:
? httpd.service - Máy chủ HTTP Apache Đã tải: đã tải (/usr/lib/systemd/system/httpd.service; disabled; vendor preset: disabled) Drop-In: /usr/lib/systemd/system/httpd.service.d ??php-fpm.conf Đang hoạt động: đang hoạt động (đang chạy) kể từ Chủ Nhật 2020-12-27 05:38:29 EST; 5 giây trước Tài liệu: man:httpd.service(8) PID chính: 4228 (httpd) Trạng thái: "Đã bắt đầu, đang lắng nghe trên: cổng 80" Nhiệm vụ: 213 (giới hạn: 12523) Bộ nhớ: 36,8M CGroup: /system.slice/httpd.service ??4228 /usr/sbin/httpd -DFOREGROUND ??4229 /usr/sbin/httpd -DFOREGROUND ??4230 /usr/sbin/httpd -DFOREGROUND ??4231 /usr/sbin/httpd -DFOREGROUND ??4232 /usr/sbin/httpd -DFOREGROUND27 tháng 12 05:38:28 centos8 systemd[1]: Đã dừng Máy chủ HTTP Apache.27 tháng 12 05:38:28 centos8 systemd[1]: Khởi động Máy chủ Apache HTTP...
Sau khi hoàn tất, bạn có thể tiến hành bước tiếp theo.

Truy cập Giao diện Web Piwik​

Bây giờ, hãy mở trình duyệt web của bạn và truy cập giao diện web Piwik bằng URL . Bạn sẽ được chuyển hướng đến trang sau:





Nhấp vào TIẾP THEO, bạn sẽ thấy trang kiểm tra hệ thống:





Nhấp vào TIẾP THEO, bạn sẽ thấy trang thiết lập cơ sở dữ liệu:



Cung cấp tên người dùng cơ sở dữ liệu, tên cơ sở dữ liệu, mật khẩu và nhấp vào TIẾP THEO, bạn sẽ thấy trang sau:



Nhấp vào TIẾP THEO, bạn sẽ thấy trang tạo người dùng quản trị:



Cung cấp tên người dùng quản trị, mật khẩu, email của bạn sau đó nhấp vào TIẾP THEO. Bạn sẽ thấy trang thiết lập trang web:





Cung cấp thông tin chi tiết về trang web của bạn và nhấp vào TIẾP THEO. Bạn sẽ thấy mã theo dõi của mình ở trang sau:







Nhấp vào TIẾP THEO. Sau khi quá trình cài đặt hoàn tất. Bạn sẽ thấy trang sau:



Nhấp vào TIẾP TỤC ĐẾN MATOMO. Bạn sẽ thấy trang đăng nhập MATOMO:



Cung cấp tên người dùng quản trị, mật khẩu và nhấp vào ĐĂNG NHẬP. Bạn sẽ thấy bảng điều khiển MATOMO ở trang sau:


Bảo mật Matomo với Let's Encrypt SSL​

Tiếp theo, bạn sẽ cần cài đặt tiện ích Certbot trong hệ thống của mình để tải xuống và cài đặt Let's Encrypt SSL cho trang web Piwik của bạn.

Bạn có thể cài đặt ứng dụng khách Certbot bằng lệnh sau:
Mã:
wget https://dl.eff.org/certbot-auto
mv certbot-auto /usr/local/bin/certbot-auto
chown root /usr/local/bin/certbot-auto
chmod 0755 /usr/local/bin/certbot-auto
Tiếp theo, lấy và cài đặt chứng chỉ SSL cho trang web Mantis của bạn bằng lệnh sau:
Mã:
certbot-auto --apache -d piwik.example.com
Mã:
Lưu nhật ký gỡ lỗi vào /var/log/letsencrypt/letsencrypt.logCác plugin đã chọn: Authenticator apache, Installer apacheNhập địa chỉ email (dùng để gia hạn khẩn cấp và thông báo bảo mật) (Nhập 'c' đểhủy): [emailprotected]- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Vui lòng đọc Điều khoản dịch vụ tạihttps://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. Bạn phảiđồng ý để đăng ký với máy chủ ACME tạihttps://acme-v02.api.letsencrypt.org/directory- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -(A)gree/(C)ancel: A- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Bạn có sẵn lòng chia sẻ địa chỉ email của mình với Electronic Frontier Foundation, đối tác sáng lập của dự án Let's Encrypt và tổ chức phi lợi nhuận phát triển Certbot không? Chúng tôi muốn gửi cho bạn email về công việc của chúng tôimã hóa web, tin tức EFF, các chiến dịch và các cách hỗ trợ tự do kỹ thuật số.- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -(C)ó/(K)o: CNhận chứng chỉ mớiThực hiện các thử thách sau:Thử thách http-01 cho piwik.example.comĐang chờ xác minh...Đang dọn dẹp các thử tháchTriển khai chứng chỉ cho VirtualHost /etc/httpd/conf.d/piwik.conf
Tiếp theo, bạn sẽ cần chọn có chuyển hướng lưu lượng HTTP sang HTTPS hay không như hiển thị bên dưới:
Mã:
Vui lòng chọn có chuyển hướng lưu lượng HTTP sang HTTPS hay không, xóa quyền truy cập HTTP.- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -1: Không chuyển hướng - Không thực hiện thêm bất kỳ thay đổi nào đối với cấu hình máy chủ web.2: Chuyển hướng - Chuyển hướng tất cả các yêu cầu đến quyền truy cập HTTPS an toàn. Chọn tùy chọn này chocác trang web mới hoặc nếu bạn tin tưởng rằng trang web của mình hoạt động trên HTTPS. Bạn có thể hoàn tácthay đổi này bằng cách chỉnh sửa cấu hình máy chủ web của mình.- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Chọn số thích hợp [1-2] rồi [enter] (nhấn 'c' để hủy): 2
Nhập 2 và nhấn Enter để tiếp tục. Sau khi quá trình cài đặt hoàn tất, bạn sẽ thấy kết quả sau:
Mã:
Chuyển hướng tất cả lưu lượng trên cổng 80 sang ssl trong /etc/httpd/conf.d/piwik.conf- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Xin chúc mừng! Bạn đã bật thành công https://piwik.example.comBạn nên kiểm tra cấu hình của mình tại:https://www.ssllabs.com/ssltest/analyze.html?d=piwik.example.com- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -LƯU Ý QUAN TRỌNG: - Xin chúc mừng! Chứng chỉ và chuỗi của bạn đã được lưu tại: /etc/letsencrypt/live/piwik.example.com/fullchain.pem Tệp khóa của bạn đã được lưu tại: /etc/letsencrypt/live/piwik.example.com/privkey.pem Chứng chỉ của bạn sẽ hết hạn vào ngày 23-03-2020. Để có phiên bản mới hoặc đã chỉnh sửa của chứng chỉ này trong tương lai, chỉ cần chạy lại certbot-auto với tùy chọn "certonly". Để gia hạn không tương tác *tất cả* chứng chỉ của bạn, hãy chạy "certbot-auto renew" - Nếu bạn thích Certbot, vui lòng cân nhắc hỗ trợ công việc của chúng tôi bằng cách: Quyên góp cho ISRG / Let's Encrypt: https://letsencrypt.org/donate Quyên góp cho EFF: https://eff.org/donate-le
Tại thời điểm này, trang web của bạn được bảo mật bằng Let's Encrypt SSL.

Kết luận Xin chúc mừng! bạn đã cài đặt và thiết lập Piwik thành công với Apache và Let's Encrypt SSL trên CentOS 8. Bây giờ bạn có thể thêm mã theo dõi vào trang web của mình và bắt đầu theo dõi khách truy cập trang web của mình từ bảng điều khiển Piwik. Hãy thoải mái hỏi tôi nếu bạn có bất kỳ câu hỏi nào.
 
Back
Bên trên