Einen Tang-Server auf Debian installieren

In diesem Text dokumentiere ich, wie ein Tang-Server auf Debian installiert werden kann und wie man den Zugriff auf diesen auf eine bestimmte IP-Adresse einschränkt.

Wer mit dem Begriff Tang-Server noch nichts anfangen kann und dies ändern möchte, dem empfehle ich: Network Bound Disk Encryption im Überblick.

Installation und Konfiguration

Installiert wird der Tang-Server mit folgendem Befehl:

sudo apt install tang

Standardmäßig lauscht der Tang-Server auf Port 80. Da dieser Port auf meinem Server bereits belegt ist, erstelle ich mit dem Befehl sudo systemctl edit tangd.socket eine Override-Datei mit folgendem Inhalt:

:~# cat /etc/systemd/system/tangd.socket.d/override.conf 
[Socket]
ListenStream=
ListenStream=7500

Mit den folgenden Kommandos wird die geänderte Konfiguration eingelesen, die Konfiguration kontrolliert und der Dienst gestartet:

:~# systemctl daemon-reload
:~# systemctl show tangd.socket -p Listen
Listen=[::]:7500 (Stream)
:~# systemctl enable tangd.socket --now

Zugriff auf eine IP-Adresse beschränken

Ich möchte den Zugriff auf den Tang-Server auf eine IP-Adresse beschränken, nämlich auf die IP-Adresse des einen Clevis-Clients, der diesen Server verwenden wird. Dazu führe ich die folgenden Schritte durch.

:~# iptables -A INPUT -p tcp -s 203.0.113.1 --dport 7500 -j ACCEPT
:~# iptables -A INPUT -p tcp --dport 7500 -j DROP
:~# mkdir /etc/iptables
:~# iptables-save >/etc/iptables/rules.v4

Damit die in der Datei /etc/iptables/rules.v4 gespeicherten Regeln nach einem Neustart wieder geladen werden, erstelle ich ein Systemd-Service:

:~# cat /etc/systemd/system/load-iptables.service 
[Unit]
Description=Load iptables rules
Before=network.target

[Service]
Type=oneshot
ExecStart=/sbin/iptables-restore < /etc/iptables/rules.v4
#ExecStart=/sbin/ip6tables-restore < /etc/iptables/rules.v6

[Install]
WantedBy=multi-user.target

:~# systemctl daemon-reload
root@vmd54920:~# systemctl enable load-iptables.service
Created symlink /etc/systemd/system/multi-user.target.wants/load-iptables.service → /etc/systemd/system/load-iptables.service.

Test

Um zu überprüfen, ob der Tang-Server wie gewünscht arbeitet, setze ich auf meinem Clevis-Client den folgenden Befehl ab. Dabei muss nach der Ver- und Entschlüsselung der gleiche Text ‚test‘ ausgegeben werden.

~]$ echo test | clevis encrypt tang '{"url":"tang1.example.com:7500"}' -y | clevis decrypt
test

Fertig.

3 Kommentare zu „Einen Tang-Server auf Debian installieren

  1. blackcrack

    nich jeder weis was ein tangserver iss, währe vielleicht im eingang hilfreich, daß User, die dann Tangserver erklärt wird, vielleicht selber -dann- einen aufgbauen würden .. aber wenn nicht am anfang leute nicht mitgenommen werden, wird die Howto dann von diesen auch nich mitgenommen.. so in richtung, Tang.. da war doch was.. aber egal, werd schon was anders finden..

    Nach meiner meinung, nice Howto, but pffhh… für was einen tang server .. hört sich an wie meeresalgen..
    die kann man essen.. sind für was gut, aber tang… igitt..

    lg
    Blacky

    Antworten
    1. Jörg Kastning Beitragsautor

      Hi Blacky,

      vielen Dank für dein Feedback.

      Für weitergehende Informationen habe ich den zweiten Absatz mit Link zu einem Übersicht-Artikel vorgesehen. War dieser für das Verständnis nicht ausreichend? Was fehlt an Erklärung?

      Viele Grüße
      Jörg

      Antworten
      1. blackcrack

        naja, extra auf ne andere Seite dann was Großflächig nach zu lasen ?, ein zwei Sätze zur erklrung „ein Tangserver ist … und kann man auch benutzen für …, Nähere erklärungen findet Ihr hier, wenn das euch vielleicht anspricht..“ währen schon hilfreich, das link im zweiten iss ja schon okey.. aaaber … *s* wie schon gesagt..

        liebe grüße
        Blacky

        Antworten

Antworte auf den Kommentar von Jörg Kastning Antwort abbrechen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert