본문 바로가기
지름 신고, 사용기, 팁과 강좌/우분투

우분투 방화벽 설정하기

by Junhyeok 2018. 5. 22.

 우분투를 설치하고 plex, tvheadend, ssh, vnc 등을 설치해서 사용하고 있는데, ssh를 설정하면서 알고보니 방화벽이 비활성화 되어 있었다. 개인적으로 공부하는 용도로 쓰는 시스템이라 별다른 자료는 없지만 방화벽 설정하는 법도 '공부'해보도록 하겠다.

 방화벽은 컴퓨터 네트워크 트래픽을 제어하는 도구이다. 보통은 외부에서부터 불필요한 트래픽 유입으로 인한 성능 저하를 막거나 해킹/바이러스 등을 막기 위한 목적이 크지만, 내부에서 외부로 가는 트래픽도 필요에 따라 허용하거나 막을 수 있다.


방화벽 서비스 비활성화/활성화

junhyeok@junhyeok-desktop:~$ sudo ufw disable

방화벽이 비활성 되었으며 시스템이 시작할 때 사용되지 않습니다

junhyeok@junhyeok-desktop:~$ sudo ufw enable

방화벽이 활성 상태이며 시스템이 시작할 때 사용됩니다

junhyeok@junhyeok-desktop:~$ 

방화벽 상태 확인

junhyeok@junhyeok-desktop:~$ sudo ufw status verbose

상태: 활성

로깅: on (low)

기본 설정: deny (내부로 들어옴), allow (외부로 나감), disabled (라우팅 된)

새 프로필: skip

기본적으로 들어오는 트래픽은 막고, 나가는 트래픽을 허용하게 되어있다. 따라서 외부에서 ssh등을 사용하려면 필요한 포트를 허용하도록 설정해주어야 한다.

특정 포트 허용

junhyeok@junhyeok-desktop:~$ sudo ufw allow 9981

규칙이 추가되었습니다

규칙이 추가되었습니다 (v6)

junhyeok@junhyeok-desktop:~$ sudo ufw allow 9982

규칙이 추가되었습니다

규칙이 추가되었습니다 (v6)

junhyeok@junhyeok-desktop:~$

sudo는 root의 권한으로 명령을 실행하겠다는 의미

ufw는 방화벽 서비스
allow는 허용한다는 의미. 거부할 때는 deny를 쓴다.
9981, 9982는 tvheadend에서 사용하는 포트다. 필요에 따라서 21번(ftp), 22번(ssh), 5900번(vnc) 등등을 허용해주면 되겠다.

규칙 삭제

junhyeok@junhyeok-desktop:~$ sudo ufw delete allow 5000

규칙이 삭제되었습니다

규칙이 삭제되었습니다 (v6)


ip 주소와 프로토콜, 포트를 이용한 허가/거부

sudo ufw allow from 0.0.0.0 to any port 22 proto tcp
외부의 모든 아이피로부터 tcp 프로토콜 22번 포트 허용 (FTP 접속을 허용하겠다는 의미)
sudo ufw deny from 0.0.0.0 to any port 22 proto tcp

junhyeok@junhyeok-desktop:~$ sudo ufw allow proto udp to 224.0.0.0/4

규칙이 추가되었습니다

junhyeok@junhyeok-desktop:~$ sudo ufw allow proto udp from 224.0.0.0/4

규칙이 추가되었습니다

junhyeok@junhyeok-desktop:~$

조금 응용해서 tvheadend를 허용하는 규칙을 가져와봤다. 튜너를 통한 입력을 받을 때는 불필요하지만 iptv 신호를 이용할 때는 udp 프로토콜과 224.0.0.0/4[각주:1]의 멀티캐스트 대역 ip를 허용해주어야 한다. 이 설정만으로는 잘 되지 않아서 검색을 해보니 /etc/ufw/before.rules 파일을 수정해야된다는 내용을 찾았다.[각주:2] 위의 파일에 다음과 같은 내용을 추가해준다.

# allow IGMP

-A ufw-before-input -p igmp -d 224.0.0.0/4 -j ACCEPT

-A ufw-before-output -p igmp -d 224.0.0.0/4 -j ACCEPT


우분투 방화벽에 대한 추가적인 정보가 필요하면 https://help.ubuntu.com/community/UFW를 참고하도록 하자.

  1. /4 는 서브넷마스크로 224.0.0.0~239.255.255.255 범위의 주소를 의미한다. [본문으로]
  2. https://einar.slaskete.net/2014/05/03/allow-multicast-and-igmp-with-ufw-for-iptv-to-work/ [본문으로]

댓글