Hogyan integráltam az UptimeRobotot a Synology tűzfallal úgy, hogy a biztonság is megmaradjon

Régi problémám volt, hogy a Synology NAS-okon szigorú, ország alapú (GeoIP) tűzfalat használok, miközben az UptimeRobotnak is el kell érnie a DSM webfelületét és pingelnie kell a szervert. Ez elsőre ellentmondásnak tűnik: hogyan engedjek be egy rakás külföldi IP-t úgy, hogy közben a tűzfal továbbra is mindent tiltson, ami nem kell?

Ebben a bejegyzésben leírom, hogyan oldottam meg ezt két Synology NAS-on (köztük egy DS220+ készüléken), úgy, hogy:

  • az UptimeRobot minden monitorja stabilan zöld marad,
  • a DSM tűzfal továbbra is csak Magyarországról (és adott esetben még néhány országból) enged be forgalmat,
  • a megoldás reboot-álló, azaz újraindítás után automatikusan visszaállnak a szabályok.

Kiindulási helyzet: DSM tűzfal, GeoIP és UptimeRobot

A DSM beépített tűzfala alapból jól használható, de két fontos korlátja van:

  • Nem kezel IP-listákat dinamikusan (pl. UptimeRobot IP-k hosszú listája).
  • Reboot vagy Docker indulása után a belső iptables struktúrák változhatnak, ezért ha kézzel piszkáljuk, az nem tartós.

A saját NAS-aimon a tűzfal úgy néz ki, hogy az egyedi láncok (INPUT_FIREWALLFORWARD_FIREWALL) végén van egy olyan szabály, ami csak bizonyos országkódokat enged (pl. GB,HU), utána pedig egy végső DROP. Ez szuper biztonságos, de az UptimeRobot szerverei jellemzően több országból, különböző IP-tartományokból érkeznek.

A cél tehát az volt, hogy:

  • Az UptimeRobot IP-k kapjanak RETURN szabályt a lánc elején (icmp + TCP 5000/5001),
  • Minden más csak a GeoIP-szabályon keresztül mehessen,
  • Ezeket a plusz szabályokat automatikusan visszatöltsük minden reboot után.

1. UptimeRobot IP-k beépítése a mentett iptables szabályokba

Először kellett egy stabil, „referencia” iptables konfiguráció, amibe bele lehet injektálni az UptimeRobot IP-ket.

A lépések nagy vonalakban:

  1. Készítettem egy mentést a jelenlegi iptables szabályokról egy fájlba (fw-before-uptimerobot.rules).
  2. Ebbe a fájlba, a *filter táblán belül, az INPUT_FIREWALL és FORWARD_FIREWALL lánc végénél beszúrtam az UptimeRobot kommenteket és a hozzájuk tartozó szabályokat, például:bash# UptimeRobot – 3.12.251.153 -A INPUT_FIREWALL -s 3.12.251.153/32 -p icmp -j RETURN -A INPUT_FIREWALL -s 3.12.251.153/32 -p tcp -m multiport --dports 5000,5001 -j RETURN -A FORWARD_FIREWALL -s 3.12.251.153/32 -p icmp -j RETURN -A FORWARD_FIREWALL -s 3.12.251.153/32 -p tcp -m multiport --dports 5000,5001 -j RETURN Ugyanez a minta ismétlődik végig az összes UptimeRobot IP-re.
  3. Ügyeltem rá, hogy ezek a szabályok a GeoIP RETURN és a DROP elé kerüljenek, hogy az UptimeRobot sose essen bele a tiltásba.

Ezzel lett egy „golden” rules fájlom (fw-uptimerobot-stable.rules), amiben a filter tábla már tartalmazza az UptimeRobot számára szükséges engedélyeket.


2. Csak a filter tábla kivágása: fw-uptimerobot-filter.rules

Nem akartam az egész iptables állapotot visszatölteni, csak a filter táblát, azon belül is a saját láncokat érintő részeket. Ehhez egy egyszerű awk parancsot használtam, amivel a *filter és a hozzá tartozó COMMIT közötti rész került egy külön fájlba:

bashawk '
  $0 ~ /^\*filter/ {p=1; print; next}
  $0 ~ /^COMMIT/ && p==1 {print; exit}
  p==1 {print}
' /root/fw-uptimerobot-stable.rules > /root/fw-uptimerobot-filter.rules

Ellenőrzésként egy head és egy tail:

bashhead -n 20 /root/fw-uptimerobot-filter.rules
tail -n 20 /root/fw-uptimerobot-filter.rules

A végeredményben:

  • fent látszanak a láncdefiníciók (:INPUT_FIREWALL - [0:0], stb.),
  • lent a sok # UptimeRobot – ... komment és a hozzájuk tartozó -A INPUT_FIREWALL / -A FORWARD_FIREWALL sorok,
  • végén a GeoIP szabály és a DROP.

3. restore-iptables.sh: a varázsscript, ami mindent visszaállít

A kulcs a tartóssághoz egy kis shell script lett, amelyet a NAS bootolás után automatikusan futtatok. A script feladata:

  • várni egy kicsit, amíg DSM és Docker teljesen feláll;
  • kiüríteni az INPUT_FIREWALL és FORWARD_FIREWALL láncokat;
  • soronként visszatölteni csak azokat a szabályokat, amelyek ezekre a láncokra vonatkoznak (beleértve az UptimeRobot IP-ket).

A script tartalma:

bash#!/bin/sh

# 120 mp várakozás, hogy DSM + Docker felálljon
sleep 120

RULES_FILE="/root/fw-uptimerobot-filter.rules"

if [ -f "$RULES_FILE" ]; then
    # 1) Kiürítjük a saját láncokat az élő táblában
    /sbin/iptables -F INPUT_FIREWALL
    /sbin/iptables -F FORWARD_FIREWALL

    # 2) Csak az INPUT_FIREWALL / FORWARD_FIREWALL sorokat adjuk hozzá soronként a mentett rules-ból
    grep '^-A INPUT_FIREWALL '   "$RULES_FILE" | while read line; do /sbin/iptables $line; done
    grep '^-A FORWARD_FIREWALL ' "$RULES_FILE" | while read line; do /sbin/iptables $line; done
fi

exit 0

A scriptet elmentettem ide:

bash/usr/local/bin/restore-iptables.sh
chmod +x /usr/local/bin/restore-iptables.sh

Kézi teszthez csak futtatni kell:

bash/usr/local/bin/restore-iptables.sh &

sleep 120 miatt kell egy kis türelem, de utána az iptables -L INPUT_FIREWALL -n -v | head és az iptables -L FORWARD_FIREWALL -n -v | head már szépen mutatja az UptimeRobot IP-ket a láncok elején.


4. Automatizálás: DSM Feladatütemező

Hogy rebootok után is minden magától helyreálljon, a DSM Feladatütemezőben hoztam létre egy új feladatot:

  • Típus: Felhasználó által megadott script.
  • Futó felhasználó: root.
  • Ütemezés: Indításkor (system boot után).
  • Parancs:bash/usr/local/bin/restore-iptables.sh

Nem kötelező a &, mert a scriptben benne van a sleep 120, ettől függetlenül a rendszer ettől nem „akad meg”, a feladat simán lefut a háttérben.

Ezt a megoldást több NAS-on is ugyanazzal a logikával alkalmaztam (köztük egy DS220+), így mindenhol egységes:

  • UptimeRobot gond nélkül éri el a NAS-t pinggel és a DSM portokon,
  • a GeoIP-alapú ország szűrés és a többi tűzfalszabály változatlanul éles,
  • reboot után sem kell kézzel „igazítani” az iptables beállításokon.

Összegzés

Ez a megoldás egy praktikus kompromisszum a monitorozhatóság és a biztonság között:

  • A DSM saját tűzfalát használja, nem „tapossa szét” a Synology logikáját.
  • Az UptimeRobot IP-k külön, átlátható blokkban vannak, könnyen frissíthetők.
  • restore-iptables.sh és a Feladatütemező gondoskodik arról, hogy az egész konfiguráció tartós legyen.

Ha te is erősen szűrt, GeoIP-alapú tűzfalat használsz Synology NAS-on, és közben szeretnéd UptimeRobottal monitorozni a DSM-et (ping + webfelület), ez a módszer bevált, stabil és viszonylag egyszerűen karbantartható.

Worcester Bosch kombi gázkazán kompatibilis az OpenTherm termosztátokkal?

A Worcester Bosch kombi gázkazánok alapból NEM kompatibilisek közvetlenül az OpenTherm termosztátokkal, mivel saját, EMS nevű kommunikációs protokollt használnak[5][8]. Azonban létezik EMS–OpenTherm átalakító (pl. Worcester EasyControl Adapter vagy Nefit EMS-OT OpenTherm converter), amely lehetővé teszi, hogy egyes Worcester Bosch kazánok OpenTherm termosztáttal is vezérelhetők legyenek[1][3][5][11].

Fontos: Az adapter nem minden kazántípussal működik, ezért vásárlás előtt ellenőrizni kell a saját kazánod pontos típusát és a kompatibilitást az adapter gyártójánál vagy a Worcester Bosch ügyfélszolgálatánál[10][5].

Összefoglalva: közvetlenül nem kompatibilis, de megfelelő adapterrel megoldható az OpenTherm termosztát használata.

Források
[1] EasyControl Adapter – Worcester Bosch https://www.worcester-bosch.co.uk/products/accessories/directory/easycontrol-adapter
[2] Opentherm Boilers & Controls | Compatibility Guide – The Heating Hub https://www.theheatinghub.co.uk/opentherm-boilers-controls-compatibility-guide
[3] EasyControl Adapter Professional – Worcester Bosch https://www.worcester-bosch.ie/professional/products/accessories/easycontrol-adapter
[4] OpenTherm Boilers and Controls – MyBoiler.com https://myboiler.com/opentherm/opentherm-boilers-and-controls/
[5] Worcester Bosch and OpenTherm – MyBoiler.com https://myboiler.com/opentherm/worcester-bosch-opentherm/
[6] OpenTherm süllyesztett termosztát, vezetékes – PLH Control https://www.plhcontrol.hu/index.php?menu=cart&id_product=46
[7] [PDF] ​Smart Thermostat – Heating Systems Compatibility Catalog​ ​V2.2 https://assets.hager.com/step-content/P%2FHA_22845058%2FDocument%2Fstd.lang.all%2FTADOCOMPATIBILITYCATALOG-2_2-UK-EN.pdf
[8] Digital EMS Opentherm connection Worcester Bosch 42cdi https://community.tado.com/en-gb/discussion/15638/digital-ems-opentherm-connection-worcester-bosch-42cdi
[9] WiFi HELYISÉGSZABÁLYOZÓ OPENTHERM KOMMUNIKÁCIÓVAL https://tech-controllers.hu/p/wifi-ot
[10] Okos Otthon / Smart Home – LOGOUT Hozzászólások https://logout.hu/tema/okos_otthon_smart_home/hsz_12601-12700.html
[11] Worcester EasyControl Adaptor – JT Atkinson https://www.jtatkinson.co.uk/pr/hwor975/worcester-easycontrol-adaptor-7736701560
[12] Bosch EasyControl: okostermosztát az Ön kényelme érdekében https://www.bosch-homecomfort.com/hu/hu/residential/szolgaltatasok/alkalmazasok/bosch-easy-control.html
[13] eTwist/eTwistRF – Remeha https://kazan.hu/etwist-etwist-rf/

Facebook profil végleges törlése

Profil törlése véglegesen

A felfüggesztéssel ellentétben a törlés végleges, a későbbiekben a fiók nem állítható vissza, így érdemes alaposan átgondolni a döntést, hiszen a fiókkal együtt az online ismeretségi hálózat, a kapcsolattartás, csevegés ezen módja is megszűnik.

A törlés funkciót a rendszerben navigálva nem könnyű megtalálni – ha egyáltalán elérhető navigációval.

Az alábbi URL segítségével egyből a profil törlésére szolgáló oldalra kerülhetünk:
https://www.facebook.com/help/contact.php?show_form=delete_account

Miután az oldalt sikerült megnyitni a fiók törlése végtelenül egyszerű. Meg kell adni a jelszót és egy ellenőrző képen látható karaktereket.

Fontos, hogy a Facebook profil nem törlődik azonnal. 14 napos időtartam veszi kezdetét, amely során elegendő egy bejelentkezés a fiókba és a törlési kérelem érvényét veszíti és a fiók tovább használható.