Ok, finalmente descobri que isso funcionaria. Limpei minha instalação atual e removi o ppa, porque, como mencionou a soluçao, o pacote está quebrado. Então eu peguei este script de auto-instalação do github. Eu compilei o pacote, no entanto, o script configure tem um bug onde ele não detecta corretamente se o systemd está presente (mesmo se você usar o sinalizador --with-systemd). Para corrigir isso, abri o script configure
e configurei a variável HAVE_SYSTEMD
to TRUE
manualmente. Do que eu reran configurar, do que fazer e, finalmente, sudo make install.
Em seguida, criei um diretório, /etc/systemd/system/dnscrypt-proxy.service
, e coloquei esses dois scripts nesse diretório:
Atualização: essa solução funcionou até que eu reiniciei, mas que o serviço não foi iniciado. Eu acabei usando este script que agora funciona perfeitamente. Simclausen é meu herói por escrever isso. Obrigado ao zenester por me informar a sintaxe correta:
/etc/systemd/system/dnscrypt-proxy.service/dnscrypt-proxy.service
:
[Unit]
Description=DNSCrypt client proxy
Requires=dnscrypt-proxy.socket
[Install]
Also=dnscrypt-proxy.socket
WantedBy=multi-user.target
[Service]
Type=simple
NonBlocking=true
ExecStart=/usr/local/sbin/dnscrypt-proxy \
-R dnscrypt.eu-nl
Aparentemente isso não é necessário:
E também
/etc/systemd/dnscrypt-proxy.service/dnscrypt-proxy.socket
:
[Unit]
Description=dnscrypt-proxy listening socket
After=network.target
[Socket]
ListenStream=127.0.0.2:53
ListenDatagram=127.0.0.2:53
[Install]
WantedBy=sockets.target
Finalmente, eu corri / usr / local / sbin / dnscrypt-proxy iniciar -R dnscrypt.eu -ll - endereço local 127.0.0.2:53
O programa foi iniciado com sucesso. Para confirmar isso, eu corri este comando:
dig @127.0.0.2 debug.opendns.com txt
E tudo parece bom!
; <<>> DiG 9.9.5-9-Ubuntu <<>> @127.0.0.2 debug.opendns.com txt
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 45692
;; flags: qr rd ra; QUERY: 1, ANSWER: 6, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;debug.opendns.com. IN TXT
;; ANSWER SECTION:
debug.opendns.com. 0 IN TXT "server 3.otp"
debug.opendns.com. 0 IN TXT "flags 20 0 70 5950800000000000000"
debug.opendns.com. 0 IN TXT "originid 0"
debug.opendns.com. 0 IN TXT "actype 0"
debug.opendns.com. 0 IN TXT "source xxxxxxxxxx:35164"
debug.opendns.com. 0 IN TXT "dnscrypt enabled (xxxxxxxxxxxxxx)"
;; Query time: 154 msec
;; SERVER: 127.0.0.2#53(127.0.0.2)
;; WHEN: Fri May 22 17:24:32 EDT 2015
;; MSG SIZE rcvd: 248
Ou para registrá-lo corretamente como um serviço:
sudo systemctl enable dnscrypt-proxy.service
E então, chame-o com sudo service dnscrypt-proxy start
Espero que isso ajude alguém.