Bài viết này mình sẽ chia sẻ về thủ thuật openlitespeed cho WordPress, về chủ đề là PHP SuEXEC.
PHP SuEXEC giúp ích gì?
PHP SuEXEC giúp cải thiện khả năng sử lý opcache hiệu quả hơn => sẽ tăng tốc độ load website WordPress, nó còn nâng cao bảo mật website WordPress hơn rất nhiều giả sự một website bị hack thì tất cả website còn lại trong máy chủ của bạn vẫn an toàn.
Nếu bạn không thiết lập PHP SuEXEC thì đồng nghĩa nếu một website bị hack thì tất cả website websever openlitespeed bạn đang dùng coi như bay theo.
Đó là một điều không ai mong muốn cả.
Nếu bạn sử dụng php như WordPress thì bạn cần phải triển khai PHP suEXEC.
PHP SuEXEC là gì
suEXEC là một phương thức thực thi không phải quyền nobody (root máy chủ), mà là quyền user người dùng giúp thực thi các tập lệnh PHP an toàn hơn.
giống với việc bạn kết nối ssh để quản lý máy chủ của bạn, không nhất thiết bạn phải đăng nhập sử dụng tài khoản root để đăng nhập quản trị mà bạn có thể tạo user khác rồi phân quyền gì đó cho nó theo nhu cầu của bạn để bạn đăng nhập cũng được. thì SuEXEC cũng tương tự như vậy.
Quay trở về chủ đề chính: Nó chạy bằng quyền user làm như vậy bằng cách chạy từng quy trình PHP với tư cách là chủ sở hữu của một tài khoản user cụ thể thay vì với tư cách là nobody người dùng đang chạy máy chủ web. Điều này có nghĩa là ngay cả khi một người dùng trên máy chủ bị hack, các tập lệnh PHP chạy từ tài khoản của họ sẽ không có quyền truy cập vào tệp của người dùng khác. suEXEC từ lâu đã trở thành một tính năng cơ bản không thể thiếu nếu như websever của bạn có trên 2 website trở lên.
Hướng dẫn triển khai PHP SuEXEC
bạn có thể xem chi tiết hướng dẫn này của mình nhé.
Bước 1: Bạn cần truy cập vào quyền root ssh của bạn
Bước 2: Thêm user và group và phân quyền mặc định của thư mục bằng cách
useradd wpgiatuan -p -m -d /usr/local/lsws/wpgiatuan
mình sẽ giải thích một chút về lệnh này:
useradd
là lệnh linux thêm user, khi bạn thêm user mà không nhắc đến group thì đồng nghĩa mặc định linux sẽ tự hiểu rằng tên user sẽ là tên group, tự động tạo group xong thêm user đó vào.
wpgiatuan là tên user của bạn tạo và cũng đồng nghĩa là tên group của bạn vừa tạo.
-p -m -d /usr/local/lsws/wpgiatuan
là thư mục mặc định khi bạn kết nối với ssh bằng user tài khoản người dùng này, chút nữa ở phần dưới mình sẽ nói thêm về cái này kết nối ssh, tạm thời chủ đề chính của chúng ta là PHP SuEXEC.
Bước 3: bạn cần truy cập vào webgui admin của bạn: http://ip-cua-ban:7080 cái này thì từ đầu seria chắc các bạn cũng đã biết hết rồi.
Bước 4: Tạo cấu hình PHP, lấy giá trị dữ liệu toàn bộ từ server configuration bạn chuyển về tạo lập về Vhost ( khi thiết lập bạn cấu hình Vhost sẽ ghi đè toàn bộ giá trị ở cấp cao hơn)
bạn chỉ cần lưu ý: về phần thiết lập bạn thay đổi như thế này:
Run As User : wpgiatuan (chính là cái tên user mình vừa tạo)
Run As Group : wpgiatuan (chính là cái tên group mình vừa tạo như mình có giải thích ở bên trên)
Start By Server: YES
Run On Start Up: YES (Daemon Mode), mình khi người dùng openlitespeed thì lựa chọn chế độ Daemon Mode là phù hợp nhất, đem lại cho mình tốc độ và không ăn quá nhiều ram nhưng vẫn luôn đảm bảo mức cơ bản an toàn. Nếu bạn có nhu cầu nâng cao hay muốn tự tìm hiểu thì có thể tham khảo bài viết: modes php litespeed
Bước 5: script handler thì chuyển kết nối sử dụng php vhost
Bước 6: chuyển qua phần vhost => basic trong bảng Security
thì bạn thiết lập như sau:
External App Set UID Mode: DocRoot UID
suEXEC User: wpgiatuan
suEXEC Group: wpgiatuan
Bước 6: phân quyền thư mục:
ví dụ như:
chown -R wpgiatuan:wpgiatuan /usr/local/lsws/wptangtoc.com/html
bạn hãy thay thế theo của bạn:
wpgiatuan
là user và group bạn hãy thay cái mà user và group bạn mới tạo ở bước 2
/usr/local/lsws/wptangtoc.com/html
bạn thay bằng đường dẫn website của bạn
Bước 7: reset lại litespeed và tận hưởng thành quả:
/usr/local/lsws/bin/lswsctrl restart
như vậy là bạn đã triển khai PHP Suexec rồi đó chỉ đơn giản vậy thôi.
Mình sẽ hướng dẫn tặng thêm:
vừa nãy mình có tạo user bằng lệnh:
useradd wpgiatuan -p -m -d /usr/local/lsws/wpgiatuan
nếu bạn muốn sử dụng user này để đăng nhập vào kết nối ssh không phải truy cập vào quyền root nữa, để nâng cao bảo mật cho websever của bạn.
thì mặc định nếu chưa thiết lập password cho user thì linux sẽ khóa tài khoản user đó.
giờ bạn sử dụng quyền root ssh, bạn gõ: passwd wpgiatuan
rồi sau đó nhập password của bạn vào.
rồi sau này nếu bạn cần những công việc gì thực sự cần thiết cần quyền cao thì hãy truy cập vào tài khoản root, không thì chỉ cần truy cập vào tài khoản user này bạn mới tạo là đủ dùng rồi như vậy sẽ đảm bảo sự bảo mật cho websever của bạn hơn.
Chúc bạn thành công!!
- Cài đặt OpenLiteSpeed webgui, PHP 7.4 và MariaDB trên CentOS-phần 1
- Cách thêm website trong webserver OpenLiteSpeed webgui-phần 2
- Hướng dẫn chuyển website WordPress lên openlitespeed webgui-phần 3
- Cách cài đặt và cấu hình SSL Miễn phí Let’s Encrypt trên OpenLiteSpeed-phần 4
- Thiết lập cache máy chủ LS CACHE Modules cache WordPress tối ưu – openlitespeed-phần 5
- openlitespeed bảo mật cơ bản-phần 6 (chưa cập nhật)
- openlitespeed LS PHP SuEXEC tối ưu WordPress và nâng câo bảo mật DocRoot UID-phần 7 (phần bạn đang đọc)
- openlitespeed tối ưu WordPress-phần 7
- Hướng dẫn sao lưu và khôi phục websever openlitespeed-phần 8
- Kích hoạt LS reCAPTCHA nâng cao bảo mật với openlitespeed-phần 9
- Sao lưu và khôi phục website WordPress (openlitespeed) chỉ bằng lệnh linux [command line] -phần 10
Để lại một bình luận