본문으로 바로가기

[Ubunto] UFW 방화벽 사용하기

category 컴퓨터/Linux 2017/02/21 09:40
[Ubunto] UFW 방화벽 사용하기

설치
$ sudo apt-get install ufw


기본 정책 설정 (들어오는 패킷은 차단, 나가는 패킷은 허용)
$ sudo ufw default deny incoming
$ sudo ufw default allow outgoing


ssh, http, https 허용 (ssh 포트를 변경해서 사용한다면 반드시 직접 포트를 입력하자)
$ sudo ufw allow ssh
$ sudo ufw allow http
$ sudo ufw allow https


포트를 변경해 사용하거나 특정 포트를 허용
$ sudo ufw allow 8080


방화벽 ON!
$ sudo ufw enable


위의 명령을 실행하면 "현재 ssh 연결에 문제가 생길 수 있습니다. 적용하시겠습니까?" 뭐 이런 질문이 나온다. ssh 포트는 허용으로 변경했으니 "y" 를 입력해 진행할 수 있다.

확인
$ sudo ufw status verbose
Status: active
Logging: on (low)
Default: deny (incoming), allow (outgoing), disabled (routed)
New profiles: skip

To                         Action      From
--                         ------      ----
22                         ALLOW IN    Anywhere
80/tcp                     ALLOW IN    Anywhere
443/tcp                    ALLOW IN    Anywhere
22 (v6)                    ALLOW IN    Anywhere (v6)
80/tcp (v6)                ALLOW IN    Anywhere (v6)
443/tcp (v6)               ALLOW IN    Anywhere (v6)


ufw 가 실행되고 있지 않다면 아래와 같은 결과가 리턴된다.
$ sudo ufw status verbose
Status: inactive


방화벽을 끌 때는 아래와 같은 명령어를 입력한다
$ sudo ufw disable


등록된 규칙을 삭제할 때는 2가지 방법이 있다.
첫번째는 등록 시 사용한 규칙을 그대로 입력하는 방법
$ sudo ufw delete allow ssh
$ sudo ufw delete allow 8080


두번째는 각 규칙의 번호를 확인하고 번호로 지우는 방법
$ sudo ufw status numbered
Status: active

     To                         Action      From
     --                         ------      ----
[ 1] 22                         ALLOW IN    Anywhere
[ 2] 80/tcp                     ALLOW IN    Anywhere
[ 3] 443/tcp                    ALLOW IN    Anywhere
[ 4] 22 (v6)                    ALLOW IN    Anywhere (v6)
[ 5] 80/tcp (v6)                ALLOW IN    Anywhere (v6)
[ 6] 443/tcp (v6)               ALLOW IN    Anywhere (v6)


등록된 규칙의 번호는 줄 맨앞에 있는 [숫자]

2번 규칙 80/tcp 를 지우려면
$ sudo ufw delete 2


새로운 규칙의 추가는 동일한 방식으로 가능하다
$ sudo ufw allow 21


포트 뒤에 tcp 나 udp 를 지정할 수 있고 지정하지 않는다면 모두 적용된다
$ sudo ufw allow 21/tcp


새로운 설정을 적용하려면 disable > enable 해도 좋고 아래와 같이 reload 가 가능하다
$ sudo ufw reload



특정 IP만 허용할 경우
$ sudo ufw allow from 192.168.0.101


특정 IP만 거부할 경우
$ sudo ufw deny from 192.168.0.101


특정 IP에게 특정 포트만 허용할 경우
$ sudo ufw allow from 192.168.0.101 to any port 8080


특정 IP에게 특정 포트만  거부할 경우
$ sudo ufw deny from 192.168.0.101 to any port 8080


포트의 범위를 규칙으로 사용할 경우
$ sudo ufw allow 9200:9300/tcp


특정 아이피에만 일정 범위의 포트를 tcp 패킷만 허용할 경우
$ sudo ufw allow from 192.168.0.101 to any port 9200:9300 proto tcp


서브넷을 특정 포트에 허용할 경우
$ sudo ufw allow from 192.168.0.0/24 to any port 8080


서브넷을 기반으로 거부 할경우
$ sudo ufw deny from 192.168.0.0/23
크리에이티브 커먼즈 라이센스
Creative Commons License

트랙백

http://trudy.kr/trackback/123

댓글을 달아 주세요

Trudy
Trudy 님의 블로그
MENU
VISITOR 오늘233 / 전체460753