Releases: Texnomic/SecureDNS
Terminal Edition - v0.4 Alpha
This is the Alpha 4 Release for Terminal Edition of SecureDNS Server.
This is considered a Milestone release as it includes new rewritten components.
Deploying As Portable Executable:
- Install Datalust's Seq
(Optional)
- For Linux Only:
sudo apt install libsodium-dev
- Download & Run Binary.
- Configure
AppSettings.json
File As Per Wiki Page. - Update DNS Name-Server.
Deploying As Linux Daemon:
Check Daemonization Under Linux Wiki Page.
Binaries & Targeting:
Check Runtime Identifiers Wiki Page.
Release Notes:
- All Binaries are Portable & Self-Contained.
- No Known-Issues so-far!
New Features:
- Migrating to .NET 6.0.
- Rewriting UDP & TCP Server with new .NET APIs.
- Changing
AppSettings.json
File Location ToC:\ProgramData\<Username>\SecureDNS - Terminal Edition
. - Various Bug Fixes & Performance Improvements.
Supported Operating Systems:
Check Operating Systems Wiki Page.
Supported Processor Architecture:
Check Processor Architecture Wiki Page.
Seq Queries:
Check Seq Queries Wiki Page.
Full Change Log:
Check v0.3-alpha...v0.4-alpha
Terminal Edition - v0.3 Alpha
This is the Alpha 3 Release for Terminal Edition of SecureDNS Server.
This is considered a Milestone release as it includes new infrastructure libraries.
Deploying As Portable Executable:
- Install Datalust's Seq
(Optional)
- For Linux Only:
sudo apt install libsodium-dev
- Download & Run Binary.
- Configure
AppSettings.json
File As Per Wiki Page. - Update DNS Name-Server.
Deploying As Linux Daemon:
Check Daemonization Under Linux Wiki Page.
Binaries & Targeting:
Check Runtime Identifiers Wiki Page.
Release Notes:
- All Binaries are Portable & Self-Contained.
- No Known-Issues so-far!
New Features:
- Supports
DNSCrypt v2.0
Standard-Compliant Public Resolvers. - Supports
Ethereum Name Service
Middleware. - New & Custom DNS Serialization Library which is 15x Times Better!
Supported Operating Systems:
Check Operating Systems Wiki Page.
Supported Processor Architecture:
Check Processor Architecture Wiki Page.
Seq Queries:
Check Seq Queries Wiki Page.
Terminal Edition - v0.2 Alpha
This is the Alpha 2 Release for Terminal Edition of SecureDNS Server.
This is considered a Milestone release as it includes many of the Core Features that were promised on Cairo Security Camp 2019 Session.
Deployment Steps:
- Install Datalust's Seq
- Configure
AppSettings.json
File As Per Wiki Page. - Download, Extract & Execute Binary.
- Update DNS Name-Server.
Release Notes:
- All Binaries are Portable & Self-Contained.
- No Known-Issues so-far.
Supported Features:
- Any
DoT
&/orDoH
Standard-Compliant Public Resolver. Host-Table
akaHosts-File
Middleware.- FilterLists Integration Middleware.
Composable
Middlewares Pipeline.- Multiple Operating Modes:
Terminal CLI
,Terminal GUI
,Windows Service
&Linux Daemon
. - Enhanced Structured Logs Integration with Seq.
Supported Operating Systems:
Check Operating Systems Wiki Page.
Supported Processor Architecture:
Check Processor Architecture Wiki Page.
Seq Queries:
Check Seq Queries Wiki Page.
Terminal Edition - v0.1 Alpha
This is the Terminal Edition of SecureDNS Server for interested early adopters.
Deployment Steps:
-
Install Datalust's Seq
# Note: Elevated PowerShell Core # Option 1: MSI Setup curl "https://getseq.blob.core.windows.net/releases/Seq-5.1.3200.msi" --output . .\Seq-5.1.3200.msi /quiet Invoke-Item "$Env:Programfiles\Seq\Admin\Seq.Administration.exe" # Option 2: Docker docker run -e ACCEPT_EULA=Y -p 5341:80 datalust/seq:latest
-
Download & Execute Binary.
# Note: Elevated PowerShell Core # Option 1: Terminal GUI .\Texnomic.SecureDNS.CLI-[OS]-[Arch] # Option 2: Terminal CLI .\Texnomic.SecureDNS.CLI-[OS]-[Arch] -binding "0.0.0.0:53" -seq "http://127.0.0.1:5341"
-
Update DNS Server(s).
# Note: Elevated PowerShell Core # Setting DNS Servers Get-NetAdapter -Physical | ForEach-Object { Set-DnsClientServerAddress $_.Name -ServerAddresses ("127.0.0.1") } # Resetting DNS Servers Get-NetAdapter -Physical | ForEach-Object { Set-DnsClientServerAddress $_.Name -ResetServerAddresses }
Release Notes:
- Server Runs in Proxy Mode: From Standard DNS-Over-UDP To DNS-Over-HTTP/s.
- Server Utilize Google's Public Resolver aka 8.8.8.8.
- Server Threads defaults to number of Logical Processors.
- SSL Certificate-Pinning Feature is Disable.
- Binaries are Portable & Self-Contained.
Platforms Supported:
- Alpine: 3.10+
- Debian: 9+
- Ubuntu: 16.04+
- Fedora: 29+
- RHEL: 6+
- openSUSE: 15+
- SUSE Enterprise Linux (SLES): 12 SP2+
- macOS: 10.13+
- Windows Client: 7, 8.1, 10 (1607+)
- Windows Server: 2012 R2+
Chips Supported:
- x64 on Windows, macOS, and Linux
- x86 on Windows
- ARM32 on Windows and Linux
- ARM64 on Linux (kernel 4.14+)
Seq Queries:
Example 1: A Records
select Coalesce(Answer.Answers[0].Name, Query.Questions[0].Name) as Domain, Coalesce(Answer.Answers[0].Type, Query.Questions[0].Type) as Type, Answer.Answers[0].Record.Address.IP as IP, RemoteEndPoint from stream where StartsWith(@Message, 'Resolved') and Type = 'A'
Example 2: CNAME Records
select Coalesce(Answer.Answers[0].Name, Query.Questions[0].Name) as Domain, Coalesce(Answer.Answers[0].Type, Query.Questions[0].Type) as Type, Answer.Answers[0].Record.Domain.Name as CNAME, RemoteEndPoint from stream where StartsWith(@Message, 'Resolved') and Type = 'CNAME'
Known Issues:
On Windows:
- Port 53 already in use.
- Disable & Stop Internet Connection Sharing (ICS) Service:
# Elevated PowerShell Core Set-Service -Name 'Internet Connection Sharing (ICS)' -StartupType Disabled Stop-Service -DisplayName 'Internet Connection Sharing (ICS)'
# Elevated Command Prompt sc config "SharedAccess" start=disabled sc stop "SharedAccess"
On Linux:
- IOControl not supported on platforms other than windows.
- Fixed in the new binaries.