DokuWiki là phần mềm wiki mã nguồn mở đơn giản, linh hoạt, không yêu cầu cơ sở dữ liệu. Phần mềm này được biết đến với tính dễ bảo trì, dễ đọc và quản lý người dùng, khiến nó trở nên lý tưởng để tạo và quản lý tài liệu trong môi trường doanh nghiệp hoặc cộng tác. Được hỗ trợ bởi PHP, phần mềm wiki linh hoạt và Kiểm soát truy cập (ACL) tích hợp của nó hỗ trợ các trình điều khiển xác thực chính. DokuWiki cung cấp khả năng quản trị dễ dàng, dễ cài đặt, bảo trì và sao lưu từ máy chủ này sang máy chủ khác.
Trong hướng dẫn này, chúng tôi sẽ hướng dẫn bạn cài đặt DokuWiki trên máy chủ Debian 12. Bạn sẽ cài đặt DokuWiki với LAMP Stack (Apache2, MariaDB và PHP), UFW và chứng chỉ SSl/TLS thông qua Letsencyrpt.
Trong phần này, bạn sẽ cài đặt các gói phụ thuộc cho DokuWiki, bao gồm các gói LAMP STack (Apache2, MariaDB và PHP), UFW và Certbot.
Trước khi bắt đầu, hãy cập nhật kho lưu trữ Debian của bạn bằng lệnh bên dưới.
Cài đặt các gói LAMP Stack, UFW và Certbot bằng lệnh apt install sau. Nhập Y và nhấn ENTER khi được nhắc.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22221%22%3E%3C/svg%3E
Sau khi cài đặt hoàn tất, hãy xác minh trạng thái dịch vụ Apache và MariaDB để đảm bảo rằng dịch vụ đang chạy.
Thực hiện lệnh sau để kiểm tra apache2 dịch vụ.
Khi apache2 đang chạy, bạn sẽ nhận được kết quả 'active (running)'. Và đầu ra 'enabled' xác nhận apache2 sẽ khởi động khi khởi động hệ thống.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22247%22%3E%3C/svg%3E
Bây giờ hãy thực hiện lệnh sau để xác minh dịch vụ mariadb.
Đảm bảo rằng dịch vụ mariadb được 'enabled' và 'active (running)' trên Debian của bạn máy.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22275%22%3E%3C/svg%3E
Chạy lệnh sau để thêm cấu hình OpenSSH và 'WWW Full' vào UFW.
Cấu hình OpenSSH sẽ mở cổng SSh mặc định 22, trong khi cấu hình 'WWW Full' mở cả cổng HTTP và HTTPS.
Bây giờ, hãy chạy lệnh sau để khởi động và bật UFW trên Debian của bạn máy.
Nhập y khi được yêu cầu xác nhận và bạn sẽ nhận được kết quả như 'Tường lửa đang hoạt động và được bật khi khởi động hệ thống'. UFW sẽ tự động chạy khi khởi động hệ thống.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22724%22%20height=%22224%22%3E%3C/svg%3E
Cuối cùng, hãy chạy lệnh sau để xác minh trạng thái UFW. Đảm bảo cả cấu hình OpenSSH và 'WWW Full' đều được liệt kê trên các quy tắc hỗ trợ UFW của bạn.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22505%22%20height=%22217%22%3E%3C/svg%3E
Chạy lệnh nano editor sau để mở tệp cấu hình PHP '/etc/php/8.2/apache2/php.ini'.
Thay đổi cấu hình mặc định bằng lệnh sau. Hãy đảm bảo điều chỉnh tham số memory_limit với RAM máy chủ hiện tại của bạn.
Lưu và đóng tệp khi hoàn tất.
Bây giờ, hãy chạy lệnh systemctl bên dưới để khởi động lại dịch vụ apache2 và áp dụng các thay đổi của bạn.
Bắt đầu quá trình cấu hình MariaDB bằng cách thực hiện lệnh mariadb-secure-installation bên dưới.
Nhập Y khi được yêu cầu áp dụng cấu hình mới cho MariaDB hoặc bạn cũng có thể nhập n cho Không để từ chối. Dưới đây là một số cấu hình MariaDB mà bạn sẽ được nhắc:
Đăng nhập vào máy chủ MariaDB bằng cách thực hiện lệnh mariadb bên dưới. Nhập mật khẩu gốc MariaDB của bạn khi được nhắc.
Bây giờ hãy chạy các truy vấn sau để tạo cơ sở dữ liệu mới dokuwikidb, người dùng dokuwiki, với mật khẩu 'p4ssword'. Hãy chắc chắn thay đổi mật khẩu bằng mật khẩu mới của bạn.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22727%22%20height=%22256%22%3E%3C/svg%3E
Tiếp theo, xác minh người dùng dokuwiki để đảm bảo các đặc quyền đối với cơ sở dữ liệu dokuwikidb.
Trong kết quả sau, bạn đã cấu hình người dùng dokuwiki với đầy đủ quyền cho cơ sở dữ liệu dokuwikidb.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22194%22%3E%3C/svg%3E
Cuối cùng, nhập quit để thoát khỏi máy chủ MariaDB và chuyển sang bước tiếp theo.
Chuyển đến thư mục /var/www/ và tải xuống phiên bản ổn định mới nhất của DokuWiki bằng lệnh wget bên dưới.
Bây giờ hãy giải nén tệp dokuwiki-stable.tgz và đổi tên thư mục đã giải nén thành dokuwiki. Điều này có nghĩa là thư mục cài đặt DokuWiki của bạn sẽ có tại /var/www/dokuwiki.
Cuối cùng, hãy chạy lệnh bên dưới để thay đổi quyền sở hữu thư mục /var/www/dokuwiki thành người dùng www-data và người dùng www-data. Theo cách này, máy chủ web Apache2 của bạn sẽ có thể đọc mã nguồn DokuWiki.
Bây giờ, hãy chạy lệnh nano editor bên dưới để tạo cấu hình máy chủ ảo Apache2 mới /etc/apache2/sites-available/dokuwiki.conf.
Chèn cấu hình sau và đảm bảo thay đổi tên miền wiki.howtoforge.local bằng tên miền của bạn.
Khi hoàn tất, hãy lưu và đóng tệp.
Tiếp theo, hãy chạy lệnh sau để kích hoạt máy chủ ảo dokuwiki.conf và xác minh cú pháp Apache của bạn để đảm bảo không có lỗi.
Nếu bạn có cú pháp đúng và không có lỗi, bạn sẽ thấy đầu ra 'Cú pháp OK'.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22701%22%20height=%22306%22%3E%3C/svg%3E
Cuối cùng, hãy chạy lệnh bên dưới để khởi động lại máy chủ Apache2 và áp dụng sửa đổi của bạn.
Thực hiện lệnh certbot bên dưới để tạo chứng chỉ SSL/TLS cho tên miền DokuWiki của bạn. Hãy đảm bảo thay đổi địa chỉ email và tên miền bằng thông tin của bạn.
Sau khi quá trình hoàn tất, cài đặt DokuWiki của bạn sẽ được tự động định cấu hình với HTTPS. Và chứng chỉ SSL/TLS của bạn sẽ có tại thư mục /etc/letsencrypt/live/yourdomain.com.
Chọn tùy chọn Bật ACL, nhập tên người dùng quản trị, email và mật khẩu của bạn cho DokuWiki, sau đó nhấp vào Lưu.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22481%22%3E%3C/svg%3E
Sau khi cài đặt thành công, bạn sẽ nhận được thông báo 'Cấu hình đã hoàn tất thành công..'.
Pictu
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22409%22%3E%3C/svg%3E
re
Bây giờ hãy quay lại thiết bị đầu cuối của bạn và xóa tập lệnh install.php bằng lệnh bên dưới.
Tiếp theo, nhấp vào liên kết 'DokuWiki mới của bạn' để tiếp tục. Và bạn sẽ nhận được trang chủ DokuWiki như sau.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22475%22%3E%3C/svg%3E
Bây giờ hãy nhấp vào nút Đăng nhập và bạn sẽ nhận được trang đăng nhập DokuWiki như sau.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22388%22%3E%3C/svg%3E
Đầu vào người dùng quản trị và mật khẩu của bạn, sau đó nhấp vào Đăng nhập. Khi thành công, bạn sẽ thấy bảng điều khiển DokuWiki.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22479%22%3E%3C/svg%3E
Trong hướng dẫn này, chúng tôi sẽ hướng dẫn bạn cài đặt DokuWiki trên máy chủ Debian 12. Bạn sẽ cài đặt DokuWiki với LAMP Stack (Apache2, MariaDB và PHP), UFW và chứng chỉ SSl/TLS thông qua Letsencyrpt.
Điều kiện tiên quyết
Đảm bảo bạn có những điều kiện 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
Theo mặc định, gói DokuWiki có sẵn trên kho lưu trữ Debian. Tuy nhiên, để đảm bảo rằng bạn đã cài đặt phiên bản DokuWiki mới nhất, bạn sẽ cài đặt DokuWiki theo cách thủ công vào máy chủ Debian của mình.Trong phần này, bạn sẽ cài đặt các gói phụ thuộc cho DokuWiki, bao gồm các gói LAMP STack (Apache2, MariaDB và PHP), UFW và Certbot.
Trước khi bắt đầu, hãy cập nhật kho lưu trữ Debian của bạn bằng lệnh bên dưới.
Mã:
sudo apt update
Mã:
sudo apt install apache2 mariadb-server php libapache2-mod-php php-xml php-mbstring php-zip php-intl php-gd ufw certbot python3-certbot-apache
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22221%22%3E%3C/svg%3E
Sau khi cài đặt hoàn tất, hãy xác minh trạng thái dịch vụ Apache và MariaDB để đảm bảo rằng dịch vụ đang chạy.
Thực hiện lệnh sau để kiểm tra apache2 dịch vụ.
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=%22247%22%3E%3C/svg%3E
Bây giờ hãy thực hiện lệnh sau để xác minh dịch vụ mariadb.
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=%22275%22%3E%3C/svg%3E
Cấu hình UFW
Trong hướng dẫn này, bạn sẽ bảo mật máy chủ Debian của mình bằng UFW (Tường lửa đơn giản). Trong trường hợp đó, bạn phải mở cổng SSH để truy cập từ xa và các cổng cho giao thức HTTP và HTTPS để chạy cài đặt DokuWiki.Chạy lệnh sau để thêm cấu hình OpenSSH và 'WWW Full' vào UFW.
Cấu hình OpenSSH sẽ mở cổng SSh mặc định 22, trong khi cấu hình 'WWW Full' mở cả cổng HTTP và HTTPS.
Mã:
sudo ufw allow OpenSSH
sudo ufw allow 'WWW Full'
Mã:
sudo ufw enable
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22724%22%20height=%22224%22%3E%3C/svg%3E
Cuối cùng, hãy chạy lệnh sau để xác minh trạng thái UFW. Đảm bảo cả cấu hình OpenSSH và 'WWW Full' đều được liệt kê trên các quy tắc hỗ trợ UFW của bạn.
Mã:
sudo ufw status
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22505%22%20height=%22217%22%3E%3C/svg%3E
Cấu hình php.ini
Trong phần sau, bạn sẽ cấu hình PHP bằng cách sửa đổi tệp php.ini mặc định và điều chỉnh một số cấu hình cho cài đặt DokuWiki.Chạy lệnh nano editor sau để mở tệp cấu hình PHP '/etc/php/8.2/apache2/php.ini'.
Mã:
sudo nano /etc/php/8.2/apache2/php.ini
Mã:
memory_limit=256M
upload_max_filesize=32M
post_max_size=32M
max_execution_time=60
Bây giờ, hãy chạy lệnh systemctl bên dưới để khởi động lại dịch vụ apache2 và áp dụng các thay đổi của bạn.
Mã:
sudo systemctl restart apache2
Cấu hình máy chủ MariaDB
Bây giờ bạn đã cấu hình PHP, bước tiếp theo là để cấu hình cài đặt máy chủ MariaDB của bạn, sau đó tạo một cơ sở dữ liệu và người dùng mới sẽ sử dụng DokuWiki.Bắt đầu quá trình cấu hình MariaDB bằng cách thực hiện lệnh mariadb-secure-installation bên dưới.
Mã:
sudo mariadb-secure-installation
- Cài đặt MariaDB mặc định không có mật khẩu, hãy nhấn ENTER khi được nhắc nhập mật khẩu.
- Bây giờ hãy nhập Y để thiết lập mật khẩu gốc MariaDB. Sau đó, nhập mật khẩu mới cho MariaDB và lặp lại mật khẩu.
- Nhập Y để xóa người dùng ẩn danh khỏi cài đặt MariaDB của bạn.
- Nhập Y một lần nữa khi được nhắc tắt đăng nhập từ xa cho người dùng gốc MariaDB.
- Nhập Y để xóa kiểm tra cơ sở dữ liệu mặc định khỏi MariaDB của bạn.
- Cuối cùng, nhập Y để tải lại các đặc quyền bảng và áp dụng các thay đổi mới.
Đăng nhập vào máy chủ MariaDB bằng cách thực hiện lệnh 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 dokuwikidb;
CREATE USER dokuwiki@localhost IDENTIFIED BY 'p4ssword';
GRANT ALL PRIVILEGES ON dokuwikidb.* TO dokuwiki@localhost;
FLUSH PRIVILEGES;
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22727%22%20height=%22256%22%3E%3C/svg%3E
Tiếp theo, xác minh người dùng dokuwiki để đảm bảo các đặc quyền đối với cơ sở dữ liệu dokuwikidb.
Mã:
SHOW GRANTS FOR dokuwiki@localhost;
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22194%22%3E%3C/svg%3E
Cuối cùng, nhập quit để thoát khỏi máy chủ MariaDB và chuyển sang bước tiếp theo.
Tải xuống mã nguồn DokuWiki
Trong phần này, bạn sẽ tải xuống mã nguồn DokuWiki và thiết lập thư mục cài đặt với quyền thích hợp.Chuyển đến thư mục /var/www/ và tải xuống phiên bản ổn định mới nhất của DokuWiki bằng lệnh wget bên dưới.
Mã:
cd /var/www/
wget https://download.dokuwiki.org/src/dokuwiki/dokuwiki-stable.tgz
Mã:
tar xzvf dokuwiki-stable.tgz
sudo mv dokuwiki-*a dokuwiki
Mã:
sudo chown -R www-data:www-data /var/www/dokuwiki
Cấu hình Máy chủ ảo Apache2
Sau khi tải xuống DokuWiki, bây giờ bạn sẽ tạo một tệp máy chủ ảo Apache2 mới để chạy DokuWiki. Hãy đảm bảo rằng tên miền của bạn đã sẵn sàng trước khi bắt đầu. Trong ví dụ này, chúng ta sẽ sử dụng miền wiki.howtoforge.local.Bây giờ, hãy chạy lệnh nano editor bên dưới để tạo cấu hình máy chủ ảo Apache2 mới /etc/apache2/sites-available/dokuwiki.conf.
Mã:
sudo nano /etc/apache2/sites-available/dokuwiki.conf
Mã:
ServerName wiki.howtoforge.local
DocumentRoot /var/www/dokuwiki
AllowOverride All
Require all denied
Order allow,deny
Deny from all
ErrorLog /var/log/apache2/wiki.howtoforge.local_error.log
CustomLog /var/log/apache2/wiki.howtoforge.local_access.log combined
Tiếp theo, hãy chạy lệnh sau để kích hoạt máy chủ ảo dokuwiki.conf và xác minh cú pháp Apache của bạn để đảm bảo không có lỗi.
Mã:
sudo a2ensite dokuwiki.conf
sudo apachectl configtest
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22701%22%20height=%22306%22%3E%3C/svg%3E
Cuối cùng, hãy chạy lệnh bên dưới để khởi động lại máy chủ Apache2 và áp dụng sửa đổi của bạn.
Mã:
sudo systemctl restart apache2
Bảo mật DokuWiki bằng Chứng chỉ SSL/TLS
Lúc này, DokuWiki của bạn đang chạy và có thể truy cập được. Nhưng để đảm bảo cài đặt của bạn an toàn, bạn sẽ thiết lập chứng chỉ SSl/TLS thông qua Letsencrypt.Thực hiện lệnh certbot bên dưới để tạo chứng chỉ SSL/TLS cho tên miền DokuWiki của bạn. Hãy đảm bảo thay đổi địa chỉ email và tên miền bằng thông tin của bạn.
Mã:
sudo certbot --apache --agree-tos --redirect --hsts --staple-ocsp --email [emailprotected] -d wiki.howtoforge.local
Cài đặt DokuWiki thông qua Web Installer
Mở trình duyệt web và truy cập tên miền của bạn để cài đặt DokuWiki, chẳng hạn như https:/wiki.howtoforge.local/install.php. Bạn sẽ thấy trình cài đặt web DokuWiki.Chọn tùy chọn Bật ACL, nhập tên người dùng quản trị, email và mật khẩu của bạn cho DokuWiki, sau đó nhấp vào Lưu.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22481%22%3E%3C/svg%3E
Sau khi cài đặt thành công, bạn sẽ nhận được thông báo 'Cấu hình đã hoàn tất thành công..'.
Pictu
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22409%22%3E%3C/svg%3E
re
Bây giờ hãy quay lại thiết bị đầu cuối của bạn và xóa tập lệnh install.php bằng lệnh bên dưới.
Mã:
sudo rm /var/www/dokuwiki/install.php
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22475%22%3E%3C/svg%3E
Bây giờ hãy nhấp vào nút Đăng nhập và bạn sẽ nhận được trang đăng nhập DokuWiki như sau.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22388%22%3E%3C/svg%3E
Đầu vào người dùng quản trị và mật khẩu của bạn, sau đó nhấp vào Đăng nhập. Khi thành công, bạn sẽ thấy bảng điều khiển DokuWiki.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22479%22%3E%3C/svg%3E