Trước hết, chúng ta hãy xem một cách rộng rãi tác nhân người dùng của trình duyệt internet này là gì và nó được sử dụng để làm gì.
nội dung
Tác nhân người dùng (hoặc tác nhân người dùng) là gì?
Tất cả các trình duyệt internet (Internet Explorer, Safari, Opera, Firefox, Chrome, v.v.) đều có phần mềm tác nhân tương tác với trang web bạn truy cập, ở cấp máy chủ lưu trữ. Phần mềm này thực hiện kết nối internet với website, hiểu, kiểm tra và sẽ hiển thị nội dung trang truy cập. Nói tóm lại, nó đảm bảo sự tương tác giữa người dùng và máy chủ lưu trữ phục vụ người dùng các trang web được yêu cầu bằng cách truy cập một URL cụ thể trên giao thức HTTP/HTTPS.
Tác nhân người dùng chứa trong tiêu đề được gửi đến máy chủ mà nó truy cập, thông tin liên quan đến phần mềm được người dùng sử dụng, hệ điều hành, phiên bản của gói phần mềm trình duyệt. Ví dụ: tác nhân người dùng cho Google Chrome sẽ trả về thông tin máy chủ về phiên bản Google Chrome được sử dụng và hệ điều hành của người dùng.
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3163.100 Safari/537.36
Tiêu đề tác nhân người dùng ở trên có nghĩa là một phiên bản của Google Chrome 70 trên máy tính có bộ xử lý AMD, Kiến trúc 64-bit với hệ điều hành Windows 10.
Có lẽ bạn sẽ tự hỏi tại sao Mozilla xuất hiện với tư cách là tác nhân người dùng cho Chrome. Đây là một loại thủ thuật được Google (và Microsoft trong IE) sử dụng để tạo điều kiện thuận lợi cho người dùng Chrome truy cập vào tất cả các trang web tương thích với Mozilla và Safari. AppleWebKit là công cụ hiển thị nội dung.
Quản trị viên web hoặc quản trị viên máy chủ web có thể chặn quyền truy cập của một số tác nhân người dùng nhất định tại các trang web được lưu trữ. Hầu hết thời gian, giới hạn này được áp đặt robot mạng .bot web), những người truy cập một cách hỗn loạn hoặc quá mức vào các trang web của một trang web. May mắn thay, những bot này có một tác nhân người dùng cụ thể và có thể được phát hiện rất dễ dàng trong nhật ký máy chủ web.
Cách chặn quyền truy cập của tác nhân người dùng vào máy chủ web bằng NGINX
Hãy xem xét tình huống mà chúng tôi không còn muốn cho phép người dùng sử dụng hệ điều hành Windows XP và trình duyệt internet Mozilla Firefox 5.0 truy cập vào trang web.
Chúng tôi thêm mã bên dưới vào tệp cấu hình nginx, để “máy chủ” khối:
if ($http_user_agent = "Mozilla/5.0 (Windows NT 5.1; rv:52.0) Gecko/20100101 Firefox/52.0"){
return 403;
}
Lưu tệp nginx.conf hoặc tệp dành riêng cho một trang web, nếu bạn sử dụng cấu hình tùy chỉnh (chẳng hạn như các trang web có sẵn), thì khởi động lại dịch vụ NGINX.
Tất cả người dùng Firefox 5.0 (bao gồm tất cả các phiên bản lên tới 5.9) trên Windows XP sẽ được chuyển hướng đến lỗi 403 (Cấm).
Tôi không chọn ví dụ này một cách tình cờ. Bắt đầu với Firefox 52.9.0, Mozilla đã ngừng hỗ trợ người dùng Windows XP và Windows Vista. Các hệ điều hành bị Microsoft ngừng hỗ trợ vào năm 2014, tương ứng là năm 2017 dành cho Windows Vista.