Liên hệ tư vấn

Tổng quan về WHM [Phần 30]: Plugins trên WHM


Phần 30: Đây là tuỳ chọn giúp tinh chỉnh các Plugin được cài vào hệ thống.

Tổng quan về WHM – Mạnh Đức MDIGI

Giới thiệu

Plugin WHM thêm chức năng cấp quản trị viên hệ thống tùy chỉnh vào máy chủ cPanel & WHM.

Tạo mã phụ trợ của plugin của bạn

Sử dụng ngôn ngữ lập trình ưa thích của bạn để viết mã phụ trợ của plugin.

Nếu chức năng plugin của bạn yêu cầu các quyền cụ thể, thì bạn phải thêm các kiểm tra Danh sách kiểm soát truy cập (ACL) thích hợp .

Tạo giao diện plugin của bạn

Để cho phép người dùng WHM truy cập plugin của bạn trong giao diện WHM, hãy cung cấp một hoặc nhiều giao diện.

  • Để biết thêm thông tin, hãy đọc tài liệu Hướng dẫn về Plugin WHM – Giao diện của chúng tôi .
  • Để biết các bước tạo giao diện WHM cơ bản, hãy đọc các hướng dẫn Tạo Giao diện WHM Mới trong Bộ công cụ Mẫu và Tạo Giao diện WHM Mới trong PHP của chúng tôi .

Thêm tập lệnh cài đặt

Bạn có thể bao gồm tập lệnh cài đặt với phần bổ trợ WHM của mình. Chúng tôi không yêu cầu một ngôn ngữ lập trình cụ thể hoặc các chi tiết cụ thể khác cho tập lệnh này. Tuy nhiên, chúng tôi thực sự khuyên bạn nên tạo một tài khoản và tài khoản đó thực hiện ít nhất các hành động sau:

  • Kiểm tra các thư mục cài đặt thích hợp và tạo bất kỳ thư mục nào chưa tồn tại.
  • Đăng ký plugin với hệ thống AppConfig.
  • Sao chép các tệp plugin, mẫu và biểu tượng vào đúng vị trí.

Quan trọng:

Đăng ký AppConfig không tự động tìm kiếm hoặc chạy tập lệnh cài đặt. Bất cứ khi nào quản trị viên hệ thống cài đặt plugin, họ phải giải nén tệp và chạy tập lệnh cài đặt theo cách thủ công .

Để biết thêm thông tin hoặc để xem tập lệnh cài đặt BASH mẫu, hãy đọc tài liệu Hướng dẫn về phần bổ trợ WHM – Tập lệnh cài đặt của chúng tôi .

Thêm tập lệnh gỡ cài đặt tùy chọn

Khi bạn cung cấp tập lệnh gỡ cài đặt, hãy đảm bảo rằng tập lệnh đó sẽ xóa biểu tượng, tệp và thư mục của plugin, sau đó hủy đăng ký plugin với AppConfig.

  • Không xóa tệp cấu hình AppConfig của plugin trước khi bạn hủy đăng ký plugin.
  • Để biết thêm thông tin và tập lệnh gỡ cài đặt ví dụ, hãy đọc tài liệu Hướng dẫn về phần bổ trợ WHM – Gỡ cài đặt phần bổ trợ của chúng tôi .

Thêm một biểu tượng

Tập lệnh cài đặt của bạn sẽ lưu trữ biểu tượng plugin của bạn trong /usr/local/cpanel/whostmgr/docroot/addon_plugins/ thư mục.

  • Chúng tôi thực sự khuyên bạn nên sử dụng hình ảnh 48×48 .png với nền trong suốt.
  • Tệp hình ảnh phải sử dụng loại tệp hình ảnh được hỗ trợ ( .gif , .jpeg , hoặc .png ).

Thêm tài sản khác

Thêm bất kỳ tệp hoặc nội dung nào khác vào tệp plugin của bạn. Nhiều plugin WHM bao gồm các tệp bổ sung sau:

  • Tệp LICENSE cung cấp thông tin giấy phép cho plugin.
  • Một README tệp có thể cung cấp hướng dẫn cài đặt, thông tin bản quyền và giấy phép cũng như liên kết đến tài liệu và các tài nguyên bên ngoài khác.

Đăng ký plugin của bạn với AppConfig

Để sử dụng các plugin WHM, bạn phải đăng ký chúng với hệ thống AppConfig. Đăng ký AppConfig sẽ tự động thêm các biểu tượng plugin vào giao diện WHM. Nó cũng định cấu hình các yêu cầu ACL của plugin, nâng cấp thông tin tập lệnh và các biến plugin khác.

  • Để đăng ký với AppConfig, bạn phải tạo tệp cấu hình AppConfig và đăng ký plugin với AppConfig .
  • Để biết các bước đăng ký plugin, hãy đọc hướng dẫn Đăng ký Plugin WHM với AppConfig của chúng tôi .

Kiểm tra plugin của bạn

Chạy tập lệnh cài đặt plugin của bạn và đảm bảo rằng plugin của bạn hoạt động chính xác.

Để được trợ giúp khắc phục sự cố phát triển plugin WHM phổ biến, hãy đọc tài liệu Hướng dẫn kiểm tra mã tùy chỉnh của chúng tôi .

Hướng dẫn tạo PLUGIN trên WHM

Quy trình viết một Plugin cho WHM/cPanel. 

Dưới dây là các thao tác cần thực hiện một quy trình viết Plugin cho WHM/Cpanel  

Bước 1: Lập trình:  

Đây là giai đoạn chiếm tới 99% quá trình thực hiện, mọi thao tác cũng như đặc  điểm của Plugin sẽ được lập trình viên viết một cách đầy đủ, đi kèm theo đó là các 

file hình ảnh, script  sau khi đã đảm bảo chương trình hoàn tất, tiến tới bước thứ 2. 

Bước 2: Upload lên server:  

Chương trình sau khi hoàn tất sẽ được upload lên server, chúng ta cần upload toàn bộ data cần thiết cho chương trình đó lên server, thư mục chứa Plugin trên server là: 

/usr/local/cpanel/whostmgr/docroot/cgi/ 

Đây là thư mục chứa các Plugin cho server, các bạn cần chú ý là phải upload các file thự thi Plugin lên thư mục đã nêu trên, nếu không thì Plugin của chúng ta không thể hoạt động được.  

Bước 3: Chỉnh sửa: 

  • Đây là thao tác luôn luôn cần thiết khi thực hiện một Plugin, data của Plugin sau khi đã được upload lên server cần thay đổi một vài thông số (các bạn có thể thay đổi trước khi upload cũng được) để phù hợp với cPanel, một số thuộc tính cần chỉnh sửa như sau:  
  • Đảm bảo rằng file script của bạn (php, perl) bắt buộc phải bắt đầu bằng addon_ và kết thúc bằng .cgi, ví dụ: addon_NAME.cgi  
  • WHM Plugin luôn luôn phải chạy với quyền root, vì thế cần đảm bảo rằng các file script luôn có khả năng chạy.  
  • Bước tiếp theo cần khai báo chương trình bên thứ ba nào sẽ được dùng để chạy Plugin (PHP hoặc Perl). Plugin trong ví dụ này được viết bằng PHP vì thế, chúng ta cần thêm một dòng sau vào đầu file: 

#!/usr/local/cpanel/3rdparty/bin/php-cgi. 

  • Ngay sau khi chỉ định file script sẽ được chạy bởi ngôn ngữ nào, chúng ta cần thiết lập tên hiển thị cho Plugin cũng như Icon của nó, thêm một dòng như sau ngay bên dưới đoạn mã đã nêu trước đó: 

#WHMADDON:appname:Display Name:Icon.gif 

Trong đó:appname: tên của Plugin còn Display Name là tên sẽ được hiển thị trong giao diện WHM. 

icon.gif: là tên Icon sẽ được sử dụng làm hình đại diện cho Plugin (không bắt buộc phải có. Cái file icon được lưu trữ trong thư mục 

/usr/local/cpanel/whostmgr/docroot/addon_plugins/[name].gif 

Thao tác cuối cùng cần thực hiện đó là chỉ định Access Control. Bởi vì Plugin của chúng ta được chạy dưới quyền root do đó, cần đảm bảo rằng những reseller được phép sử dụng những Plugin này. Thuật ngữ ACL trong cPanel có thể được xem như là Reseller Access Control List. Sau đây là danh sách các ACLs có trên WHM/cPanel ứng với Reseller như sau: 

ACLs Mô Tả 
acl-edit-pkg Cho phép các đại lý bán lẻ chỉnh sửa các package 
acl-add-pkg Cho phép các đại lý bán lẻ tạo ra các package 
acl-mailcheck Cho phép các tài khoản đại lý bán lẻ truy cập vào Troubleshooter WHM – nơi có thể chỉ ra sự cố về mail đang nằm ở chổ nào 
acl-show-bandwidth Cho phép các đại lý bán lẻ xem băng thông sử dụng của tài khoản 
acl-list-accts Cho phép các đại lý bán lẻ để sử dụng tính năng xem danh sách các  tài khoản 
acl-clustering Bật tính năng DNS clustering cho tài khoản đại lý reseller 
acl-news Cho phép các đại lý bán lẻ để thay đổi cPanel & WHM News  
acl-thirdparty  acl-kill-dns Cho phép các tài khoản đại lý bán lẻ quản lý các dịch vụ của bên thứ ba   Cho phép các đại lý bán lẻ loại bỏ các bản ghi DNS 
acl-edit-dns Cho phép các đại lý bán lẻ chỉnh sửa các bản ghi DNS 
acl-park-dns Cho phép các tài khoản đại lý có thể thêm park domains (tên miền  trỏ hướng) 
acl-create-dns Tạo một DNS zone 
acl-ssl Cho phép tài khoản đại lý có thể vào được phần quản lý SSL 
acl-create-acct Cho phép các đại lý bán lẻ tạo tài khoản mới 
acl-suspend-acct Cho phép các đại lý bán lẻ đình chỉ hoạt động các tài khoản con do mình quản lý 
acl-res-cart Allow the reseller to reset users’ shopping carts. 
acl-passwd Cho phép quyền được thay đổi pass của tài khoản con 
acl-ssl-buy Cho phép các đại lý bán lẻ để mua và cài đặt chứng chỉ SSL 
acl-frontpage Cho phép các đại lý bán lẻ để cài đặt và gỡ bỏ cài đặt  phần mở rộng FrontPage 
acl-upgrade-account Cho phép các đại lý bán lẻ để nâng cấp và hạ cấp tài khoản  
acl-ssl-gencrt Allow the reseller to access the SSL CSR/CRT generator 
acl-edit-mx Cho phép các đại lý bán lẻ để chỉnh sửa mục nhập MX  
acl-kill-acct Cho phép các đại lý bán lẻ để chấm dứt tài khoản cPanel  
acl-viewglobalpackages Cho phép các đại lý bán lẻ để sử dụng tất cả các gói toàn cầu (gói toàn cầu là các gói phần mềm mà không có một “_” trong đó) 
acl-disallow-shell Ngăn chặn các tài khoản được tạo ra truy cập qua shell 
acl-add-pkg-shell Allow Creation of Packages with Shell Access 
acl-allow-addoncreate Cho phép tạo các gói với Addon Domains  
acl-allow-parkedcreate Cho phép tạo các gói với Parked Domains 
acl-allow-unlimited-disk-pkgs Cho phép tạo các gói với đĩa cứng không giới hạn   
acl-allow-unlimited-pkgs Cho phép tạo các gói với các tính năng không giới hạn 
acl-allow-unlimited-bw-pkgs Cho phép tạo các gói với băng thông không giới hạn 
acl-add-pkg-ip Cho phép tạo các gói với một IP chuyên dụng  
acl-resftp Cho phép các đại lý bán lẻ để đồng bộ hóa mật khẩu FTP  
acl-locale-edit  Cho phép các đại lý bán lẻ để thay đổi địa điểm hiện có và tạo ra địa điểm mới  
acl-restart Cho phép các đại lý bán lẻ để khởi động lại hệ thống dịch vụ 
acl-status Cho phép các đại lý bán lẻ xem các tính năng trạng dịch vụ trong WHM 
acl-stats Cho phép các đại lý bán lẻ để xem thống kê tài khoản  
acl-quota Cho phép các đại lý bán lẻ để sửa đổi hạn ngạch đĩa. 
acl-demo-setup Cho phép các đại lý bán lẻ để biến một tài khoản cPanel thành  một tài khoản demo . 
acl-edit-account Cho phép các đại lý bán lẻ để sửa đổi một tài khoản . 
acl-limit-bandwidth Cho phép các đại lý bán lẻ để thay đổi giới hạn băng thông . 
acl-rearrange-accts Cho phép các đại lý bán lẻ để sắp xếp lại tài khoản để  giải phóng không gian đĩa . 
acl-all Cho phép truy cập đại lý bán lẻ cho tất cả các tính năng, bao gồm cả truy cập root . 

Sau khi quyết định reseller sẽ được thừa hưởng quyền hạn nào trên Plugin, chúng  ta thêm một dòng nữa ngay sau 2 dòng đã khai báo ở trên:  

#ACLS:aclname, trong đó aclname là tên của ACL mà chúng ta muốn sử dụng. 

Minh hoạ về một Plugin cho WHM/cPanel. 

Sau khi đã giới thiệu một loạt lý thuyết về cách triển khai Plugin, chúng ta cần thêm một ví dụ để củng cố lại kiến thức. Sau đây là một ví dụ về một Plugin giúp Deny và Permit access tới những domain có trên server, Plugin này hoạt động dựa trên thiết lập của Mod_Security, sau đây là chi tiết cách thực hiện.  

Bước 1: Code toàn bộ chương trình và lưu vào file addon_denyplugin.cgi 

Bước 2: Thêm 3 dòng sau đây vào đầu file:  

#!/usr/local/cpanel/3rdparty/bin/php-cgi 

#WHMADDON:DenyDomains:Deny Domains Plugin 

#ACLS:all 

#Dòng 1 chỉ ra rằng Plugin chúng ta viết ta thuộc dạng PHP. 

#Dòng thứ 2 khai báo tên của Plugin là DenyDomain và tên hiển thị trên WHM/cPanel là “Deny Domain Plugin”. 

#Dòng thứ 3 chỉ định Reseller có toàn quyền trên Plugin này. 

Bước 3: Sau khi hoàn tất, upload file script lên thư mục :  

       /usr/local/cpanel/whostmgr/docroot/cgi/  

Bước 4. Thiết lập quyền cho script là 755 và thuộc user root và group root. 

Bước 5: Hoàn tất.  

MDIGI Gợi ý bạn Series 30 bài hướng dẫn về WHM cùng một số bài liên quan:

1. Tổng quan về WHM [Phần 1]: Cấu hình Máy chủ

2. Tổng quan về WHM [Phần 2]: Cài đặt phần Hỗ trợ

3. Tổng quan về WHM [Phần 3]: Cài đặt mạng

4. Tổng quan về WHM [Phần 4]: Cài đặt Bảo mật

5. Tổng quan về WHM [Phần 5]: Cài đặt Server Contact

6. Tổng quan về WHM [Phần 6]: Cài đặt Resellers

7. Tổng quan về WHM [Phần 7]: Cấu hình Dịch vụ

8. Tổng quan về WHM [Phần 8]: Cài đặt Vị trí, địa phương, ngôn ngữ

9. Tổng quan về WHM [Phần 9]: Backup

10. Tổng quan về WHM [Phần 10]: Cluster/ Remote Access

11. Tổng quan về WHM [Phần 11]: System Reboot

12. Tổng quan về WHM [Phần 12]: Server Status

13. Tổng quan về WHM [Phần 13]: Thông tin tài khoản

14. Tổng quan về WHM [Phần 14]: Quản lý tài khoản

15. Tổng quan về WHM [Phần 15]: Quản lý nhiều tài khoản

16. Tổng quan về WHM [Phần 16]: FrontPage

17. Tổng quan về WHM [Phần 17]: Transfer

18.Tổng quan về WHM [Phần 18]: Themes

19. Tổng quan về WHM [Phần 19]: Pakages

20. Tổng quan về WHM [Phần 20]: Quản trị DNS

21. Tổng quan về WHM [Phần 21]: Quản trị Cơ sở dữ liệu

22. Tổng quan về WHM [Phần 22]: Quản lý IP

23. Tổng quan về WHM [Phần 23]: Cài đặt phần mềm

24. Tổng quan về WHM [Phần 24]: Email

25. Tổng quan về WHM [Phần 25]: Theo dõi tình trạng hệ thống

26. Tổng quan về WHM [Phần 26]: CPanel

27. Tổng quan về WHM [Phần 27]: SSL/TSL

28. Tổng quan về WHM [Phần 28]: Restart Services

29. Tổng quan về WHM [Phần 29]: Dành cho nhà phát triển

30. Tổng quan về WHM [Phần 30]: Các Plugin cài vào WHM

31. Hướng dẫn sử dụng cPanel chi tiết từ A đến Z

32. Hướng dẫn cài đặt WHM chi tiết nhất


Đánh giá: 

5/5 (1)
Lưu ý:

*Thông tin trong bài viết đều là những kiến thức chuyên môn và kinh nghiệm thực tế của đội ngũ sáng tạo tại MDIGI . Mọi hành vi sao chép vui lòng ghi trích dẫn nguồn MDIGI.vn! Xem Điều khoản & điều kiện của Chúng tôi.

*Cập nhật mới nhất ngày: 15/06/2023

Đôi nét về tác giả Mạnh Đức

Mạnh Đức

Tốt nghiệp Đại học kỹ thuật Lê Quý Đôn năm 2018 nhưng đã bắt đầu với Digital Marketing từ những năm 2015. Với kinh nghiệm thực chiến từ hàng trăm dự án, Mạnh Đức muốn mang những gì tốt nhất cho khách hàng của MDIGI.

31 bài viết cùng chủ đề Host - Server

Tổng quan về WHM [Phần 30]: Plugins trên WHM
Tổng quan về WHM [Phần 29]: Development trên WHM
Tổng quan về WHM [Phần 27]: SSL/TSL trên WHM
Tổng quan về WHM [Phần 26]: CPanel trên WHM
Tổng quan về WHM [Phần 25]: System Health trên WHM
Tổng quan về WHM [Phần 22]: IP Functions trên WHM
Tổng quan về WHM [Phần 21]: SQL Services trên WHM
Tổng quan về WHM [Phần 20]: DNS Functions trên WHM
Tổng quan về WHM [Phần 19]: Packages cho WHM
Tổng quan về WHM [Phần 18]: Themes cho WHM
Tổng quan về WHM [Phần 17]: Transfer trên WHM
Tổng quan về WHM [Phần 16]: FrontPage trên WHM
Tổng quan về WHM [Phần 12]: Server Status trên WHM
Tổng quan về WHM [Phần 11]: System Reboot trên WHM
Tổng quan về WHM [Phần 9]: BACKUP trên WHM
Tổng quan về WHM [Phần 8]: Locates trên WHM
Tổng quan về WHM [Phần 5]: Server Contact trên WHM
Tổng quan về WHM [Phần 1]: Cấu hình Máy chủ
Theo dõi
Thông báo của
guest
0 Góp ý
Phản hồi nội tuyến
Xem tất cả bình luận