Điểm:0

Mô-đun truy cập NGINX và DNS nội bộ: Cách chỉ cho phép các máy khách cục bộ

lá cờ cn

Tôi đã tìm kiếm thông qua serverfault nhưng không thể tìm thấy câu trả lời cho vấn đề này. Có lẽ tôi không biết đúng từ khóa hoặc đó là một sự hiểu lầm về khái niệm. Bất kỳ trợ giúp sẽ được đánh giá cao!

Tình huống:

  1. Các dịch vụ cục bộ của tôi đang chạy phía sau proxy ngược NGINX
  2. tôi sử dụng một LAN DNS trên router (Draytek) để giải quyết các yêu cầu cục bộ tới *.example.com trực tiếp đến máy chủ cục bộ của tôi (192.168.1.2).

Ngay cả khi không có kết nối internet, các miền sẽ được phân giải thành máy chủ cục bộ và tất cả các dịch vụ đều có thể truy cập được. Đó là lý do tại sao tôi sử dụng LAN DNS. Càng xa càng tốt.

Bây giờ tôi muốn chỉ cho phép khách hàng cục bộ truy cập một số dịch vụ nhất định bằng cách sử dụng Mô-đun truy cập NGINX với:

cho phép 192.168.1.0/24;
Phủ nhận tất cả;

Nhưng NGINX chỉ nhìn thấy IP công cộng của bộ định tuyến thay vì IP của máy khách (192.168.1.100) và do đó mọi yêu cầu đều bị từ chối:

[...] quyền truy cập bị cấm theo quy tắc, máy khách: 123.123.123.123, máy chủ: service.example.de, yêu cầu: [...]"

Câu hỏi của tôi là:

Làm cách nào tôi có thể phân biệt giữa máy khách cục bộ và máy khách từ xa trên NGINX trong trường hợp này?

Liên kết đến sơ đồ mạng


vidarlo avatar
lá cờ ar
Không sử dụng NAT. DNS không *không* viết lại bất kỳ IP nào.
Điểm:0
lá cờ ru

Đầu tiên, một giả định/điều kiện, đó là kiểm tra xem bộ định tuyến của bạn có thêm X-Forwarded-For tiêu đề hoặc một cái gì đó tương tự (lưu dấu vết của IP máy khách thực tế)

Bạn nên giải quyết IP máy khách trước, thông qua ngx_http_realip_module

Cấu hình ví dụ được cung cấp ở đó:

set_real_ip_từ 192.168.1.0/24;
set_real_ip từ 192.168.2.1;
set_real_ip_from 2001:0db8::/32;
real_ip_header X-Forwarded-For;
real_ip_recursive bật;

Với điều này, IP được sử dụng để kiểm tra quyền truy cập phải là địa chỉ chính xác (máy khách thực tế).

Một lưu ý là với cấu hình như vậy, không thể thực hiện được việc cố gắng thêm bộ định tuyến vào tiêu đề X-Forwarded-For tự động với proxy_add_x_forwarded_for, vì IP được thêm thông qua sẽ bị thay đổi theo chỉ thị trước đó. Trường hợp cụ thể đó đã được thảo luận tràn ngăn xếp

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.