OpenVPN işə düşmür: konfiqurasiyanı deyil, ilk sətri oxuyun
İlk saniyədə ölən VPN-in sazlanacaq heç bir handshake-i olmur. Jurnalın ilk sətri budağı seçir: port məşğuldur, binar fayl yoxdur və ya konfiqurasiya yoxdur.
İlk saniyədə ölən VPN qoşulub sonra uğursuz olanla eyni şey deyil, və adi səhv onları eyni saymaqdır. Burada nə handshake, nə sertifikat mübadiləsi, nə də yoxlanacaq marşrut var. Jurnaldakı bir sətir bir-biriylə əlaqəsiz bir neçə təmirdən hansının tətbiq olunduğunu müəyyən edir və onu atlamaq heç vaxt oxunmamış konfiqurasiyanı redaktə etməklə bir günorta itirməyə başa gəlir. Əvvəlcə həmin sətri oxuyun.
Ora üç yalnız-oxuma əmri aparır: əvvəlcə journalctl -u openvpn@server -b --no-pager, sonra systemctl status openvpn@server və UDP dinləyiciləri ilə onların sahibləri üçün ss -lunp.
İlk sətir budağı seçir
Port toqquşması və itkin binar fayl ikisi də işə düşməni bir saniyə içində öldürür və fərqli ilk sətirlər buraxır. Ünvanın artıq istifadə olunduğu barədə mesaj portu adlandırır; itkin icra olunan fayl artıq mövcud olmayan yolu adlandırır; uğursuz şərt və ya olmayan konfiqurasiya faylı faylı adlandırır. Bu üçü fərqli təmir yollarına aparır və heç biri müştərini yenidən quraşdırmaqla yaxşılaşmır. Başqa bir şey işə salmazdan əvvəl ilk uğursuzluğu qeydlərinizə köçürün.
Orijinal sətri gizlədən təkrar cəhd dövrəsinə diqqət yetirin. yenidən başlatma siyasəti olan unit ilk uğursuzluğu onlarla eyni xətanın altında basdıra bilər, ona görə də journalctl -b unit üzrə süzülüb yuxarıdan oxunanda quyruqdan üstündür.
1194 portunu başqa kim tutur
Günahkar adətən kimsənin qəsdən qurduğu ikinci server deyil. Başqa terminalda hələ canlı olan əl ilə başladılmış müştəri, təsadüfən eyni portu seçmiş ikinci profil və ya öz tuneli 1194-ü tutan vendor paketi gözləyin. Soket sahibi ss -lunp-də görünür; unitin məsuliyyət daşıyıb-daşımadığını öyrənmək üçün həmin PID-i systemctl status-ə verin. Onu siqnalla deyil, öz idarəetmə yolu ilə söndürün.
Unit tərəfindən idarə olunan prosesə siqnal adətən yenidən başlatma törədir və eyni uğursuzluq bir neçə an sonra təzə problem kimi təkrarlanır. Unit üçün systemctl stop, vendor quraşdırması üçün paketin öz xidmət əmrini, siqnalı isə yalnız o shell-də əl ilə başlatdığınız şey üçün istifadə edin.
Təmizləmədən sonra qalan unitlər
Təmizləmə binar faylları silir; əl ilə yazılmış unit faylları, adətən /etc/systemd/system altında, ondan sağ çıxır. Sonra Systemd artıq mövcud olmayan yola işarə edən uniti yenidən sınayır və mesaj dünənki silinmədən deyil, həmin itkin fayldan bəhs edir. systemctl status unitin fragment yolunu yuxarıda göstərir, ona görə nəyisə silməzdən əvvəl onu dpkg -S ilə yoxlayın. Yetim qurtardıqdan sonra systemctl daemon-reload və systemctl reset-failed vəziyyəti təmizləyir; əks halda sonrakı hər status yoxlaması onu miras alır.
which openvpn /usr/local altında bir şey cavablandırdıqda, işlək binar apt-dən deyil, vendor quraşdırıcısından gəlib. Belə quraşdırıcı adətən öz dinləyicisini, öz açılış qeydini və öz konfiqurasiya qovluğunu gətirir, ona görə görünən əmri silmək soketi məşğul qoyur.
Onu vendorun sənədləşdirdiyi üsulla silin, portun boş olduğunu ss -lunp ilə təsdiqləyin və distributiv müştərisini yalnız ehtiyacınız varsa əlavə edin.
Yenidən cəhddən əvvəl vəziyyəti qaydaya salın
Ondan nəticə çıxarmazdan əvvəl uğursuz vəziyyəti təmizləyin: systemctl reset-failed sayğacları silir və systemctl status bundan sonra unitin tarixçəsini deyil, cari vəziyyətini bildirir. Onu bir dəfə başladın və qutunun ümumi vəziyyətini deyil, həmin nümunənin öz jurnalını oxuyun. Tunel heç nə daşımırkən aktiv bildirən unit ayrı bir problemdir və daha çox rast gəlinəndir. İkisi səhv hesabatlarında birləşir, çünki hər ikisi istifadəçinin VPN işləmir deməsiylə bitir.
Tutduğunuz budağı qeyd edin: port toqquşması, itkin binar, itkin konfiqurasiya. Növbəti dəfə onu tanımaq daha sürətli olacaq.