[b2br] UFW

윤준수·2022년 9월 16일

Born2BeRoot

목록 보기
4/4

UFW

Uncomplicated FireWall

다양한 리눅스 환경에서 작동되는 사용하기 쉬운 방화벽 관리 프로그램

방화벽은 netfilter를 사용하여 filtering을 수행하는데
이 필터중 리눅스에서 가장 많이 사용되는게 iptable이다.

iptable

리눅스의 패킷 필터링(Packet Filtering) 도구로서 방화벽 구성이나 NAT(Network Address Translation)에 사용된다.

사용법

iptables [-t 테이블] [액션] [체인] [매치] [-j 타겟]

Table

  • filter, nat, mangle, raw
  • 명시하지 않으면 기본적으로 filter이다.

Action

  • -A : APPEND (정책 추가)
  • -I : INSERT
  • -D : DELETE
  • -R : REPLACE
  • -F : FLUSH
  • -P : POLYCY
  • -L : LIST

Chain

  • INPUT
  • OUTPUT
  • FORWARD
  • PREROUTING
  • POSTROUTING

Match

  • -s: 출발지 매칭. 도메인, IP 주소, 넷마스크 값을 이용하여 표기(––source, ––src)
  • -d: 목적지 매칭. 도메인, IP 주소, 넷마스크 값을 이용하여 표기(––destination, ––dst)
  • -p: 프로토콜과 매칭. TCP, UDP, ICMP 와 같은 이름을 사용하고 대소문자는 구분하지 않음
  • -i: 입력 인터페이스와 매칭(––in-interface)
  • -o: 출력 인터페이스와 매칭(––out-interface)
  • -j: 매치되는 패킷을 어떻게 처리할지 지정 (--jump)

Target

패킷이 규칙과 일치할 때 취하는 동작을 지정한다.

  • ACCEPT: 패킷을 허용한다.
  • DROP: 패킷을 버린다(패킷이 전송된 적이 없던 것처럼)
  • REJECT: 패킷을 버리고 이와 동시에 적절한 응답 패킷을 전송한다.(icmp-port-unreachable)
  • LOG: 패킷을 syslog에 기록한다.
  • SNAT --to [주소]: 소스 IP를 [변환(NAT)|NAT]한다.
  • DNAT --to [주소]: 목적지 IP를 변환(NAT)한다.
  • RETURN: 호출 체인 내에서 패킷 처리를 계속한다.

아직 다 정리 못했을정도로 방화벽 설정 절차가 복잡하기 때문에
이 모든걸 쉽게 하게해주는 UFW를 사용한다.

sudo ufw status verbose
  • ufw 상태 확인
  • 설치 직후 inactive 상태
sudo ufw enable
  • 부팅시 ufw가 작동되도록 함
sudo ufw allow 4242
profile
안녕하세요

0개의 댓글