Místní TCP relay může přenášet HTTPS hlášení Monit přes SOCKS, aniž by se sám stal koncovým bodem TLS. Směrování musí zachovat název sběrače pro HTTPS a zároveň dát relayi jeho skutečnou cílovou adresu.

Předpokládejme, že sběrač je collector.example na 203.0.113.40:443. V existujícím uspořádání založeném na socat má relay tento tvar:

socat TCP4-LISTEN:9900,bind=127.0.0.1,reuseaddr,fork \
  SOCKS4:socks.example:203.0.113.40:443,socksport=1080

Zde 127.0.0.1:9900 přijímá místní spojení Monit. socks.example:1080 je server SOCKS4, který má navázat spojení se skutečnou adresou sběrače na portu 443. Nahraďte všechny dokumentační adresy hodnotami z nasazení.

Přeložte název sběrače místně na tento posluchač a název ponechte v monitrc:

127.0.0.1 collector.example

set mmonit https://monit:[email protected]:9900/collector

První řádek je záznam v souboru hosts; druhý je konfigurace Monit. Použijte skutečné přihlašovací údaje sběrače s požadovaným kódováním URL. Mapování v souboru hosts ovlivní i další aplikace, které tento název na stroji používají.

HTTPS handshake stále patří sběrači, proto zachovejte jeho název hostitele a zamýšlenou politiku ověřování certifikátu. Změna URL na localhost mění identitu, kterou Monit žádá ověřit.

Relay záměrně používá skutečnou IP adresu sběrače, místo aby hledal název přemapovaný na loopback. Aktualizujte tuto IP, když se adresa sběrače změní. Udržujte posluchač dostupný jako součást cesty hlášení; fork dává přijatým relay spojením samostatné zpracování.

Související články