Terminalo lango uždarymas nėra tas pats, kas tunelio uždarymas, o proceso žudymas nėra tas pats, kas paslaugos sustabdymas. Linux sistemoje komanda, kuri iš tikrųjų atjungia ryšį, priklauso nuo to, kuri komponentė paleido ryšį ir todėl valdo jo gyvavimo ciklą. Toliau pateiktas palyginimas apima keturias sąrangas, su kuriomis greičiausiai susidursite, ir identifikatorių, kurio kiekvienai jų reikia.

Priekinio plano ir demonizuoti klientai

Terminale rankiniu būdu paleistas klientas priklauso tam terminalui. Ctrl+C perduoda pertraukimą, klientas išardo savo sąsają, ir tunelis baigiasi. Nieko kito informuoti nereikia.

Klientas, paleistas per apvalkalo įvyniotuvą ir paliktas fone, nepriklauso niekam konkrečiam, ir būtent tuo atveju žmonės griebiasi killall. Pirmiausia suraskite procesą, patvirtinkite, kad jo komandų eilutėje minima norima profilis, ir tada siųskite įprastą sustabdymo signalą. Prižiūrimas procesas, nužudytas po savo prižiūrėtoju, bus tiesiog paleistas iš naujo, todėl savininko nustatymas svarbesnis už signalo pasirinkimą. Siųskite signalą procesų grupei tik tada, kai patvirtinote, kad jokia kita tunelis jos nedalija.

SIGUSR1 nėra atjungimas; jis prašo kliento paleisti tunelį iš naujo.

systemd egzemplioriai

Kai unit valdo ryšį, unit yra objektas, kurį reikia sustabdyti. Šabloniniai egzemplioriai, tokie kaip openvpn-client@office, neša profilio pavadinimą, o šablono tikslo sustabdymas vietoj egzemplioriaus gali paveikti kiekvieną klientą hoste.

systemctl list-units 'openvpn-client@*'
systemctl stop [email protected]

Perskaitykite unit ExecStart, kai nesate tikri, kurią profilį įkėlė egzempliorius.

Įjungtas unit grįš kitą kartą paleidus sistemą, ir tai atskiras sprendimas nuo jo sustabdymo dabar. Išjunkite jį tik po to, kai nuspręsite, kad ryšys neturi grįžti, ir užrašykite tą sprendimą ten, kur jį ras kitas administratorius.

NetworkManager profiliai

NetworkManager valdomas profilis nėra procesas, kuriam galite siųsti signalą. Valdytojas valdo gyvavimo ciklą, o objektas, su kuriuo reikia veikti, yra aktyvus ryšys, identifikuojamas UUID, o ne rodomu pavadinimu. Aktyvaus sąrašo perskaitymas pirmiausia taip pat parodo, ar antras tunelis veikia pavadinimu, kurio nesitikėjote.

nmcli connection show --active
nmcli connection down uuid actual-uuid

Rodomi pavadinimai kartojasi, o profilio failo pavadinimas nėra jo identifikatorius, todėl nusikopijuokite UUID iš sąrašo. Jei ryšys grįžta iškart, kažkas jį aktyvina: secondaries įrašas pagrindiniame ryšyje, dispatcher scenarijus ar automatinio prisijungimo vėliavėlė. Valdytojo ryšio sustabdymas yra teisingas pirmas žingsnis, o pakartotinis aktyvinimas yra kitas klausimas. Netrinkite profilio, kad sustabdytumėte pakartotinį aktyvinimą, nes tai pašalina ir prisijungimo duomenis, kurių gali prireikti rytoj.

Valdytojo komandų žinynas dokumentuoja, kaip pasirenkamas down tikslas.

OpenVPN 3 sesijos

OpenVPN 3 Linux naudoja sesijų modelį, o ne procesą kiekvienam tuneliui. Peržiūrite sesijas, kurias žino paslauga, tada veikiate viename sesijos kelyje. Kelias yra identifikatorius, ir jo negalima keisti konfigūracijos pavadinimu.

openvpn3 sessions-list
openvpn3 session-manage --path /net/openvpn/v3/sessions/... --disconnect

Atjungti kiekvieną sesiją yra kitas veiksmas, ir jis turėtų būti sąmoningas.

Tas pats hostas gali laikyti kelių naudotojų sesijas, todėl prieš veikdami sudarykite sąrašą ir patvirtinkite sesijos, kurią ketinate užbaigti, savininką.

Ką patikrinti vėliau

Po bet kurio iš šių sustabdymų patikrinkite tris dalykus: aktyvių ryšių sąraše tunelio nebėra, sąsaja dingo, o maršruto paieška vidiniam adresui nebe pasirenka tunelio įrenginio. Tada nuspręskite, kas nutiks kitą kartą paleidus sistemą.

ip -brief address
ip route get 10.8.0.1

Rankinis sąsajos pašalinimas nesustabdo savininko, ir palieka valymą pusiau atliktą.

Atjungti dabar, užkirsti kelią kitam automatiniam paleidimui ir vėliau leisti ne VPN srautą yra trys atskiri pasirinkimai. Padarykite kiekvieną iš jų aiškiai.

Susiję straipsniai