Thư mục bài viết
Khi sử dụng HestiaCP để quản lý máy chủ, đôi khi bạn cần kích hoạt một số chức năng PHP bị vô hiệu hóa theo mặc định, chẳng hạn như shell_exec, passthru, system và exec.
Các chức năng này rất mạnh mẽ nhưng chúng cũng tiềm ẩn một số rủi ro bảo mật nhất định, vì vậy trước khi kích hoạt chúng, hãy đảm bảo rằng môi trường máy chủ của bạn an toàn và chỉ cho phép những người dùng đáng tin cậy truy cập.
Tại sao tôi cần kích hoạt các hàm PHP này?
Những chức năng này rất hữu ích trong một số tình huống nhất định.
Ví dụ, các chức năng này rất cần thiết khi bạn cần kích hoạt một số plugin WordPress nhất định hoặc khi bạn cần thực thi các lệnh hệ thống trên máy chủ.
Tuy nhiên, những chức năng này cũng tiềm ẩn những rủi ro bảo mật.
Việc sử dụng không đúng cách có thể dẫn đến tấn công máy chủ, vì vậy hãy thận trọng.
Chỉnh sửa tệp php.ini
Để kích hoạt các chức năng này, trước tiên bạn cần chỉnh sửa tệp php.ini.
Đây là tệp cấu hình PHP, kiểm soát các cài đặt khác nhau của PHP.

Bước 1: Tìm tệp php.ini
Trong HestiaCP, bạn có thể tìm và chỉnh sửa tệp php.ini qua đường dẫn sau:
- Nhập bảng điều khiển HestiaCP.
- Điều hướng đến cài đặt máy chủ.
- Nhấp vào Chỉnh sửa dịch vụ PHP (biểu tượng bút chì xuất hiện khi bạn di chuột qua tên dịch vụ).
- Chọn các tùy chọn nâng cao.
Tại đây, bạn có thể sửa đổi tệp php.ini.
Bước 2: Sửa đổi cài đặt vô hiệu hóa
Trong tệp php.ini, có một cài đặt tên là vô hiệu hóa_functions.
Cài đặt này xác định chức năng PHP nào bị tắt.
Để kích hoạt shell_exec, passthru, system và exec, bạn cần xóa chúng khỏi danh sách disable_functions.
Tắt cài đặt chức năng trước khi sửa đổi:
disable_functions = pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,exec,system,passthru,shell_exec,proc_open,popen
Trong cấu hình này, shell_exec, passthru, system và exec đều bị vô hiệu hóa.
Đã sửa đổi cài đặt vô hiệu hóa:
disable_functions = pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,proc_open,popen
Trong cấu hình này, các tùy chọn shell_exec, passthru, system và exec đã bị loại bỏ, nhờ đó cho phép các chức năng này hoạt động.
Bước 3: Lưu thay đổi
Sau khi hoàn tất sửa đổi, hãy lưu tệp php.ini.
Đảm bảo tất cả các thay đổi được lưu chính xác để có thể áp dụng cấu hình mới.
Khởi động lại dịch vụ PHP
Sau khi sửa đổi và lưu tệp php.ini, bạn cần khởi động lại dịch vụ PHP để các thay đổi có hiệu lực.
Bạn có thể khởi động lại dịch vụ PHP bằng cách làm theo các bước sau:
- Quay lại bảng điều khiển HestiaCP.
- Điều hướng đến cài đặt máy chủ.
- Chọn dịch vụ PHP và nhấp vào Khởi động lại.
Xác minh cấu hình
Sau khi khởi động lại dịch vụ PHP, bạn có thể xác minh rằng các chức năng này đã được bật bằng cách chạy tập lệnh PHP đơn giản.
Ví dụ: bạn có thể tạo tệp PHP có nội dung sau:
<?php
echo shell_exec('echo Hello World');
Sau đó, truy cập tệp thông qua trình duyệt. Nếu đầu ra là "Hello World", điều đó có nghĩa là chức năng shell_exec đã được bật.
Lời khuyên bảo mật
Mặc dù các chức năng này được kích hoạt nhưng hãy nhớ sử dụng thận trọng.
Đảm bảo máy chủ của bạn được bảo mật và chỉ những người dùng đáng tin cậy mới có quyền truy cập vào các tính năng này.
Hãy thường xuyên cập nhật phần mềm máy chủ và sử dụng mật khẩu mạnh cùng các biện pháp bảo mật khác để bảo vệ máy chủ của bạn.
tóm lại
Bài viết này giải thích cách kích hoạt các hàm PHP shell_exec, passthru, system và exec trong HestiaCP.
Mặc dù các chức năng này rất mạnh mẽ nhưng chúng cũng gây ra rủi ro về bảo mật.
Do đó, khi kích hoạt các chức năng này, hãy đảm bảo rằng máy chủ của bạn được an toàn và chỉ cho phép những người dùng đáng tin cậy truy cập.
Tôi hy vọng bài viết này có thể hữu ích cho bạn, nếu bạn có bất kỳ câu hỏi nào, xin vui lòng liên hệ với tôi!
Hy vọng bài viết "Làm thế nào để kích hoạt các hàm PHP shell_exec, passthru, system và exec?" được chia sẻ trên blog của Chen Weiliang ( https://www.chenweiliang.com/ ) sẽ hữu ích cho bạn.
Bạn có thể thoải mái chia sẻ liên kết bài viết này: https://www.chenweiliang.com/cwl-31853.html
