1. 먼저 ufw 설치 합니다.



user@user-test:~$ sudo apt install ufw



or (혹은 gufw를 설치 합니다.)



user@user-test:~$ sudo apt install gufw




( gufw은 ufw의 gtk버전으로서 그래픽 툴로서 관리 할 수 있는 소프트웨어 입니다. 이 패키지도 마찬가지 ufw를 의존성 패키지로 자동으로 같이 설치 됩니다.)


2. 다음 가장 먼저 해야 할 일은 ufw를 서비스 활성하 시키는 작업입니다.



user@user-test:~$ sudo ufw enable



3. 우선 차단 규칙을 설정 하는 것을 배워 보겠습니다. 먼저 로컬 아이피 대역을 차단해 봅니다.



user@user-test:~$ sudo ufw deny from 192.168.1.1/25


( ip 차단은 앞서 'from'을 붙여 줍니다.)


4. 그럼 tcp와 udp를 차단해 보겠습니다. 



user@user-test:~$ sudo ufw deny 1:6500/udp


( udp 프로토콜의 포트 1에서 65000 까지의 포트 대역을 전부 차단 합니다.)



user@user-test:~$ sudo ufw deny 1:6500/udp


( tcp 프로토콜의 포트 1에서 65000 까지의 포트 대역을 전부 차단 합니다.)





UFW란? Linux의 핵심인 커널은 Server에 대한 Client의 Network 접속을 제어하는 netfilter라는 Module을 가지고 있는데 바로 netfilter를 사용하여 Filtering를 수행하는데, 이것을 이용하여 Server 접속에 대한 Network 정책을 세우는 Program이 바로 FirewalL(방화벽) 이다. 특히 이러한 필터중 리눅스에서 가장 많이 사용하는 것이 Iptable 이다. 그러나 이 기본 모듈 소프트웨어만 가지고는 절차상 번거로운 면이 있기 때문에 iptable의 작업을 간편화 해주는 소프트웨어가 바로 UFW(Uncomplicated FireWall)이다. 
그리고 이런 UFW를 그래픽툴로서 제공하는 것이 GUFW라고 볼수 있다. 

하지만 UFW를 설치 하였다고 해서 바로 방화벽이 작동되는 것은 아니다. 시스템 시작시에도 방화벽이 백그라운드에서 자동으로 활성화 되게끔 하기 위해서는 터미널에 다음과 같이 입력을 해준다. 

$ sudo ufw enable 
이렇게 하면 시스템 시작시에도 스타트가 적용이 된다. 오히려 gufw 에서는 킷에서 활성화를 시켜도 리붓시 활성화가 적용이 안되는 경우가 많다. 
그렇기 때문에 완전한 활성화를 위해서는 터미널에서 작업을 하는것이 바람직하다.

하지만 만약에 리눅스를 통해 서버를 이용하고 있다면 서버 접속을 방화벽에 규칙을 추가해야 한다. 그렇지 않으면 서버접속 또한 방화벽에 의하여 이루어 지지 않는다. 그리고 만약 서버가 OpenSSH라면 다음과 같이 입력한다. 

$ sudo ufw allow ssh
그리고 allow(허용) 뒤에는 서비스명 대신 service 포트를 직접 입력 하여도 된다. 
끝으로 방화벽의 상태를 확인해 보려면 크게 두가지로 할수 있다.

$ sudo ufw allow from *.*.*.* (ip)
특정 ip 접속을 허가 하게 한다.

$ sudo ufw status
상태 확인

sudo ufw status verbose
상세 확인

$ sudo ufw deny from *.*.*.*(ip)
특정 아이피를 차단한다.

$ sudo ufw deny x:x/tcp
tcp 프로토콜에서 x포트 부터 x 포트까지의 접속을 차단한다.

$ sudo ufw deny x:x/udp
udp 프로토콜을 통해 들어오는 x포트 부터 x 포트까지의 접속을 차단한다. 


+ Recent posts