Nginx là một trong những web server được sử dụng phổ biến nhiều nhất hiện nay. Trong bài hướng dẫn này, Vietnix sẽ giúp bạn thiết lập xác thực HTTP cơ bản với Nginx trên CentOS 7. Đây là bước xác thực truy cập cơ bản và đơn giản nhất mà bạn phải cài đặt để bảo vệ web server của mình.
Điều kiện để thiết lập xác thực HTTP cơ bản với Nginx trên CentOS 7
Để thực hiện theo hướng dẫn này, bạn cần đáp ứng những điều kiện sau.
- Một server trên CentOS 7 với user non-root có đặc quyền sudo.
- Nginx đã được cài đặt và cấu hình trên server này. (Tìm hiểu về cách cài đặt Nginx trên CentOS 7 tại đây)
Nếu bạn chưa sở hữu một máy chủ riêng, hãy tham khảo sử dụng dịch vụ máy chủ ảo tại Vietnix. Đây là một giải pháp tuyệt vời cho các cá nhân hay doanh nghiệp vừa và nhỏ chưa đủ tài chính để đầu tư một máy chủ riêng lớn. Hiện tại có nhiều gói VPS để bạn lựa chọn, từ VPS Giá Rẻ, VPS Phổ Thông, VPS Cao Cấp, VPS NVMe, VPS GPU với mức giá và cấu hình đa dạng.
VPS Vietnix, đặc biệt là VPS Việt Nam cung cấp cho bạn tài nguyên mạnh mẽ cùng khả năng tùy chỉnh, cấu hình và quản lý máy chủ của mình linh hoạt, dễ dàng. Hoặc nếu bạn gặp khó khăn trong quá trình cài đặt, đội ngũ kỹ thuật túc trực 24/7 luôn sẵn sàng hỗ trợ trong thời gian ngắn nhất. Hãy trải nghiệm dịch vụ VPS tại Vietnix ngay hôm nay để tận dụng tất cả những tiện ích chúng mang lại cho doanh nghiệp của bạn!
Các bước thiết lập xác thực HTTP cơ bản với Nginx trên CentOS 7
Bước 1 – Cài đặt công cụ HTTPD
Để thiết lập password cho việc giới hạn truy cập vào trang web đích, bạn cần sử dụng lệnh htpassword
. Tuy nhiên lệnh này nằm trong package httpf-tools
nên bạn phải cài đặt nó để có thể sử dụng:
sudo yum install -y httpd-tools
Bước 2 – Thiết lập thông tin đăng nhập cho HTTP Authentication
Trong bước này, bạn cần tạo password cho user đang sử dụng website.
Password và username tương ứng sẽ được lưu trong một file bạn chỉ định. Password sẽ được mã hóa và bạn có thể đặt tên cho file đó. Ở đây, Vietnix sử dụng sử dụng file /etc/nginx/.htpasswd
và username là nginx.
Để tạo password, chạy lệnh sau:
sudo htpasswd -c /etc/nginx/.htpasswd nginx
Hãy kiểm tra nội dung của file vừa tạo để xem username và password đã được mã hóa hay chưa:
cat /etc/nginx/.htpasswd
nginx:$apr1$ilgq7ZEO$OarDX15gjKAxuxzv0JTrO/
Bước 3 – Cập nhật cấu hình Nginx
Bạn cần cập nhật cấu hình Nginx cho website cần dùng để có thể sử dụng HTTP Authentication. Việc xác thực HTTP được thực hiện bằng directive auth_basic
và auth_basic_user_file
. Giá trị auth_basic
có thể là bất kỳ chuỗi nào và sẽ được hiển thị tại thông báo xác thực, giá trị auth_basic_user_file
là đường dẫn đến file password đã được tạo ở Bước 2.
Cả hai directive này nên được đặt trong file cấu hình của website chỉ định và thường được đặt trong directory /etc/nginx/
. Mở file này bằng text editor yêu thích của bạn. Ở đây Vietnix sẽ chọn nano
.
sudo nano /etc/nginx/nginx.conf
Bên dưới phần server, thêm cả hai directives bên trên:
. . .
server {
listen 80 default_server;
listen [::]:80 default_server;
server_name _;
root /usr/share/nginx/html;
auth_basic "Private Property";
auth_basic_user_file /etc/nginx/.htpasswd;
. . .
Lưu và đóng file.
Bước 4 – Kiểm tra các thiết lập
Để áp dụng các thay đổi, đầu tiên hãy tải lại Nginx.
sudo systemctl reload nginx
Bây giờ, hãy thử truy cập website mà bạn vừa bảo mật bằng cách truy cập vào địa chỉ http://your_server_ip/
trên trình duyệt web. Một cửa sổ xác thực sẽ hiển thị “Private Property”, đây là chuỗi đã được thiết lập cho auth_basic
ở Bước 3. Nếu nhập đúng username và password đã được tạo, bạn sẽ thấy trang chủ mặc định của Nginx.
Với hơn 10 năm kinh nghiệm trong lĩnh vực hosting, VPS, tên miền, Firewall anti DDoS,… Vietnix đã trở thành một trong những nhà cung cấp hàng đầu, uy tín chuyên nghiệp tại Việt Nam. Vietnix đã hỗ trợ cho hơn 50.000 khách hàng từ cá nhân đến doanh nghiệp như GTV, Vietnamworks, UB Group, iVIVU, SEOSONA, SAGO Media,… và đã kích hoạt hơn 100.000 dịch vụ cho khách hàng có nhu cầu.
Với chất lượng dịch vụ tốt, khách hàng của Vietnix đã rất hài lòng và 97% trong số đó đã giới thiệu dịch vụ của Vietnix cho người khác sau khi sử dụng. Với những nỗ lực cống hiến trên, Vietnix vinh dự được nhận giải thưởng Thương hiệu Việt Nam xuất sắc 2022. Hãy để Vietnix cung cấp môi trường lưu trữ, vận hành website tối ưu nhất trên con đường thành công của bạn.
Mọi vấn đề thắc mắc cần tư vấn, quý khách vui lòng liên hệ:
- Địa chỉ: 265 Hồng Lạc, Phường 10, Quận Tân Bình, Thành Phố Hồ Chí Minh
- Hotline: 1800 1093 – 07 088 44444
- Email: sales@vietnix.com.vn
Lời kết
Khi đã hoàn thành các hướng dẫn trong bài viết này, website của bạn đã được bảo vệ bằng HTTP Authentication với Nginx trên CentOS 7. Đây là một cách xác thực truy cập đơn giản nhưng hiệu quả để bảo mật dữ liệu cho website của bạn. Ngoài ra, nếu có bất cứ thắc mắc gì trong quá trình thực hiện, bạn có thể để lại bình luận bên dưới để được giải đáp và hỗ trợ nhanh chóng nhất.