Δρομολόγηση της κίνησης HTTPS του collector του Monit μέσω τοπικού relay SOCKS
Διατηρήστε το hostname του collector στο URL του Monit, ενώ ένας ακροατής loopback στέλνει τη σύνδεση TCP μέσω SOCKS4.
Ένα τοπικό relay TCP μπορεί να μεταφέρει τις αναφορές HTTPS του Monit μέσω SOCKS χωρίς να γίνει το ίδιο το τελικό σημείο TLS. Η δρομολόγηση πρέπει να διατηρεί το όνομα του collector για HTTPS και ταυτόχρονα να δίνει στο relay την πραγματική διεύθυνση προορισμού του.
Ας υποθέσουμε ότι ο collector είναι collector.example στη διεύθυνση 203.0.113.40:443. Σε μια υπάρχουσα διάταξη με socat, το relay έχει αυτή τη μορφή:
socat TCP4-LISTEN:9900,bind=127.0.0.1,reuseaddr,fork \
SOCKS4:socks.example:203.0.113.40:443,socksport=1080Εδώ το 127.0.0.1:9900 δέχεται την τοπική σύνδεση του Monit. Το socks.example:1080 είναι ο διακομιστής SOCKS4, ο οποίος καλείται να συνδεθεί στην πραγματική διεύθυνση του collector στη θύρα 443. Αντικαταστήστε όλες τις διευθύνσεις τεκμηρίωσης με τις τιμές της ανάπτυξης.
Επιλύστε το όνομα του collector τοπικά προς αυτόν τον ακροατή και διατηρήστε το όνομα στο monitrc:
127.0.0.1 collector.example
set mmonit https://monit:[email protected]:9900/collectorΗ πρώτη γραμμή είναι καταχώριση στο αρχείο hosts· η δεύτερη είναι η ρύθμιση του Monit. Χρησιμοποιήστε τα πραγματικά διαπιστευτήρια του collector με την απαιτούμενη κωδικοποίηση URL. Η αντιστοίχιση στο αρχείο hosts επηρεάζει και άλλες εφαρμογές που χρησιμοποιούν αυτό το όνομα στο μηχάνημα.
Η χειραψία HTTPS ανήκει ακόμη στον collector, οπότε διατηρήστε το hostname του και την προβλεπόμενη πολιτική επαλήθευσης πιστοποιητικού. Η αλλαγή του URL σε localhost αλλάζει την ταυτότητα που ζητά να επαληθεύσει το Monit.
Το relay χρησιμοποιεί σκόπιμα την πραγματική IP του collector αντί να αναζητήσει το όνομα που έχει αντιστοιχιστεί στο loopback. Ενημερώστε αυτή την IP όταν αλλάζει η διεύθυνση του collector. Κρατήστε τον ακροατή διαθέσιμο ως μέρος της διαδρομής αναφορών· το fork δίνει ξεχωριστή διαχείριση στις αποδεκτές συνδέσεις του relay.