Η διεύθυνση του αρχείου PAC και το τελικό σημείο του proxy φαίνονται ανταλλάξιμα σε ένα αρχείο ρυθμίσεων, και δεν είναι. Το ένα είναι πρόγραμμα πολιτικής που πρέπει να αξιολογηθεί για κάθε URL· το άλλο είναι ένας κεντρικός υπολογιστής και μια θύρα που δέχεται συνδέσεις. Το curl καταλαβαίνει μόνο το δεύτερο. Η παράδοση μιας διεύθυνσης PAC στο --proxy είναι σφάλμα κατηγορίας που αποτυγχάνει με μπερδεμένο τρόπο, συνήθως μετά από μεγάλο χρονικό όριο CONNECT προς έναν διακομιστή web.

Τι είναι στην πραγματικότητα το καθένα

ΈχετεΤι είναιΤι κάνει το curl με αυτό
http://wpad.corp.example/proxy.pacJavaScript που επιστρέφει proxy ή απευθείας σύνδεση για ένα δεδομένο URLΤο κατεβάζει ως αρχείο και σταματά εκεί
http://proxy.corp.example:8080Ένας ακροατής που δέχεται αιτήματα μέσω proxyΤο χρησιμοποιεί, μαζί με CONNECT για στόχους HTTPS

Οι συχνές ερωτήσεις για το curl το λένε καθαρά: το curl δεν παρέχει ερμηνεία JavaScript ή PAC. Ένα περιτύλιγμα γύρω από το curl που καταλαβαίνει PAC μπορεί, αλλά το ίδιο το curl όχι, και καμία επιλογή δεν το μετατρέπει σε πρόγραμμα περιήγησης.

Γιατί το πρόγραμμα περιήγησης λειτουργεί και το curl όχι

Ένα πρόγραμμα περιήγησης ενσωματώνεται στη ρύθμιση proxy του συστήματος, κατεβάζει το αρχείο PAC και εκτελεί τους κανόνες του για το URL που ανοίγετε. Αυτή η αξιολόγηση είναι η υπηρεσία που παρέχει το αρχείο PAC, και συμβαίνει μέσα στο πρόγραμμα περιήγησης, όχι μέσα στο τερματικό σας.

Η λήψη του αρχείου PAC με το curl φέρνει μόνο το κείμενό του. Δεν κάνει το curl να εκτελέσει την πολιτική, και η ανάγνωσή του με το χέρι για να βρείτε proxy είναι μια χειροκίνητη εκδοχή της ίδιας αξιολόγησης, με την ίδια πιθανότητα να διαλέξετε λάθος κλάδο. Αν το διαβάσετε, διαβάστε τη δήλωση return που ταιριάζει στον κεντρικό σας υπολογιστή αντί για το πρώτο όνομα proxy στο αρχείο. Τα περισσότερα αρχεία PAC περιέχουν πολλά, και μόνο ένας κλάδος ισχύει για εσάς.

Για ένα εγκεκριμένο proxy HTTP και μια εγκεκριμένη υπηρεσία HTTPS, ένα ενδεικτικό αίτημα είναι:

curl --proxy http://proxy.corp.example:8080 https://service.example.net/status

Η πρώτη διεύθυνση είναι ο ακροατής του proxy, η δεύτερη είναι η υπηρεσία που θέλετε. Αυτά είναι ενδεικτικά τελικά σημεία και όχι δοκιμή που έκανε κάποιος, οπότε αντικαταστήστε τα με το σχήμα, τη θύρα και τη ροή ελέγχου ταυτότητας του οργανισμού σας.

Διαλέξτε το proxy για αυτόν τον προορισμό

Ρωτήστε τον διαχειριστή ποιο proxy επιλέγει η πολιτική για το URL που χρειάζεστε, όχι ποιο proxy έχει ο οργανισμός. Οι κανόνες PAC μπορούν να επιστρέψουν διαφορετικά αποτελέσματα για εσωτερικές υπηρεσίες, δημόσιες τοποθεσίες και καταστάσεις εναλλαγής λόγω βλάβης, και ένας κανόνας που ταιριάζει σήμερα στο URL σας μπορεί μετά από μια αλλαγή να ταιριάζει σε άλλο.

Αν η ροή εργασίας χρειάζεται περισσότερα από ένα γνωστά αιτήματα, χρησιμοποιήστε στατική ρύθμιση που υποστηρίζει ο διαχειριστής ή εγκεκριμένη ενσωμάτωση που καταλαβαίνει PAC. Η σκληρή κωδικοποίηση μιας αντιγραμμένης διεύθυνσης λειτουργεί μέχρι την ημέρα που η πολιτική αλλάζει και κανείς δεν θυμάται γιατί επιλέχθηκε αυτή η διεύθυνση.

Έπειτα κοιτάξτε τι κληρονομεί το curl. Οι μεταβλητές περιβάλλοντος proxy και το NO_PROXY μπορούν να υπερισχύσουν ή να αποκλείσουν το proxy που δώσατε, και ένας αποκλεισμός που ταιριάζει στον στόχο σας στέλνει το αίτημα απευθείας χωρίς να το πει. Διατηρήστε την προβλεπόμενη πολιτική αντί να διαγράψετε κάθε αποκλεισμό ή να αναγκάσετε τα πάντα να περάσουν από μία διεύθυνση. Εκτελέστε το αίτημα μία φορά με -v και ελέγξτε σε ποια διεύθυνση συνδέθηκε πραγματικά.

Κρατήστε τις δύο ταυτότητες TLS ξεχωριστές

Με proxy HTTPS, υπάρχουν δύο συνδέσεις TLS σε δράση: η δική σας προς το proxy και του proxy προς τον προορισμό. Κάθε μία έχει τη δική της ταυτότητα για επαλήθευση, και η απενεργοποίηση της επαλήθευσης για οποιαδήποτε από τις δύο δεν είναι διόρθωση PAC, είναι δεύτερο πρόβλημα πάνω στο πρώτο.

Αφήστε την επαλήθευση ενεργή και διαβάστε την αποτυχία που παίρνετε. Μια πρόκληση ελέγχου ταυτότητας proxy, ένα proxy που δεν είναι προσβάσιμο και μια άρνηση από τον ιστότοπο είναι τρία διαφορετικά αποτελέσματα, και μόνο το πρώτο αφορά διαπιστευτήρια. Το VPN πρέπει ακόμη να παρέχει μια επιτρεπόμενη διαδρομή προς ένα ιδιωτικό proxy, συμπεριλαμβανομένης της επίλυσης ονομάτων για τον ίδιο τον κεντρικό υπολογιστή του proxy, πριν πετύχει οποιοδήποτε από αυτά.

Γράψτε το τελικό σημείο, το σχήμα, τη θύρα, τη μέθοδο ελέγχου ταυτότητας, τους αποκλεισμούς και τη διαδρομή VPN προς το proxy. Αυτή η καταγραφή κάνει το επόμενο αίτημα αναπαραγώγιμο, και είναι η διαφορά ανάμεσα στο να ξέρετε το proxy σας και στο να το μαντεύετε.

Σχετικά άρθρα