My Quick Notes

Ain't Nobody Got Time to Read

January 30, 2020

NGINX Basic Authentication

Gói yêu cầu

  • Trên Debian: apache2-utils.

    sudo apt-get install apache2-utils
  • Trên Fedora: httpd-tools.

    sudo dnf install httpd-tools

Tạo file lưu trữ user:password

Tạo file /etc/nginx/.htpasswd là file chứa thông tin về người dùng và mật khẩu.

sudo htpasswd -c /etc/nginx/.htpasswd user1

Tùy chọn -c chỉ nên dùng nếu file chưa tồn tại nếu không nó sẽ ghi đè file đã có. Để thêm người dùng khác, ta chạy lệnh giống như trên nhưng bỏ tùy chọn -c.

sudo htpasswd /etc/nginx/.htpasswd user2

Cấu hình NGINX

Yêu cầu đăng nhập cho một location cụ thể

location /test {
	auth_basic "Test Authentication";
	auth_basic_user_file /etc/nginx/.htpasswd;
	...
}

Yêu cầu đăng nhập cho cả website trừ một location cụ thể

server {
	...
	auth_basic "Test Authentication";
	auth_basic_user_file /etc/nginx/.htpasswd;

	...
	location /test {
		auth_basic off;
	}
}

Khởi động lại NGINX

sudo service nginx restart

Sau khi cấu hình xong, khi truy cập vào trang ta sẽ thấy hộp thoại đăng nhập hiện lên.

Nguồn

Bài trướcTạo GPG key với text file
Bài tiếpBắt đầu với Mosh

Bình luận