Rut Monits HTTPS-innsamler-trafikk gjennom et lokalt SOCKS-relé
Behold vertsnavnet til innsamleren i Monits URL mens en loopback-lytter sender TCP-tilkoblingen gjennom SOCKS4.
Et lokalt TCP-relé kan bære Monits HTTPS-rapporter gjennom SOCKS uten selv å bli TLS-endepunktet. Rutingen må bevare navnet til innsamleren for HTTPS og samtidig gi reléet den faktiske måladdressen.
Anta at innsamleren er collector.example på 203.0.113.40:443. I et eksisterende socat-basert oppsett har reléet denne formen:
socat TCP4-LISTEN:9900,bind=127.0.0.1,reuseaddr,fork \
SOCKS4:socks.example:203.0.113.40:443,socksport=1080Her godtar 127.0.0.1:9900 Monits lokale tilkobling. socks.example:1080 er SOCKS4-serveren, som blir bedt om å koble til den faktiske adressen til innsamleren på port 443. Erstatt alle dokumentasjonsadresser med verdiene fra utrullingen.
Slå opp navnet til innsamleren lokalt til den lytteren, og behold navnet i monitrc:
127.0.0.1 collector.example
set mmonit https://monit:[email protected]:9900/collectorDen første linjen er en hosts-filoppføring; den andre er Monit-konfigurasjonen. Bruk de faktiske påloggingsdetaljene til innsamleren med den påkrevde URL-kodingen. En hosts-filtilordning påvirker også andre programmer som bruker navnet på maskinen.
HTTPS-håndtrykket tilhører fortsatt innsamleren, så behold vertsnavnet og den tiltenkte policyen for sertifikatverifisering. Endres URL-en til localhost, endres identiteten Monit ber om å verifisere.
Reléet bruker bevisst den faktiske IP-en til innsamleren i stedet for å slå opp navnet som er omdirigert til loopback. Oppdater IP-en når adressen til innsamleren endres. Hold lytteren tilgjengelig som en del av rapporteringsveien; fork gir aksepterte relétilkoblinger egen behandling.