| compose | ||
| README.md | ||
Wir die neue DNS-VM fuer Technitium DNS mit diesen Werten:
- VM-ID:
111 - IP:
10.100.20.55 - VLAN:
20 - RAM:
2 GB - vCPU:
2 - Disk:
16 GB - Dienst: Technitium DNS
- Host-/Netzmodell: interne Dienst-VM in VLAN20, passend zu deiner Architektur [1]
Ich wuerde Technitium auf einer Debian-VM installieren.
Proxmox: VM anlegen
Wenn deine Debian-ISO z. B. debian-13.6.0-amd64-netinst.iso heisst:
sudo qm create 111 \
--name dns-int01 \
--memory 2048 \
--cores 2 \
--cpu x86-64-v2-AES \
--machine q35 \
--bios ovmf \
--scsihw virtio-scsi-single \
--net0 virtio,bridge=vmbr0,tag=20
sudo qm set 111 --scsi0 local-lvm:16
sudo qm set 111 --efidisk0 local-lvm:1,pre-enrolled-keys=1
sudo qm set 111 --ide2 local:iso/debian-13.6.0-amd64-netinst.iso,media=cdrom
sudo qm set 111 --boot order=ide2\;scsi0
sudo qm set 111 --vga std
sudo qm start 111
sudo qm status 111
sudo qm config 111
Debian-Installation
Im Installer wuerde ich setzen:
- Hostname:
dns-int01 - statische IP:
10.100.20.55/24 - Gateway:
10.100.20.1 - DNS vorerst:
10.100.20.1
Nur diese Pakete:
- SSH server
- standard system utilities
Nach der Installation ISO auswerfen
sudo qm stop 111
sudo qm set 111 --delete ide2
sudo qm set 111 --boot order=scsi0
sudo qm start 111
Basis-Setup in Debian
Ich gehe von ens18 aus. Falls dein Interface anders heisst, bitte anpassen.
sudo hostnamectl set-hostname dns-int01
sudo cp /etc/network/interfaces /etc/network/interfaces.bak
cat <<'EOF' | sudo tee /etc/network/interfaces
auto lo
iface lo inet loopback
auto ens18
iface ens18 inet static
address 10.100.20.55/24
gateway 10.100.20.1
dns-nameservers 10.100.20.1
EOF
sudo systemctl restart networking
ip -4 a
ip route
cat /etc/resolv.conf
sudo apt update
sudo apt full-upgrade -y
sudo apt install -y curl wget vim sudo qemu-guest-agent ca-certificates
sudo systemctl start qemu-guest-agent
timedatectl
Technitium DNS installieren
Die genaue Installationsmethode steht nicht im Kontext; das hier ist mein normales Wissen. Auf Debian ist der uebliche Weg per Script:
curl -sSL https://download.technitium.com/dns/install.sh | sudo bash
Danach pruefen:
sudo systemctl status dns --no-pager
ss -tulpn | grep -E ':53|:5380'
Typisch:
- DNS auf Port
53 - Webinterface auf Port
5380
Webinterface
Dann im Browser:
http://10.100.20.55:5380
Im MikroTik vorerst noch nichts umstellen
Da ihr ja zuerst sauber parallel aufbauen wollt, wuerde ich jetzt nur:
- VM bauen
- Technitium installieren
- Zonen/Eintraege dort erfassen
- gegen
10.100.20.55testen - spaeter DHCP oder Router-Forwarding umstellen
Optional: DHCP-Lease im MikroTik reservieren
Wenn du dokumentarisch eine statische Reservation willst, mit der MAC der VM:
/ip dhcp-server lease add address=10.100.20.55 mac-address=AA:BB:CC:DD:EE:FF server=dhcp20 comment="dns-int01"
Technisch noetig ist das bei statischer IP in Debian nicht zwingend.
Wenn du willst, gebe ich dir als naechstes direkt noch:
- die ersten Technitium-Schritte fuer Zonen und Forwarder oder
- die MikroTik-Umstellung, sobald die DNS-VM bereit ist.
Klar - hier ist eine saubere Zusammenfassung fuer die Doku.
DNS-VM dns-int01 - SSH- und sudo-Basissetup
System
- Hostname:
dns-int01 - IP:
10.100.20.49 - OS: Debian 13
- Rolle: interne DNS-VM
- Zugriff vom Admin-Client aus
10.100.50.50
Ausgangslage
Beim ersten Test war der Benutzer dns-int01 noch nicht korrekt fuer sudo berechtigt.
Beobachtung
sudo -i
[sudo] Passwort für dns-int01:
'dns-int01' ist nicht in der sudoers-Datei.
Zusätzlich war ein direkter SSH-Login als root nicht möglich:
ssh root@10.100.20.49
Permission denied
Das ist grundsätzlich positiv zu bewerten, da Root-Login per SSH damit bereits nicht offen war.
Korrektur sudo
Danach wurde der Benutzer dns-int01 erfolgreich fuer sudo nutzbar gemacht.
Verifikation
Login als Benutzer:
ssh dns-int01@10.100.20.49
Anschliessend:
sudo -i
Ergebnis:
- Wechsel auf Root-Shell erfolgreich
sudofunktioniert nun fuerdns-int01
SSH-Key-Login eingerichtet
Fuer den Benutzer dns-int01 wurde der SSH-Key-Zugang vorbereitet.
Durchgefuehrte Schritte
mkdir -p /home/dns-int01/.ssh
chmod 700 /home/dns-int01/.ssh
nano /home/dns-int01/.ssh/authorized_keys
chmod 600 /home/dns-int01/.ssh/authorized_keys
Bedeutung
- Verzeichnis
.ssherstellt - Berechtigungen korrekt gesetzt
- Public Key in
authorized_keyshinterlegt - Dateirechte fuer OpenSSH passend gesetzt
SSH-Server-Konfiguration angepasst
Die SSH-Server-Konfiguration wurde bearbeitet:
sudo nano /etc/ssh/sshd_config
Danach wurde die Konfiguration validiert und neu geladen:
sudo sshd -t
sudo systemctl reload ssh
Ergebnis
sshd_configsyntaktisch gueltig- SSH-Dienst erfolgreich neu geladen
- neue SSH-Einstellungen aktiv
Funktionstest SSH-Key-Login
Nach der Anpassung wurde die Verbindung erneut getestet:
ssh dns-int01@10.100.20.49
Ergebnis
- Login funktionierte ohne Passwortabfrage
- damit ist der SSH-Key-Login erfolgreich eingerichtet
Das sieht man daran, dass beim letzten Verbindungsaufbau keine Passwortabfrage mehr erschien und die Sitzung direkt geöffnet wurde.
Aktueller Stand
Erfolgreich umgesetzt
- Benutzer
dns-int01kannsudoverwenden - SSH-Zugriff auf
dns-int01funktioniert - Root-Login per SSH ist nicht erfolgreich
- SSH-Key-Authentifizierung fuer
dns-int01funktioniert - SSH-Konfiguration wurde geprüft und neu geladen
Aktueller Betriebszustand
- administrativer Zugriff erfolgt ueber Benutzer
dns-int01 - Privilegienerweiterung erfolgt mit
sudo - SSH-Zugriff per Key ist aktiv
- Passwortbasierter Login fuer den normalen Benutzer war zuvor noch moeglich, danach wurde Key-Login erfolgreich getestet
Empfohlene Doku-Notiz
Admin-Zugriff auf dns-int01
- SSH nur ueber Benutzer
dns-int01 - kein direkter Root-Login per SSH
- administrative Rechte ueber
sudo - SSH-Key fuer Admin-Zugriff eingerichtet
- SSH-Konfiguration nach Anpassung mit
sshd -tvalidiert und persystemctl reload sshaktiviert
Sinnvolle naechste Schritte
Falls noch nicht erfolgt, fuer die Doku bzw. Umsetzung als naechstes festhalten:
PasswordAuthentication noinsshd_configfinal setzen, falls noch nicht bereits so konfiguriert- optional
PermitRootLogin noexplizit dokumentieren - Technitium DNS installieren
- feste Netzkonfiguration und DNS-Rolle der VM dokumentieren
- Backup- und Restore-Konzept fuer DNS-Konfiguration festlegen
Wenn du willst, formatiere ich dir das im naechsten Schritt noch direkt als:
- XWiki-Format
- Markdown
- oder als knappe Betriebsdokumentation mit "Ziel / Umsetzung / Verifikation / Offene Punkte".