it-gundan.com

iptables 규칙을 저장하는 정식 방법은 무엇입니까?

표준 Linux 방화벽은 재부팅간에 규칙을 저장하지 않습니다. 당신은 이것을 돌봐야합니다. 이렇게하는 많은 방법이 있습니다. 이 일을 할 수있는 표준의 방법은 무엇입니까? 모범 사례는 무엇입니까?

나는 내 자신의 솔루션으로 대답 할 것이지만, 다른/더 나은 솔루션에 관심이 있습니다.

8
amarillion

다음은 몇 가지 예제 규칙이 있습니다. /etc/iptables.Rules.에 저장하십시오

# Generated by iptables-save v1.3.6 on Wed Oct 24 17:07:29 2007
*filter
:INPUT ACCEPT [89458:132056082]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [263904:15667452]
-A INPUT -i lo -j ACCEPT 
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p tcp -m tcp --dport 22 -j ACCEPT 
-A INPUT -p tcp -m tcp --dport 80 -j ACCEPT 
-A INPUT -m limit --limit 5/min -j LOG --log-prefix "iptables denied: " --log-level 7 
-A INPUT -j DROP 
COMMIT
# Completed on Wed Oct 24 17:07:29 2007

/ etc/network/인터페이스의 끝에이 줄을 추가하십시오.

pre-up iptables-restore < /etc/iptables.rules
6
amarillion

우리는 of of of of iptables 규칙 그래서 관리를 완화하기 위해 다음을 수행합니다.

  • 규칙은 모두 스크립트에서 호출됩니다 - 스크립트는 /etc/init.d/firewall (사용자 정의 스크립트)에서 호출됩니다.
  • 서버 이름/네트워크 이름 (IP 주소 변수)의 파일은 유지되며 일관성을 위해 모든 IPTables 스크립트에 포함됩니다.
  • 별도의 스크립트는 각 서브넷 (예 : Private/DMZ/VPN 등)에 대해 유지되어 쉽게 찾을 수 있습니다. 2 개의 스크립트에 속한 규칙 (예 : 통신 B/W Private 및 DMZ 제한)이 "보안"네트워크의 스크립트에 저장됩니다.
  • 가능한 경우, 루프 및 중첩 루프는 스크립트를 가능한 한 짧게 유지하는 데 사용됩니다.
  • 모든 새 규칙이나 변경은 스크립트의 해당 섹션 앞에 선행하는 주석으로 문서화됩니다.

나는 이것이 이것이 베스트 이것을 할 수 있는지 모른다. 그러나 그것은 우리에게 잘 작동했다.

3
Brent

그것이 사실이지만, 이것은 환경과 플랫폼 의존적이며, 플랫폼에 따라 두 가지 좋은 접근 방식을 보았습니다.

  • RHEL/CENTOS : IPTABLES 시작 스크립트에서 읽은 싱글/etc/sysconfig/iptables 파일에 모든 규칙을 저장하십시오.

  • Debian/Ubuntu : 모든 규칙을 /etc/iptables.d/ 디렉토리에 별도의 서비스 별 파일에 저장하십시오. 예를 들어 /etc/iptables.d/port_http, /etc/iptables.d/port_dns, 여기서 port_service는/etc/services의 서비스 이름에 맵됩니다.

두 경우 모두 파일이나 파일은 요리사 또는 꼭두각시와 같은 구성 도구로 관리되며 부팅시 실행되는 iptables의 '마스터'시작 스크립트로 읽습니다.

3
jtimberman

iptables-save (및 iptables-restore) 이외에 복잡한 방화벽 구성표가 전용 프로그램으로 더 잘 처리됩니다. 예를 들어, shorewall ( "iPTABLASE DEASABLASE DEASABLES")을 사용하여 iptables를 구성했습니다.

FirestarterKMYFirewall 와 같은 간단한 도구도 사용할 수 있습니다.

1
gimel

이것은 사용하는 배포에 따라 다릅니다. 일부 배포판은 특히 빨간색 모자 배포를 기반으로하는 일부 배포판이 IPTables 규칙을 자동으로 유지하지만 특별한 디렉토리에 있습니다. 나는 rhel에 가장 익숙하고/etc/sysconfig/iptables에서 iptables 규칙을 찾을 수 있습니다. IPTables 규칙 구문에 익숙해지면 처음에는 까다로울 수 있지만 일단 그것이 걸리면 쉽습니다.

NetFilter 웹 사이트에는 일부 소개를 포함하여 iptables에 많은 문서가 있습니다. 조금 읽는 데 필요한 경우 여기에서 많은 좋은 정보를 찾을 수 있습니다 : http://www.netfilter.org/documentation/

1
TrueDuality