{"id":4070,"date":"2025-04-21T07:00:00","date_gmt":"2025-04-21T06:00:00","guid":{"rendered":"https:\/\/www.my-it-brain.de\/wordpress\/?p=4070"},"modified":"2025-03-23T21:12:46","modified_gmt":"2025-03-23T20:12:46","slug":"einen-tang-server-auf-debian-installieren","status":"publish","type":"post","link":"https:\/\/www.my-it-brain.de\/wordpress\/einen-tang-server-auf-debian-installieren\/","title":{"rendered":"Einen Tang-Server auf Debian installieren"},"content":{"rendered":"\n<p>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\u00e4nkt.<\/p>\n\n\n\n<p>Wer mit dem Begriff Tang-Server noch nichts anfangen kann und dies \u00e4ndern m\u00f6chte, dem empfehle ich: <a href=\"https:\/\/www.my-it-brain.de\/wordpress\/network-bound-disk-encryption-im-ueberblick\/\" data-type=\"post\" data-id=\"2974\">Network Bound Disk Encryption im \u00dcberblick<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Installation und Konfiguration<\/h2>\n\n\n\n<p>Installiert wird der Tang-Server mit folgendem Befehl:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo apt install tang<\/code><\/pre>\n\n\n\n<p>Standardm\u00e4\u00dfig lauscht der Tang-Server auf Port 80. Da dieser Port auf meinem Server bereits belegt ist, erstelle ich mit dem Befehl <code>sudo systemctl edit tangd.socket<\/code> eine Override-Datei mit folgendem Inhalt:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>:~# cat \/etc\/systemd\/system\/tangd.socket.d\/override.conf \n&#91;Socket]\nListenStream=\nListenStream=7500<\/code><\/pre>\n\n\n\n<p>Mit den folgenden Kommandos wird die ge\u00e4nderte Konfiguration eingelesen, die Konfiguration kontrolliert und der Dienst gestartet:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>:~# systemctl daemon-reload\n:~# systemctl show tangd.socket -p Listen\nListen=&#91;::]:7500 (Stream)\n:~# systemctl enable tangd.socket --now<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Zugriff auf eine IP-Adresse beschr\u00e4nken<\/h2>\n\n\n\n<p>Ich m\u00f6chte den Zugriff auf den Tang-Server auf eine IP-Adresse beschr\u00e4nken, n\u00e4mlich auf die IP-Adresse des einen Clevis-Clients, der diesen Server verwenden wird. Dazu f\u00fchre ich die folgenden Schritte durch.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>:~# iptables -A INPUT -p tcp -s 203.0.113.1 --dport 7500 -j ACCEPT\n:~# iptables -A INPUT -p tcp --dport 7500 -j DROP\n:~# mkdir \/etc\/iptables\n:~# iptables-save &gt;\/etc\/iptables\/rules.v4<\/code><\/pre>\n\n\n\n<p>Damit die in der Datei <code>\/etc\/iptables\/rules.v4<\/code> gespeicherten Regeln nach einem Neustart wieder geladen werden, erstelle ich ein Systemd-Service:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>:~# cat \/etc\/systemd\/system\/load-iptables.service \n&#91;Unit]\nDescription=Load iptables rules\nBefore=network.target\n\n&#91;Service]\nType=oneshot\nExecStart=\/sbin\/iptables-restore &lt; \/etc\/iptables\/rules.v4\n#ExecStart=\/sbin\/ip6tables-restore &lt; \/etc\/iptables\/rules.v6\n\n&#91;Install]\nWantedBy=multi-user.target\n\n:~# systemctl daemon-reload\nroot@vmd54920:~# systemctl enable load-iptables.service\nCreated symlink \/etc\/systemd\/system\/multi-user.target.wants\/load-iptables.service \u2192 \/etc\/systemd\/system\/load-iptables.service.<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Test<\/h2>\n\n\n\n<p>Um zu \u00fcberpr\u00fcfen, ob der Tang-Server wie gew\u00fcnscht arbeitet, setze ich auf meinem Clevis-Client den folgenden Befehl ab. Dabei muss nach der Ver- und Entschl\u00fcsselung der gleiche Text &#8218;test&#8216; ausgegeben werden.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>~]$ echo test | clevis encrypt tang '{\"url\":\"tang1.example.com:7500\"}' -y | clevis decrypt\ntest<\/code><\/pre>\n\n\n\n<p>Fertig.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>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\u00e4nkt. Wer mit dem Begriff Tang-Server noch nichts anfangen kann und dies \u00e4ndern m\u00f6chte, dem empfehle ich: Network Bound Disk Encryption im \u00dcberblick. Installation und Konfiguration Installiert wird der Tang-Server mit<span class=\"continue-reading\"> <a href=\"https:\/\/www.my-it-brain.de\/wordpress\/einen-tang-server-auf-debian-installieren\/\">[Weiterlesen&#8230;]<\/a><\/span><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_metis_text_type":"","_metis_text_length":0,"_post_count":0,"footnotes":""},"categories":[3],"tags":[6,430,305,37,868,46],"class_list":["post-4070","post","type-post","status-publish","format-standard","hentry","category-tutorials","tag-anleitung","tag-osbn","tag-planet","tag-sicherheit","tag-tang","tag-tutorial"],"_links":{"self":[{"href":"https:\/\/www.my-it-brain.de\/wordpress\/wp-json\/wp\/v2\/posts\/4070","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.my-it-brain.de\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.my-it-brain.de\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.my-it-brain.de\/wordpress\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.my-it-brain.de\/wordpress\/wp-json\/wp\/v2\/comments?post=4070"}],"version-history":[{"count":2,"href":"https:\/\/www.my-it-brain.de\/wordpress\/wp-json\/wp\/v2\/posts\/4070\/revisions"}],"predecessor-version":[{"id":4074,"href":"https:\/\/www.my-it-brain.de\/wordpress\/wp-json\/wp\/v2\/posts\/4070\/revisions\/4074"}],"wp:attachment":[{"href":"https:\/\/www.my-it-brain.de\/wordpress\/wp-json\/wp\/v2\/media?parent=4070"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.my-it-brain.de\/wordpress\/wp-json\/wp\/v2\/categories?post=4070"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.my-it-brain.de\/wordpress\/wp-json\/wp\/v2\/tags?post=4070"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}