Skip to content

Commit

Permalink
Diverse Änderungen, neuer Blogbeitrag
Browse files Browse the repository at this point in the history
  • Loading branch information
PCE-Consulting committed Sep 28, 2024
1 parent fcd2339 commit 99e4e67
Show file tree
Hide file tree
Showing 16 changed files with 125 additions and 30 deletions.
89 changes: 89 additions & 0 deletions content/posts/ports_fuer_smarte_steckdosen.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,89 @@
---
title: "Firewall Ports für diverse smarte Steckdosen"
date: 2024-09-28T23:05:03+00:00
# weight: 1
# aliases: ["/first"]
tags: ["Firewall","OPNSense","Smarte Steckdosen","Hama","Amazon Echo","Smartlife","Tuya","Smarthome"]
author: "Christian Weber"
# author: ["Me", "You"] # multiple authors
showToc: true
TocOpen: false
draft: false
hidemeta: false
comments: true
description: "Smarte Geräte im Heimnetzwerk benötigen bestimmte geöffnete Ports an einer FIrewall, damit die Geräte kommunizieren können. Hier findest du eine kleine Auswahl."
canonicalURL: "https://www.christian-weber.net/posts/ports_fuer_smarte_steckdosen/"
disableHLJS: true # to disable highlightjs
disableShare: false
disableHLJS: false
hideSummary: false
searchHidden: true
ShowReadingTime: true
ShowBreadCrumbs: true
ShowPostNavLinks: true
ShowWordCount: true
ShowRssButtonInSectionTermList: true
UseHugoToc: true
cover:
image: "<image path/url>" # image path/url
alt: "<alt text>" # alt text
caption: "<text>" # display caption under cover
relative: false # when using page bundles set this to true
hidden: true # only hide on current single page
---

### Wie man kurzerhand das halbe Haus lahmlegt

Vor etwa vier Wochen habe ich mir aus Komponenten, die ich noch auf Lager hatte, eine kleine Firewall in einem 1U 19" Gehäuse gebaut. Hintergrund ist, dass ich Kunden übernommen habe, die alte Sophos Firewalls im Einsatz haben. Bei einem Kunden ist sogar der bisherige IT-Verantwortliche verstorben und hat mangels Dokumentation diverse Logins mit ins Grab genommen. Da im nächsten Jahr sowieso ein Wechsel in der gesamten IT ansteht, wollte ich die Gelegenheit nutzen und mich mit OPNsense weiter in das Thema Firewalls einarbeiten. Ich habe schon früher mit pfSense gearbeitet und viel früher in meinen Anfängen mit IPCop.

Nachdem ich also meine Firewall gebaut und OPNsense installiert hatte, ging es an die Arbeit. Die Firewall wurde zwischen Router und Netzwerk gehängt und zunächst so konfiguriert, dass alles offen war. Danach beschäftigte ich mich zunächst mit weiteren kleinen Plugins wie AdGuard, ClamAV und CrowdSec.

Es folgten diverse Firewall-Regeln, im Prinzip erst mal alles, was man zum Surfen, Mails schreiben und versenden sowie SSH so braucht. Die Firewall lief gut, war ein paar Stunden in Betrieb und dann merkte ich so langsam, dass da noch ein Berg Arbeit auf mich wartete: Praktisch kein smartes Gerät im Haus wollte noch irgendetwas für mich tun. Licht an- und ausschalten oder Radio hören über unsere Echo-Geräte war nicht mehr möglich, unser Haus war praktisch lahm gelegt.

### Die ewige Suche nach den richtigen Ports

Die Ports für die Echos waren schnell gefunden und freigeschaltet, aber vor allem unsere Steckdosen bereiteten mir Kopfzerbrechen. Ich habe (leider) einige Steckdosen von Gosund, diese schalten sowieso nur, wenn sie wollen - und die passenden Ports für unsere Modelle zu finden, war nicht einfach. Bei einigen anderen Herstellern musste ich es per Mail versuchen. Positiv hervorzuheben ist hier Hama, die innerhalb weniger Stunden sehr ausführlich auf meine Anfrage geantwortet haben. Bei anderen warte ich bis heute.

### Die Liste mit allen Ports

Natürlich ist diese Liste nicht vollständig, aber sie deckt 90% der von uns verwendeten Geräte ab. Für den einen oder anderen können die Ports hilfreich sein, wenn man danach sucht.

| Hersteller | Port | Protokoll |
| ---------------------------------------------------------------------- | ----------- | --------- |
| KASA | 9999 | TCP |
| Tapo (bei uns im speziellen Kameras, für Steckosen ggf. nicht passend) | 554 | TCP |
| Gosund | 51526 | TCP |
| Gosund | 44077 | TCP |
| Smartlife/Tuya | 8883 | TCP |
| Smartlife/Tuya | 6667-6669 | TCP |
| Smartlife/Tuya | 6681 | TCP |
| Smartlife/Tuya | 6608 | TCP |
| Smartlife/Tuya | 6682 | TCP |
| Hama | 8001 | TCP |
| Hama | 67-68 | TCP |
| Hama | 10443 | TCP |
| Hama | 2442 | TCP |
| Hama | 1443 | TCP |
| Hama | 8886 | TCP |
| Hama | 8883 | TCP |
| Amazon Echo | 3478 (STUN) | UDP |
| Amazon Echo | 49152-65535 | UDP |
| Amazon Echo | 5353 | UDP |
| Amazon Echo | 4070 | TCP + UDP |

#### Weitere Ports

Wir hatten auch das Problem, dass das Versenden von WhatsApp Nachrichten sehr lange dauerte. Das liegt daran, dass WhatsApp auf Port 443 als Fallback zurückgreift, nachdem es vorher versucht hat über Port 5222 zu kommunizieren. Dazu habe ich Aussagen in verschiedene Richtungen gefunden, die einen sagen es geht generell nur über Port 443, die anderen sagen WhatsApp versucht es erst ein paar mal über 5222. Wie auch immer, seit der Port offen ist, kommen die Nachrichten direkt bei uns an.
Daher hier noch eine kleine Liste mit "Zusatzdiensten":

| Anwendung | Port | Protokoll |
| ------------------------------------------------- | ----------- | --------- |
| WhatsApp | 5222 | TCP |
| Microsoft Teams | 3478-3481 | UDP |
| Discord | 50000-65535 | UDP |
| Push Notifications Smartphones (ggf. nur Android) | 5229-5230 | TCP |
| SSH | 22 | TCP |

##### Schlussworte

Vielleicht kann ich dem einen oder anderen mit der Liste helfen. Von einigen Herstellern warte ich heute noch auf eine Antwort bzgl. der Ports, werde sie aber wohl nie bekommen, da sie irgendwo im tiefsten China sitzen. Natürlich könnte man mit Wireshark und Co. alles selbst recherchieren, aber ich bin mit den Steckdosen von Smartlife nicht nur wegen ihrer kompakten Abmessungen sehr zufrieden und werfe deshalb die letzten Kandidaten von Gosund und Co. nach und nach aus dem Haus.
26 changes: 11 additions & 15 deletions hugo.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -14,14 +14,14 @@ minify:

params:
env: production # to enable google analytics, opengraph, twitter-cards and schema.
title: ExampleSite
description: "ExampleSite description"
title: Christian Weber
description: "Mein persönlicher Blog mit diversen Themen"
keywords: [Blog, Portfolio, PaperMod]
author: Me
author: Christian Weber
# author: ["Me", "You"] # multiple authors
images: ["<link or path of image for opengraph, twitter-cards>"]
DateFormat: "2. January 2006" # January 2, 2006
defaultTheme: auto # dark, light
defaultTheme: dark # dark, light
disableThemeToggle: false

ShowReadingTime: true
Expand Down Expand Up @@ -82,13 +82,13 @@ params:
# - name: github
# url: "https://github.com/"

analytics:
google:
SiteVerificationTag: "XYZabc"
bing:
SiteVerificationTag: "XYZabc"
yandex:
SiteVerificationTag: "XYZabc"
# analytics:
# google:
# SiteVerificationTag: "XYZabc"
# bing:
# SiteVerificationTag: "XYZabc"
# yandex:
# SiteVerificationTag: "XYZabc"

cover:
hidden: true # hide everywhere but not in structured data
Expand Down Expand Up @@ -120,10 +120,6 @@ menu:
name: tags
url: /tags/
weight: 30
- identifier: example
name: example.org
url: https://example.org
weight: 40
# Read: https://github.com/adityatelange/hugo-PaperMod/wiki/FAQs#using-hugos-syntax-highlighter-chroma
pygmentsUseClasses: true
markup:
Expand Down
2 changes: 1 addition & 1 deletion public/404.html
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<!doctype html><html lang=en dir=auto><head><script src="/livereload.js?mindelay=10&amp;v=2&amp;port=1313&amp;path=livereload" data-no-instant defer></script><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name=robots content="noindex, nofollow"><title>404 Page not found | Christian Weber</title>
<meta name=keywords content><meta name=description content><meta name=author content><link rel=canonical href=http://localhost:1313/404.html><link crossorigin=anonymous href=/assets/css/stylesheet.54405a410796490bc874ab6181fac9b675753cc2b91375d8f882566459eca428.css integrity="sha256-VEBaQQeWSQvIdKthgfrJtnV1PMK5E3XY+IJWZFnspCg=" rel="preload stylesheet" as=style><link rel=icon href=http://localhost:1313/favicon.ico><link rel=icon type=image/png sizes=16x16 href=http://localhost:1313/favicon-16x16.png><link rel=icon type=image/png sizes=32x32 href=http://localhost:1313/favicon-32x32.png><link rel=apple-touch-icon href=http://localhost:1313/apple-touch-icon.png><link rel=mask-icon href=http://localhost:1313/safari-pinned-tab.svg><meta name=theme-color content="#2e2e33"><meta name=msapplication-TileColor content="#2e2e33"><link rel=alternate hreflang=en href=http://localhost:1313/404.html><noscript><style>#theme-toggle,.top-link{display:none}</style><style>@media(prefers-color-scheme:dark){:root{--theme:rgb(29, 30, 32);--entry:rgb(46, 46, 51);--primary:rgb(218, 218, 219);--secondary:rgb(155, 156, 157);--tertiary:rgb(65, 66, 68);--content:rgb(196, 196, 197);--code-block-bg:rgb(46, 46, 51);--code-bg:rgb(55, 56, 62);--border:rgb(51, 51, 51)}.list{background:var(--theme)}.list:not(.dark)::-webkit-scrollbar-track{background:0 0}.list:not(.dark)::-webkit-scrollbar-thumb{border-color:var(--theme)}}</style></noscript></head><body class=list id=top><script>localStorage.getItem("pref-theme")==="dark"?document.body.classList.add("dark"):localStorage.getItem("pref-theme")==="light"?document.body.classList.remove("dark"):window.matchMedia("(prefers-color-scheme: dark)").matches&&document.body.classList.add("dark")</script><header class=header><nav class=nav><div class=logo><a href=http://localhost:1313/ accesskey=h title="Christian Weber (Alt + H)">Christian Weber</a><div class=logo-switches><button id=theme-toggle accesskey=t title="(Alt + T)"><svg id="moon" width="24" height="18" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg><svg id="sun" width="24" height="18" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></button></div></div><ul id=menu><li><a href=http://localhost:1313/posts/ title=posts><span>posts</span></a></li><li><a href=http://localhost:1313/categories/ title=categories><span>categories</span></a></li><li><a href=http://localhost:1313/tags/ title=tags><span>tags</span></a></li><li><a href=https://example.org title=example.org><span>example.org</span>&nbsp;<svg fill="none" shape-rendering="geometricPrecision" stroke="currentcolor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2.5" viewBox="0 0 24 24" height="12" width="12"><path d="M18 13v6a2 2 0 01-2 2H5a2 2 0 01-2-2V8a2 2 0 012-2h6"/><path d="M15 3h6v6"/><path d="M10 14 21 3"/></svg></a></li></ul></nav></header><main class=main><div class=not-found>404</div></main><footer class=footer><span>&copy; 2024 <a href=http://localhost:1313/>Christian Weber</a></span> ·
<meta name=keywords content><meta name=description content><meta name=author content><link rel=canonical href=http://localhost:1313/404.html><link crossorigin=anonymous href=/assets/css/stylesheet.54405a410796490bc874ab6181fac9b675753cc2b91375d8f882566459eca428.css integrity="sha256-VEBaQQeWSQvIdKthgfrJtnV1PMK5E3XY+IJWZFnspCg=" rel="preload stylesheet" as=style><link rel=icon href=http://localhost:1313/favicon.ico><link rel=icon type=image/png sizes=16x16 href=http://localhost:1313/favicon-16x16.png><link rel=icon type=image/png sizes=32x32 href=http://localhost:1313/favicon-32x32.png><link rel=apple-touch-icon href=http://localhost:1313/apple-touch-icon.png><link rel=mask-icon href=http://localhost:1313/safari-pinned-tab.svg><meta name=theme-color content="#2e2e33"><meta name=msapplication-TileColor content="#2e2e33"><link rel=alternate hreflang=en href=http://localhost:1313/404.html><noscript><style>#theme-toggle,.top-link{display:none}</style><style>@media(prefers-color-scheme:dark){:root{--theme:rgb(29, 30, 32);--entry:rgb(46, 46, 51);--primary:rgb(218, 218, 219);--secondary:rgb(155, 156, 157);--tertiary:rgb(65, 66, 68);--content:rgb(196, 196, 197);--code-block-bg:rgb(46, 46, 51);--code-bg:rgb(55, 56, 62);--border:rgb(51, 51, 51)}.list{background:var(--theme)}.list:not(.dark)::-webkit-scrollbar-track{background:0 0}.list:not(.dark)::-webkit-scrollbar-thumb{border-color:var(--theme)}}</style></noscript></head><body class=list id=top><script>localStorage.getItem("pref-theme")==="dark"?document.body.classList.add("dark"):localStorage.getItem("pref-theme")==="light"?document.body.classList.remove("dark"):window.matchMedia("(prefers-color-scheme: dark)").matches&&document.body.classList.add("dark")</script><header class=header><nav class=nav><div class=logo><a href=http://localhost:1313/ accesskey=h title="Christian Weber (Alt + H)">Christian Weber</a><div class=logo-switches><button id=theme-toggle accesskey=t title="(Alt + T)"><svg id="moon" width="24" height="18" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg><svg id="sun" width="24" height="18" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></button></div></div><ul id=menu><li><a href=http://localhost:1313/posts/ title=posts><span>posts</span></a></li><li><a href=http://localhost:1313/categories/ title=categories><span>categories</span></a></li><li><a href=http://localhost:1313/tags/ title=tags><span>tags</span></a></li></ul></nav></header><main class=main><div class=not-found>404</div></main><footer class=footer><span>&copy; 2024 <a href=http://localhost:1313/>Christian Weber</a></span> ·
<span><a href=https://gohugo.io/ rel="noopener noreferrer" target=_blank>Hugo</a> ·
<a href=/pages/legal/impressum rel=noopener>Impressum</a> · <a href=/pages/legal/datenschutz rel=noopener>Datenschutz</a></span></footer><a href=#top aria-label="go to top" title="Go to Top (Alt + G)" class=top-link id=top-link accesskey=g><svg viewBox="0 0 12 6" fill="currentcolor"><path d="M12 6H0l6-6z"/></svg>
</a><script>let menu=document.getElementById("menu");menu&&(menu.scrollLeft=localStorage.getItem("menu-scroll-position"),menu.onscroll=function(){localStorage.setItem("menu-scroll-position",menu.scrollLeft)}),document.querySelectorAll('a[href^="#"]').forEach(e=>{e.addEventListener("click",function(e){e.preventDefault();var t=this.getAttribute("href").substr(1);window.matchMedia("(prefers-reduced-motion: reduce)").matches?document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView():document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView({behavior:"smooth"}),t==="top"?history.replaceState(null,null," "):history.pushState(null,null,`#${t}`)})})</script><script>var mybutton=document.getElementById("top-link");window.onscroll=function(){document.body.scrollTop>800||document.documentElement.scrollTop>800?(mybutton.style.visibility="visible",mybutton.style.opacity="1"):(mybutton.style.visibility="hidden",mybutton.style.opacity="0")}</script><script>document.getElementById("theme-toggle").addEventListener("click",()=>{document.body.className.includes("dark")?(document.body.classList.remove("dark"),localStorage.setItem("pref-theme","light")):(document.body.classList.add("dark"),localStorage.setItem("pref-theme","dark"))})</script></body></html>
Loading

0 comments on commit 99e4e67

Please sign in to comment.