Установка DNSCrypt на Debian из исходных кодов
Ниже будет описана установка DNSCrypt на Debian GNU/Linux 8.7 (jessie)
Исходные данные:
192.168.100.1 — адрес сервера (он же сервер DNS)
192.168.100.X/24 — IP клиента
Подготовка:
Скачать исходники dnscrypt-proxy
Собрать
Юниты systemd
Копировать:
Немножко редактировать:
Немножко поправить настройки
Запустить
Настройки BIND9
Перезапустить BIND:
Проверить:
Исходные данные:
192.168.100.1 — адрес сервера (он же сервер DNS)
192.168.100.X/24 — IP клиента
Подготовка:
apt install libsodium-dev pkg-config libsystemd-dev build-essential Чтение списков пакетов… Готово Построение дерева зависимостей Чтение информации о состоянии… Готово Будут установлены следующие дополнительные пакеты: libsodium13 НОВЫЕ пакеты, которые будут установлены: libsodium-dev libsodium13 libsystemd-dev pkg-config обновлено 0, установлено 4 новых пакетов, для удаления отмечено 0 пакетов, и 0 пакетов не обновлено. Необходимо скачать 436 kБ архивов. После данной операции, объём занятого дискового пространства возрастёт на 1 583 kB. Хотите продолжить? [Д/н] ...
Скачать исходники dnscrypt-proxy
wget https://download.dnscrypt.org/dnscrypt-proxy/LATEST.tar.gz tar -xvf LATEST.tar.gz cd dnscrypt-proxy-*
Собрать
./configure --prefix=/ --with-systemd && makeУстановить
make install
Юниты systemd
Копировать:
cp dnscrypt-proxy.s{ocket,ervice} /etc/systemd/system
Немножко редактировать:
sed -ir 's#:53#:5553#g' /etc/systemd/system/dnscrypt-proxy.socket cat /etc/systemd/system/dnscrypt-proxy.service [Unit] Description=DNSCrypt client proxy Documentation=man:dnscrypt-proxy(8) Requires=dnscrypt-proxy.socket After=network.target Before=nss-lookup.target [Install] Also=dnscrypt-proxy.socket WantedBy=multi-user.target [Service] Type=simple NonBlocking=true # Edit the configuration file appropriately, or the service will not start. # See https://dnscrypt.org for more information. ExecStart=//sbin/dnscrypt-proxy //etc/dnscrypt-proxy.conf cat /etc/systemd/system/dnscrypt-proxy.socket [Unit] Description=dnscrypt-proxy listening socket [Socket] ListenStream=127.0.0.1:5553 ListenDatagram=127.0.0.1:5553 [Install] WantedBy=sockets.target
Немножко поправить настройки
sed -i 's/# LocalAddress 127.0.0.1:53/LocalAddress 127.0.0.1:5553/' /etc/dnscrypt-proxy.conf egrep -v '^#|^$' /etc/dnscrypt-proxy.conf ResolverName random Daemonize no LocalAddress 127.0.0.1:5553 LocalCache on EphemeralKeys off BlockIPv6 no
Запустить
systemctl status dnscrypt-proxy.service ● dnscrypt-proxy.service - DNSCrypt client proxy Loaded: loaded (/etc/systemd/system/dnscrypt-proxy.service; disabled) Active: inactive (dead) Docs: man:dnscrypt-proxy(8) systemctl enable dnscrypt-proxy.service Created symlink from /etc/systemd/system/multi-user.target.wants/dnscrypt-proxy.service to /etc/systemd/system/dnscrypt-proxy.service. Created symlink from /etc/systemd/system/sockets.target.wants/dnscrypt-proxy.socket to /etc/systemd/system/dnscrypt-proxy.socket. systemctl start dnscrypt-proxy.service systemctl status dnscrypt-proxy.service ● dnscrypt-proxy.service - DNSCrypt client proxy Loaded: loaded (/etc/systemd/system/dnscrypt-proxy.service; enabled) Active: active (running) since Ср 2017-05-03 16:59:52 MSK; 9s ago Docs: man:dnscrypt-proxy(8) Main PID: 25381 (dnscrypt-proxy) CGroup: /system.slice/dnscrypt-proxy.service └─25381 //sbin/dnscrypt-proxy //etc/dnscrypt-proxy.conf май 03 16:59:52 debian dnscrypt-proxy[25381]: Wed May 3 16:59:52 2017 [NOTICE] Starting dnscrypt-proxy 1.9.4 май 03 16:59:52 debian dnscrypt-proxy[25381]: Wed May 3 16:59:52 2017 [INFO] Loading plugin [//lib/dnscrypt-proxy/libdcplugin_example_cache.so] май 03 16:59:52 debian dnscrypt-proxy[25381]: Wed May 3 16:59:52 2017 [INFO] Loaded plugin: [A basic DNS cache] май 03 16:59:52 debian dnscrypt-proxy[25381]: Wed May 3 16:59:52 2017 [INFO] Generating a new session key pair май 03 16:59:52 debian dnscrypt-proxy[25381]: Wed May 3 16:59:52 2017 [INFO] Done май 03 16:59:53 debian dnscrypt-proxy[25381]: Wed May 3 16:59:53 2017 [INFO] Server certificate with serial #1493812021 received май 03 16:59:53 debian dnscrypt-proxy[25381]: Wed May 3 16:59:53 2017 [INFO] This certificate is valid май 03 16:59:53 debian dnscrypt-proxy[25381]: Wed May 3 16:59:53 2017 [INFO] Chosen certificate #1493812021 is valid from [2017-05-03] to [2017-05-04] май 03 16:59:53 debian dnscrypt-proxy[25381]: Wed May 3 16:59:53 2017 [INFO] Server key fingerprint is FE4A:3D80:5793:2111:F277:CCF2:0EC7:79D5:2D02:0D97:B120:8E0F:1E29:5A89:A23B:D27C май 03 16:59:53 debian dnscrypt-proxy[25381]: Wed May 3 16:59:53 2017 [NOTICE] Proxying from 127.0.0.1:5553 to 210.16.120.139:443
Настройки BIND9
cat /etc/bind/named.conf.options acl mydraftsnet {192.168.100.0/24; 127.0.0.1; }; options { directory "/var/cache/bind"; dnssec-validation auto; auth-nxdomain no; # conform to RFC1035 listen-on-v6 { none; }; allow-query { mydraftsnet; }; forwarders { 127.0.0.1 port 5553; }; };
Перезапустить BIND:
systemctl restart bind9.service
Проверить:
netstat -nulp |grep 53 udp 0 0 127.0.0.1:5553 0.0.0.0:* 1/init udp 0 0 10.0.0.51:53 0.0.0.0:* 25393/named udp 0 0 127.0.0.1:53 0.0.0.0:* 25393/named
не могу ни как настроить dnscrypt.Помогите
Актуализируйте инструкцию пожалуйста.
Сервер Debian X64 minimal, сорцы не качаются уже с сайта. Сорцы на GO тут — https://github.com/jedisct1/dnscrypt-proxy/releases/tag/2.0.17
По вашей инструкции не получиться ничего, увы (