강좌
클라우드/리눅스에 관한 강좌입니다.
해킹&보안 분류

리눅스마스터1급: iptables의 활용을 통한 방화벽 구축2편- IP 주소의 거부

작성자 정보

  • 관리자 작성
  • 작성일

컨텐츠 정보

본문

리눅스마스터1: iptables의 활용을 통한 방화벽 구축2- IP 주소의 거부

 

 





시스템을 운영하다 보면 특정 주소에서 오는 패킷을 허용하지 않고 싶은 경우가 있다.

 

 

 

이러한 경우에 이 방법을 사용할 수 있다.

 

 

 

iptables에는 대단히 많은 옵션들이 존재한다.

 

 

 

이 모든 옵션에 대해 설명을 하기에는 지면 관계상 문제가 있으므로 자세한 사항들은 시스템에 있는 iptables의 매뉴얼 페이지를 참조하기 바란다.

 

 

 

예를 들어, 100.100.100.120이라는 인터넷 주소에서 오는 모든 패킷을 거부하는 방법에 대하여 알아보겠다.

 

 

 

 

 

 

 

 

 

# /sbin/iptables -s 100.100.100.120

 

 

 

 

 

 

 

 

이런 단순한 설정만으로는 원격지에서 도달하는 패킷에 대한 처리 방법을 커널에서 이해할 수 없다.

 

 

 

따라서 -j 옵션을 사용하여 이 패킷을 어떻게 처리할 것인지를 정의한다.

 

 

 

일반적으로 세 가지 옵션이 있는데 ACCEPT, DENY, DROP이다.

 

 

 

이름에서 예상할 수 있듯이, ACCEPT는 패킷을 허용하는 옵션이다.

 

 

 

DENY 옵션은 컴퓨터가 연결을 허용하지 않는다고 메시지를 돌려보내는 옵션이다.

 

 

 

그리고 DROP 옵션은 패킷을 완전히 무시해 버린다.

 

 

 

만약 어떤 IP에 대해 확실히 의심이 간다면 DROP을 사용해야 할 것이다.

 

 

 

따라서 전체 옵션은 다음과 같은 형식이 된다.

 

 

 

 

 

 

 

 

 

# /sbin/iptables -s 100.100.100.120 -j DROP

 

 

 

 

 

 

 

 

하지만 위의 명령 역시 어떤 경우의 패킷인지를 정의하지 않았다.

 

 

 

서두에 설명하였던 바와 같이 iptables는 기본적으로 세 가지의 룰셋 안에서 맞는 형식으로 검색을 진행한다고 이야기하였다.

 

 

 

우리는 지금 특정한 IP에서 오는 패킷을 모두 무시하기를 원하므로 다음과 같이 하면 된다.

 

 

 

 

 

 

 

 

 

# /sbin/iptables -A INPUT -s 100.100.100.120 -j DROP

 

 

 

 

 

 

 

 

이 한 줄의 명령으로 100.100.100.120으로부터 오는 모든 패킷은 무시할 수 있다.

 

 

 

옵션의 순서는 바뀌어도 상관이 없다.

 

 

 

, -j DROP-s 100.100.100.120보다 앞에 가도 상관이 없다.

 

 

 

만약 그 반대로 100.100.100.120으로 패킷이 가지 못하도록 하려면 INPUT 대신에 OUTPUT, -s 대신에 -d 옵션을 주면 된다.

 

 

 

 

관련자료

댓글 0
등록된 댓글이 없습니다.

공지사항


뉴스광장


  • 현재 회원수 :  60,042 명
  • 현재 강좌수 :  35,846 개
  • 현재 접속자 :  106 명