Το OpenVPN αναφέρει ολοκλήρωση αρχικοποίησης: γιατί δεν επιστρέφει το μήνυμα
Η τελευταία γραμμή του αρχείου καταγραφής σηματοδοτεί το τέλος της εκκίνησης, όχι του προγράμματος. Διαλέξτε ανάμεσα σε αποσφαλμάτωση στο προσκήνιο, μονάδα υπηρεσίας και λειτουργία δαίμονα.
Τίποτα δεν έχει κολλήσει όταν το τερματικό σωπαίνει μετά την τελευταία γραμμή του αρχείου καταγραφής. Αυτή είναι η αναμενόμενη μορφή για έναν πελάτη στο προσκήνιο: τελείωσε την εκκίνηση και τώρα κάθεται εκεί μεταφέροντας κίνηση. Το μήνυμα του κελύφους δεν είναι το σημάδι επιτυχίας που φαίνεται.
Αντιμετωπίστε το μήνυμα ως το όριο ανάμεσα στην εκκίνηση και τη σταθερή κατάσταση, γιατί ακριβώς αυτό σηματοδοτεί.
Το μήνυμα σηματοδοτεί το τέλος της εκκίνησης, όχι το τέλος της διεργασίας
OpenVPN τυπώνει αυτή τη γραμμή αφού άνοιξε τη συσκευή, διαμόρφωσε τη διεπαφή, εγκατέστησε διαδρομές και ολοκλήρωσε την ανταλλαγή TLS με τον ομότιμο. Έπειτα η διεργασία συνεχίζει να τρέχει, γιατί το έργο της είναι να κρατά τη σήραγγα ανοιχτή και να προωθεί πακέτα. Ένα πρόγραμμα στο προσκήνιο δεν επιστρέφει στο μήνυμα όσο εκτελεί ακόμη αυτό το έργο. Η ήσυχη έξοδος μετά είναι φυσιολογική, αφού ο πελάτης μιλά μόνο όταν αλλάζει κάτι.
Αν η γραμμή εμφανιστεί και η σύνδεση πεθάνει αργότερα, αυτό είναι άλλο γεγονός, και το αρχείο καταγραφής θα το πει εκ των υστέρων.
Το Ctrl+C είναι απόφαση, όχι διόρθωση
Το πάτημα Ctrl+C στέλνει μια διακοπή, την οποία ο πελάτης χειρίζεται ως αίτημα τερματισμού. Το μήνυμα επιστρέφει, η σήραγγα εξαφανίζεται και κάθε συνεδρία που τη χρησιμοποιεί τελειώνει. Αυτό μοιάζει με πρόοδο και στην πραγματικότητα είναι το αντίθετο. Αν ο στόχος είναι μόνιμη σύνδεση, η απάντηση είναι να μετακινήσετε τη διεργασία κάπου όπου μπορεί να συνεχίσει χωρίς το τερματικό σας, όχι να τη διακόψετε.
Το να την αφήσετε στο προσκήνιο είναι η σωστή επιλογή όσο αποσφαλματώνετε, γιατί τα μεταγενέστερα σφάλματα μένουν ορατά στο ίδιο παράθυρο. Ένα ήσυχο λεπτό δεν αποδεικνύει τίποτα προς καμία κατεύθυνση· δοκιμάστε έναν πόρο μέσα από τη σήραγγα αντί να παρακολουθείτε την έξοδο.
Τι δεν αποδεικνύει το μήνυμα
Η ολοκλήρωση είναι μια τοπική δήλωση για τη δική του ρύθμιση του πελάτη. Δεν λέει ότι η απέναντι πλευρά απαντά, ότι οι διαδρομές που εγκατέστησε ταιριάζουν με ό,τι χρειάζεστε ή ότι η επίλυση ονομάτων μέσα από τη σήραγγα λειτουργεί. Ένα προφίλ με διαχωρισμένη σήραγγα μπορεί να είναι τέλεια αρχικοποιημένο ενώ ένας εταιρικός κοινόχρηστος πόρος παραμένει απρόσιτος, επειδή ούτε η διαδρομή ούτε η πολιτική DNS τον κάλυψαν ποτέ. Οι παρουσίες στην πλευρά του διακομιστή τυπώνουν παρόμοια γραμμή όταν είναι έτοιμες να δεχτούν πελάτες, κάτι που δεν είναι το ίδιο με το να είναι συνδεδεμένος οποιοσδήποτε πελάτης.
Το «ο διακομιστής ξεκίνησε» και το «ο φορητός μπορεί να ανοίξει τον κοινόχρηστο πόρο» είναι παρατηρήσεις από δύο διαφορετικά μέρη, και η σύγχυσή τους σας στέλνει να αποσφαλματώσετε τον λάθος κεντρικό υπολογιστή.
Εκτέλεση χωρίς τερματικό
Για μόνιμη εγκατάσταση, χρησιμοποιήστε τη διάταξη υπηρεσίας που υποστηρίζει η πλατφόρμα. Σε κεντρικό υπολογιστή με systemd αυτό είναι ένα στιγμιότυπο openvpn-client@office με το προφίλ στο /etc/openvpn/client, ξεκινημένο και ενεργοποιημένο ώστε να επιβιώνει από επανεκκινήσεις. Το Community OpenVPN προσφέρει επίσης το --daemon μαζί με το --log ή το --log-append, που αποσυνδέει τη διεργασία και στέλνει την έξοδο σε αρχείο. Και οι δύο προσεγγίσεις αλλάζουν το πώς τρέχει η διεργασία· καμία δεν διορθώνει μια διαδρομή ούτε κάνει υγιή μια απομακρυσμένη εφαρμογή.
Ελέγξτε ότι δεν ξεκινάτε δεύτερο στιγμιότυπο δίπλα σε ένα που διαχειρίζεται ήδη μια υπηρεσία. Δύο πελάτες που διεκδικούν το ίδιο προφίλ παράγουν μπερδεμένα αρχεία καταγραφής και μία σήραγγα που δεν θέλατε.
Διαλέξτε τη διάταξη που ταιριάζει με τη δουλειά
Προσκήνιο για διάγνωση, υπηρεσία για ό,τι πρέπει να ζήσει πέρα από τη συνεδρία, λειτουργία δαίμονα όταν δεν υπάρχει διαχειριστής υπηρεσιών για στήριγμα. Αυτά τα τρία καλύπτουν τις συνηθισμένες περιπτώσεις και το καθένα έχει σαφή λόγο ύπαρξης. Η τυχαία επιλογή ενός από αυτά είναι αυτό που παράγει την αναφορά «δουλεύει μέχρι να κλείσει το παράθυρο».
Όταν η σήραγγα προορίζεται να μείνει, επιβεβαιώστε μετά ότι επιστρέφει μετά από επανεκκίνηση και ότι τα αρχεία καταγραφής της καταλήγουν κάπου που θα κοιτάξετε. Η γραμμή αρχικοποίησης εμφανίζεται και σε αυτά τα αρχεία, και τότε κανείς δεν χρειάζεται να παρακολουθεί τερματικό για χάρη της.