Ghost là một nền tảng blog miễn phí, mã nguồn mở và nhẹ được xây dựng trên Node.js. Nó đơn giản, có thể tùy chỉnh và cho phép bạn tạo và xuất bản nội dung của mình trên internet. Nó được thiết kế đặc biệt cho blog nên nhanh hơn nhiều so với các nền tảng blog khác. Nó cung cấp một bộ tính năng phong phú, một số trong số chúng được liệt kê dưới đây:
Sau khi bộ đệm APT được cập nhật, hãy cài đặt các phụ thuộc bắt buộc khác bằng lệnh sau:
Tiếp theo, bạn cũng sẽ cần cài đặt Node.js vào hệ thống của mình.
Đầu tiên, hãy thêm kho lưu trữ Node.js bằng lệnh sau:
Sau khi kho lưu trữ được cài đặt, hãy chạy lệnh sau để cài đặt Node.js vào hệ thống của bạn.
Sau khi cài đặt hoàn tất, hãy xác minh phiên bản Node.js bằng lệnh sau:
Bạn sẽ nhận được kết quả sau:
Tiếp theo, hãy xác minh phiên bản NPM bằng lệnh sau:
Bạn sẽ nhận được kết quả sau:
Sau khi cài đặt hoàn tất, hãy bảo mật cài đặt MariaDB và đặt mật khẩu gốc MariaDB bằng lệnh sau:
Trả lời tất cả các câu hỏi để bảo mật cài đặt MariaDB:
Tiếp theo, đăng nhập vào MariaDB bằng lệnh sau:
Sau khi đăng nhập, tạo cơ sở dữ liệu và người dùng cho Ghost bằng lệnh sau:
Tiếp theo, cấp tất cả các quyền cho cơ sở dữ liệu Ghost bằng lệnh sau:
Tiếp theo, xóa các quyền và thoát khỏi MariaDB bằng lệnh sau:
Sau khi hoàn tất, bạn có thể tiến hành bước tiếp theo.
Sau khi cài đặt, hãy xác minh phiên bản Ghost Cli đã cài đặt bằng lệnh sau:
Bạn sẽ thấy đầu ra sau:
Tiếp theo, thêm user1 vào nhóm sudo và www-data bằng lệnh sau:
Tiếp theo, hãy đăng nhập bằng user1 và tạo một thư mục cho Ghost bằng lệnh sau:
Tiếp theo, thiết lập quyền và quyền sở hữu phù hợp bằng lệnh sau:
Tiếp theo, hãy thay đổi thư mục thành ghost và cài đặt nền tảng blog Ghost bằng lệnh sau:
Bạn sẽ được yêu cầu cung cấp URL blog, tên cơ sở dữ liệu, tên người dùng, mật khẩu và các thông tin khác như hiển thị bên dưới:
Lúc này, Ghost đã được cài đặt và khởi động.
Trước tiên, hãy cài đặt ứng dụng khách Certbot bằng lệnh sau:
Sau khi cài đặt, hãy chạy lệnh sau để tải xuống Let's Encrypt SSL và cấu hình Nginx để sử dụng các chứng chỉ đó:
Bạn sẽ được yêu cầu cung cấp địa chỉ email và chấp nhận điều khoản dịch vụ như hiển thị bên dưới:
Tiếp theo, chọn có chuyển hướng lưu lượng HTTP sang HTTPS hay không:
Nhập 2 và nhấn Enter để hoàn tất quá trình cài đặt.
Bây giờ, bạn có thể xác minh trang web Ghost bằng lệnh sau;
Bạn sẽ thấy đầu ra sau:
Bạn cũng có thể xác minh dịch vụ Ghost bằng lệnh sau:
Bạn sẽ thấy đầu ra sau:
Nhấp vào nút Tạo tài khoản để tạo tài khoản đầu tiên của bạn:
Cung cấp thông tin chi tiết về tài khoản của bạn và nhấp vào Tôi sẽ thực hiện sau ở cuối màn hình. Bạn sẽ thấy giao diện quản trị Ghost trong trang sau:
Bạn cũng có thể truy cập trang web Ghost của mình bằng URL https://ghost.linuxbuz.com/. Bạn sẽ thấy trang sau:
- Trình chỉnh sửa Markdown
- Xuất bản theo lịch trình
- Cung cấp ứng dụng cho Linux, Mac và Windows
- Cung cấp hàng trăm chủ đề miễn phí và cao cấp
- Phân tích tích hợp
- Cung cấp plugin di chuyển để di chuyển từ WordPress sang Ghost
Điều kiện tiên quyết
- Một máy chủ chạy Ubuntu 20.04.
- Một tên miền hợp lệ trỏ đến 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.
Bắt đầu
Trước tiên, bạn nên cập nhật bộ đệm gói APT lên phiên bản mới nhất. Bạn có thể cập nhật bằng lệnh sau:
Mã:
apt-get update -y
Mã:
apt-get install gnupg2 curl unzip git acl -y
Đầu tiên, hãy thêm kho lưu trữ Node.js bằng lệnh sau:
Mã:
curl -sL https://deb.nodesource.com/setup_12.x | bash -
Mã:
apt-get install nodejs -y
Mã:
node -v
Mã:
v12.22.1
Mã:
npm -v
Mã:
6.14.12
Cài đặt Nginx và MariaDB
Tiếp theo, bạn sẽ cần cài đặt máy chủ web Nginx và máy chủ cơ sở dữ liệu MariaDB vào hệ thống của mình. Bạn có thể cài đặt cả hai gói bằng lệnh sau:
Mã:
apt-get install mariadb-server nginx -y
Mã:
mysql_secure_installation
Mã:
Nhập mật khẩu hiện tại cho root (nhập nếu không có):Đặt mật khẩu gốc? [C/N] CMật khẩu mới:Nhập lại mật khẩu mới:Xóa người dùng ẩn danh? [C/N] CKhông cho phép đăng nhập root từ xa? [C/N] CXóa cơ sở dữ liệu thử nghiệm và quyền truy cập vào cơ sở dữ liệu đó? [C/N] CTải lại bảng đặc quyền ngay bây giờ? [Y/n] Y
Mã:
mysql -u root -p
Mã:
MariaDB [(none)]> CREATE DATABASE ghostdb;
MariaDB [(none)]> CREATE USER 'ghostuser'@'localhost' IDENTIFIED BY 'password';
Mã:
MariaDB [(none)]> GRANT ALL ON ghostdb.* TO 'ghostuser'@'localhost';
Mã:
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;
Cài đặt Ghost Cli
Tiếp theo, bạn sẽ cần cài đặt Ghost Cli để cài đặt và quản lý Ghost. Bạn có thể cài đặt bằng NPM như được hiển thị bên dưới:
Mã:
npm install -g ghost-cli@latest
Mã:
ghost version
Mã:
Phiên bản Ghost-CLI: 1.16.3
Cài đặt Ghost
Trước tiên, hãy tạo một người dùng riêng cho Ghost bằng lệnh sau:
Mã:
adduser user1
Mã:
adduser user1 sudo
adduser user1 www-data
Mã:
su - user1
sudo mkdir /var/www/ghost
Mã:
sudo chown -R www-data:www-data /var/www/ghost
sudo chown -R www-data:www-data /var/www/
sudo chmod 775 /var/www/ghost
sudo setfacl -R -m u:user1:rwx /var/www/ghost/
Mã:
cd /var/www/ghost
ghost install
Mã:
? Nhập URL blog của bạn: https://ghost.linuxbuz.com? Nhập tên máy chủ MySQL của bạn: localhost? Nhập tên người dùng MySQL của bạn: ghostuser? Nhập mật khẩu MySQL của bạn: [ẩn]? Nhập tên cơ sở dữ liệu Ghost của bạn: ghostdb? Cấu hình Ghost? Thiết lập phiên bản+ sudo useradd --system --user-group ghost+ sudo chown -R ghost:ghost /var/www/ghost/content? Thiết lập người dùng hệ thống "ghost"? Thiết lập người dùng mysql "ghost" [bỏ qua]? Bạn có muốn thiết lập Nginx không? Có+ sudo mv /tmp/ghost-linuxbuz-com/ghost.linuxbuz.com.conf /etc/nginx/sites-available/ghost.linuxbuz.com.conf+ sudo ln -sf /etc/nginx/sites-available/ghost.linuxbuz.com.conf /etc/nginx/sites-enabled/ghost.linuxbuz.com.conf+ sudo nginx -s reload? Thiết lập SSL [bỏ qua]? Bạn có muốn thiết lập Systemd không? Có+ sudo mv /tmp/ghost-linuxbuz-com/ghost_ghost-linuxbuz-com.service /lib/systemd/system/ghost_ghost-linuxbuz-com.service+ sudo systemctl daemon-reload? Thiết lập Systemd+ sudo systemctl is-active ghost_ghost-linuxbuz-com? Bạn có muốn khởi động Ghost không? (Y/n)
Bảo mật Ghost bằng Let's Encrypt SSL
Tiếp theo, bạn sẽ cần bảo mật Ghost bằng Let's Encrypt SSL.Trước tiên, hãy cài đặt ứng dụng khách Certbot bằng lệnh sau:
Mã:
sudo apt-get install certbot python3-certbot-nginx -y
Mã:
sudo certbot --nginx -d ghost.linuxbuz.com
Mã:
Lưu nhật ký gỡ lỗi vào /var/log/letsencrypt/letsencrypt.logCác plugin đã chọn: Authenticator nginx, Installer nginxNhậ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 ghost.linuxbuz.comĐang chờ xác minh...Dọn dẹp các thử tháchTriển khai chứng chỉ cho VirtualHost /etc/nginx/sites-enabled/ghost.linuxbuz.com.conf
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
Mã:
Đang chuyển hướng tất cả lưu lượng truy cập trên cổng 80 sang ssl trong /etc/nginx/sites-enabled/ghost.linuxbuz.com.conf- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Xin chúc mừng! Bạn đã bật thành công https://ghost.linuxbuz.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=ghost.linuxbuz.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/ghost.linuxbuz.com/fullchain.pem Tệp khóa của bạn đã được lưu tại: /etc/letsencrypt/live/ghost.linuxbuz.com/privkey.pem Chứng chỉ của bạn sẽ hết hạn vào ngày 13-07-2021. Để 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 với tùy chọn "certonly". Để gia hạn không tương tác *tất cả* các chứng chỉ của bạn, hãy chạy "certbot renew" - Thông tin đăng nhập tài khoản của bạn đã được lưu trong thư mục cấu hình Certbot tại /etc/letsencrypt. Bây giờ bạn nên sao lưu an toàn thư mục này. Thư mục cấu hình này cũng sẽ chứa các chứng chỉ và khóa riêng do Certbot thu được, do đó, việc sao lưu thường xuyên thư mục này là lý tưởng. - 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
Mã:
ghost ls
Mã:
+ sudo systemctl is-active ghost_ghost-linuxbuz-com????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? Tên ? Vị trí ? Phiên bản ? Trạng thái ? URL ? Cổng ? Trình quản lý quy trình ????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? ghost-linuxbuz-com ? /var/www/ghost ? 4.2.1 ? đang chạy (sản xuất) ? https://ghost.linuxbuz.com ? 2368 ? systemd ???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
Mã:
sudo systemctl status ghost_ghost-linuxbuz-com
Mã:
? ghost_ghost-linuxbuz-com.service - Dịch vụ systemd Ghost cho blog: ghost-linuxbuz-com Đã tải: đã tải (/lib/systemd/system/ghost_ghost-linuxbuz-com.service; đã bật; cài đặt trước của nhà cung cấp: đã bật) Đang hoạt động: đang hoạt động (đang chạy) kể từ Thứ 4, ngày 14 tháng 4 năm 2021 lúc 07:05:33 UTC; 9 phút trước Tài liệu: https://ghost.org/docs/ PID chính: 7546 (node) Nhiệm vụ: 22 (giới hạn: 2353) Bộ nhớ: 134,3M CGroup: /system.slice/ghost_ghost-linuxbuz-com.service ??7546 ghost run ??7590 /usr/bin/node current/index.js14/04 07:13:44 ubuntu node[7590]: [14/04/2021 07:13:44] INFO "GET /ghost/assets/img/dashboard/start-membership-baafa2c6558d118ae59cb1fddab045>14/04 07:13:44 ubuntu node[7590]: [14/04/2021 07:13:44] THÔNG TIN "LẤY /ghost/assets/img/dashboard/the-browser-f5e7e199fe82d8435913e84d022fa7e1.pn>14/04 07:13:44 ubuntu node[7590]: [14/04/2021 07:13:44] THÔNG TIN "GET /ghost/assets/img/dashboard/join-community-bb5478f7dca6c04a2d0baf2b02f880fb>14/04 07:13:44 ubuntu node[7590]: [14/04/2021 07:13:44] THÔNG TIN "GET /ghost/api/canary/admin/members/?filter=status%3Apaid&order=created_at%20as>14/04 07:14:11 ubuntu node[7590]: [14/04/2021 07:14:11] THÔNG TIN "GET /" 200 475ms14/04 07:14:11 ubuntu node[7590]: [14/04/2021 07:14:11] THÔNG TIN "GET /" 200 480ms14/04 07:14:15 ubuntu node[7590]: [14/04/2021 07:14:15] THÔNG TIN "GET /members/api/site/" 200 12ms14/04 07:14:18 ubuntu node[7590]: [14/04/2021 07:14:18] THÔNG TIN "GET /" 304 142ms14/04 07:14:25 ubuntu node[7590]: [14/04/2021 07:14:25] INFO "GET /members/api/site/" 304 4ms14/04 07:14:26 ubuntu node[7590]: [14/04/2021 07:14:26] INFO "GET /members/api/member/" 401 4ms
Truy cập Giao diện Quản trị Ghost
Bây giờ, hãy mở trình duyệt web của bạn và truy cập giao diện quản trị Ghost bằng URL . Bạn sẽ thấy trang sau:Nhấp vào nút Tạo tài khoản để tạo tài khoản đầu tiên của bạn:
Cung cấp thông tin chi tiết về tài khoản của bạn và nhấp vào Tôi sẽ thực hiện sau ở cuối màn hình. Bạn sẽ thấy giao diện quản trị Ghost trong trang sau:
Bạn cũng có thể truy cập trang web Ghost của mình bằng URL https://ghost.linuxbuz.com/. Bạn sẽ thấy trang sau: