Điểm:0

Làm cách nào để giới hạn chuyển tiếp tường lửa tới một số địa chỉ nguồn nhất định?

lá cờ jp

Trước hết, tôi xin lỗi nếu điều này đã được hỏi trước đó nhưng tôi không thể tìm thấy bất kỳ câu trả lời nào khi xem qua thông tin có sẵn trên SE.

Tình huống của tôi như sau: Tôi có một máy chủ CentOS 7 đi đầu trong việc cung cấp một số dịch vụ. Nó được kết nối với một cổng ethernet công khai (eno1) và một cổng LAN ethernet (eno2) Được kết nối với mạng LAN là máy chủ thứ hai mà tôi muốn chuyển tiếp lưu lượng truy cập đến một cổng nhất định.

FirewallD cung cấp chuyển tiếp cổng và nó hoạt động. Càng xa càng tốt! Tuy nhiên, có một vấn đề lớn mà tôi đang gặp phải: Tôi muốn giới hạn những người có quyền truy cập vào dịch vụ được chuyển tiếp đó bằng IP công cộng và tôi không thể tìm ra vấn đề đó vì FirewallD dường như quá đơn giản trong những gì có thể được thực hiện với nó. Tuyệt vời nếu bạn chỉ muốn mở một dịch vụ lên đến 'mạng cho tất cả mọi người, nhưng không quá nhiều khi bạn chỉ muốn mở nó lên các phạm vi cụ thể. Một vấn đề nữa là trên máy chủ đích trong mạng LAN, tất cả các IP nguồn cho lưu lượng được chuyển tiếp là địa chỉ LAN của máy chủ cổng (10.0.0.1). Điều này có nghĩa là tôi cũng không thể lọc lưu lượng truy cập trên máy chủ mục tiêu theo IP, khiến dịch vụ mở ra toàn thế giới (điều mà tôi không muốn)

Có cách nào để làm điều này với tường lửa? tôi đã cố gắng thực hiện thủ công với iptables nhưng phải thừa nhận thất bại. theo dõi tất cả thông tin tôi có thể tìm thấy, tôi chưa bao giờ được chuyển tiếp để làm việc...

Làm rõ:

Internet -> (eno1, IP công cộng) -> Centos -> (eno2, 10.0.0.1) -> máy chủ đích (10.0.0.2)

Michael Hampton avatar
lá cờ cz
Điều này có vẻ đơn giản tầm thường; xem https://serverfault.com/a/684739/126632
Mark Straver avatar
lá cờ jp
Cảm ơn, điều đó đặt tôi đi đúng hướng! Với cảnh báo trước rằng các khu vực là độc quyền và cần sao chép tất cả các quy tắc... Vì lý do đó, tôi gần như bị khóa quyền truy cập. :P
Điểm:1
lá cờ jp

Với sự giúp đỡ của Michael Hampton (cảm ơn!), tôi đã tìm ra và đang trả lời câu hỏi của riêng mình.

Điều cần thiết là một khu vực riêng biệt mà bạn xác định bằng cách thêm phạm vi vào đó:

tường lửa-cmd --new-zone=special -- Permanent
tường lửa-cmd --reload
tường lửa-cmd --zone=special --add-source=12.34.56.78/32 -- Permanent
tường lửa-cmd --zone=special --add-source=12.34.56.88/32 -- Permanent
tường lửa-cmd --zone=special --add-source=12.34.99.0/24 -- Permanent

Sau đó thêm tất cả các các dịch vụ/cổng thông thường bạn sẽ có trong công cộng khu vực mới này (về cơ bản sao chép cấu hình của nó) và cuối cùng thêm quy tắc cổng chuyển tiếp chỉ đến khu vực mới với (ví dụ proxy http):

tường lửa-cmd --zone=special --add-forward-port=port=8080:proto=tcp:toaddr=10.0.0.2 -- Permanent

sau đó đưa ra lần tải lại cuối cùng để áp dụng:

tường lửa-cmd --reload

và voila: phạm vi 12.34.56.78/32 12.34.56.88/32 và 12.34.99.0/24 hiện có quyền truy cập vào dịch vụ proxy mẫu, nhưng không ai khác.

CẬP NHẬT

Lưu ý quan trọng: Các bước này hoạt động tốt cho lưu lượng truy cập trong nước nhưng để tường lửa hoạt động như một bộ định tuyến NAT bao gồm cả hướng ra ngoài sẽ mất nhiều công sức hơn (điều mà tôi chưa thể làm việc được ...). Nếu bất kỳ ai có giải pháp hoàn chỉnh hơn cho phép hoạt động trong và ngoài nước thông qua máy chủ có tường lửa, tôi sẽ vui vẻ đánh dấu đó là câu trả lời được chấp nhận!

OT: Cuối cùng thì tôi cũng đã sử dụng IPTables, thứ mà tôi đã làm việc để chuyển tiếp cổng NAT mà không gặp quá nhiều vấn đề khi tôi nhận ra mình đã làm sai điều gì (tôi không có quy tắc hướng ngoại trong chuỗi FORWARD... >.> <.<) và nó cho phép kiểm soát tốt các phạm vi trong mọi quy tắc (với tiền thưởng Tôi có thể làm mọi thứ từ Webmin :P). Vì đó là chủ đề lạc đề nên tôi sẽ để nguyên câu trả lời này.

Michael Hampton avatar
lá cờ cz
Chỉ cần bật hóa trang?!
Mark Straver avatar
lá cờ jp
Tất nhiên tôi đã làm. Nó không hoạt động.

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