Бірінші секундта өлетін VPN қосылып, содан кейін сәтсіздікке ұшырайтын VPN-нен мүлдем басқа жаратылыс, және әдеттегі қате — екеуін бірдей деп қарау. Мұнда handshake те, сертификат алмасу да, тексерілетін маршрут та жоқ. Журналдағы бір жол бір-бірімен байланысы жоқ бірнеше жөндеудің қайсысы қолданылатынын шешеді, ал оны өткізіп жіберу ешқашан оқылмаған конфигурацияны өңдеуге жарты күн жұмсайды. Ең әуелі сол жолды оқыңыз.

Тек оқуға арналған үш команда сізді сонда жеткізеді: әуелі journalctl -u openvpn@server -b --no-pager, содан кейін systemctl status openvpn@server, және UDP тыңдаушылары мен олардың иелері үшін ss -lunp.

Бірінші жол тармақты таңдайды

Порт қақтығысы да, жоқ бинар да іске қосылуды бір секундтың ішінде тоқтатады және екеуі әртүрлі бірінші жолдар қалдырады. Мекенжай әлдеқашан пайдаланылуда деген хабар портты атайды; жоқ орындалатын файл енді жоқ жолды атайды; сәтсіз шарт немесе жоқ конфигурация файлы файлды атайды. Осы үшеуі әртүрлі жөндеуге әкеледі және олардың ешқайсысы клиентті қайта орнатудан жақсармайды. Басқа нәрсені іске қоспас бұрын алғашқы сәтсіздікті жазбаларыңызға көшіріңіз.

Түпнұсқа жолды жасыратын қайта әрекет ету цикліне назар аударыңыз. Қайта іске қосу саясаты бар юнит бірінші сәтсіздікті ондаған ұқсас сәтсіздіктің астына көмуі мүмкін, сондықтан юнит бойынша сүзіліп, жоғарыдан оқылған journalctl -b құйрықтан артық.

1194 портын тағы кім ұстап тұр

Кінәлі әдетте біреу әдейі баптаған екінші сервер емес. Басқа терминалда әлі тірі тұрған қолмен іске қосылған клиентті, сол портты кездейсоқ таңдаған екінші профильді немесе өз туннелі 1194-ті ұстап тұрған өнім берушінің бумасын күтіңіз. Сокеттің иесі ss -lunp ішінде көрінеді; юнит жауапты ма, соны білу үшін сол PID-ді systemctl status-ке беріңіз. Оны сигналмен емес, өз басқару жолымен тоқтатыңыз.

Юнит басқаратын процеске сигнал әдетте қайта іске қосуды тудырады, және сол сәтсіздік біраз уақыттан кейін жаңа мәселе сияқты қайта пайда болады. Юнит үшін systemctl stop-ті, өнім берушінің орнатылымы үшін буманың өз қызмет командасын, ал сигналды тек сол shell-де қолмен іске қосқан нәрсеге ғана пайдаланыңыз.

Жоюдан кейін қалған юниттер

Жою бинарларды жояды; қолмен жазылған юнит файлдары, әдетте /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 жұмыс істемейді» деген сөзімен аяқталады.

Талдаған тармағыңызды жазып қойыңыз: порт қақтығысы, жоқ бинар, жоқ конфигурация. Келесі жолы тану жылдамырақ болады.

Қатысты мақалалар