Điểm:1

TPROXY can thiệp quy tắc chuyển tiếp cổng DNAT

lá cờ in

Tôi đang thiết lập TPROXY trên bộ định tuyến VyOS của mình để chuyển tiếp một số lưu lượng truy cập nhất định tới một proxy trong suốt cục bộ. Nó hoạt động khá tốt, cho đến khi tôi phát hiện ra rằng tất cả các quy tắc chuyển tiếp cổng DNAT của tôi không còn hoạt động nữa (thời gian chờ kết nối khi kết nối từ mạng bên ngoài).

Môi trường

  • Bộ định tuyến: 10.0.0.1/24 (Proxy đang chạy trên 1234 cổng và thêm SO_MARK với 0xff)
  • Máy chủ nội bộ: 10.0.0.2/24 (Hải cảng 80 nên được đưa ra công chúng)

Quy tắc TPROXY

quy tắc ip thêm fwmark 1 bảng 100
tuyến ip thêm cục bộ 0.0.0.0/0 dev lo bảng 100

nft thêm bảng myproxy
nft thêm chuỗi ưu tiên định tuyến trước myproxy { loại ưu tiên định tuyến trước móc bộ lọc 0 \; }
nft thêm quy tắc định tuyến trước myproxy ip Daddr { 127.0.0.1/32, 224.0.0.0/4, 255.255.255.255/32 } trả về
nft thêm quy tắc định tuyến trước myproxy meta l4proto tcp ip Daddr 10.0.0.0/24 return
nft thêm quy tắc đánh dấu định tuyến trước myproxy 0xff trở lại
nft thêm quy tắc định tuyến trước myproxy meta l4proto { tcp, udp } đánh dấu đặt 1 tproxy thành 127.0.0.1:1234 chấp nhận

nft thêm đầu ra myproxy chuỗi { loại ưu tiên đầu ra hook route 0 \; }
nft thêm quy tắc đầu ra myproxy ip Daddr { 127.0.0.1/32, 224.0.0.0/4, 255.255.255.255/32 } trả lại
nft thêm quy tắc đầu ra myproxy meta l4proto tcp ip Daddr 10.0.0.0/24 trở lại
nft thêm quy tắc đánh dấu đầu ra myproxy 0xff trở lại
nft thêm quy tắc đầu ra myproxy meta l4proto { tcp, udp } đánh dấu được đặt 1 chấp nhận

nft thêm bộ lọc bảng
nft thêm chuyển hướng bộ lọc chuỗi { ưu tiên định tuyến trước móc bộ lọc loại -150 \; }
nft thêm bộ lọc quy tắc chuyển hướng ổ cắm meta l4proto tcp trong suốt 1 dấu meta được đặt 1 chấp nhận

Quy tắc DNAT

bảng danh sách $ nft nat

bảng ip nat {
    chuỗi PREROUTING {
        gõ nat hook prerouting ưu tiên dstnat; chính sách chấp nhận;
        iifname "pppoe0" tcp dport { 8080 } gói truy cập 7 byte 400 dnat đến 10.0.0.2:80
    }
}

Triệu chứng

Đang kết nối Bộ định tuyếnPublicIP:8080 sắp hết thời gian. Lý tưởng nhất là nó nên chuyển tiếp lưu lượng đến 10.0.0.2:80.

Tôi đoán lưu lượng truy cập DNAT trong nước được chuyển tiếp nhầm tới proxy (thay vì máy chủ thực 10.0.0.2), tuy nhiên tôi không thể tìm ra các quy tắc nft chính xác.

Cảm ơn trước!

Tom Yan avatar
lá cờ in
Bạn đã thử thêm `meta l4proto tcp ip saddr 10.0.0.0/24 return` vào `myproxy prerouting` (tất nhiên là trước quy tắc `tproxy`).

Đă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.