Hướng dẫn cài đặt và sử dụng Centmin Mod
Hướng dẫn cài đặt và sử dụng Centmin Mod cho người mới.
Chào mừng các bạn đã quay trở lại với kho tài liệu hướng dẫn tại Partner VN. Ở bài viết hôm nay mình sẽ hướng dẫn cài đặt và sử dụng Centmin Mod. Đây là một bash script cho phép người dùng có thể cài đặt tự động WebServer, PHP, MariaDB… thông qua menu hiển thị rất là tiện lợi, vì là scrip nên Centmin Mod sử dụng ít tài nguyên so với các Control Panel quản lý bằng giao diện,
Thế nhưng với người dùng đã quen sử dụng Panel khi chuyển sang script centmin mod thì sẽ gặp nhiều khó khăn trong việc sử dụng và quản lý, vì ở script này sẽ quản lý thông qua các dòng lệnh. Nhưng bạn đừng quá lo lắng vì bài viết này mình sẽ giúp bạn làm quen và sử dụng từ cơ bản đến nâng cao.
Ở bài này mình sẽ chia ra làm 2 Phần chính đó là giới thiệu, cài đặt và cách sử dụng. Hãy cùng mình bắt đầu nhé.
Phần 1: Giới thiệu và cài đặt Centmin Mod
1. Một số tính năng trên Centmin Mod
Khi đã sử dụng Centmin Mod thì không thể bỏ qua một số tính năng nổi bật trên scrip này. Mình sẽ giới thiệu một số tính năng nổi bật nhất đến bạn như sau.
- NGINX: Là một web server mạnh mẽ mã nguồn mở. Nginx sử dụng kiến trúc đơn luồng, hướng sự kiện vì thế nó hiệu quả hơn Apache server. Nó cũng có thể làm những thứ quan trọng khác, chẳng hạn như load balancing, HTTP caching, hay sử dụng như một reverse proxy. Nginx là kiến thức không thể thiếu đối với một web developer, system administrator hay devops.
- PHP(PHP-FPM): Vết tắt của FastCGI Process Manager, là chương trình có chức năng phiên dịch PHP khi chạy trang web cho web server. PHP-FPM được hình thành dựa trên sự mở rộng của CGI và hiện đang được đông đảo người dùng lựa chọn. PHP-FPM có chức năng tối ưu quá trình xử lý thông tin của các máy chủ web, hỗ trợ việc xử lý thông tin từ nhiều trang web trong cùng một khoảng thời gian một cách nhanh nhất.
- MariaDB/MySQL: MariaDB là hệ quản trị cơ sở dữ liệu miễn phí được phát triển từ hệ quản trị cơ sở dữ liệu mã nguồn mở MySQL. MariaDB được phát triển nhằm thay thế công nghệ cơ sở dữ liệu MySQL tuy nhiên cả 2 đều có ưu điểm và nhược điểm khác nhau.
- Nginx Vhost Setup: Hỗ trợ setup vhost NGINX và tạo đường dẫn thư mục hoàn toàn tự động,
- Nginx PageSpeed: PageSpeed áp dụng một số kỹ thuật tối ưu hóa (như, giảm dung lượng HTML, giảm số lượng request HTTP, giảm độ trễ ping, giảm số lần truy vấn DNS) bằng cách sử dụng các bộ lọc (filter) để xử lý các request
- Nginx Lua: Nginx được biên dịch với hỗ trợ các mô-đun Nginx dựa trên OpenResty Lua & Cloudflare Lua cùng với LuaJIT 2.1. Các mô-đun Nginx Lua bổ sung có thể được thêm vào nếu cần.
- Nginx SPDY & HTTP/2 SSL + LibreSSL: Hỗ trợ SSL Nginx HTTPS SPDY/3.1 / HTTP/2 được biên dịch tĩnh thông qua OpenSSL fork, LibreSSL 2.2 để hỗ trợ riêng cho các mật mã TLS / SSL mới như chacha20_poly1305.
- Nginx Vhost Statistics: Nginx được biên dịch với module thống kê lưu lượng Nginx Vhost để cung cấp số liệu thống kê trên mỗi tên miền trang web bao gồm số liệu thống kế về bộ nhớ cache.
- Nginx OpenResty Modules: Máy chủ web Nginx được biên dịch với các module Nginx bổ sung từ OpenResty để mở rộng bộ tính năng của Nginx.
- Centmin Mod Addons: Centmin Mod Addon chính thức sẽ cung cấp các tập lệnh shell bash độc lập để cài đặt các tính năng bổ sung và có thể cũng được mở cho nhà phát triển bên thứ ba.
- Memcached Server: Khi bạn cài đặt Centmin MOd lần đầu tiên thông qua tùy chọn menu. Máy chủ memcached sẽ tự động được cài theo và khởi động. Bạn có thể khởi động trong
/etc/init.d/memcached
- CSF Firewall: Phần mêm CSF (Tường lửa) được tự động cài đặt và cấu hình để bảo mật tốt hơn.
- OpenLiteSpeed Integration: Theo nhà phát triển thì OpenLiteSpeed sớm sẽ được triển khai và hỗ trợ trên Centmin tiếp theo.
- Third Party YUM Repos: Nhiều kho lưu trữ YUM của bên thứ 3 được bao gồm trong cài đặt Centmind Mod. Chúng bao gồm các kho EPEL, RPMForge, Remi, Axivo, Percona, Varnish YUM. Centmin Mod sử dụng plugin YUM Priorities để quản lý các repo YUM của bên thứ ba
2. Hướng dẫn cài đặt Centmin Mod
Yêu cầu hệ thống
- Hệ điều hành CentOS 7 trở lên (Vì CentOS 6 đã ngừng hỗ trợ vào ngày 30/11/2020 và nếu bạn sử dụng CentOS 8 thì cũng sẽ kết thúc vào năm 2021)
- RAM: 1GB
- Disk: 20GB
Bước 1: SSH vào máy chủ
Để cài đặt Centmin Mod, việc đầu tiên chúng ta cần làm là SSH vào VPS hoặc máy chủ của bạn với quyền root trước. Nếu bạn chưa biết cách SSH vào VPS hoặc Server của bạn thì bạn có thể tham khảo bài viết hướng dẫn sau:
- Hướng dẫn đăng nhập vào VPS Linux với giao thức SSH.
Bước 2: Cài đặt Centmin Mod
Tại thời điểm mình viêt bài này đã có PHP 8.0 rồi tuy nhiên script này chỉ mới hỗ trợ đến PHP 7.4 và trước khi cài đặt bạn hãy xem qua các phiên bản PHP mặc định khi cài đặt như sau để phù hợp với từng nhu cầu sử dụng.
Một số bản beta phát hành như sau, bạn có thể lự chọn phiên bản PHP mặc định khi cài đặt ban đầu. Và bên dưới là những tùy chọn gợi ý cho bạn.
- Nếu sử dụng PHP 5.6 bạn chạy lệnh này
yum -y update; curl -O https://centminmod.com/betainstaller.sh && chmod 0700 betainstaller.sh && bash betainstaller.sh
- Nếu sử dụng PHP 7.0 bạn chạy lệnh này
yum -y update; curl -O https://centminmod.com/betainstaller7.sh && chmod 0700 betainstaller7.sh && bash betainstaller7.sh
- Nếu sử dụng PHP 7.1 bạn chạy lệnh này
yum -y update; curl -O https://centminmod.com/betainstaller71.sh && chmod 0700 betainstaller71.sh && bash betainstaller71.sh
- Nếu sử dụng PHP 7.2 bạn chạy lệnh này
yum -y update; curl -O https://centminmod.com/betainstaller72.sh && chmod 0700 betainstaller72.sh && bash betainstaller72.sh
- Nếu sử dụng PHP 7.3 bạn chạy lệnh này
yum -y update; curl -O https://centminmod.com/betainstaller73.sh && chmod 0700 betainstaller73.sh && bash betainstaller73.sh
- Nếu sử dụng PHP 7.4 bạn chạy lệnh này
yum -y update; curl -O https://centminmod.com/betainstaller74.sh && chmod 0700 betainstaller74.sh && bash betainstaller74.sh
Vì PHP 7.4 hiện cũng khá ổn định và hầu như tương thích khá nhiều với các mã nguồn sử dụng do đó mình sẽ cài đặt phiên bản PHP 7.4 bằng lệnh sau.
yum -y update; curl -O https://centminmod.com/betainstaller74.sh && chmod 0700 betainstaller74.sh && bash betainstaller74.sh
Quá trình cài đặt diễn ra khá lâu và sẽ phụ thuộc vào cấu hình máy chủ của bạn. Thông thướng sẽ mất ít nhất 20-30 phút để hoàn tất. Và sau khi hoàn tất bạn sẽ nhận được thông báo cài đặt thành công và bên dưới là thông tin quan trọng bạn cần chú ý là. Thông tin mật khẩu root MySQL, đường dẫn file centmin.sh
đây là file bạn sẽ sử dụng thường xuyên trong việc vận hành Centmin Mod.
Như vậy ở Phần 1 này mình đã hướng dẫn bạn cài đặt hoàn tất Centmin Mod rồi. Hãy cùng mình bước sang Phần 2 để sử dụng và thiết lập thêm domain nhé.
Phần 2: Hướng dẫn sử dụng Centmin Mod
Phần 2 mình sẽ đi sâu vào cách sử dụng sau khi cài đặt hoàn tất nhé. Để mở bảng menu lên thì tại bên trong ssh bạn nhập lệnh centmin
để thiết lập email quản trị và bảng menu sẽ xuất hiện như bên dưới.
1. Giới thiệu bảng Menu
Tại bảng menu bạn sẽ thấy 24 chức năng tương ứng với số thứ tự từ 1 đến 24. Mình sẽ mô tả ngắn từng chức năng sau để bạn nắm và hình dung trước khi bước vào sử dụng nhé.
- Centmin install: Cài đặt centmin nhưng đã cài đặt rồi thì khi bạn nhập sẽ hiện dòng thông báo
Centmin Mod previous installation detected.
- Add Nginx vhost domain: Thêm tên miền mới vào vhost NGINX, để thêm tên miền mới bạn sẽ chọn tùy chọn này.
- NSD setup domain name DNS: Thiết lập DNS NSD tên miền
- Nginx Upgrade / Downgrade: Nâng cấp hoặc hạ cấp NGINX
- PHP Upgrade / Downgrade: Nâng cấp hoặc hạ cấp PHP
- XCache Re-install: Cài đặt lại XCache
- APC Cache Re-install: Cài đặt lại APC Cache
- XCache Install: Cài đặt XCache
- APC Cache Install: Cài đặt APC Cache
- Memcached Server Re-install: Cài đặt lại Memcached
- MariaDB MySQL Upgrade & Management: Quản lý và nâng cấp MariaDB MySQL
- Zend OpCache Install/Re-install: Cài đặt hoặc cài đặt lại Zend OpCache
- Install/Reinstall Redis PHP Extension: Cài đặt hoặc cài đặt lại Redis PHP
- SELinux disable: Vô hiệu hóa SElinux
- Install/Reinstall ImagicK PHP Extension: Cài đặt hoặc cài đặt lại ImagicK PHP
- Change SSHD Port Number: Thay đổi Port SSH
- Multi-thread compression: zstd,pigz,pbzip2,lbzip2: Chức năng nén đa luồng
- Suhosin PHP Extension install: Cài đặt extension Suhosin PHP
- Install FFMPEG and FFMPEG PHP Extension: Cài đặt FFMPEG và FFMPEG PHP Extension, mấy bạn làm video hay mp3 thì không thể bỏ qua cài đặt này.
- NSD Install/Re-Install: Cài đặt NSD
- Data Transfer (TBA): Truyền dữ liệu
- Add WordPress Nginx vhost + Cache Plugin: Tùy chọn này sẽ có thêm WordPress và Plugin Cache
- Update Centmin Mod Code Base: Cập nhật Centmin Mod
- Exit: Thoát khỏi menu
Sau khi bạn đã nắm hết các tính năng trong menu, bây giờ hãy cùng mình thực hiện tạo domain website đầu tiên nhé.
2. Thêm domain vào máy chủ và cài đặt SSL tự động
2.1. Bật tính năng tự động cài đặt SSL Let’s Encrrypt
Với bản Centmin Mod 123.09beta01
có bổ sung thêm tính năng hỗ trợ cài đặt SSL Let’s Encrypt khi bạn thêm website vào Centmin Mod. Nhưng với điều kiện tên miền của bạn phải được trỏ về IP máy chủ Centmin Mod thì việc cấp phát chứng chỉ SSL mới thành công. Sau khi tên miền đã được trỏ thành công bạn hãy bật tính năng tự động cài SSL lên, bạn chỉ thực hiện một lần duy nhất thôi thì các thao tác thêm lần sau sẽ sử dụng mãi mãi.
Bạn sử dụng lệnh vi
vim
hoặc nano
để mở file vi etc/centminmod/custom_config.inc
lên vào thêm vào đoạn sau.
LETSENCRYPT_DETECT='y'
Tiếp đến bạn chạy tiếp 2 lệnh này để cài đặt tính năng vừa thêm.
cd /usr/local/src/centminmod/addons ./acmetool.sh acmeinstall
2.2. Thêm domain vào máy chủ Centmin Mod
Tiếp theo bước này mình sẽ hướng dẫn bạn thực hiện thêm một tên miền vào trong Centmin Mod. Bạn nhập lệnh centmin
để mở bảng menu lên nhé. Sau đó bạn chọn 2). Add Nginx vhost domain
để thêm vào.
Video ngắn hướng dẫn thực hiện
Khi bạn tùy chọn sẽ hiển thị một số thông tin để bạn nhập vào. Bạn sẽ chú thích kê bên các dòng yêu cầu như bên dưới.
Do you want to continue with Nginx vhost site creation ? [y/n] y <= Chọn Y để tiếp tục Enter vhost domain name to add (without www. prefix): quanaz.Partner VN.info <= Nhập vào tên domain Create a self-signed SSL certificate Nginx vhost? [y/n]: y <= Chọn Y để tạo chứng chỉ tự ký Get Letsencrypt SSL certificate Nginx vhost? [y/n]: y <= Chọn Y để tạo chứng chỉ Let's Encrypt To get Letsencrypt SSL certificate, you must already have updated intended domain vhost name's DNS A record to this server's IP addresss. If top level domain, DNS A record is needed also for www. version of domain otherwise, Letsencrypt domain name validation will fail. continue [y/n] ? y <= Chọn Y để tiếp tục quanaz.Partner VN.info is not a top level domain your server IPv4 IP address: 45.252.249.100 current DNS A record IPv4 address for quanaz.Partner VN.info is: 45.252.249.100 Do you want to continue [y/n]: y <= Chọn Y để tiếp tục You have 4 options: 1. issue staging test cert with HTTP + HTTPS (untrusted) 2. issue staging test cert with HTTPS default (untrusted) 3. issue live cert with HTTP + HTTPS (trusted) 4. issue live cert with HTTPS default (trusted) Enter option number 1-4: 3 <= Chọn số 3 để phát hành chứng chỉ trực tiếp (Tin cậy) Create FTP username for vhost domain (enter username): quanPartner VN <= Nhập vào để tạo User FTP Auto generate FTP password (recommended) [y/n]: y <= Chọn Y để ngẫu nhiên mật khẩu FTP username you entered: quanPartner VN FTP password auto generated: v!!8:ev/n]Y'Zgq=xR-w, Password: Enter it again: SSL Vhost Setup…
Tiếp đến khi được hỏi các tùy chọn bạn chọn Y
để đồng ý nhé. Và sẽ mất ít phút để hoàn tất các bước thiết lập vhost và đường dẫn cấu hình chứng chỉ tên miền và ssl. Khi xong bạn sẽ nhận được các thông tin như sau và mình sẽ chú thích kế bên các dòng.
## Thông tin tài khoản FTP của bạn FTP hostname : 45.252.249.100 FTP port : 21 FTP mode : FTP (explicit SSL) FTP Passive (PASV) : ensure is checked/enabled FTP username created for quanaz.Partner VN.info : quanPartner VN FTP password created for quanaz.Partner VN.info : v!!8:ev/n]Y'Zgq=xR-w, ## Đường dẫn file cấu hình vhost của tên miền vừa thêm vhost for quanaz.Partner VN.info created successfully domain: http://quanaz.Partner VN.info vhost conf file for quanaz.Partner VN.info created: /usr/local/nginx/conf/conf.d/quanaz.Partner VN.info.conf vhost ssl for quanaz.Partner VN.info created successfully domain: https://quanaz.Partner VN.info ## Đường dẫn file cấu hình chứng chỉ SSL vhost ssl conf file for quanaz.Partner VN.info created: /usr/local/nginx/conf/conf.d/quanaz.Partner VN.info.ssl.conf /usr/local/nginx/conf/ssl_include.conf created Self-signed SSL Certificate: /usr/local/nginx/conf/ssl/quanaz.Partner VN.info/quanaz.Partner VN.info.crt SSL Private Key: /usr/local/nginx/conf/ssl/quanaz.Partner VN.info/quanaz.Partner VN.info.key SSL CSR File: /usr/local/nginx/conf/ssl/quanaz.Partner VN.info/quanaz.Partner VN.info.csr Backup SSL Private Key: /usr/local/nginx/conf/ssl/quanaz.Partner VN.info/quanaz.Partner VN.info-backup.key Backup SSL CSR File: /usr/local/nginx/conf/ssl/quanaz.Partner VN.info/quanaz.Partner VN.info-backup.csr letsdebug API check log: /root/centminlogs/letsdebug-quanaz.Partner VN.info-181220-160444.log upload files to /home/nginx/domains/quanaz.Partner VN.info/public vhost log files directory is /home/nginx/domains/quanaz.Partner VN.info/log Current vhost listing at: /usr/local/nginx/conf/conf.d/
Sau khi hoàn tất bước thêm tên meièn và SSL, bạn chọn số 24
tương ứng Exit
để thoát bảng điều khiển nhé. Ngay bây giờ bạn có thể truy cập vào tên miền để kiểm tra xem đã hoạt động chưa rồi đó.
Như vậy đã hoàn tất xong bước thêm tên miền rồi, ngay bây giờ bạn có thể đăng nhập bằng tài khoản FTP đã được tạo và truy cập vào /home/nginx/domains/my-domain/public
để upload mã nguồn rồi nhé.
Tổng kết
Kết thúc bài hướng dẫn cài đặt và sử dụng Centmin Mod với 2 phần trên hy vọng bài viết này sẽ giúp bạn cài đặt thành công và quản lý được script này. Với các bài viết sau của Centmin Mod mình sẽ hướng dẫn bạn cài đặt mã nguồn và tạo Database nhé. Còn ở bài viết này mình xin tạm dừng tại đây.
- Hướng dẫn cài đặt WordPress lên Centmin Mod
Chúc bạn thực hiện thành công.
Nếu các bạn cần hỗ trợ các bạn có thể liên hệ bộ phận hỗ trợ theo các cách bên dưới:
- Hotline: 028 730 24768 (Ext 0)
- Ticket/Email: Bạn dùng email đăng ký dịch vụ gửi trực tiếp về: support@partner.com.vn.