라즈베리파이에 Pi-Hole 설치하기 ( 모바일 광고차단 )
- 개발,서버/Linux
- 📚 1.5min to read
9MIN READ
스마트폰에서 광고차단이 됩니다.
4월 초, 저는 스마트폰에서 뉴스를 볼때 팝업광고를 보고 굉장히 기분이 좋지 않았습니다. 기사 내용을 가림과 동시에 불쾌한 내용에 대해 언급을 하는 광고가 나왔기 때문이죠. 지금까지는 기자분을 위해 광고차단 DNS를 이용하지 않았지만, 이용해야겠다는 생각이 들었습니다. Adguard DNS를 이용해 보았는데, 핑이 100ms이상이더군요. 결국 Pihole로 광고 차단 DNS를 구축하기로 하였습니다.
DNS가 무엇인지 모르시는 분들이 많을텐데, 간단하게 말하면 주소록같은겁니다. 필자는 전화를 걸 때 주소록에서 사람 이름을 찾고 전화를 겁니다. 인터넷 세상에서도 마찬가지로, blog.yoru.pe.kr라는 이름(도메인)이 있고 이름 뒤에는 27.0.236.139이러한 아이피 주소(전화번호)가 있습니다. 광고를 보여주는 사이트도 마찬가지로 이름(도메인) 뒤에 아이피주소(전화번호)가 있겠죠. 우리는 이 점을 이용할겁니다. 이름(도메인)을 차단하는거죠. 이름(도메인)을 차단하면 아이피주소(전화번호)가 나오지 않고, 우리는 그 사이트에 접속, 그러니까 전화를 걸 수 없게 되는겁니다(대충 광고를 못 불러온다고 생각하시면 됩니다)!
혹시 Plex서버를 설치할 생각이라면 Pi-Hole과 간섭이 일어난다는 이야기가 많으니 Adguard Home을 설치한느것을 추천한다. : https://yorublog.tistory.com/60
설치하기
이 글을 보시는 분은 라즈베리파이에 라즈비안을 설치하는 방법을 아실거라 생각하고 Pi-Hole만 설치하겠습니다. 라즈비안을 아직 설치하지 않으셨다면 CPU를 덜 먹는 라즈비안 서버를 설치하는것을 추천드립니다.
먼저, 라즈베리파이에 연결합니다. 마찬가지로 이 글을 보시는 분은 SSH를 이용하는 방법을 아실거라 믿습니다.
연결되었다면, 아래 커맨드를 입력해 Pi-Hole을 다운로드 합니다.
curl -sSL https://install.pi-hole.net | bash
라즈베리에 구멍이 뚫린 도트가 나오면서 자동으로 설치가 진행됩니다.
설치 과정 중 몇 가지 선택을 해야합니다. 이 글에서는 중요한 설정만 보여드리겠습니다.
만약 어떤 선택지를 선택할지 모르겠다면 구글에 검색해보거나 Recommended라고 나와있는것을 선택하시면 됩니다.
웹 인터페이스를 설치하겠냐고 물어보는겁니다. 우리는 커맨드로 차단 리스트를 추가하고 싶지는 않으니, On을 선택해 웹 인터페이스를 설치합니다.
유선 연결을 이용하시는 분을 eth0을, 무선은 wlan0을 선택하시면 됩니다
이제 전화번호부를 선택해야 합니다. 방금 전화번호부는 Pi-Hole이라 했는데 무슨 말이냐면, 우리는 이미 저장되어 있는 전화번호부를 불러와야 합니다. 저는 CloudFlare DNS를 선호합니다.
어떤 광고를 차단시킬지 물어보는건데, 모두 다 선택하여 거의 모든 광고를 차단하도록 합시다.
여기까지 따라 오셨으면, 설정이 끝났습니다. 이제 Pi-Hole에 나온 아이피 주소와 비밀번호를 이용해 웹 인터페이스에 로그인 하면 됩니다.
끝난게 아닙니다! 중요한게 남았습니다. 우리는 한국 광고를 차단해야 합니다. 예를 들면 한국 뉴스사이트 광고요.
인터페이스에 들어왔으면, Group management를 선택하고 AdList를 선택합니다
raw.githubusercontent.com/List-KR/List-KR/master/filter.txt
를 추가합니다. 어떤 분이 만들어놓은 광고 리스트입니다.
Add!
기본 DNS주소에 라즈베리파이의 아이피를 입력합니다. 저는 VPS에 Pi-Hole을 구축하였기에 보조DNS에 라즈베리파이의 주소를 입력하였습니다.
Tip
광고가 나오나요?
광고를 꾸욱 클릭하면 이미지 링크 주소 복사라는게 나올겁니다. 링크 주소를 복사합니다.
http뒤의 도메인을 복사하여 Pi-Hole 블랙리스트에 등록합니다. realadr.realclick.co.kr만요.
Add to Blacklist를 누른 후 5분정도 기다리면 블랙리스트에 추가가되고, 그 업체에서 뿜어내는 광고는 안 나오게 됩니다.
정상적으로 추가가 되었다면 아까 그 광고는 깨져서 나옵니다.(로딩이 되지 않습니다)
다른 광고가 나오면 그 광고도 똑같은 방법으로 블랙 리스트에 등록하세요.
나중에 광고 보는거보다는 지금 추가하는게 낫잖아요.
마치며
Pi-Hole을 구축한 후, 저는 스마트폰에 DNS Changer라는 앱을 깔아서 외부에서도 구축한 DNS를 이용하여 광고를 보지 않고 있고, 덕분에 뉴스 하나를 볼때마다 소비되었던 데이터 30MB가 데이터 5MB로 줄었습니다. 외부에서 DNS를 이용하기 위해서는 포트포워딩을 해야하는데, 이 글에서 다루기에는 너무 길어지니까 구글링해보시기 바랍니다.
뒷 이야기
내부 DNS가 좋은점은, 속도 저하가 거의 없다는 것입니다. 당연한것이겠지요.
하지만 왜 저는 외부 DNS( VPS에 구축한 DNS )를 사용 하냐면, 꺼질 일이 없거든요. 얼마 전에 라즈베리파이가 꺼져서 인터넷이 안 된것이었는데 공유기에 문제가 있는줄 알고 공유기를 껏다 키고, 모뎀까지 껏다 켰거든요.
외부접속
포트를 열어둔다는것은 언제 어디서든 공격에 노출될 수 있다는뜻입니다. 내부DNS는 내부에서만, 외부에 구축한 DNS는 외부에서만 쓰는것을 추천합니다.
댓글
이 글 공유하기
다른 글
-
VPS에 Plex 미디어 서버 설치하기
VPS에 Plex 미디어 서버 설치하기
2021.01.11 -
라즈베리파이에 파이썬 디스코드 봇 호스팅하기
라즈베리파이에 파이썬 디스코드 봇 호스팅하기
2020.12.04 -
라즈베리파이에 node.js 디스코드 봇 호스팅하기
라즈베리파이에 node.js 디스코드 봇 호스팅하기
2020.12.01 -
라즈베리파이에 Adguard Home 설치하기
라즈베리파이에 Adguard Home 설치하기
2020.10.29