Centmin Mod LEMP Web Stack

Centmin Mod là một *UNIX script dành cho hệ điều hành CentOS 6 & 7 giúp bạn tự động cài đặt một webserver sử dụng Nginx, MariaDB, PHP-FPM & CSF Firewall

Ban đầu khi mới biết tới Centmin Mod mình không có hứng lắm, vì bộ công cụ của họ đồ sộ quá, mình nghĩ nó sẽ không thích hợp với các VPS ít RAM (~ 512MB) như mình đang có, các tính năng tăng tốc thì chủ yếu dùng RAM để cache, thành ra mình nghĩ thèng nào cũng như thèng nào, dùng thèng nào quen thuộc đơn giản, dễ sử dụng như VPSSIMHocVPS là được, tuy thế khi dùng tới EasyEngine thì quan điểm của mình thay đổi, thật sự có những bộ script tự động cài đặt họ tối ưu khiến website mượt mà hơn hẳn

Và Centmin Mod có thể nói là một install script tốt nhất hiện nay về tốc độ, hiệu năng và bảo mật, cái này thì rất dễ kiểm chứng, bạn cứ thử cài tất cả install script trên cùng 1 cấu hình, xong cài site đang chạy của bạn vào, tất cả setting như nhau, xong tự đánh giá là được 😛

Mình recommend dùng Centmin Mod cho bạn nào có yêu cầu cao nhất về tốc độ 😀 còn tổng thể cân bằng các thứ thì bạn chỉ cần dùng Webinoly là đủ
Lý thuyết các install script rất đơn giản, bạn không cần nhớ, hay biết bất cứ dòng lệnh nào, vẫn có thể vận hành và quản trị tốt hệ thống, tuy thế nếu bạn vẫn thấy quá khó thì có thể dùng VPSSIM hoặc HocVPS, những script của người Việt viết, bạn có thể bắt đầu như thế cho dễ, chạy lỗi hay thế nào hỏi tác giả người Việt vẫn dễ nói chuyện hơn 😛 

Centmin Mod LEMP Web Stack, giới thiệu và đánh giá sơ bộ

Cài đặt cơ bản thì cũng như các script khác thôi, type đúng 1 dòng 😀 ở bài này mình dùng VPS Amazon Lightsail gói $10/month, cấu hình cụ thể như bên dưới 😛

2 GB RAM, 1 vCPU60 GB SSD

CentOS 7

Singapore, Zone C (ap-southeast-1c)

Về hệ điều hành thì dùng CentOS 6 hay 7 đều được, lý thuyết VPS < 1 GB Ram thì chạy CentOS 6, > 1 GB RAM thì CentOS 7
Thực tế mình từng chạy CentOS 7 trên các gói 512 MB cả năm, tất cả đều ổn định, mượt mà, nên bạn không cần quá quan trọng chuyện ít RAM hay chọn bản CentOS nào 😀

Cá nhân thì mình recommend chạy CentOS 7, đơn giản vì nó mới hơn thôi 😛 phần vì thực tế bạn nào quen thuộc với CentOS 6 thì cũng đã chẳng cần phải dùng tới mấy cái install script dạng này

Phiên bản Centmin Mod ở bài này là bản Centmin Mod 123.09beta01 chạy PHP 7.3.5 mới nhất (lý do chính mình viết lại bài này cũng vì họ đã hỗ trợ sẵn lên bản PHP mới nhất v7.3.5 vừa ra mắt 02/05/2019)

Cài đặt Centmin Mod

Centmin Mod cài đặt rất lâu, nhất là trên con HDD cùi mía của Amazon Lightsail, ở các bản cũ mình cài, có khi cần tới 2-3h mới xong, bản này thì khá nhanh, chỉ 2018s, tầm 33 phút 😀

Mình không đánh giá điểm này là tốt hay xấu ở một cái script auto installer, vì sao? đã dùng tới script auto thì phần nhiều là không biết gì, thế thì thà cài đủ các thứ còn hơn thiếu, tới lúc site chạy trục trặc, thiếu này thiếu nọ lại không hiểu vì sao

PHP 7.3.5 

Nginx v1.15.12 và GCC 8.2.1

MariaDB v10.3.14

Tất cả các thứ đều gần như mới nhất và tốt nhất ở thời điểm hiện tại 😀 về GCC thì nó tùy thuộc vào CPU của bạn đang chạy thế nào, 1 core hay nhiều core? mỗi loại nó sẽ có 1 bản GCC cho ra tốc độ tốt nhất, theo mặc định thì bản v8.2.1

7700_nginx-h2load-ecdsa256-bit-01

Có quá nhiều các giá trị ảnh hưởng tới tốc độ, phiên bản PHP, Nginx, GCC nào …. rồi chạy trên gzip hay br, rồi chạy http/2 theo cơ chế mã hóa nào, mỗi cái nó lại cho ra 1 giá trị khác nhau

Tạm hiểu thì bạn cứ hình dung bản vừa cài là bản được tác giả setting sẵn tốt nhất mọi thứ có thể đi cho nhẹ đầu 😀

Để vào quản trị của Centmin Mod thì bạn gõ lệnh trên, nhập email cho lần đầu vào, sau đó ngồi chờ nó chạy thôi 😀

Tổng quan menu sau khi cài đặt xong thì như trên 😀

Bài viết lại nên mình sẽ viết thêm 1 số tinh chỉnh khác cho Centmin Mod 😀

Tùy Biến Centmin Mod

Bắt đầu bằng type 24 để thoát khỏi menu (thường ở lần đầu tiên thoát, bạn phải type 24 1 lần nữa mới thoát ra được)

Chỉnh về múi giờ Việt Nam

Type “date” để kiểm tra lại ngày tháng xem về đúng giờ Việt Nam chưa là được ?

Tiếp theo là cài đặt thêm Letsencrypt dành cho bạn nào có nhu cầu chạy https (SSL)

Thêm vào đoạn code bên dưới

Ctrl + O -> Enter -> Ctrl + X để save và thoát ra

Cài thêm htop, zip, unzip

Bật Shell_exec

Mặc định, Centmin Mod họ tắt shell_exec vì lý do an toàn, tuy thế dùng VPS riêng, cá nhân mình nghĩ không thành vấn đề, Duplicator Pro và rất nhiều plugin hay script khác cần quyền này để có thể chạy, EE hay Webinoly đều bật shell_exec chạy cả thôi

Bạn sẽ thấy dòng php_admin_value[disable_functions] = shell_exec ở cuối

Xóa phần shell_exec đi là được

Ctrl + O -> Enter -> Ctrl + X để save và thoát ra

Khởi động lại php để thay đổi có hiệu lực

Chỉnh sửa các giá trị memory_limit, max_execution_time, max_file_uploads, post_max_size …. (bước này nếu bạn không hiểu là gì thì có thể bỏ qua)

Theo mặc định mình cài vào thì đang là như thế, thường các giá trị này sẽ được tự động tạo ra dựa theo CPU và RAM của bạn, sửa lại các giá trị nếu bạn muốn

Con VPS này nhiều RAM nên mình sẽ tăng memory_limit lên 512MB (thường thì tầm 256 MB chạy WordPress cũng ổn rồi)

Nôm na cấu hình mình sửa lại nó như thế, Ctrl + O -> Enter -> Ctrl + X để save và thoát ra

Khởi động lại php để thay đổi có hiệu lực

Làm xong xuôi hết thì nên reboot lại VPS một phát để kiểm tra lại 😛

2019-05-03_10-41-07

Ở trên là các thứ mình dùng và thấy cần sửa khi chạy WordPress, nên thêm vào, Centmin Mod là một trong các install script có phần hướng dẫn và cộng đồng support đồ sộ nhất, bạn có thể tham khảo thêm FAQ hay đơn giản nhất là google search 😀 gần như cái gì cũng có đủ cả, tác giả Centmin Mod rất giỏi về kĩ thuật để có thể giúp bạn 😀

Cài đặt WordPress

Vào menu quản trị:

Type 22 rồi cứ thế next thôi, setup chuẩn của họ là WP + Cache Enabler 

Bạn nào thích cài thêm SSL thì ở phần về SSL chọn như bên dưới

Mình thì giờ không còn dùng SSL qua Letsencrypt nữa mà dùng SSL của Cloudflare luôn

Cache Enabler được Centmin Mod config luôn vào Nginx, nó khá tương đồng với Rocket-Nginx, nghĩa là khi Cache Enabler tạo cache, Nginx sẽ kiểm tra, thấy có file tĩnh html thì sẽ lấy trực tiếp ra luôn, không phải thông qua PHP nữa 😀

2019-05-03_11-26-26

Mặc định thì họ cài đặt sẵn Autoptimize, Cache Enabler, CDN Enabler, Disable XML-RPC, Sucuri Security đây là commbo theo mình khá hoàn hảo trong việc tăng tốc độ và bảo mật cho WordPress, phải công nhận là bản mặc định WordPress cài vào, Centmin Mod làm quá ổn 😀 gần như trong các bản WP mặc định, không 1 install script nào có thể đọ nổi về tốc độ

Với tác giả của EasyEngine, mình dành cho họ một sự ngưỡng mộ, tư duy các vấn đề của họ rất họp với quan điểm của mình, còn với eva2000, người viết lên Centmin Mod, mình giành cho anh ấy sự khâm phục, thêm 1 tính năng vào, giúp cải thiện tính theo 10-20ms (0.001-0.002s), về lý thuyết không để làm gì, nhưng anh ấy vẫn làm, tư duy phải nói là quá sức cực đoan về tốc độ :]]

Cũng nhờ cái tư duy này, mà Centmin Mod luôn là script có tốc độ load trang nhanh nhất ở tất cả các bài test lý thuyết và dùng thực tế của mình, thành ra mình đã chuyển bibica.net, trang mà bạn đọc thấy bài này ấy, sang dùng Centmin Mod khoảng nửa năm nay 😛

Update 28/08/2019: cũng chưa rõ Centmin Mod tinh chỉnh thêm cái gì, mà sau khi cập nhập lại bản mới nhất của họ, phần cache xử lý cực tốt

2019-08-28_2-39-22

Từ lần truy cập thứ 2 trở đi, tốc độ vào trang chỉ ~ 63ms (0.07s) 😀

48 thoughts on “Centmin Mod LEMP Web Stack”

  1. bạn cho mình hỏi nếu tiện khi mình sử dụng centminmod, cài 1 số script có gọi API về thì như kiểu centminmod nó chặn có cách nào xử lý vấn đề đó ko, mình đã thử xem các nginx domain và hệ thống chỉnh sửa thêm thắt mà vẫn ko đc

    Reply
    • Bạn search tên plugin + centminmod trên google xem thế nào 😀

      Thường thì mình hay gặp nhất là centminmod họ tắt sẵn 1 số quyền root vì lý do bảo mật, cần bật lên, hay 1 số plugin mình từng dùng kiểu backup, cần host có cài zip với unzip, chưa cài thì nó không chạy thôi

      Còn cụ thể hơn có thể vào forum centminmod hỏi cụ thể, tác giả support trong 30s ấy mà 😀

      Reply
  2. Admin và AE cho hỏi hiện tại đã cài đặt xong nhưng truy cập vào http và https thì khác nhau, cách chỉnh sửa thế nào có thể hướng dẫn giúp được không ạ? Xin cảm ơn!

    Reply
        • Tùy bạn muốn dùng gì để chạy ssl thôi, chạy thông qua Centmin Mod thì thêm vào dòng “nano /etc/centminmod/custom_config.inc” đã nói ở phần “Tùy Biến Centmin Mod”

          Cá nhân thì mình vẫn recommend dùng ssl qua SSL của Cloudflare, nó nhàn, cài 1 lần xong là thôi, không phải quan tâm gì tới ssl nữa, sau có chuyển host, config hay gì, chỉ sửa lại xíu là được 😀

          SSL qua Letsencrypt lâu lâu hết hạn nó cứ ngáo ngáo, mất thời gian để xử lý lắm 😀

          Reply
          • bạn ơi có hướng dẫn cài ssl qua Cloudflare từ centmin mod không cho xin với, thanks

    • Theo hình thì hình như là do dãy IP nào đó nhập sai pass nhiều lần bị chặn lại mà?

      Reply
        • Thường config xong VPS thì khóa cái port ssh lại cho an toàn cũng được 😛 khi nào cần dùng thì lại vào mở ra 😛

          Reply
  3. Anh ơi, anh có thể làm 1 bài so sánh centmin Mod với Litespeed webserver+ cyber panel được ko a? 😀

    Reply
    • Hmm, góc độ cá nhân, mình nghĩ từ lúc Cloudflare hỗ trợ location Việt Nam rồi, thì mọi cấu hình, tinh chỉnh, nó bị đưa xuống dưới, phụ cả

      Như trường hợp của thèng bibica.net, dù location đang để ở US, mà nhờ Cloudflare, mình ấn phát thấy cũng vào ngay rồi, giờ có config kịch trần ở cả phía server và website, nó …. cũng thế, gần như không thể nhanh hơn, có thể ví dụ ở bài so sánh EasyEngine Vs Centmin Mod Vs RunCloud Vs Webinoly (https://bibica.net/easyengine-vs-centmin-mod-vs-runcloud-vs-webinoly/)

      Về tính ổn định thì mình dùng Centmin Mod từ 11/2018 và gần như không gặp bất cứ lỗi gì cả

      Cả tốc độ và ổn định mình đang đều hài lòng với Centmin Mod rồi, nên cũng không muốn tìm hiểu thêm

      Reply
      • Mình cũng dùng centminmod từ hồi đọc bibica, đúng là rất nhanh và rất ổn định.

        Mình cũng đã thử dùng litespeed cache + cyberpanel, tốc độ cũng chỉ như centminmod, mà lại ko ổn định. Đôi khi thời gian load trang lên cả mười mấy giây. 🙁

        Còn về cloudflare thì mình chưa dùng, mình có ác cảm với nó. Theo mình thấy, một số web dùng cloudflare, lâu lâu lại hiện ra trang web của tg cloudflare báo là website đó bị down. Thế nhưng, mình refresh lại thì vẫn vào bt.
        Có vẻ như nó muốn điều hướng user qua web của cloudflare vậy. 🙁 Mà mình gặp vụ này khá thường xuyên.

        Reply
        • Cấu hình server thì EasyEngine, Centmin Mod, RunCloud, Webinoly, giữa thèng nhanh nhất và chậm nhất, nó lệch chỉ …. 36 ms, nghĩa là 0.036s 😀 một con số vô nghĩa ở mặt thực tế 😀

          Còn về lý thuyết, ở vài bài test, mình đã post khá nhiều lần trên này, 4 script trên + WordPress + 1 plugin cache, nó dư sức chịu tải cho vài trăm khách tới cả ngàn khách online …. mỗi giây, nói dễ hiểu tí là nó thừa sức chịu tải cho cả vài chục triệu truy cập mỗi ngày, trên 1 con VPS chỉ cần 1 GB RAM

          Thế thì việc gì phải quan tâm tới thèng nào khác làm gì nữa cho mệt 😀

          Về Cloudflare thì thỉnh thoảng hệ thống của nó vẫn có lỗi, ít nhất trong thời gian mình dùng, nó nó vấn đề đâu đó khoảng 5 phút 😀 còn chuyện trang bạn đang bình thường mà Cloudflare báo tạch cũng …. vô cùng dễ hiểu, kiểu server của cloudflare kết nối tới trang bạn, vì lý do nào đó, nó bị chặn lại, và cái này thì có 1001 lý do để giải thích 😀

          Cá nhân thì mình dùng cloudflare, vừa cache, vừa dns, vừa ssl, vừa giấu IP thực của server …. tất cả mọi thứ hoàn toàn bình thường 😀

          Và nhờ nó mà dù server US, nhưng khi mạng VN dứt cáp, vẫn truy cập vù vù, và cơ sở hạ tầng của cloudflare, nó ở tầm đỉnh của thế giới, sử dụng lại còn FREE nữa 😛

          Và sự thật là cloudflare nó to tới nổi chẳng cần làm ba cái trò mèo là báo trang bạn sập để hiện cái logo của họ lên :]] thực tế dùng qua cloudflare nghĩa là bạn phải truy cập traffic vào cloudflare trước rồi, họ muốn làm cái gì, lý thuyết họ làm được tất 😀

          Reply
  4. Admin làm bài so sánh chạy php script không có cache trên cả 3 thằng Webinoly, EE với Centmin Mod đi :))

    Reply
  5. Làm theo hướng dẫn này, thì cái rocket-nginx không hoạt động được đâu anh nhé 😢

    Reply
    • Cũng không chắc 100% vụ này lắm, vì lâu rồi mình chưa dùng thêm Rocket-Nginx làm gì nữa cả 😛

      Reply
  6. Anh ơi anh đang dùng plugin hay config Centmin kiểu gì để nó chuyển ảnh sang webp thế?

    Reply
  7. Sao cái centminmod này khó sử dụng thế nhỉ. Cài đặt xong, rõ ràng tắt cái http protect wp-login rồi mà nó vẫn cứ hỏi. Mà kg biết pass là gì cả, vì nó không bắt mình thiết lập pass đó. Cái ssl thì không báo là thành công hay không, vào http vẫn là http, kg thấy redirect sang https. Haizz

    Reply
    • Cá nhân mình nghĩ, ai dùng mấy cái script auto setup thế này, phần nhiều chưa có kinh nghiệm, thế nên mình thấy Centmin Mod quá sức lằng nhằng và rắc rối, chưa kể tác giả update thay đổi cực kì nhiều, thành ra ngay đầu bài viết mình cũng recommend dùng Webinoly thôi 😀

      SSL thì mình recommend dùng của Cloudflare (https://bibica.net/hsts-cho-bibica-net/), cài đặt duy nhất 1 lần là xong, bạn không phải quan tâm tới vấn đề lỗi, renew hay gì nữa

      Vụ hỏi pass khi vào admin thì bạn tham khảo link này xem (https://community.centminmod.com/threads/wp-login-php-http-password-protection-details.16136/), lâu quá không cài nên mình không nhớ, chứ khi cài đặt từ menu 22. chọn off thì nó đâu có hỏi ta 😀

      Centmin Mod hiện tại mình đang dùng cho thèng bibica.net, cho vui là chính thôi, thực tế nó có nhanh hơn các tool khác, nhưng không đáng kể, để bạn phải mất thời gian, tìm hiểu các setting của nó, thiệt á, nội cái vụ bạn lỡ add site vào rồi, mà lúc add không tạo ssl, sau muốn tạo thêm ssl là … ngơ luôn, vì họ không có setting update lại sau 😀

      Mình vẫn recommend dùng Webinoly thôi 😀

      Reply
  8. Theo như bibica nói thì cài cenmin mod xong có sẵn hết rồi thì không cần cài WP Rocket với Rocket-nginx nữa đúng không?

    Reply
    • Vâng, xin lỗi vì hôm nay mình mới thấy comment này 😀

      Nếu cài theo mặc định dùng Cache Enabler để cache thì họ tự làm tất cả các vấn đề liên quan tới tốc độ rồi, từ wordpress tới cấu hình server, cài vào là gần như max speed 😀

      Reply
  9. Quản lý kiểu dòng lệnh này thì hơi ngại vì có thể phải gửi tài khoản quản trị host nên em muốn
    nhờ bác tư vấn xem nên cài cái nào để quản lý kiểu miễn phí như vestacp không nhỉ?
    Em đang dùng vestacp nhưng có vẻ khá nặng , không biết có con nào tốt hơn không?

    Reply
  10. Nâng cấp upgrade phiên bản thui hehe. Vừa làm thử ngon phết.

    Tải bản mới nhất về máy.

    Giải nén rồi xoá thư mục wp-Content

    Zip lại rồi tải lên vps

    Giải nén bằng cmd

    Chạy wp-admin/upgrade.php

    Reply
    • Ah, thế không rõ thật, vì từ lúc dùng WP đã thấy nó có tự động cập nhập, ấn vào phát là xong, nó viết ra để mọi người không phải cần biết bất cứ dòng lệnh nào, đơn giản, ai cũng dùng được 😀

      Còn kiểu của ông thì hơi bị bựa ^_^

      Reply
  11. Cập nhật WP qua VPS kiểu gì cho nhanh nhể. Toàn update tự động nên giờ cần tư vấn, hehe.

    Reply
  12. Tại thấy nó cồng kềnh quá, mà ít tính năng cần thiết. Tất nhiên giờ nó cũng đẻ ra các loại function mới bổ sung. Mình đại ghét plugin :-).

    Nhưng giờ có nhu cầu đục lỗ con WP này để luyện chưởng nên dùng cho tiện, thực ra vẫn viết blog trên… blogspot. Chả hiểu nổi. Thằng WP cũng có mấy cái dễ xài nên thôi dùng tạm.

    Reply
  13. Ờ bài có vẻ dài, chắc là một vẻ đẹp loằng ngoằng với phong cách đặc trưng. Thật ra không để ý, lâu rồi không xài WordPress, haha. Thanks. Fix rồi.

    Reply
    • Đa phần mí tay code ít ai thích WP 😀 cơ mà giờ nó quá phổ cập rồi, dùng cho tiện, gần như tính năng gì cũng có người viết, gặp trục trặc gì google phát cũng ra kết quả 😀

      Dùng mí thằng lạ lạ cho bờ gồ rồi mún thêm cái gì cũng không được thì mệt lắm ^_^

      Reply
  14. Thánh tối ưu, có tâm vãi. Mới thử viết lại blog any comment hem ? Vietphp.net hehe.

    Reply

Leave a Comment