12/08/2018, 15:04

5 bước cài đặt LEMP stack trên Ubuntu 16.04

LEMP stack là một nhóm các phần mềm được sử dụng để tạo nên một web server xử lý ngôn ngữ PHP. Nhóm phần mềm này gồm hệ điều hành Linux, phần mềm chạy dịch vụ web server là Nginx. Cơ sở dữ liệu được lưu trữ trên MySQL và ngôn ngữ động PHP. Trong bài hướng dẫn này mình sẽ hướng dẫn các bạn 5 bước ...

LEMP stack là một nhóm các phần mềm được sử dụng để tạo nên một web server xử lý ngôn ngữ PHP. Nhóm phần mềm này gồm hệ điều hành Linux, phần mềm chạy dịch vụ web server là Nginx. Cơ sở dữ liệu được lưu trữ trên MySQL và ngôn ngữ động PHP. Trong bài hướng dẫn này mình sẽ hướng dẫn các bạn 5 bước cài đặt LEMP stack trên Ubuntu 16.04. Các bạn có thể cài Ubuntu trên máy ảo hoặc xem hướng dẫn khởi tạo server Ubuntu ở Vultr.

Trước khi tiến hành cài đặt, bạn phải chắc chắn rằng bạn có tài khoản root hoặc tài khoản thông thường với quyền sudo. Nếu bạn tạo server ở Vultr, bạn sẽ được cung cấp tài khoản root, bạn có thể kết nối SSH hoặc sử dụng terminal của Vultr. Hãy đăng nhập với quyền như trên vào server. Đầu tiên chúng ta sẽ update server của chúng ta bằng lệnh update: sudo apt-get update Việc này sẽ cập nhật lại danh mục các gói cài đặt nội bộ trên server. Trước khi bắt đầu cài đặt bạn nên chạy lệnh update 1 lần lúc đăng nhập vào server. Bây giờ chúng ta hãy bắt đầu cài đặt LEMP Stack!

Bước 1: Cài đặt Nginx web server

Web server là nơi xử lý các yêu cầu từ trình duyệt. Nginx là một web server hiện đại và có hiệu năng xử lý cao. Hiện nay rất nhiều hãng tên tuổi cũng sử dụng Nginx cho web server của họ. Hãy chắc chắn rằng bạn đã chạy lệnh update trước khi cài Nginx. Lệnh sau sẽ tự động cài đặt Nginx vào hệ thống. sudo apt-get -y install nginx Sau khi cài đặt xong, hãy thử mở trình duyệt và truy cập vào server của bạn để xem kết quả. Nếu bạn chưa có tên miền trỏ về server, bạn có thể thử truy cập bằng IP public của server. curl -4 icanhazip.com Khi đã biết được địa chỉ IP của server, hãy mở trình duyệt và gõ địa chỉ vào kiểm thử. Trong đó ip_address là IP của server tìm được ở trên. http://ip_address Bạn nhìn thấy Welcome to nginx có nghĩa là bạn đã cài đặt thành công nginx.

Bước 2: Cài đặt MySQL

Bước tiếp theo khi cài đặt lemp stack là cài đặt MySQL để lưu trữ và quản lý dữ liệu. MySQL là một hệ quản trị cơ sở dữ liệu sử dụng ngôn ngữ SQL. Bạn có thể cài đặt MySQL bằng lệnh sudo apt-get -y install mysql-server Bạn sẽ được yêu cầu nhập mật khẩu cho tài khoản root để sử dụng trong hệ thống MySQL. Sau khi cài đặt xong MySQL, chúng ta vẫn chưa sử dụng được vì MySQL cần được cấu hình trước khi sử dụng. Chúng ta sẽ cấu hình một cách bảo mật bằng lệnh sudo mysql_secure_installation Bạn sẽ được yêu cầu nhập mật khẩu root mà bạn đã đặt ở bước trên. Tiếp theo bạn sẽ được hỏi có muốn cấu hình VALIDATE PASSWORD PLUGIN không.

Lưu ý: VALIDATE PASSWORD PLUGIN là một tính năng kiểm tra mật khẩu có thỏa mãn các tiêu chí đặt ra hay không. Bạn có thể sử dụng hoặc không sử dụng tính năng này. Tuy nhiên hãy luôn sử dụng mật khẩu phức tạp. Nhập y để cấu hình VALIDATE PASSWORD PLUGIN hoặc bất kì kí tự khác để bỏ qua tính năng này.

VALIDATE PASSWORD PLUGIN can be used to test passwords
and improve security. It checks the strength of password
and allows the users to set only those passwords which are
secure enough. Would you like to setup VALIDATE PASSWORD plugin?
 
Press y|Y for Yes, any other key for No:

Nếu bạn bật tính năng này, bạn sẽ được yêu cầu chọn cấp độ của việc xác định mật khẩu bằng cách gõ vào số tương ứng. Có 3 cấp độ: 0 = LOW, 1 = MEDIUM và 2 = STRONG.

There are three levels of password validation policy:
 
LOW    Length >= 8
MEDIUM Length >= 8, numeric, mixed case, and special characters
STRONG Length >= 8, numeric, mixed case, special characters and dictionary                  file
 
Please enter 0 = LOW, 1 = MEDIUM and 2 = STRONG: 1

Trong đó

    1. LOW: chiều dài >= 8
    1. MEDIUM: chiều dài >= 8, gồm số, chữ hoa, chữ thường và kí tự đặc biệt
    1. STRONG: chiều dài >= 8, gồm số, chữ hoa, chữ thường, kí tự đặc biệt và dựa trên từ điển từ thông dụng. Nếu bạn bật tính năng này, bạn sẽ thấy độ mạnh của mật khẩu root hiện tại và bạn sẽ được hỏi có muốn thay đôi mật khẩu hay không. Nhập n nếu bạn đã thỏa mãn với mật khẩu hiện tại và không muốn thay đổi.
Using existing password for root.
 
Estimated strength of the password: 100
Change the password for root ? ((Press y|Y for Yes, any other key for No) : n

Phần còn lại sau câu hỏi này, bạn hãy bấm Y và bấm Enter cho tất cả các câu hỏi còn lại. Việc này sẽ xóa bỏ các tài khoản vô danh, các test database, khóa chức năng đăng nhập từ xa cho tài khoản root và tải một số quy định mới. Như vậy MySQL sẽ ngay lập tức áp dụng các thay đổi mà chúng ta vừa cài đặt. Bây giờ hệ thống database của bạn đã được cài đặt hoàn tất và chúng ta sẽ tiếp tục với việc cài đặt PHP.

Bước 3: Cài đặt PHP

Chúng ta đã cài đặt Nginx để làm web server và MySQL để lưu trữ dữ liệu. Tiếp theo của việc cài đặt lemp stack đó là cài đặt PHP để xử lý các trang web động. Một điều lưu ý là Nginx không hỗ trợ xử lý PHP thuần như những web servers khác (Apache, Httpd, v.v…). Chúng ta sẽ cài đặt php-fpm (FastCGI process manager) và cấu hình cho Nginx để truyền các yêu cầu PHP sang FPM xử lý. Chúng ta có thể vừa cài module này và một vài helper package (gói trợ giúp) giúp PHP có thể giao tiếp với cơ sở dữ liệu. Chúng ta dùng lệnh sau sudo apt-get -y install php-fpm php-mysql Bây giờ chúng ta cần thực hiện cấu hình để server được bảo mật hơn. Hãy mở file cấu hình của php-fpm với quyền root sudo vi /etc/php/7.0/fpm/php.ini Hãy tìm đến thông số cgi.fix_pathinfo, mặc định nó đang được comment bằng dấu hai chấm (            </div>
            
            <div class=

0