방화벽 규칙을 자동으로 생성하는 방법은 무엇입니까?

방화벽 규칙을 자동으로 생성하는 방법은 무엇입니까?

여러 VLAN이라는 복잡한 실시간 시스템이 있습니다. 각 서버에는 Linux 서버가 있으며 각 서버에는 서비스가 있습니다. 서비스는 함께 연결됩니다. 예를 들어 호스트 A의 http 서비스는 호스트 B 포트 3306/tcp의 mysql 서비스에 연결됩니다.

이러한 유형의 구성을 데이터베이스에 자동으로 매핑하고 각 서버에 대한 방화벽 규칙을 생성하여 호스트 간에 필요한 연결만 허용하고 싶습니다.

제 생각에는:

  • 각 서버에서 netstat를 사용하여 연결 목록(또는 iptables의 로그 연결?)을 가져와 데이터베이스에 저장합니다.
  • graphvis 등을 사용하여 시각화하고,
  • 데이터베이스의 규칙을 기반으로 방화벽 규칙 만들기
  • 이전 규칙을 준수하지 않는 연결을 기록하고 경고하는 iptables 규칙을 만듭니다.

더 잘/더 빠르게/더 자동화할 수 있는 것이 있나요? 아마도 바퀴를 재발명할 필요가 없을까요?

업데이트: "어려운" 부분은 방화벽 규칙을 생성하는 것이 아니라 이를 자동화하고 필요한 연결 목록을 관리하는 것입니다.

답변1

제 생각에는 가장 좋은 방법은 다음을 사용하는 것입니다.구성 관리유사한 도구인형,요리사,CF 엔진또는안시푸르따라서 호스트 유형에 따라 정책을 정의하고 이를 새 호스트에 적용할 수 있습니다.

답변2

얼마전에 사용했어요여자규칙 세트를 생성하고 "include" 지시문을 통해 올바른 순서로 삽입하는 사용자 정의 단순 bash 스크립트페임.

연결 등을 기록하려면 다음을 사용할 수 있습니다.ulog-mysql, 특정 iptables 규칙과 일치하는 특정 데이터를 mysql에 저장하고 그 시점부터 원하는 것을 그립니다.

또 다른 가능성은 다음을 사용하는 것입니다.Ansible에서 iptables의 역할, 어쩌면 장면에 더 잘 어울리는 캐릭터를 찾을 수도 있습니다.

답변3

fwbuilder 사용을 고려하십시오(http://www.fwbuilder.org/). 일종의 방화벽을 관리하기 위한 오픈 소스 도구입니다.

관련 정보