LAMP Stack là một tập hợp các phần mềm nguồn mở được cài đặt cùng nhau trên hệ điều hành Linux để chạy trang web và ứng dụng web của bạn trên đó. LAMP hay - Linux, Apache, MySQL và PHP - cung cấp nền tảng để lưu trữ các ứng dụng web dựa trên PHP và MySQL (như Wordpress, Joomla, Drupal, v.v.) chạy trên đó.
Trong hướng dẫn này, tôi sẽ hướng dẫn bạn từng bước để cài đặt LAMP Stack với OpenSUSE Leap 42.1 làm hệ điều hành Linux. Chúng ta sẽ cài đặt apache2 với MariaDB và PHP trên máy chủ. Tôi sẽ bao gồm cài đặt phpMyAdmin để quản trị MySQL và bảo mật phpMyAdmin bằng tệp .htaccess.
Trong bước này, chúng ta sẽ cài đặt SuSEfirewall2 và sau đó cấu hình nó để cho phép truy cập vào dịch vụ ssh và truy cập vào apache để truy cập web trên cổng 80.
Cài đặt SuSEfirewall2 bằng lệnh zypper:
Chỉnh sửa tệp cấu hình bằng vim:
Đi đến dòng 321, định nghĩa các dịch vụ của bạn để mọi người có thể truy cập vào, chúng ta sẽ định nghĩa sshd và apache2 ngay bây giờ:
Tiếp theo, khởi động lại SuSEfirewall và khởi động lại các dịch vụ sshd:
nếu bạn muốn kiểm tra cấu hình, bạn có thể sử dụng telnet để truy cập cổng dịch vụ ssh từ bên ngoài mạng:
Bây giờ, hãy đến thư mục gốc của tài liệu trên máy chủ web "/srv/www/htdocs/" và tạo một tệp index.html mới để bạn có thể kiểm tra xem apache2 có hoạt động không:
Tiếp theo, thêm các dịch vụ apache để khởi động khi khởi động và khởi động apache2 bằng systemctl:
Bây giờ hãy mở trình duyệt web của bạn và truy cập địa chỉ IP của máy chủ opnsuse từ đó:
http://192.168.1.101/
Trong bước này, chúng ta sẽ cài đặt MariaDB và mariadb-client với zypper rồi cấu hình mật khẩu MariaDB.
Cài đặt mariadb và mariadb-client:
Bây giờ hãy khởi động dịch vụ themariadb và thêm dịch vụ để chạy khi khởi động bằng systemctl:
Bây giờ hãy cấu hình mật khẩu gốc MariaDBdb bằng lệnh bên dưới:
Nhập mật khẩu mong muốn khi được yêu cầu:
Tiếp theo, hãy kiểm tra quyền truy cập vào máy chủ MariaDB bằng mật khẩu mà chúng tôi đã định cấu hình ở trên.
Cài đặt php và các tiện ích mở rộng php cần thiết cho hướng dẫn này. Chúng ta phải cài đặt tiện ích mở rộng php-mysql để cho phép các tập lệnh PHP kết nối tMySQLql và chúng ta cần php-mcrypt và php-gd cho phpMyAdmin. Cài đặt chúng bằng lệnh zypper bên dưới:
Kích hoạt mô-đun php5 trong apache và khởi động lại máy chủ web apache:
Lưu ý:
a2enmod extension = lệnh để kích hoạt mô-đun apache.
Tiếp theo, để đảm bảo php5 và apache hoạt động bình thường, bạn có thể kiểm tra chúng bằng cách tạo tệp aphpinfo trong thư mục gốc của tài liệu "/srv/www/htdocs/".
Vào thư mục và tạo tệp info.php.
Bây giờ hãy mở trình duyệt của bạn và nhập địa chỉ IP máy chủ và đường dẫn đến tệp thông tin php.
Bạn có thể thấy PHPhp và apache đang hoạt động và bạn có thể thấy tiện ích mở rộng MySQL đã được tải.
Bước này sẽ bao gồm cài đặt phpMyAdmin và sau đó chúng ta sẽ cấu hình để bảo mật bằng cách hạn chế quyền truy cập bằng tệp .htaccess.
phpMyAdmin có sẵn trong kho lưu trữ openSUSE, bạn có thể tiếp tục cài đặt nó bằng lệnh zypper:
Để phpMyAdmin hoạt động với PHP và apache, chúng ta phải bật tiện ích mở rộng php_mbstring trong tệp php.ini. Chỉnh sửa tệp bằng vim:
Đi đến dòng 873 và bỏ chú thích phần mở rộng php_mbsting để bật nó:
Lưu tệp và thoát khỏi trình chỉnh sửa.
Bây giờ chúng ta sẽ bảo mật phpMyAdmin bằng cách hạn chế quyền truy cập vào trang phpMyAdmin bằng tệp .htaccess.
Trước khi tạo tệp .htaccess trong thư mục phpMyAdmin, chúng ta phải chỉnh sửa tệp virtualhost phpMyAdmin trong thư mục apache để cho phép ghi đè cấu hình từ tệp .htaccess. Vào thư mục "/etc/apache2/conf.d/" và chỉnh sửa tệp phpMyAdmin.conf bằng vim:
ở dòng 3, đổi "AllowOverride None" thành "AllowOverride all":
Lưu và thoát.
Tiếp theo, vào thư mục web phpMyAdmin và tạo tệp htaccess mới:
dán cấu hình bên dưới:
Lưu và thoát.
Lưu ý:
AuthType = Kiểu phương thức xác thực được người dùng sử dụng, phương thức phổ biến là Basic được triển khai bởi mod_auh_basic.
AuthName = Chỉ thị tên xác thực.
AuthUserFile = Thư mục tệp .htpasswd trên "/etc/phpMyAdmin/.htpasswd"
Require valid-user = Yêu cầu .htaccess chỉ cấp quyền truy cập thư mục bị hạn chế cho người dùng trên tệp .htpasswd.
Tiếp theo, khởi động lại dịch vụ apache2 và cấu hình mật khẩu và người dùng:
Để cho phép người dùng truy cập trang phpMyAdmin, chúng ta phải định nghĩa người dùng trong tệp .htpasswd. Tạo người dùng có mật khẩu được mã hóa bằng lệnh htpasswd:
Lệnh này sẽ tạo một người dùng mới "megumi" được phép truy cập trang phpMyAdmin. Tùy chọn "-c" được sử dụng để tạo một tệp .htpasswd mới, vì vậy nếu chúng ta muốn thêm một người dùng khác, chúng ta có thể sử dụng htpasswd mà không có tùy chọn -c:
Bây giờ trong trình duyệt web, hãy nhập url phpMyAdmin và bạn sẽ được yêu cầu nhập tên người dùng và mật khẩu từ tệp .htpasswd.
Nhập tên người dùng và mật khẩu rồi nhấn Đăng nhập để bạn có thể đăng nhập vào phpMyAdmin.
Bây giờ hãy nhập tên người dùng và mật khẩu MySQL rồi đăng nhập. Bạn có thể thấy bảng điều khiển phpMyAdmin.
Bây giờ LAMP Stack với phpMyAdmin đã được cài đặt trên openSUSE Leap 42.1.
Trong hướng dẫn này, tôi sẽ hướng dẫn bạn từng bước để cài đặt LAMP Stack với OpenSUSE Leap 42.1 làm hệ điều hành Linux. Chúng ta sẽ cài đặt apache2 với MariaDB và PHP trên máy chủ. Tôi sẽ bao gồm cài đặt phpMyAdmin để quản trị MySQL và bảo mật phpMyAdmin bằng tệp .htaccess.
Điều kiện tiên quyết
Tôi sẽ sử dụng OpenSUSE leap với địa chỉ IP: 192.168.1.101 trên máy chủ này. Điều này rất có thể khác với cài đặt của bạn, vì vậy bạn phải thay thế IP bằng IP của riêng bạn bất cứ nơi nào nó xuất hiện.- OpenSUSE Leap 42.1 - máy chủ.
- Quyền root
Mã:
ssh [emailprotected]
sudo su
Bước 1 - Cấu hình SuSEfirewall2
SuSEfirewall2 dựa trên iptables, nó sẽ tạo các quy tắc iptables từ tệp cấu hình "/etc/sysconfig/SuSEfirewall2". Nó bảo vệ máy chủ của bạn khỏi các cuộc tấn công mạng và các gói tin không mong muốn.Trong bước này, chúng ta sẽ cài đặt SuSEfirewall2 và sau đó cấu hình nó để cho phép truy cập vào dịch vụ ssh và truy cập vào apache để truy cập web trên cổng 80.
Cài đặt SuSEfirewall2 bằng lệnh zypper:
Mã:
zypper trong SuSEfirewall2
Mã:
vim /etc/sysconfig/SuSEfirewall2
Mã:
FW_CONFIGURATIONS_EXT="sshd apache2"
Mã:
/sbin/rcSuSEfirewall2 restart
systemctl restart sshd
Mã:
telnet 192.168.1.101 22
Bước 2 - Cài đặt và cấu hình Apache
Apache2 có sẵn trong kho lưu trữ openSUSE, vì vậy chúng ta không cần phải thêm bất kỳ kho lưu trữ bổ sung nào. Chúng ta có thể tiếp tục hướng dẫn này và cài đặt apache2 bằng lệnh zypper:
Mã:
zypper trong apache2
Mã:
cd /srv/www/htdocs/
echo "[HEADING=1]Đây là Apache OpenSUSE Leap 42.1[/HEADING]" > index.html
Mã:
systemctl enable apache2
systemctl start apache2
http://192.168.1.101/
Bước 3 - Cài đặt và cấu hình MariaDB
MariaDB là một hệ thống quản lý cơ sở dữ liệu quan hệ được phân nhánh từ MySQL. MariaDB được phát triển bởi nhà phát triển MySQL ban đầu (Monty Widenius) và hiện đã phát hành phiên bản ổn định 10.1. Nó có cùng bộ tính năng với MySQL 5.6 và 5.7.Trong bước này, chúng ta sẽ cài đặt MariaDB và mariadb-client với zypper rồi cấu hình mật khẩu MariaDB.
Cài đặt mariadb và mariadb-client:
Mã:
zypper trong mariadb mariadb-client
Mã:
systemctl start mysql
systemctl enable mysql
Mã:
mysql_secure_installation
Mã:
Nhập mật khẩu hiện tại cho root (nhập nếu không có): NHẤN ENTER
Đặt mật khẩu gốc? [Y/n] Y
Mật khẩu mới: NHẬP MẬT KHẨU CỦA BẠN
Nhập lại mật khẩu mới: LẶP LẠI MẬT KHẨU
Xóa người dùng ẩn danh? [Y/n] Y
Không cho phép đăng nhập root từ xa? [Y/n] Y
Tải lại bảng đặc quyền ngay bây giờ? [Y/n] Y
Mã:
mysql -u root -p
NHẬP MẬT KHẨU CỦA BẠN
Bước 4 - Cài đặt và định cấu hình PHP
PHP là một trong những ngôn ngữ kịch bản phía máy chủ phổ biến nhất để phát triển web và có thể nhúng vào các trang HTML. Trong hướng dẫn này, tôi sẽ hướng dẫn bạn cài đặt PHP 5.5 và cấu hình để nó hoạt động với máy chủ web Apache và cơ sở dữ liệu MySQL.Cài đặt php và các tiện ích mở rộng php cần thiết cho hướng dẫn này. Chúng ta phải cài đặt tiện ích mở rộng php-mysql để cho phép các tập lệnh PHP kết nối tMySQLql và chúng ta cần php-mcrypt và php-gd cho phpMyAdmin. Cài đặt chúng bằng lệnh zypper bên dưới:
Mã:
zypper trong php5 php5-mysql php5-mcrypt apache2-mod_php5 php5-mbstring php-mcrypt php-gd php-json php-zlib
Mã:
a2enmod php5
systemctl restart apache2
a2enmod extension = lệnh để kích hoạt mô-đun apache.
Tiếp theo, để đảm bảo php5 và apache hoạt động bình thường, bạn có thể kiểm tra chúng bằng cách tạo tệp aphpinfo trong thư mục gốc của tài liệu "/srv/www/htdocs/".
Vào thư mục và tạo tệp info.php.
Mã:
cd /srv/www/htdocs/
echo "" > info.php
Bạn có thể thấy PHPhp và apache đang hoạt động và bạn có thể thấy tiện ích mở rộng MySQL đã được tải.
Bước 5 - Cài đặt và cấu hình phpMyAdmin
phpMyAdmin là một phần mềm mã nguồn mở nổi tiếng dựa trên PHP giúp chúng ta dễ dàng quản lý cơ sở dữ liệu MySQL/MariaDB từ trình duyệt web. Nó cung cấp một giao diện người dùng tuyệt vời và dễ cấu hình trên nhiều máy chủ web.Bước này sẽ bao gồm cài đặt phpMyAdmin và sau đó chúng ta sẽ cấu hình để bảo mật bằng cách hạn chế quyền truy cập bằng tệp .htaccess.
phpMyAdmin có sẵn trong kho lưu trữ openSUSE, bạn có thể tiếp tục cài đặt nó bằng lệnh zypper:
Mã:
zypper trong phpMyAdmin
Mã:
vim /etc/php5/apache2/php.ini
Mã:
extension=php_mbstring.dll
Bây giờ chúng ta sẽ bảo mật phpMyAdmin bằng cách hạn chế quyền truy cập vào trang phpMyAdmin bằng tệp .htaccess.
Trước khi tạo tệp .htaccess trong thư mục phpMyAdmin, chúng ta phải chỉnh sửa tệp virtualhost phpMyAdmin trong thư mục apache để cho phép ghi đè cấu hình từ tệp .htaccess. Vào thư mục "/etc/apache2/conf.d/" và chỉnh sửa tệp phpMyAdmin.conf bằng vim:
Mã:
cd /etc/apache2/conf.d/
vim phpMyAdmin.conf
Mã:
AllowOverride all
Tiếp theo, vào thư mục web phpMyAdmin và tạo tệp htaccess mới:
Mã:
cd /srv/www/htdocs/phpMyAdmin/
vim .htaccess
Mã:
AuthType Basic
AuthName "Tệp bị hạn chế"
AuthUserFile /etc/phpMyAdmin/.htpasswd
Require valid-user
Lưu ý:
AuthType = Kiểu phương thức xác thực được người dùng sử dụng, phương thức phổ biến là Basic được triển khai bởi mod_auh_basic.
AuthName = Chỉ thị tên xác thực.
AuthUserFile = Thư mục tệp .htpasswd trên "/etc/phpMyAdmin/.htpasswd"
Require valid-user = Yêu cầu .htaccess chỉ cấp quyền truy cập thư mục bị hạn chế cho người dùng trên tệp .htpasswd.
Tiếp theo, khởi động lại dịch vụ apache2 và cấu hình mật khẩu và người dùng:
Mã:
systemctl restart apache2
Mã:
htpasswd -c /etc/phpMyAdmin/.htpasswd megumi
Mã:
htpasswd /etc/phpMyAdmin/.htpasswd yuki
Bây giờ trong trình duyệt web, hãy nhập url phpMyAdmin và bạn sẽ được yêu cầu nhập tên người dùng và mật khẩu từ tệp .htpasswd.
Nhập tên người dùng và mật khẩu rồi nhấn Đăng nhập để bạn có thể đăng nhập vào phpMyAdmin.
Bây giờ hãy nhập tên người dùng và mật khẩu MySQL rồi đăng nhập. Bạn có thể thấy bảng điều khiển phpMyAdmin.
Bây giờ LAMP Stack với phpMyAdmin đã được cài đặt trên openSUSE Leap 42.1.