

LAMP Stack là một trong những nền tảng mã nguồn mở phổ biến và đáng tin cậy nhất được sử dụng để xây dựng các trang web và ứng dụng web động. Tên gọi LAMP là chữ viết tắt của bốn thành phần cốt lõi: Linux, Apache, MySQL và PHP. Nhờ vào tính linh hoạt, chi phí thấp và cộng đồng hỗ trợ mạnh mẽ, LAMP đã trở thành nền tảng cốt lõi cho các nhà phát triển trong việc triển khai các hệ thống quản trị nội dung lớn như WordPress hay Drupal.
LAMP Stack là một nhóm các phần mềm mã nguồn mở được cài đặt cùng nhau để cho phép một máy chủ host các trang web động và các ứng dụng web viết bằng ngôn ngữ PHP. Thuật ngữ này là từ viết tắt đại diện cho hệ điều hành Linux cùng với máy chủ web Apache. Dữ liệu của trang web sẽ được lưu trữ trong cơ sỡ dữ liệu MySQL và các nội dung động được xử lý bởi ngôn ngữ PHP.
Trước tiên, cần cập nhật các gói hệ thống:
sudo apt -y update && sudo apt -y upgradeCài đặt Apache với lệnh sau:
sudo apt -y install apache2Sau khi cài đặt hoàn tất, sẽ cần điều chỉnh cài đặt tường lửa cho phép lưu lượng truy cập HTTP. Công cụ cấu hình tường lửa mặc định trên Ubuntu được gọi là Uncomplicated Firewall (UFW). Liệt kê tất cả cấu hình ứng dụng UFW hiện có sau quá trình cài đặt Apache:
sudo ufw app list
root@vnptcloud:~# sudo ufw app list
Available applications:
Apache
Apache Full
Apache Secure
OpenSSHÝ nghĩa của từng cấu hình Apache này:
sudo ufw allow in "Apache"Kiểm tra lại sau khi cho phép:
root@vnptcloud:~# sudo ufw status
Status: active
To Action From
-- ------ ----
Apache ALLOW Anywhere
22/tcp ALLOW Anywhere
Apache (v6) ALLOW Anywhere (v6)
22/tcp (v6) ALLOW Anywhere (v6)Truy cập địa chỉ IP của máy chủ trình duyệt web để xem cài đặt hoàn tất chưa: http://your_server_ip
Nếu có thể thấy trang web này, nghĩa là máy chủ web đã được cài đặt chính xác và có thể truy cập thông qua tường lửa.
Cài đặt MySQL bằng lệnh sau:
sudo apt -y install mysql-serverKhi quá trình cài đặt hoàn tất, nên chạy một tập lệnh bảo mật (security script) được cài đặt sẵn cùng MySQL. Tập lệnh này sẽ loại bỏ một số thiết lập mặc định kém an toàn và thắt chặt quyền truy cập vào hệ thống cơ sở dữ liệu:
sudo mysql_secure_installationHệ thống sẽ hỏi liệu bạn có muốn cấu hình VALIDATE PASSWORD PLUGIN (Tiện ích mở rộng kiểm tra mật khẩu) hay không. Chọn Y nếu đồng ý (Yes), hoặc nhấn bất kỳ phím nào khác để tiếp tục mà không cần kích hoạt:
VALIDATE PASSWORD PLUGIN can be used to test passwords
and improve security. It checks the strength of passwords
and allows users to set only those passwords that are
secure enough. Would you like to set up the VALIDATE PASSWORD plugin?
Press y|Y for Yes, any other key for No:Nếu bạn chọn “yes”, bạn sẽ được yêu cầu chọn một cấp độ để kiểm tra mật khẩu (password validation):
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: 1Theo mặc định, khi cài đặt MySQL sẽ có sẵn một người dùng ẩn danh (anonymous user), cho phép bất kỳ ai cũng có thể đăng nhập vào MySQL mà không cần phải tạo tài khoản riêng. Bạn nên xóa người dùng này trước khi đưa hệ thống vào môi trường vận hành thực tế (production):
By default, a MySQL installation has an anonymous user,
allowing anyone to log into MySQL without having to have
a user account created for them. This is intended only for
testing, and to make the installation go a bit smoother.
You should remove them before moving into a production
environment.
Remove anonymous users? (Press y|Y for Yes, any other key for No) :Thông thường, tài khoản root chỉ nên được phép kết nối từ 'localhost' (ngay tại máy chủ cục bộ). Loại bỏ việc đăng nhập quyền root từ xa đảm bảo rằng không ai có thể dò tìm mật khẩu root từ trên mạng:
Normally, root should only be allowed to connect from
'localhost'. This ensures that someone cannot guess at
the root password from the network.
Disallow root login remotely? (Press y|Y for Yes, any other key for No):Theo mặc định, MySQL đi kèm với một cơ sở dữ liệu có tên là 'test' mà bất kỳ ai cũng có thể truy cập. Cơ sở dữ liệu này cũng chỉ dành cho mục đích thử nghiệm và nên được xóa bỏ trước khi chuyển sang môi trường vận hành thực tế (production):
By default, MySQL comes with a database named 'test' that
anyone can access. This is also intended only for testing,
and should be removed before moving into a production
environment.
Remove test database and access to it? (Press y|Y for Yes, any other key for No) : Sau khi hoàn tất cấu hình, dòng sau sẽ hiển thị:
All done!Khi cài đặt PHP, bên cạnh gói PHP cơ bản sẽ cần thêm các gói sau:
Để cài đặt các gói này, chạy lệnh sau:
sudo apt -y install php libapache2-mod-php php-mysqlSau khi cài đặt hoàn tất, chạy lệnh sau để xác nhận phiên bản php được cài đặt:
php -v
root@vnptcloud:~# php -v
PHP 8.3.6 (cli) (built: Jul 14 2025 18:30:55) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.3.6, Copyright (c) Zend Technologies
with Zend OPcache v8.3.6, Copyright (c), by Zend TechnologiesTổng kết lại, LAMP Stack không chỉ là một bộ công cụ mã nguồn mở mạnh mẽ mà còn là giải pháp tiêu chuẩn cho việc phát triển và triển khai các ứng dụng web động ngày nay. Sự phối hợp chặt chẽ giữa hệ điều hành Linux, máy chủ web Apache, hệ quản trị cơ sở dữ liệu MySQL và ngôn ngữ lập trình PHP tạo nên một quy trình xử lý dữ liệu khép kín, ổn định và bảo mật.
Việc cài đặt LAMP trên Ubuntu 24.04 đã trở nên đơn giản hơn bao giờ hết nhờ sự hỗ trợ của các trình quản lý gói và kịch bản bảo mật tối ưu. Với ưu thế về chi phí bằng 0, tính linh hoạt cao và cộng đồng người dùng khổng lồ, LAMP Stack chắc chắn vẫn sẽ là lựa chọn hàng đầu cho các lập trình viên từ những dự án cá nhân nhỏ cho đến các hệ thống quản trị nội dung (CMS) phức tạp như WordPress hay Drupal.
