Tạo Website, Cài đặt WordPress & SSL trên Hosting & VPS

Chủ đề Progress:

Topic trước chúng ta đã sẵn sàng trỏ domain về hosting. Trong topic này, ta tiến hành khởi tạo website trên hosting, cài chứng chỉ bảo mật SSL Let’s Encrypt miễn phí và sau đó cài đặt mã nguồn WordPress cho website.

Trước hết ta tìm hiểu một xíu về các công việc này:

0. Tạo Website trên máy chủ – Tìm hiểu vhost

Để Website chạy được trên máy chủ (Servers), ta cần máy chủ sẵn sàng các phần mềm sau:

  • Hệ điều hành trên máy chủ web, có thể là Windows (Windows Server) hoặc Linux, nhưng phổ biến nhất vẫn là Linux (CentOS, Ubuntu, Debian,…).
  • Phần mềm vận hành Website trên máy chủ, gọi là Web Severs, ở đây phổ biến nhất là Apache và Nginx, các phần mềm này sẽ giúp tạo các Virtual Host/ Virtual Hosting (vhost) để chạy nhiều website ứng với nhiều domain khác nhau trên cùng máy chủ.
  • Các phần mềm vận hành mã nguồn của Website: ví dụ với mã nguồn WordPress, sử dụng PHP & MySQL thì ta cần cài sẵn các phần mềm PHP và MySQL.

Virtual Hosting – vhost là gì?

Virtual Hosting (vhost) là một phương thức giúp chạy nhiều website ứng với domain khác nhau trên cùng một máy chủ – được vận hành bởi các phần mềm webserver (Nginx/ Apache).

Khi nói tạo website trên hosting, tức là tạo vhost để hoạt động với một domain cụ thể, vhost đối với một domain bao gồm một thư mục để chứa code website ứng với domain đó, và các cấu hình webserver riêng (Nginx/ Apache Configuration) để vận hành hoạt động của website.

Khi chúng ta trỏ một domain (ví dụ wpvui.com) về hosting (shared hosting hoặc vps) thì chúng ta mới trỏ về IP của máy chủ (server) nhưng trên máy chủ có thể chứa nhiều website ứng với nhiều domain khác nhau (wpvui.com, vuihocweb.com, wpbanquyen.com). Nếu chúng ta chưa tạo vhost cho website ứng với domain đó (wpvui.com) thì vẫn chưa thể truy cập website từ domain.

Tìm hiểu về LAMP/ LEMP Stack

Hiện nay, chúng ta có các gói phần mềm, bao gồm một nhóm các phần mềm tối ưu – hoạt động cùng nhau để triển khai hệ thống vận hành website hoàn chỉnh – gọi là stack.

Đối với các website dùng ngôn ngữ lập trình PHP, Python hay Perl, ta có các hệ thống phổ biến là LAMP Stack và LEMP Stack. WordPress và nhiền CMS phổ biến như Drupal, Joomla,… viết bằng PHP nên khi cài đặt chúng ta cũng triển khai một trong 2 cái này:

  • LAMP Stack: ám chỉ hệ thống vận hành gồm Linux + Apache + MariaDB (MySQL) và PHP-FPM (PHP)/ Python/ Perl
  • LEMP Stack: hệ thống Linux + Nginx (Engine-X) + MariaDB + PHP-FPM/ Python/ Perl

(*) Chữ E trong LEMP Stack ám chỉ Nginx vì phần mềm webserver Nginx đọc là Engine-X.

(**) Ngoài Apache và Nginx, để chạy website dùng ngôn ngữ PHP & MySQL chúng ta còn có webserver nổi tiếng khác là LiteSpeed Webserver (LSW), thực chất LiteSpeed Webserver giống như một phiên bản nâng cấp từ Apache và nó là phần mềm trả phí:

  • Hiện nay, vì LiteSpeed Webserver nhiều ưu điểm hơn, lại hoạt động tương tự Apache và tương thích ngược với các hệ thống cũ dùng Apache nên đa số các dịch vụ shared hosting đều sử dụng LiteSpeed Webserver thay vì Apache chính gốc.
  • Nginx mạnh mẽ và bảo mật hơn Apache, nhưng cấu hình phức tạp hơn, nên các dịch vụ shared hosting thông thường không dùng, chỉ phổ biến trên các dịch vụ VPS và những dịch vụ Managed Hosting cao cấp như WordPress VIP, Kinsta, Cloudways,…

(***) Nginx, Apache và các stack LEMP stack, LAMP stack sử dụng phổ biến cho các website dùng mã nguồn PHP, Python và Perl, trong đó WordPress chạy PHP. Còn với các website dùng các ngôn ngữ lập trình web khác thì có các stack khác, ví dụ với Website và Web Application lập trình bằng Javascript hiện nay, phổ biến dùng MEAN hoặc MERN stack, trong đó Node.js đóng vai trò tương tự như Nginx, Apache (dù thực tế bản chất có một số khác biệt):

MEAN stack:

MERN stack:

Tiếp theo ta tìm hiểu về tạo website:

Tạo Website trên VPS

Khi mua VPS, để chạy được WordPress, thì ta cần làm tuần tự các bước:

  1. Cài LAMP Stack hoặc LEMP Stack
  2. Tạo Website trên LAMP/ LEMP Stack: nói đúng thuật ngữ người ta gọi là tạo vhost
  3. Sau khi tạo website, ta sẽ tạo database (MySQL), upload mã nguồn WordPress, tiến hành cài đặt WordPress (thực chất là khai báo các thông tin cần thiết cho WordPress) để có một Website WordPress.

Việc tạo vhost cho website trên VPS khá phức tạp vì cần tạo các cấu hình server với các file lệnh Linux & Nginx configuration/ Apache configuration, nên với người dùng phổ thông, phương pháp tối ưu nhất là dùng các chương trình hỗ trợ từ A-Z, gọi là các shellscript, điển hình như CentminMod hay ở VN phổ biến là VPSSIM (VPS Simple), HocVPS hay nổi trội gần đây là LarVPS.

Các chương trình shellscript kể trên sẽ cài đặt mọi thứ cho bạn tự động, ví dụ để tạo vhost cho một website, bạn chỉ cần nhập tên domain rồi để shellscript hoàn tất mọi thứ. Chưa kể chúng còn hỗ trợ các tính năng mở rộng như cài và quản lý WordPress, chứng chỉ SSL, bảo mật nâng cao,…

Ở phần dưới sẽ hướng dẫn về cách cài LEMP Stack, tạo Virtual Host, cài WordPress,… với LarVPS.

Tạo Website trên Shared Hosting

Không phức tạp như VPS, shared hosting thường có sẵn các phần mềm cài đặt & quản lý máy chủ trên giao diện đồ hoạ – trực quan, gọi là Control Panel như Direct-Admin (DA), Plesk, hay phổ biến nhất là cPanel.

Thông thường, mua shared hosting thì cPanel đã được cài đặt sẵn, nên việc tạo website (vhost) cực kỳ đơn giản. Các tính năng như tạo database (MySQL), cài WordPress, SSL, các tính năng nâng cao khác,… đều được tích hợp sẵn và người dùng chỉ cần một vài click để cấu hình xong.

Chúng ta sẽ nói chi tiết về cách tạo Website trên Hosting cPanel ở phần dưới.

1. Tạo Website & Cài đặt WordPress trên Hosting

Ở phần này, ta sẽ xem cách tạo một Website WordPress trên Hosting, cụ thể là loại hosting phổ biến nhất – shared hosting cPanel. Để tạo Website WordPress trên Hosting cPanel, ta thực hiện 2 bước:

Bước 1 – Tạo Website (Thêm domain) trên hosting (Tạo vhost)

Như đã nói ở trên, tạo website tức là tạo virtual hosting cho một domain nào đó, bao gồm tạo một thư mục chứa code + khai báo các cấu hình server để có thể truy cập website từ trình duyệt người dùng (ở đây là Apache/ LiteSpeed Webserver).

Khi mua hosting, nhà cung cấp thường yêu cầu bạn nhập một domain làm domain chính (primary domain) để khởi tạo tài khoản hosting trên cPanel, nếu bạn muốn cài WordPress cho domain chính thì vhost đã được tạo sẵn. Thư mục chứa code của domain chính trên hosting ( trong File Manager) là public_html. Chuyển sang phần cài WordPress bên dưới luôn.

Nếu không cài WordPress trên primary domain mà cài cho một domain khác thì ta cần tạo vhost cho domain đó, bằng cách thêm domain đó vô hosting qua tính năng addon domain.

Khi thêm domain vô hosting thì trên hosting sẽ tạo ra một thư mục riêng để chứa code website sau này, cùng với đó là file cấu hình server .htaccess riêng cho website này.

Bước 2 – Cài WordPress cho Website

Trên cPanel có sẵn ứng dụng Softaculous App Installers cho phép cài đặt nhanh nhiều mã nguồn phổ biến, ta chọn cài WordPress:

Phần giới thiệu WordPress hiện ra, chọn Install để bắt đầu:

Chọn domain cần cài WordPress, và nhập các thông tin cần thiết, không cần điền/ chọn toàn bộ các mục. Chú ý copy lại phần username và password để sau khi thoát khỏi giao diện Softaculous bạn còn giữ thông tin để login vào Website WordPress vừa cài:

Sau khi nhấp Install, chờ một xíu quá trình cài đặt sẽ hoàn tất:

Bạn có thể click vào đường dẫn Dashboard (wp-admin) như hình trên để vào thẳng Dashboard của site WordPress mới cài mà không cần login.

Hoặc có thể thoát khỏi giao diện Softaculous và quay trở lại cPanel:

Xong. Việc cài đặt WordPress bằng ứng dụng Softaculous rất dễ dàng đúng không!

2. Tạo Website và Cài WordPress trên VPS

Khi mua VPS thì chúng ta thường có 2 lựa chọn:

  1. Dịch vụ Managed VPS: nhà cung cấp hỗ trợ kỹ thuật, có tích hợp Control Panel riêng để dễ dàng tạo Website, cài đặt mã nguồn (như WordPress) và chứng chỉ SSL. Điển hình là dịch vụ Managed VPS của CloudFlare, hay dịch vụ hosting cao cấp của Kinsta. Tuy nhiên các dịch vụ này thường có giá khá cao.
  2. Dịch vụ Unmanaged VPS: nhà cung cấp chỉ hỗ trợ cài hệ điều hành (Ubuntu, CentOS, RockyLinux..) còn việc cài Webserver, cấu hình Website, cài mã nguồn, SSL… chúng ta phải tự làm qua giao diện dòng lệnh. Đa số các dịch vụ VPS nổi tiếng như Vultr, DigitalOcean, Linode, OVH,.. đều là dạng unmanaged VPS, ưu điểm là chi phí rẻ.

Nếu bạn có kinh phí để dùng dịch vụ Managed VPS thì mọi thứ hầu như rất dễ dàng, bạn cũng có thể tạo ticket cho bộ phận kỹ thuật của nhà cung cấp cài đặt mọi thứ sẵn sàng cho bạn.

Ở đây ta chỉ đề cập đến việc cài Website WordPress trên các dịch vụ unmanaged VPS như Vultr, Linode, DigitalOcean…

Các công đoạn để tạo một Website WordPress trên VPS (unmanaged) là:

  1. Cài hệ điều hành – phiên bản Linux bạn muốn dùng, việc này bạn sẽ chọn khi khởi tạo VPS để hệ điều hành được cài luôn khi tạo xong gói VPS.
  2. Cài Webserver (Nginx/ Apache) và mã nguồn, phần mềm quản trị database: ở đây phổ biến 2 tùy chọn LEMP Stack (Linux – Nginx, MySQL/ MariaDB, PHP-FPM) hoặc LAMP Stack (Linux – Apache, MySQL/ MariaDB, PHP-FPM).
  3. Tạo Website: tức tạo vhost, bao gồm thư mục chứa code website và các cấu hình web server (Nginx/ Apache configuration)
  4. Cài chứng chỉ SSL cho Website
  5. Tạo database MySQL, rồi cài WordPress, các CMS khác cho Website, hoặc upload code tùy chọn

Để làm các bước trên, bạn cần có kiến thức & kỹ năng về sử dụng dòng lệnh Linux, hiểu biết về cấu hình Webserver… nói chung là khá phức tạp.

Tuy nhiên, có 2 giải pháp cho người dùng phổ thông thực hiện nhanh và hiệu quả các công việc trên:

  1. Dùng các Control Panel để quản lý VPS: bạn có thể cài các control panel miễn phí như Cloud Panel, Cyber Panel, Webmin hay trả phí như cPanel, Direct-Admin, Plesk…ưu điểm là quản lý VPS hoàn toàn trên giao diện đồ họa giống như Hosting cPanel, nhược điểm là nặng và có thể cần nhiều thời gian để làm quen, hạn chế về support kỹ thuật hoặc chi phí quá cao.
  2. Dùng các shellscript để cài đặt và quản lý VPS: như CentMinMod, VPSSIM, HocVPS, LarVPS,… ưu điểm là hầu như không tốn tài nguyên máy chủ, sử dụng khá đơn giản, còn nhược điểm là chỉ hỗ trợ trên giao diện dòng lệnh, không hỗ trợ giao diện đồ họa như các Control Panel, tính năng cũng chỉ vừa đủ dùng.

Với WordPress, ta thường không cần dùng các gói VPS có tài nguyên lớn, thường cỡ 4GB RAM trở xuống là đủ, nên việc cài Control Panel là không quá cần thiết – vì bản thân các phần mềm Control Panel với giao diện đồ họa sẽ ‘ăn bớt’ một phần tài nguyên máy chủ đáng lẽ dành hoàn toàn cho hoạt động của Website.

Việc sử dụng các Shellscript để cài đặt và quản lý VPS là giải pháp vừa tiết kiệm vừa hiệu quả, hầu hết mọi tác vụ chỉ cần copy/ paste hoặc gõ phím vài lần là xong.

Hiện nay có rất nhiều Shellscript cho VPS, nhưng đảm bảo uy tín, cập nhật và hỗ trợ tốt thì chúng ta có 2 lựa chọn:

  • CentMinMod: có thể nói là tượng đài Shellscript trên thế giới, có số lượng người dùng đông đảo, tài liệu – hỗ trợ tốt. Nhưng hạn chế là tất cả đều là tiếng Anh, ngay cả khi bạn giỏi tiếng Anh mà không rành về Webserver thì sử dụng CentMinMod cũng chưa chắc đã dễ dàng.
  • LarVPS: qua cái thời của VPSSIM và HocVPS, hiện nay LarVPS là shellscript uy tín và chất lượng nhất cho người dùng VN

Tạo Web, cài WordPress & SSL bằng LarVPS

LarVPS hoạt động dưới hình thức freemium, tức bản miễn phí với tính năng đủ dùng cho hầu hết các trường hợp, bản trả phí mở rộng thêm một số tính năng.

Freemium là phương thức kinh doanh hiện đại, giúp nhà phát triển có động lực để duy trì và phát triển sản phẩm bền vững, nên chúng ta hoàn toàn có thể yên tâm sử dụng LarVPS lâu dài.

Gói trả phí của LarVPS chỉ bổ sung thêm tính năng bảo mật ModSecurity, với WordPress ta hoàn toàn có thể bỏ qua cái này vì có thể sử dụng plugin bảo mật iThemes Security.

Nếu muốn dùng nhiều Website trên cùng 1 gói VPS, thì bạn cũng nên nâng cấp lên gói trả phí, chi phí cực rẻ và được hỗ trợ tận tình:

Điều kiện để dùng LarVPS là VPS chạy hệ điều hành CentOS 8, Ubuntu hoặc các biến thể mới của CentOS như AlmaLinux, RockyLinux. Đây đều là các hệ điều hành tốt nhất để chạy Web nói chung và WordPress.

Khi khởi tạo VPS xong, bạn nên dùng PuTTY để login bằng tài khoản root, và copy/ paste lệnh sau để bắt đầu cài đặt LarVPS:

curl -sO https://larvps.com/scripts/larvps && bash larvps

Sau đó, chương trình sẽ yêu cầu bạn đổi port mặc định của VPS để bảo mật, mặc định port là 22, bạn nên đổi thành con số khác để tránh bị tấn công qua port này, ví dụ bạn có thể đổi thành 2022, sau đó mỗi lần login vào VPS qua SSH, bạn nhớ chọn port mới (2022).

Quá trình cài LarVPS, thì các phần mềm Nginx, MariaDB, PHP-FPM,.. cũng được cài đặt luôn. Công việc của chúng ta chỉ là:

  • Thêm domain (tạo website/ vhost trên VPS)
  • Cài đặt SSL Let’s Encrypt cho website đã thêm
  • Cài đặt WordPress cho website đã thêm
  • Thao tác, quản lý các tính năng khác nếu cần (ví dụ như khóa file wp-config.php, bật cấu hình nginx hỗ trợ WebP,…)

Tất cả các công việc trên đều tích hợp sẵn trên menu của LarVPS, bạn chỉ cần chọn số để LarVPS tự động thực hiện chứ không cần làm thủ công.

Sau khi LarVPS được cài xong, bạn chỉ cần gõ lệnh larvps, menu tùy chọn sẽ hiển thị, bạn nhập con số tương ứng với mỗi tác vụ khi cần, ví dụ gõ số 1 (rồi enter) để vô mục Quản lý domain – ở đây bạn cũng có thể chọn các con số tương ứng để thêm domain, xóa domain…

 

Bạn có thể xem đầy đủ tài liệu hướng dẫn LarVPS tại đây:

Toàn tập Hướng dẫn LarVPS

Nếu cần tư vấn, hỗ trợ kỹ thuật (không phân biệt người dùng miễn phí hay trả phí), bạn hãy tham gia Group LarVPS.

3. Cài chứng chỉ bảo mật SSL Let’s Encrypt cho Website (https://)

Dùng giao thức bảo mật https:// bây giờ gần như là bắt buột với mọi Website vì nếu không có, các trình duyệt sẽ cảnh báo hoặc chặn luôn người dùng vô website, và giao thức https:// cũng là phần bắt buộc trong các tiêu chuẩn Page Experience tác động mạnh đến việc xếp hạng SEO của Google. Để sử dụng https:// ta cần cài chứng chỉ bảo mật SSL cho Website.

Trước hết, nói sơ qua về SSL:

SSL là gì?

SSL, viết tắt của Secure Sockets Layer, là giao thức bảo mật – một tiêu chuẩn an ninh công nghệ toàn cầu. SSL cho phép đảm bảo tính bảo mật và toàn vẹn dữ liệu trao đổi giữa trình duyệt người dùng và máy chủ web, cụ thể dữ liệu trao đổi giữa server và trình duyệt sẽ được mã hoá cả 2 đầu để không bị hacker khai thác (dù có chiếm được).

Ví dụ dễ hiểu là các mật khẩu đăng nhập, thông tin tài khoản ngân hàng,… khi nhập trên các trang web sử dụng giao thức SSL thì dù hacker có đánh cắp được trong quá trình truyền tải giữ server và người dùng thì cũng không thể nào giải mã để sử dụng.

Khi website có sử dụng SSL thì truy cập trên trình duyệt sẽ qua giao thức https:// thay vì http://.

Để sử dụng được giao thức SSL ta thì Website phải được cài đặt các chứng chỉ bảo mật SSL (SSL Certificate), chứng chỉ này phải đảm bảo được công nhận (tin tưởng) từ cả 2 phía: server và trình duyệt người dùng (như Chrome, MS Edge, Firefox, Safari,..).

Có một số loại chứng chỉ thường gặp

  • Self-signed SSL: chứng chỉ tự ký, không được phát hành bởi một tổ chức nào, loại này thường chỉ dùng cho các hệ thống web vận hành ở giai đoạn thử nghiệm vì nếu dùng cho web live, các trình duyệt phổ biến không công nhận và có thể chặn/ cảnh báo người dùng khi truy cập.
  • Free SSL: được phát hành miễn phí bởi một số tổ chức, ở đây phổ biến nhất là bởi Let’s Encrypt. Let’s Encrypt SSL cũng là chứng chỉ được dùng phổ biến nhất thế giới, từ web cá nhân đến các tổ chức toàn cầu.
  • Commercial SSL: chứng chỉ trả phí, do các tổ chức phát hành, ví dụ Comodo SSL, GeoTrust SSl,..

Ở trên phân loại dựa vào nhu cầu sử dụng, vì thực ra còn có nhiều loại SSL phân loại dựa vào phạm vi sử dụng, ta không đề cập ở đây.

Nói chung, đối với đa số Website, lựa chọn Let’s Encrypt SSL là tối ưu nhất, hoàn toàn miễn phí, uy tín và được công nhận rộng rãi, cũng như có thể cài đặt rất dễ dàng trên hosting.

Hiện nay chứng chỉ Let’s Encrypt SSL chỉ có hạn sử dụng 3 tháng, nên cứ mỗi 3 tháng bạn cần gia hạn chứng chỉ cho Website. Rất may là hầu hết các trường hợp chứng chỉ này sẽ được tự động gia hạn, bạn không cần làm gì cả.

Ta có 3 trường hợp cài đặt Let’s Encrypt SSL phổ biến:

  1. Dùng Flexible SSL trên CloudFlare: để dùng cái này bạn bắt buột phải sử dụng dịch vụ DNS của CloudFlare và bật tính năng CDN (đám mây vàng). Cái này dễ nhất, CloudFlare tự động cài và tự động gia hạn, nhưng độ ổn định không cao.
  2. Dùng tính năng tự động cài Let’s Encrypt SSL trên cPanel nếu dùng Hosting cPanel. Cái này rất dễ, khi thêm domain vô hosting trên cPanel và nếu domain đã trỏ về hosting thì một lúc sau SSL sẽ được cài tự động, và cPanel cũng hỗ trợ tính năng tự gia hạn sau mỗi 3 tháng.
  3. Cài Let’s Encrypt SSL trên VPS: nếu dùng VPS, cài thủ công chứng chỉ SSL Let’s Encrypt khá vất vả, cần kiến thức cấu hình Webserver (Apache, Nginx). Nhưng nếu bạn cài đặt VPS bằng shellscript chất lượng (như LarVPS, CentMinMod…) thì việc cài SSL Let’s Encrypt cho domain chỉ cần vài cú click thôi, các shellscript này cũng hỗ trợ tính năng tự động gia hạn khi đến ngày, bạn không cần làm gì cả.

Ta sẽ xem chi tiết từng tùy chọn kể trên:

3.1 Dùng Flexible SSL của CloudFlare

Để dùng Flexible SSL của CloudFlare, ngoài việc sử dụng DNS của CloudFlare (trỏ domain về hosting bằng DNS trung gian CloudFlare) ta cần bật đám mây vàng (proxied) để sử dụng dịch vụ CDN miễn phí của CloudFlare:

Sau đó, chỉ cần vô mục SSL/TLS, chọn Flexible SSL là Website đã có chứng chỉ bảo mật SSL hợp lệ:

Flexible SSL của CloudFlare chỉ nên dùng nếu bạn không thể cài SSL Let’s Encrypt trên Hosting hay VPS, vì giao thức bảo mật của Flexible SSL chỉ được thực hiện giữa trình duyệt người dùng và máy chủ CDN của CloudFlare, chứ không phải giữa trình duyệt người dùng với hosting chứa Website như bình thường.

Tính ổn định của Flexible SSL không cao, phụ thuộc hoàn toàn vào hiệu suất hoạt động của CDN CloudFlare – mà vì bạn dùng gói miễn phí nên độ ổn định tất nhiên không bằng các gói CDN trả phí.

3.2 Dùng SSL Let’s Encrypt trên Hosting cPanel

Như đã nói, nếu bạn dùng hosting cPanel, thì chứng chỉ SSL của Let’s Encrypt sẽ được cài đặt và gia hạn tự động ngay khi bạn sẵn sàng trỏ domain về hosting và thêm domain vào tài khoản hosting.

Bạn có thể kiểm tra chứng chỉ SSL Let’s Encrypt của domain ở mục SSL/TLS Status trên cPanel, màu xanh (green) là domain đã có SSL hợp lệ:

 

Lưu ý khi dùng CDN (proxied) của CloudFlare

Nếu dùng DNS của CloudFlare và bạn chọn bật CDN (proxied – đám mây vàng) thì khi cài chứng chỉ SSL Let’s Encrypt hay SSL của các nhà cung cấp SSL uy tín khác cho Website, bạn cần vô mục SSL/TLS trên CloudFlare, check vô mục Full (strict):

3.3 Cài SSL Let’s Encrypt trên VPS

Khi dùng VPS, chúng ta thường có 2 lựa chọn là dùng Webserver Apache (LAMP Stack) hoặc Nginx (LEMP Stack), trên cả 2 lựa chọn này thì việc cài đặt website và chứng chỉ SSL bất kỳ luôn phức tạp, đòi hỏi bạn phải có kinh nghiệm dùng dòng lệnh Linux, hiểu biết về cấu hình Webserver.

Do đó, khi sử dụng VPS, với người dùng bình thường, tốt nhất là sử dụng các chương trình shellscript quản lý VPS uy tín, đây là các chương trình hỗ trợ bạn cài đặt mọi thứ từ Webserver đến Website, WordPress, SSL… bạn chỉ cần copy/ paste một vài dòng lệnh ban đầu, sau đó chỉ cần chọn các mục tương ứng để shellscript tự động làm toàn bộ các công việc phức tạp khác.

Trên thế giới thì shellscript uy tín nhất là CentMinMod, nhưng họ không hỗ trợ tiếng Việt, nên sẽ khó với người dùng VN. Chúng ta có một tùy chọn chính chủ VN uy tín như VPSSIM (VPS Simple) hay HocVPS và LarVPS…

Với LarVPS, bạn chỉ cần copy/  paste một dòng lệnh là mọi thứ sẽ tự động thực hiện:

  • Cài Webserver với LEMP Stack (Linux với Nginx, MariaDB, PHP-FPM)
  • Hỗ trợ thêm Website (domain) trong một nốt nhạc
  • Cài đặt SSL Let’s Encrypt cho domain cực nhanh, tự động gia hạn mỗi 3 tháng.
  • Cài WordPress cho Website trong vài giây
  • Rất nhiều tính năng khác

Chúng ta sẽ tìm hiểu kỹ về LarVPS ở phần sau của bài viết – mục Tạo Website WordPress trên VPS. Ở đây chỉ nói về cài SSL Let’s Encrypt cho domain trên LarVPS.

Sau khi bạn cài đặt xong LarVPS trên VPS, thì login với quyền root và gõ lệnh larvps (rồi enter) để truy cập menu sử dụng của LarVPS, gõ số 2 để chọn mục 2) Quản lý Let’s Encrypt:

Gõ số 2 (+enter) để tiến hành thêm Let’s Encrypt SSL cho domain:

Chọn số thứ tự domain muốn cài SSL, tiếp tục… khi yêu cầu nhập email thì bạn nên nhập email quản trị để nhận các thông báo về chứng chỉ từ Let’s Encrypt.

Quá trình cài đặt Let’s Encrypt SSL với LarVPS tự động hoàn toàn sau đó.

3.4 Kiểm tra chứng chỉ SSL Let’s Encrypt

Để kiểm tra xem chứng chỉ SSL của Website có hợp lệ không và thời hạn còn lại bao lâu (trước khi được gia hạn tự động), ta có thể vào các trang SSL Shopper hoặc SSL Labs, nhập domain vào để kiểm tra, kết quả sẽ hiển thị rất chi tiết, nếu mọi thứ ok thì sẽ như thế này:

 

3.5 Xử lý nếu SSL bị lỗi

Trong trường hợp có thông báo lỗi, tức cài SSL chưa thành công hoặc chứng chỉ không hợp lệ, thì có 2 nguyên nhân phổ biến:

  1. Bạn chưa trỏ domain về hosting hoặc đã trỏ nhầm, khi đó bạn vào check-host.net, nhập domain và kiểm tra xem có trỏ đúng IP của hosting không.
  2. Bạn đang bật dịch vụ CDN (ví dụ bật đám mây vàng – proxied trên mục DNS của CloudFlare), nếu bạn đang dùng CDN thì cần tắt đi để SSL có thể xác thực chính xác địa chỉ IP thực sự của server thì mới cài đặt được, sau khi cài thành công thì có thể bật lại CDN dùng thoải mái.
  3. Trường hợp nếu dùng Flexbile SSL của CloudFlare (hoặc của các dịch vụ CDN khác) thì hãy đảm bảo bạn đã bật tính năng CDN rồi (proxied/ đám mây vàng).

Sau khi check một trong 2 trường hợp trên, hãy tiến hành cài lại SSL nhé!

Hẹn gặp lại ở topic sau!

Scroll to Top