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

리눅스마스터1급: iptables의 활용을 통한 방화벽 구축8편-스크립트로 환경 구성하기

작성자 정보

  • 관리자 작성
  • 작성일

컨텐츠 정보

본문

리눅스마스터1: iptables의 활용을 통한 방화벽 구축8-스크립트로 환경 구성하기

 

 

 

이제까지 기술된 명령어를 매번 부팅시마다 입력하여 실행할 수도 있지만 부팅시에 입력하여 사용하기에는 너무 곤란한 문제가 많을 것이다.

 

 

 

따라서 간단한 스크립트를 작성하여 이러한 과정을 자동화할 수 있다.

 

 

 

아래의 예제 스크립트를 보자.

 

 

 

 

 

#!/bin/sh

 

# 우선 모든 룰을 정리한다.

/sbin/iptables -F

 

 

# 다음으로 각각에 대한 정책을 세운다.

/sbin/iptables -P INPUT DROP

/sbin/iptables -P OUTPUT ACCEPT

/sbin/iptables -P FORWARD DROP

 

 

# localhost에서의 트래픽을 받아들인다.

/sbin/iptables -A INPUT -i lo -j ACCEPT

 

 

# 확립된 연결에 대한 패킷을 받아들인다.

/sbin/iptables -A INPUT -i eth0 -p tcp ! --syn -j ACCEPT

 

 

# DNS 응답을 받아들인다.

/sbin/iptables -A INPUT -i eth0 -p tcp --source-port 53 -j ACCEPT

/sbin/iptables -A INPUT -i eth0 -p u--source-port 53 -j ACCEPT

 

 

# 인증 연결을 거부한다(그렇지 않을 경우 메일서버가 오랫동안 타임아웃 상태가 될 것이다.)

/sbin/iptables -A INPUT -i eth0 -p tcp --destination-port 113 -j REJECT

 

 

# echo나 목적지에 도착 못하거나 시간 초과된 icmp 패킷들을 받아들인다.

/sbin/iptables -A INPUT -i eth0 -p icmp --icmp-type 0 -j ACCEPT

/sbin/iptables -A INPUT -i eth0 -p icmp --icmp-type 3 -j ACCEPT

/sbin/iptables -A INPUT -i eth0 -p icmp --icmp-type 11 -j ACCEPT

 

 

 

 

 

 

 

 

위의 설정은 클라이언트에서 최소한의 인터넷 서비스만을 허용한 상태이다.

 

 

 

부가적으로 좀 더 많은 기능을 사용하고자 한다면 부가적인 포트에 대해 추가적으로 액세스 허용을 하면 된다.

 

 

 

각각의 정책을 갱신하는 것은 사용자의 자유로운 의사에 따라 진행할 수 있다.

 

 

 

 

 

여기서 다루어진 내용은 iptables라는 전체 항목의 지극히 작은 한 부분에 지나지 않는다.

 

 

 

iptables의 매뉴얼 페이지를 참조하여 좀 더 완전하고 복잡한 기능들에 대해 연구해 보기 바란다.

 

 

 

 

관련자료

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

공지사항


뉴스광장


  • 현재 회원수 :  60,043 명
  • 현재 강좌수 :  35,853 개
  • 현재 접속자 :  79 명