DNS over TLS를 사용하여 Linux에서 DNS 개인 정보 보호를 얻는 방법

매일 컴퓨터는 수천 개의 DNS 쿼리를 인터넷으로 보냅니다. 대부분의 경우 운영 체제는 이러한 쿼리를 보호하지 않으며 적절한 양의 노하우를 가진 잘못된 사람이 개인 정보를 침해할 수 있습니다.

과거 wdzwdz에서 DNSCrypt에 대해 이야기했습니다. DNS 개인 정보 보호를 받는 훌륭한 방법입니다. 그러나 그것만이 유일한 해결책은 아닙니다. 결과적으로 또 다른 옵션은 TLS를 통해 DNS를 보내는 것입니다.

방법 1 – 스터비

Stubby는 사용자가 TLS를 통해 DNS 쿼리를 보낼 수 있는 일부 Linux 배포판에서 작동하는 쉬운 프로그램입니다.

Stubby 도구는 Ubuntu Linux, Debian Linux 및 Arch Linux에서 작동합니다. 이 도구를 설치하려면 키보드에서 Ctrl + Alt + T 또는 Ctrl + Shift + T를 눌러 터미널 창을 시작합니다. 그런 다음 현재 사용 중인 Linux 운영 체제에 해당하는 명령줄 지침을 따릅니다.

우분투

Ubuntu에 Stubby를 설치하려면 먼저 Ubuntu “Universe” 소프트웨어 저장소를 활성화해야 합니다. 이렇게 하려면 터미널 창에서 apt-add-repository 명령을 사용합니다.

sudo add-apt-repository universe

add-apt-repository 명령을 실행한 후 업데이트 도구를 사용하여 Ubuntu가 소프트웨어 업그레이드를 확인하도록 해야 합니다. 또한 Universe 소프트웨어 소스에 릴리스 정보를 다운로드하여 시스템에 추가합니다.

sudo apt update

업데이트 명령이 완료되면 Apt install 명령을 사용하여 Ubuntu Linux 운영 체제에 Stubby를 설치합니다.

sudo apt install stubby

데비안

데비안 버전 10의 경우 “Sid”는 “Main” 소프트웨어 저장소에서 Stubby 도구를 찾을 수 있습니다. 설치하려면 터미널 창을 실행하고 아래 Apt-get 명령을 사용하십시오.

sudo apt-get install stubby

아치 리눅스

Arch Linux 사용자는 “커뮤니티” 소프트웨어 저장소가 설정되어 있으면 Stubby를 설치할 수 있습니다. 설정하려면 /etc/pacman.conf를 편집하고 파일 맨 아래로 스크롤한 다음 “커뮤니티” 앞에서 # 기호를 제거하고 시스템을 업데이트하십시오.

“커뮤니티”가 설정되면 Pacman 패키지 관리자를 사용하여 Stubby 애플리케이션을 설치합니다.

sudo pacman -S stubby

Stubby 애플리케이션이 설정되었으므로 구성 파일을 수정할 필요가 없습니다. Stubby에는 TLS를 지원하는 일부 우수한 DNS 서비스가 사전 설정되어 있기 때문입니다.

  Linux에서 SSH 키를 설정하는 방법

참고: DNS 서비스를 변경하려면 /etc/stubby/stubby.yml을 편집하십시오.

Stubby를 사용하여 TLS를 통한 DNS 설정의 마지막 단계는 현재 사용 중인 주소에서 기본 DNS 설정을 127.0.0.1 주소로 변경하는 것입니다.

DNS 설정 변경은 사용 중인 Linux 데스크톱 환경에 따라 다르므로 이 게시물에서는 다루지 않습니다. 대신 자세한 내용은 DNS 설정을 변경하는 방법에 대한 가이드를 참조하십시오.

DNS 설정이 127.0.0.1로 변경되면 Linux 시스템은 TLS를 통한 DNS를 사용해야 합니다!

방법 2 – 시스템 해결

Stubby 도구는 구성하기 쉽고 Linux에서 TLS를 통한 DNS 전송을 매우 간단하게 만들지만 슬프게도 모든 단일 배포에서 작동하지는 않습니다.

Linux에서 DNS over TLS를 구성하기 위한 Stubby 프로그램의 훌륭한 대안은 Systemd-resolved DNS 캐싱 시스템을 사용하는 것입니다. 그 주된 이유는 대부분의 Linux 운영 체제에서 이미 사용하고 있는 Systemd init 시스템에 내장되어 있고 사용을 시작하기 쉽기 때문입니다. 그러나 TLS를 통한 DNS에 대해 Systemd-resolved를 설정하기 전에 Systemd-resolved를 위해 현재 사용 중인 DNS 캐시 시스템을 꺼야 합니다.

Systemd-resolved 시스템을 설정하려면 키보드에서 Ctrl + Alt + T 또는 Ctrl + Shift + T를 눌러 명령줄 터미널을 시작합니다. 그런 다음 systemctl 명령을 사용하여 사용 중인 DNS 캐시 시스템을 비활성화합니다.

참고: DNS Masq 또는 NSCD를 사용하지 않는 경우 이미 Systemd-resolved를 사용하고 있을 가능성이 높으므로 아무 것도 비활성화할 필요가 없습니다.

DNS 마스크

sudo systemctl stop dnsmasq.service
sudo systemctl disable dnsmasq.service -f

NSCD

sudo systemctl stop nscd.service -f
sudo systemctl disable nscd.service -f

Linux PC에서 기본 DNS 공급자가 꺼져 있으면 Systemd-resolved로 전환해야 합니다. 이렇게 하려면 다시 한 번 systemctl 명령을 사용하십시오.

sudo systemctl enable systemd-resolved.service -f
sudo systemctl start systemd-resolved.service

Systemd를 통해 도구를 활성화하면 TLS를 통한 DNS를 사용하도록 프로그램을 구성할 수 있습니다. 시작하려면 Nano에서 도구의 구성 파일을 시작하십시오.

sudo nano -w /etc/systemd/resolved.conf

Nano를 사용하여 Resolved.conf 파일을 편집하고 DNS=까지 아래로 스크롤합니다.

  Google 드라이브를 빠르게 검색하는 방법

= 기호 뒤에 CloudFlare의 개인 정보 DNS 서버와 같은 안전한 TLS 사용 DNS 서버를 추가합니다. 다음과 같아야 합니다.

DNS=1.1.1.1

그런 다음 Domains=로 이동하여 아래 코드와 같이 변경합니다.

도메인=~.

“Domains” 다음으로 DNSOverTLS=로 이동하여 아래 코드와 같이 변경합니다.

DNSOverTLS=기회적

Ctrl + O를 눌러 수정 사항을 Resolved.conf에 저장한 다음 Ctrl + X로 종료하고 DNS 시스템을 다시 시작하여 Systemd-resolved로 TLS를 통한 DNS를 활성화하십시오!

sudo systemctl restart  systemd-resolved