Cách thiết lập xác thực mật khẩu với Apache trên Ubuntu 18.04 [Quickstart]
Hướng dẫn này sẽ hướng dẫn bạn các nội dung bảo vệ bằng password trên web server Apache chạy trên Ubuntu 18.04. Hoàn thành các bước này sẽ cung cấp cho server của bạn thêm bảo mật để user lạ không thể truy cập vào các phần nhất định của trang web .Để có version chi tiết hơn của hướng dẫn này, với giải thích rõ hơn về từng bước, vui lòng tham khảo Cách cài đặt xác thực password với Apache trên Ubuntu 18.04 .
Yêu cầu
Để hoàn thành hướng dẫn này, bạn cần truy cập vào phần sau trên server Ubuntu 18.04:
Một user
sudo
trên server của bạnWeb server Apache2
Trang web được bảo mật bằng SSL
Bước 1 - Cài đặt Gói tiện ích Apache
Ta sẽ cài đặt một tiện ích có tên htpasswd
, một phần của gói apache2-utils
để quản lý tên user và password có quyền truy cập vào nội dung bị hạn chế.
- sudo apt update
- sudo apt install apache2-utils
Bước 2 - Tạo file password
Ta sẽ tạo user đầu tiên như sau (thay thế ` first_username bằng tên user bạn chọn):
- sudo htpasswd -c /etc/apache2/.htpasswd first_username
Bạn cần cung cấp và xác nhận password cho user .
Bỏ qua đối số -c
cho bất kỳ user bổ sung nào bạn muốn thêm để bạn không overrides lên file :
- sudo htpasswd /etc/apache2/.htpasswd another_user
Bước 3 - Cấu hình xác thực password Apache
Trong bước này, ta cần cấu hình Apache để kiểm tra file này trước khi cung cấp nội dung được bảo vệ của ta . Ta sẽ thực hiện việc này bằng cách sử dụng file server ảo của trang web, nhưng có một tùy chọn khác được nêu chi tiết trong hướng dẫn dài hơn nếu bạn không có quyền truy cập hoặc muốn sử dụng .htaccess
thay thế.
Mở file server ảo mà bạn muốn thêm hạn chế bằng editor văn bản chẳng hạn như nano:
- sudo nano /etc/apache2/sites-enabled/default-ssl.conf
Xác thực được thực hiện trên cơ sở từng folder . Trong ví dụ của ta , ta sẽ hạn chế toàn bộ root tài liệu, nhưng bạn có thể sửa đổi danh sách này để chỉ nhắm đến đến một folder cụ thể trong không gian web.
Trong bước này, hãy thêm các dòng được đánh dấu sau vào file của bạn:
<VirtualHost *:80> ServerAdmin webmaster@localhost DocumentRoot /var/www/html ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined <Directory "/var/www/html"> AuthType Basic AuthName "Restricted Content" AuthUserFile /etc/apache2/.htpasswd Require valid-user </Directory> </VirtualHost>
Kiểm tra cấu hình bằng lệnh sau:
Bạn có thể khởi động lại server để triển khai policy password , sau đó kiểm tra trạng thái của server .
- sudo systemctl restart apache2
- sudo systemctl status apache2
Bước 4 - Xác nhận xác thực password
Để xác nhận nội dung của bạn được bảo vệ, hãy cố gắng truy cập nội dung bị hạn chế của bạn trong trình duyệt web. Bạn sẽ được hiển thị với dấu nhắc tên user và password :
Hướng dẫn liên quan
Dưới đây là các liên kết đến các hướng dẫn chi tiết hơn liên quan đến hướng dẫn này:
Làm quen với các file và folder Apache quan trọng
trong hướng dẫn cài đặt Apache của ta .
Các tin liên quan
Cách thiết lập xác thực mật khẩu với Apache trên Ubuntu 18.042020-02-03
Cách cài đặt Apache Kafka trên Debian 10
2019-12-20
Cách sử dụng Ansible để cài đặt và thiết lập Apache trên Ubuntu 18.04
2019-12-06
Cách bảo mật Apache bằng Let's Encrypt trên FreeBSD 12.0
2019-11-08
Cách cài đặt Apache Tomcat 9 trên Debian 10
2019-10-24
Cách cấu hình báo cáo MTA-STS và TLS cho miền của bạn bằng Apache trên Ubuntu 18.04
2019-09-06
Cách viết lại URL bằng mod_rewrite cho Apache trên Debian 10
2019-08-22
Cách tạo chứng chỉ SSL tự ký cho Apache trong Debian 10
2019-07-22
Cách cài đặt web server Apache trên Debian 10
2019-07-19
Cách cấu hình Apache HTTP với Sự kiện MPM và PHP-FPM trên FreeBSD 12.0
2019-07-12