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

Τρεις εντολές μόνο για ανάγνωση σας οδηγούν εκεί: πρώτα journalctl -u openvpn@server -b --no-pager, μετά systemctl status openvpn@server, και ss -lunp για τους ακροατές UDP και τους κατόχους τους.

Η πρώτη γραμμή επιλέγει τον κλάδο

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

Προσέξτε τον βρόχο επαναλήψεων που κρύβει την αρχική γραμμή. Μια μονάδα με πολιτική επανεκκίνησης μπορεί να θάψει την πρώτη αποτυχία κάτω από δεκάδες ίδιες, οπότε το journalctl -b φιλτραρισμένο κατά μονάδα και διαβασμένο από πάνω νικά την ουρά.

Ποιος άλλος κρατά τη θύρα 1194

Ο ένοχος συνήθως δεν είναι ένας δεύτερος διακομιστής που κάποιος διαμόρφωσε σκόπιμα. Περιμένετε έναν πελάτη που ξεκίνησε με το χέρι και ζει ακόμη σε άλλο τερματικό, ένα δεύτερο προφίλ που έτυχε να διαλέξει την ίδια θύρα, ή ένα πακέτο προμηθευτή του οποίου η δική του σήραγγα κρατά τη 1194. Ο κάτοχος της υποδοχής εμφανίζεται στο ss -lunp· δώστε αυτό το PID στο systemctl status για να μάθετε αν ευθύνεται μια μονάδα. Κατεβάστε το μέσω της δικής του διαδρομής ελέγχου και όχι με σήμα.

Ένα σήμα σε διεργασία που διαχειρίζεται μονάδα προκαλεί συνήθως επανεκκίνηση, και η ίδια αποτυχία επανεμφανίζεται στιγμές αργότερα σαν νέο πρόβλημα. Χρησιμοποιήστε το systemctl stop για μονάδα, την ίδια την εντολή υπηρεσίας του πακέτου για εγκατάσταση προμηθευτή, και σήμα μόνο για κάτι που ξεκινήσατε εσείς με το χέρι σε εκείνο το κέλυφος.

Μονάδες που μένουν μετά από απεγκατάσταση

Μια απεγκατάσταση διαγράφει δυαδικές εικόνες· τα αρχεία μονάδων που γράφτηκαν με το χέρι, συνήθως κάτω από το /etc/systemd/system, επιβιώνουν. Τότε το Systemd ξαναδοκιμάζει μια μονάδα που δείχνει σε διαδρομή που δεν υπάρχει πια, και το μήνυμα αφορά εκείνο το λείπον αρχείο και όχι την χθεσινή αφαίρεση. Το systemctl status δείχνει τη διαδρομή θραύσματος της μονάδας κοντά στην κορυφή, οπότε ελέγξτε την με το dpkg -S πριν διαγράψετε οτιδήποτε. Μόλις φύγει το ορφανό, το systemctl daemon-reload και το systemctl reset-failed καθαρίζουν την κατάσταση· αλλιώς κάθε μεταγενέστερος έλεγχος κατάστασης την κληρονομεί.

Όταν το which openvpn απαντήσει με κάτι κάτω από το /usr/local, η δυαδική εικόνα που παίζει ήρθε από εγκαταστάτη προμηθευτή και όχι από το apt. Ένας τέτοιος εγκαταστάτης φέρνει συνήθως τον δικό του ακροατή, τη δική του καταχώριση εκκίνησης και τον δικό του κατάλογο διαμόρφωσης, οπότε η αφαίρεση της ορατής εντολής αφήνει την υποδοχή κατειλημμένη.

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

Τακτοποιήστε την κατάσταση πριν ξαναδοκιμάσετε

Καθαρίστε την αποτυχημένη κατάσταση πριν βγάλετε συμπεράσματα από αυτήν: το systemctl reset-failed αφαιρεί τους μετρητές, και το systemctl status αναφέρει τότε την τρέχουσα κατάσταση της μονάδας και όχι το ιστορικό της. Ξεκινήστε την μία φορά και διαβάστε το ημερολόγιο εκείνης της εκτέλεσης και όχι τη συνολική κατάσταση του μηχανήματος. Μια μονάδα που αναφέρεται ως ενεργή ενώ η σήραγγα δεν μεταφέρει τίποτα είναι ξεχωριστό πρόβλημα, και πολύ συχνότερο. Τα δύο συνενώνονται στις αναφορές σφαλμάτων επειδή και τα δύο τελειώνουν με τον χρήστη να λέει ότι το VPN δεν δουλεύει.

Σημειώστε τον κλάδο που πήρατε: σύγκρουση θύρας, λείπουσα δυαδική εικόνα, λείπουσα διαμόρφωση. Την επόμενη φορά θα αναγνωρίζεται γρηγορότερα.

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