iptables -A 하나 이상의 규칙 추가

iptables -A 하나 이상의 규칙 추가

오늘 iptables 맨페이지를 보다가 -A 설명에 "Append one"이라고 적혀 있는 것을 발견했습니다.이상선택한 체인의 끝까지 규칙을 적용합니다.” 이는 다음과 같은 경우를 의미합니까?

iptables -A INPUT {...rule1...}
iptables -A INPUT {...rule2...}

한 줄로 단순화할 수 있나요?

iptables -A INPUT {...rule1; rule2...}

나는 Google을 둘러 보았지만 누군가가 이것을 수행하는 예를 찾을 수 없지만 가능하다면 단순히 내 스크립트 중 일부일 것입니다.

답변1

한 번의 호출에서는 하나의 규칙 정의만 제공할 수 있습니다 iptables -A.

그러나 둘 이상의 주소로 확인되는 www.example.com과 같은 주소를 사용하는 경우 각 주소에 하나씩 여러 규칙이 추가됩니다.

예: (가짜 IP가 사용됨...):

$ host www.example.com
www.example.com has address 10.1.2.3
www.example.com has address 10.1.2.4
$ sudo iptables -A INPUT -s www.example.com -j ACCEPT
$ sudo iptables -L INPUT -vn
Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
 208K  250M ACCEPT     all  --  *      *       192.168.0.0/16       0.0.0.0/0           
    0     0 ACCEPT     all  --  *      *       10.1.2.3             0.0.0.0/0
    0     0 ACCEPT     all  --  *      *       10.1.2.4             0.0.0.0/0      

이제 하나의 iptables -A호출을 사용하여 둘 이상의 규칙을 삽입했습니다.

나는 이것이 맨페이지 설명에서 명확하지 않다는 데 동의합니다.

답변2

iptables 호출당 1번 규칙입니다. "추가" 옵션은 "삽입" 옵션과 대조됩니다. 다음과 같이 추가... 새 규칙은 규칙 목록의 끝으로 이동하지만 삽입은 규칙을 목록의 맨 위에 추가합니다.

iptables -I INPUT {Rule1}
iptables -I INPUT {Rule2}

규칙은 다음과 같습니다.

{Rule2}
{Rule1}

어디

iptables -A INPUT {Rule1}
iptables -A INPUT {Rule2}

결과는

{Rule1}
{Rule2}

관련 정보