Как установить dnscrypt-proxy в Kali Linux

Как установить dnscrypt-proxy в Kali Linux

Life-Hack [Жизнь-Взлом]/Хакинг

#Обучение

 DNS через HTTPS — это протокол, благодаря которому DNS запросы шифруются, что делает невозможным атаку со спуфингом DNS ответов и контроль за тем, какие сайты открывал пользователь. 

 Программа dnscrypt-proxy — это кеширующий DNS сервер с поддержкой DNS через HTTPS и многих других протоколов безопасного DNS. Программа сама поддерживает список безопасных серверов. Установка и настройка работы с dnscrypt-proxy очень простая. Эта инструкция покажет вам, как пошагово установить dnscrypt-proxy и настроить систему на использование DNS сервера dnscrypt-proxy в результате чего все DNS запросы и ответы будут зашифрованы. 

Данная инструкция с минимальными поправками должна также работать и в Linux Mint, Ubuntu и аналогичных. Если у вас данный дистрибутив, то попробуйте этот раздел и если что-то не получится, то пишите ваши ошибки в комментариях. 

Установите пакет dnscrypt-proxy: 

sudo apt install dnscrypt-proxy

Проверьте, чтобы порт 53 не был занят: 

ss -lp 'sport = :domain'

В выводе должна быть всего одна строка, а именно шапка:

Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port Process

Если вывод содержит более чем одну первую строку с названием столбцов, нужно отключить сервис, который использует порт 53. Одним из частых виновников является systemd-resolved.service (NetworkManager), но другие сетевые менеджеры могут иметь аналогичные компоненты. В общем, какая бы там ни была служба (возможно, вы уже устанавливали другой кэширующий DNS сервер), её нужно остановить и убрать из автозагрузки. Если нет процессов, прослушивающих порт 53, то можно продолжать. 

Выполните проверку, чтобы убедиться, что dnscrypt-proxy работает: 

/usr/sbin/dnscrypt-proxy -resolve example.com 

Запустите службу dnscrypt-proxy и проверьте её статус: 

sudo systemctl start dnscrypt-proxy.service
systemctl status dnscrypt-proxy.service 

Если всё в порядке, добавьте службу в автозагрузку: 

sudo systemctl enable dnscrypt-proxy.service 

Откройте файл /etc/NetworkManager/NetworkManager.conf

sudo gedit /etc/NetworkManager/NetworkManager.conf 

и в раздел 

[main] 

добавьте 

dns=none

Перезапустите NetworkManager: 

sudo systemctl restart NetworkManager 

Сделайте резервную копию файла /etc/resolv.conf

sudo cp /etc/resolv.conf /etc/resolv.conf.backup 

А затем удалите /etc/resolv.conf (это важно, поскольку это может быть ссылка на файл, а не настоящий файл): 

sudo rm -f /etc/resolv.conf 

И создайте файл /etc/resolv.conf 

sudo gedit /etc/resolv.conf 

со следующим содержимым: 

nameserver 127.0.2.1
# nameserver ::1 # для IPv6
options edns0 single-request-reopen
EDNSPayloadSize 4096

Теперь проверьте систему — откройте сайты, выполните обычные сетевые задачи, чтобы убедиться, что всё работает нормально. 

Чтобы посмотреть, какой DNS сервер используется, выполните дважды команду dig

dig zalinux.ru

Как видно на скриншоте, IP адрес DNS сервера 127.0.2.1. Первый запрос занял 160 msec, а второй запрос занял 0 msec, поскольку данные получены из кэша. 

Источник


Report Page