방화벽 IPTABLES 용어와 옵션
IPTABLES 용어와 옵션 알아보기
서버를 운영한다면 방화벽은 선택사항이 아니라 필수입니다 리눅스 방화벽인 IPTABLES라는 네트워크, 필터링이 있습니다 용어와 옵션이 까다롭고 복잡하지만 천천히 하나씩 알아보도록 하겠습니다.
| IPTABLES 명령어와 옵션 |
명령어(Commond)
-A (--append) : 세로운 규칙을 추가합니다
-D(--delete) : 규칙을 삭제합니다
-C (--check) : 패킷을 테스트합니다
-R (--relace) : 새로운 규칙으로 교체합니다
-I (--insert) : 새로운 규칙을 추가합니다
-L (--list) : 규칙을 출력합니다
-F (--flush) : Chain으로 부터 규칙을 모두 삭제합니다
-Z (--zero) : 모든 Chain의 패킷과 바이트 카운터 값을 0으로 만듭니다
-N (--new) : 새로운 규칙을 추가합니다
-X (--delete-chain) : 체인을 삭제합니다
-P (--policy) : Chain의 정책을 변경합니다
매치(Match) - IPTABLES에서 패킷을 처리할때 만족해야 하는 조건을 가리킵니다
-s (--source) : 출발지 IP주소와 매칭
-d (--destination) : 도착지 IP주소 매칭
-p (--protocol) : 특정 프로토콜과 매칭
-i (--in-interface) : 입력 인터페이스
-o (--out-interface) : 출력 인터페이스
-y (--syn) : SYN 패킷을 허용하지않습니다(허용은 SYN으로 적용합니다)
-f(--fragment) : 두번째 이후의 조각에 대해서 규칙을 명시합니다
-t (--table) : 처리할 테이블
-j (--jemp) : 규칙에 맞는 패킷을 어떻게 처리할 것인가를 명시합니다
-m (--match) : 특정 모듈과의 매치
--state : 연결상태와 매칭
--string : 애플리케이션 계층 데이터 바이트 순서와 매칭
타겟(Target) - IPTABLES는 패킷이 규칙과 일치할 때 동작을 취하는 타겟을 지원합니다
ACCEPT : 패킷을 받아드림
DROP : 패킷을 버림
REJECT : 패킷을 버리고 동시에 적절한 응답 패킷을 전송
LOG : 패킷을 시스템로그에 기록
RETURN : 호출 Chain 내에서 패킷 처리를 지속함
연결 추적(Connection Tracking) - IPTABLES는 연결 추적이라는 방법을 사용하여 내부 네트워크 상 서비스 연결 상태에 따라서 그 연결을 감시하고 제한할 수 있습니다 연결 추적 방식은 연결 상태를 표에 저장하기 때문에, 다음과 같은 연결 상태에 따라서 시스템 괌리자가 연결을 허용하거나 혹은 거부할 수 있습니다
NEW : 새로운 연결을 요청하는 패킷
ESTABLISHED : 기본 연결의 일부인 패킷
RELATED : 기존 연결에 속하지만 새로운 연결을 요청하는 패킷
INVALID : 연결 추적표에서 어떤 연결에도 속하지 않은 패킷