安装NextDNS服务器
根据你的操作系统进行相应的安装:
- Debian/Ubuntu/Linux Mint:
sudo apt update sudo apt install nextdns-server
- CentOS/RHEL:
sudo yum install nextdns-server
- Fedora:
sudo dnf install nextdns-server
- Arch Linux:
sudo pacman -S nextdns-server
启动服务并设置开机启动
启动服务并确保它在重启时自动启动:
sudo systemctl start nextdns-server sudo systemctl enable nextdns-server
配置NextDNS服务器
编辑配置文件,通常位于/etc/nextdns/config.json:
sudo nano /etc/nextdns/config.json
根据你的需求进行调整:
{
"TLSServer": "...:443",
"TLSServerCertFile": "/path/to/nextdns.pem",
"TLSServerKeyFile": "/path/to/nextdns.key",
"DNSServer": "...:53",
"DNSServerCertFile": "/path/to/nextdns.pem",
"DNSServerTLSCipherSuites": ["TLSv1.2"],
"EnableDNSForwarding": true,
"ForwardTo": ["10...1:53"],
"EnableDNSOverHTTPS": true,
"HTTPSRoute": "/dns",
"Let’sEncrypt": {
"Staging": false,
"Domain": "yourdomain.com",
"Email": "admin@example.com"
}
}
生成证书(使用Let's Encrypt)
如果你选择使用Let's Encrypt获取证书,执行以下命令:
sudo nextdns-server --issue-certs --lets-encrypt staging yourdomain.com
或者如果已经配置好了Let's Encrypt选项,可以自动处理:
sudo nextdns-server --lets-encrypt yourdomain.com
重新启动服务
应用配置更改并重启服务:
sudo systemctl restart nextdns-server
测试配置
使用nslookup或dig命令测试DNS解析:
nslookup yourdomain.com
或者使用HTTPS:
curl --tlsv1.2 https://yourdomain.com/dns-query
检查日志和权限
查看服务日志:
sudo journalctl -u nextdns-server
确保服务有权限访问证书文件和目录:
sudo chown -R nextdns:nextdns /path/to/nextdns.pem sudo chmod 600 /path/to/nextdns.pem
进一步优化(可选)
-
设置缓存:在
/etc/nextdns/cache.json中配置缓存策略。 -
防火墙规则:确保防火墙允许TLS和DNS流量通过,
sudo ufw allow out 443 sudo ufw allow out 53
完成
配置完成后,你的NextDNS服务器应该能够正常运行,支持TLS和DNS-over-HTTPS,提供DNS解析和过滤功能。









