công cụ quản lý iptables cho môi trường quy mô lớn


15

Môi trường tôi đang hoạt động là một hoạt động lưu trữ web quy mô lớn (hàng trăm máy chủ được quản lý, địa chỉ gần như toàn bộ, v.v. - vì vậy, bất cứ điều gì nói về việc quản lý các liên kết ADSL đều không thể hoạt động tốt), và chúng tôi ' đang tìm kiếm thứ gì đó sẽ thoải mái quản lý cả bộ quy tắc cốt lõi (khoảng 12.000 mục trong iptables theo số hiện tại) cộng với các quy tắc dựa trên máy chủ mà chúng tôi quản lý cho khách hàng. Bộ quy tắc bộ định tuyến lõi của chúng tôi thay đổi một vài lần một ngày và bộ quy tắc dựa trên máy chủ sẽ thay đổi có thể 50 lần một tháng (trên tất cả các máy chủ, do đó, có thể một thay đổi trên năm máy chủ mỗi tháng).

Hiện tại chúng tôi đang sử dụng bộ lọc (nói chung là bóng và siêu bóng ở quy mô hoạt động của chúng tôi) và trước đây tôi đã sử dụng công cụ bờ biển trong các công việc khác (có thể thích hợp hơn với bộ lọc, nhưng tôi nghĩ rằng phải có một cái gì đó ngoài đó tốt hơn thế).

Các "hệ thống" mà chúng tôi đã đưa ra cho bất kỳ hệ thống thay thế nào là:

  • Phải tạo một bộ quy tắc khá nhanh (một bộ lọc chạy trên bộ quy tắc của chúng tôi mất 15-20 phút; điều này chỉ là điên rồ) - điều này có liên quan đến điểm tiếp theo:
  • Phải tạo tệp kiểu iptables-restore và tải nó trong một lần nhấn, không gọi iptables cho mỗi lần chèn quy tắc
  • Không được gỡ bỏ tường lửa trong một thời gian dài trong khi bộ quy tắc tải lại (một lần nữa, đây là hậu quả của điểm trên)
  • Phải hỗ trợ IPv6 (chúng tôi không triển khai bất kỳ thứ gì mới không tương thích với IPv6)
  • Phải không có DFSG
  • Phải sử dụng các tệp cấu hình văn bản thuần túy (vì chúng tôi chạy mọi thứ thông qua kiểm soát sửa đổi và sử dụng các công cụ xử lý văn bản Unix tiêu chuẩn là SOP của chúng tôi)
  • Phải hỗ trợ cả RedHat và Debian (được ưu tiên đóng gói, nhưng ít nhất không được quá thù địch với các tiêu chuẩn của distro)
  • Phải hỗ trợ khả năng chạy các lệnh iptables tùy ý để hỗ trợ các tính năng không phải là một phần của "ngôn ngữ bản địa" của hệ thống

Bất cứ điều gì không đáp ứng tất cả các tiêu chí này sẽ không được xem xét. Sau đây là "tốt đẹp để có" của chúng tôi:

  • Nên hỗ trợ tệp cấu hình "đoạn" (nghĩa là bạn có thể thả một đống tệp trong thư mục và nói với tường lửa "bao gồm mọi thứ trong thư mục này trong quy tắc"; chúng tôi sử dụng rộng rãi quản lý cấu hình và muốn sử dụng tính năng này để tự động cung cấp các quy tắc dành riêng cho dịch vụ)
  • Nên hỗ trợ bảng thô
  • Nên cho phép bạn chỉ định ICMP cụ thể trong cả gói đến và quy tắc RE DỰ ÁN
  • Nếu duyên dáng hỗ trợ tên máy chủ giải quyết nhiều hơn một địa chỉ IP (chúng tôi đã bị bắt bởi địa chỉ này một vài lần với bộ lọc; đó là một nỗi đau khá hoàng gia ở mông)
  • Các tính năng iptables tùy chọn / lạ hơn mà công cụ hỗ trợ (nguyên bản hoặc thông qua các plugin hiện có hoặc dễ ghi) thì càng tốt. Chúng tôi sử dụng các tính năng lạ của iptables bây giờ và sau đó, càng nhiều tính năng "chỉ hoạt động" thì càng tốt cho mọi người.

Tôi sẽ cắn-- các thuật ngữ "quả bóng" và "siêu quả bóng" trong bài đăng của bạn là gì? Tôi đoán bạn không nói về những quả cầu cao su nảy, nhưng tôi không thể suy luận nếu bối cảnh có nghĩa là "tốt" hay "xấu".
Evan Anderson

bóng == xấu. Siêu bóng == thêm xấu.
womble

Với nhiều quy tắc đó, hãy đảm bảo bạn có quy tắc ACCEPT ở đầu chấp nhận các kết nối được thiết lập và liên quan. PC không có TCAM và nhiều quy tắc ảnh hưởng đến hiệu suất. Rất nhiều.
Thomas

@thomas: Vâng, có một lượng tối ưu hóa nhất định đi vào quy tắc. Tất nhiên, có "kiến thức" về tối ưu hóa trong bất kỳ công cụ tường lửa nào được chọn sẽ là một phần thưởng.
womble

Câu trả lời:


4

Nếu bạn có lẽ muốn chuyển từ cách tiếp cận theo quy tắc sang cách làm "mô tả trạng thái cuối cùng bắt buộc", hãy xem fwbuilder.

Ưu điểm:

  • nhiều tường lửa được hỗ trợ - quy tắc cốt lõi + dựa trên máy chủ của bạn - từ 1 bộ đối tượng
  • SQL-esque "nói cho tôi biết những gì bạn muốn" thay vì "cho tôi biết cách thực hiện" (NB Tôi không nói có bất kỳ SQL nào trong đó! Chỉ là nó mô tả Vs thủ tục :-)
  • Đó là GUI, giống như giao diện của các nhà cung cấp phần cứng thương mại, vì vậy có thể đẩy một số tác vụ xuống ngăn xếp nhân viên / kỹ năng
  • hỗ trợ hầu hết cách sử dụng "wierd" mà tôi đã thử
  • có thể tạo quy tắc cho nhiều triển khai f / w - BSD / cicso / iptables / etc
  • tách biệt front-end từ trình biên dịch quy tắc, điều này khiến tôi hy vọng rằng tốc độ là mối quan tâm của các tác giả. NB Tôi không có gì gần quy mô mà bạn đang ám chỉ
  • Định dạng tệp không phải là nhị phân
  • IPv6
  • Tạo cấu hình iptables-save stylee để tải nhanh và nguyên tử

Nhược điểm:

  • Đó là một GUI
  • Di chuyển quy tắc hiện tại của bạn không có khả năng là không đau
  • Trong khi GPL và trong Debian, các máy khách Windows + OSX hoạt động trong 30 ngày, vì không có ai biên dịch phiên bản Miễn phí cho các HĐH đó; do đó cánh tay thương mại của các nhà phát triển có độc quyền về những nhị phân đó
  • Định dạng tệp là XML kỹ thuật; NB đừng để điều này làm bạn thất vọng: hãy xem các công cụ mà họ cung cấp (bạn có thể sử dụng nhị phân gui để thao tác thông qua CLI chẳng hạn), các công cụ XML CLI đã tồn tại và nhớ rằng - tại quy mô - một số ngữ nghĩa của siêu dữ liệu + cấu trúc không phải là / xấu / điều! Nó khác biệt khá độc đáo trên các chỉnh sửa, IIRC.

Liên kết: http://www.fwbuilder.org


Hrm ... tôi sẽ xem xét. Sự tồn tại của GUI (không đề cập đến XML) khiến tôi co giật khá dữ dội, nhưng bạn nêu ra một số ý tưởng thú vị (bộ quy tắc duy nhất cho toàn bộ cơ sở hạ tầng). Điều OS X sẽ không thành vấn đề.
womble

Tôi đồng ý, GUI ban đầu làm cho tôi WTF, nhưng tôi hài lòng với những gì tôi thấy từ phía CLI. Làm thế nào năng động là thiết lập của bạn, anyway? Nó sẽ là 10 thay đổi một ngày hay 10 thay đổi một năm? Đó có thể là một yếu tố hữu ích để chi tiết ở đây. Ngoài ra, một chức năng hay của định dạng tệp XML có thể là, bằng cách sử dụng các công cụ nhận biết XML, bạn có thể có toàn bộ cấu hình trong một tệp, sử dụng các đối tượng định nghĩa đơn, nhưng tạo ra một thay đổi cụ thể cho nút để ghi lại các cấu hình và thay đổi của từng máy chủ . Chỉ cần một suy nghĩ ...
Jonathan Matthews

@Jonathan: Bạn nói đúng, tính năng động của quy tắc là điều quan trọng cần biết. Tôi đã chỉnh sửa câu hỏi; đó là một vài lần một ngày hầu hết các ngày làm việc cho bộ quy tắc cốt lõi.
womble

3

viết của riêng bạn. nghiêm túc - ở quy mô này là hợp lý.

sử dụng ipset và / hoặc nhiều bảng / phụ đề iptable. bất cứ khi nào có thể chỉ tải lại một số phụ đề / một số bộ ipset - điều này sẽ tăng tốc cấu hình lại.

có lẽ bạn đã làm điều đó, nhưng vẫn đáng để đề cập - sử dụng các bảng lồng nhau để giảm tải cho bộ định tuyến và số lần tra cứu trung bình cần thiết cho các gói thiết lập kết nối mới. rõ ràng -MỘT LẦN -m trạng thái - được thành lập, LIÊN QUAN là quy tắc hàng đầu của bạn.


"Viết của riêng chúng tôi" không ra khỏi bàn, nhưng đó là điều khiến chúng tôi lọc ở nơi đầu tiên - nó được viết bởi một nhân viên cũ. Chúng tôi không muốn sản xuất một công cụ quản lý tường lửa khác nếu có thể.
womble

IPSET nhanh như chớp cho các bộ quy tắc lớn. "lưu trữ nhiều địa chỉ IP hoặc số cổng và khớp với bộ sưu tập bằng iptables tại một swoop; cập nhật động các quy tắc iptables đối với địa chỉ IP hoặc cổng mà không bị phạt hiệu năng; của bộ IP "Tôi sử dụng nó với wallwall. Tôi không biết làm thế nào mà wallwall sẽ thực hiện ở quy mô của bạn mặc dù.
artifex

2

bóng thánh (giữ nguyên chủ đề sống!) người đàn ông ... 12.000 quy tắc cốt lõi?

Tôi cho rằng bạn đã xem xét tất cả các tùy chọn dễ dàng như chỉ cần thả các bộ vào CVS? Con rối hay CFengine?

Thành thật mà nói, từ tổng quan rộng lớn bạn đã đưa ra, tôi thực sự khuyên bạn nên đánh giá lại thiết kế mạng của mình. Tôi có lẽ hơi quá đơn giản, nhưng đơn giản là tôi không thể hiểu được một thiết kế đòi hỏi quy tắc 12k iptables. Điều này thực sự nghe giống như một cái gì đó sẽ được hưởng lợi nhiều hơn từ một giải pháp loại SLB hơn là một cách tốt hơn để quản lý các quy tắc tường lửa.

Bên cạnh đó, làm thế nào để thêm một bình luận so với thêm "câu trả lời"?


Bạn cần một lượng danh tiếng tối thiểu để bình luận. Khi bạn làm một liên kết sẽ xuất hiện.
jay_dubya

Có thể có một lượng dư thừa nhất định trong các quy tắc iptables của chúng tôi, nhưng đó phần lớn là một chức năng của bộ lọc có thể không hiệu quả như nó có thể. Tuy nhiên, chúng tôi có / 19 không gian IP và Vlan cho mỗi khách hàng và một "chính sách mặc định" khá hạn chế (yêu cầu ngoại lệ cho mỗi IP đối với các cổng mở theo yêu cầu của khách hàng). Chúng tôi chắc chắn sẽ không thể loại bỏ nhiều hơn một vài trong số các quy tắc đó. Ồ, và vâng, chúng tôi đã sử dụng Puppet và chúng tôi sẽ không bắt đầu viết các quy tắc bằng tay ở quy mô hoạt động của chúng tôi.
womble

tốt, bạn chắc chắn duy trì một không gian IP lớn hơn bản thân mình, nhưng tôi vẫn thấy khó khăn để bằng cách nào đó biện minh cho nhiều quy tắc. Bạn đã từng nghĩ đến việc phá vỡ chúng thành một cấu trúc cây nơi bạn có thể sử dụng các thiết lập quy tắc mùa thu tại các điểm choke chưa? tức là tất cả các máy chủ chỉ web trong mạng con X, tất cả các máy chủ web + smtp trong mạng con Y? Bạn thực sự sẽ không phải loại bỏ chúng, chỉ cần nhóm chúng một cách hợp lý đằng sau một tường lửa được xếp tầng ... xin lỗi nếu tôi chỉ thêm tiếng ồn vào thời điểm này ... Tôi có thể đơn giản là không đủ tinh vi cho cái này. Tôi thích các quy tắc tường lửa của tôi ngắn và tàn bạo =)
Greeblednort

Chúng ta không thực sự ở vị trí "xếp hạng" những thứ như thế; Chúng tôi phần lớn là nhà cung cấp dịch vụ lưu trữ máy chủ chuyên dụng, do đó, những gì khách hàng của chúng tôi quyết định làm với máy của họ từ ngày này sang ngày khác có thể thay đổi, đòi hỏi phải nhảy nhiều hơn so với khi chúng tôi chỉ làm một cơ sở hạ tầng chuyên dụng cho dịch vụ nội bộ.
womble

0

12000 quy tắc? bạn có bị điên không? Bạn không gặp vấn đề về hiệu suất với lượng lọc này đang diễn ra? Tôi không thể thấy lý do tại sao bạn cần 12.000 quy tắc? Làm thế nào để bạn xác minh rằng bộ quy tắc của bạn thực sự đang thi hành chính sách?

Chính sách là gì?

Làm thế nào để bạn kiểm tra chính sách của bạn?

12.000 quy tắc có thể phá vỡ mọi quy tắc bảo mật trong cuốn sách.


-2

bạn cũng có thể thử giải pháp SAAS để quản lý iptables -> https://www.efw.io/Forum, nó cũng có thể thực hiện tích hợp đám mây AWS.


Tôi nghi ngờ một đề nghị SaaS sẽ không có DFSG.
womble
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.