iptables: LAN 연결로 입력 또는 출력을 언제 사용합니까?

iptables: LAN 연결로 입력 또는 출력을 언제 사용합니까?

뒤에 LAN이 있는 SSH 서버/방화벽(192.168.2.3)(가령 192.168.2.1/30)에서 192.168.2.1/30 네트워크의 내부 시스템에 의한 연결 시도는 방화벽에 의해 수신 또는 수신으로 해석됩니다. 나가는 연결?

수신 또는 발신으로 읽는 경우 대상 또는 소스 주소 블록(192.168.2.1/30)을 지정해야 합니까? 아니면 정확히 언제 -d 또는 -s 옵션이 필요합니까?

내 이해는 다음과 같습니다. 내부 기계가 외부 세계와 새로운 연결을 만들기를 원한다면 규칙은 다음과 같습니다.

iptables -A OUTPUT -s 192.168.2.8/30 -m state --state NEW -j ACCEPT

SSH 서버가 외부 세계에 새로운 SSH 연결을 만들고 싶다면 규칙은 다음과 같습니다.

iptables -A OUTPUT -p tcp --sport 22 -m state --state NEW -j ACCEPT

이 경우 SSH 서버 IP 주소를 생략해야 하나요, 아니면 규칙에 포함해야 하나요?

많은 감사를 드립니다.

답변1

INPUTOUTPUT실행 중인 시스템에 대해서만 정의 됩니다 iptables. 다르게 말하면, iptables인터페이스에 어떤 종류의 시스템이 있는지는 상관하지 않습니다. 인터페이스가 신뢰할 수 있는 LAN, DMZ, 노트북과 상어로 가득 찬 탱크에 연결되는지는 중요하지 않습니다.

INPUT항상 교통 상황을 나타냅니다.입력로컬로 종료하기 위한 외부 인터페이스입니다. OUTPUT로컬에서 발생하여 곧 발생하는 트래픽을 말합니다.떠나다인터페이스를 통해. FORWARD한 인터페이스를 통과하고 곧바로 다른 인터페이스로 나가는 트래픽을 나타냅니다.

위에서 인용한 첫 번째 것은 192.168.2.0/30한 인터페이스의 LAN에서 다른 인터페이스의 외부 세계로의 트래픽을 중재하므로 둘 다 체인에 있어야 합니다 FORWARD. 두 번째는 방화벽에서 외부로의 트래픽을 중재하므로 현재로서는 괜찮습니다.

LAN이 아니라는 점을 추가하고 방화벽에 LAN 컨텍스트에서 잘못된 주소가 있으므로 해당 넷마스크를 확인해야 할 수도 있습니다(브로드캐스트 주소이므로 단일 호스트에 할당하면 안 됨). ). 보다ipv4 서브넷에 관한 유명한 표준 질문추가 논의를 위해.

관련 정보