યોગ્ય OpenVPN કનેક્શન બંધ કરો: ફોરગ્રાઉન્ડ, systemd કે NM
ટનલ ડિસ્કનેક્ટ કરતો આદેશ તેના પર આધાર રાખે છે કે તેને કોણે શરૂ કર્યું. સિગ્નલ મોકલતા પહેલા ફોરગ્રાઉન્ડ, systemd, NetworkManager અને OpenVPN 3 માલિકોની સરખામણી કરો.
ટર્મિનલ વિન્ડો બંધ કરવી એ ટનલ બંધ કરવા જેવું નથી, અને પ્રોસેસ મારવી એ સેવા બંધ કરવા જેવું નથી. Linux પર જે આદેશ ખરેખર ડિસ્કનેક્ટ કરે છે તે કયા ઘટકે કનેક્શન શરૂ કર્યું અને તેથી તેનું જીવનચક્ર ધરાવે છે તેના પર આધાર રાખે છે. નીચેની સરખામણી તમે સૌથી વધુ સંભવતઃ મળશો તે ચાર ગોઠવણો અને દરેકને જરૂરી ઓળખકર્તાને આવરી લે છે.
ફોરગ્રાઉન્ડ અને ડેમનાઇઝ્ડ ક્લાયન્ટ
ટર્મિનલમાં જાતે શરૂ કરાયેલો ક્લાયન્ટ તે ટર્મિનલનો છે. Ctrl+C વિક્ષેપ પહોંચાડે છે, ક્લાયન્ટ તેનું ઇન્ટરફેસ તોડી નાખે છે, અને ટનલ સમાપ્ત થાય છે. બીજા કોઈને જાણ કરવાની જરૂર નથી.
શેલ રેપર દ્વારા શરૂ કરાયેલો અને બેકગ્રાઉન્ડમાં છોડેલો ક્લાયન્ટ કોઈ ચોક્કસ વ્યક્તિનો નથી, અને તે જ કિસ્સો છે જ્યારે લોકો killall તરફ વળે છે. પહેલા પ્રોસેસ શોધો, ખાતરી કરો કે તેની કમાન્ડ લાઇન તમારા ઇચ્છિત પ્રોફાઇલનો ઉલ્લેખ કરે છે, અને પછી સામાન્ય સમાપ્તિ સિગ્નલ મોકલો. સુપરવાઇઝર હેઠળની પ્રોસેસ તેના સુપરવાઇઝર નીચે મારવામાં આવે તો ફક્ત ફરી શરૂ થશે, તેથી સિગ્નલ પસંદ કરવા કરતાં માલિકને ઓળખવો વધુ મહત્ત્વનો છે. પ્રોસેસ જૂથને સિગ્નલ ફક્ત ત્યારે જ મોકલો જ્યારે તમે ખાતરી કરી લીધી હોય કે બીજી કોઈ ટનલ તેને વહેંચતી નથી.
SIGUSR1 ડિસ્કનેક્શન નથી; તે ક્લાયન્ટને ટનલ ફરી શરૂ કરવા કહે છે.
systemd ઇન્સ્ટન્સ
જ્યારે કોઈ unit કનેક્શન ધરાવે છે, ત્યારે unit એ બંધ કરવાની વસ્તુ છે. openvpn-client@office જેવા ટેમ્પલેટ ઇન્સ્ટન્સ પ્રોફાઇલનું નામ ધરાવે છે, અને ઇન્સ્ટન્સને બદલે ટેમ્પલેટ લક્ષ્ય બંધ કરવાથી હોસ્ટ પરના દરેક ક્લાયન્ટ પર અસર થઈ શકે છે.
systemctl list-units 'openvpn-client@*'
systemctl stop [email protected]
ઇન્સ્ટન્સે કઈ પ્રોફાઇલ લોડ કરી તેની ખાતરી ન હોય તો unit નું ExecStart વાંચો.
સક્ષમ કરેલું unit આગલા બૂટ પર પાછું આવશે, જે હવે તેને બંધ કરવાથી અલગ નિર્ણય છે. કનેક્શન પાછું ન આવવું જોઈએ એવું નક્કી કર્યા પછી જ તેને નિષ્ક્રિય કરો, અને તે નિર્ણય એવી જગ્યાએ નોંધો જ્યાં આગલા વ્યવસ્થાપકને તે મળે.
NetworkManager પ્રોફાઇલ
NetworkManager દ્વારા સંચાલિત પ્રોફાઇલ એ પ્રોસેસ નથી જેને તમે સિગ્નલ મોકલી શકો. મેનેજર જીવનચક્ર ધરાવે છે, અને જે વસ્તુ પર કાર્ય કરવાનું છે તે સક્રિય કનેક્શન છે, જે ડિસ્પ્લે નામને બદલે UUID દ્વારા ઓળખાય છે. પહેલા સક્રિય યાદી વાંચવાથી એ પણ દેખાય છે કે તમે અપેક્ષા ન હતી તેવા નામ હેઠળ બીજી ટનલ ચાલી રહી છે કે નહીં.
nmcli connection show --active
nmcli connection down uuid actual-uuid
ડિસ્પ્લે નામ પુનરાવર્તિત થાય છે, અને પ્રોફાઇલ ફાઇલનું નામ તેનું ઓળખકર્તા નથી, તેથી યાદીમાંથી UUID કૉપિ કરો. જો કનેક્શન તરત જ પાછું આવે, તો કંઈક તેને સક્રિય કરી રહ્યું છે: આધાર કનેક્શન પર secondaries એન્ટ્રી, dispatcher સ્ક્રિપ્ટ, અથવા ઓટોકનેક્ટ ફ્લેગ. મેનેજરનું કનેક્શન બંધ કરવું એ સાચું પહેલું પગલું છે, અને ફરી સક્રિયકરણ એ આગળનો પ્રશ્ન છે. ફરી સક્રિયકરણ રોકવા પ્રોફાઇલ ડિલીટ કરશો નહીં, કારણ કે તેનાથી આવતીકાલે જરૂરી હોઈ શકે તેવા ઓળખપત્રો પણ દૂર થાય છે.
મેનેજરનું કમાન્ડ સંદર્ભ દસ્તાવેજ કરે છે કે down લક્ષ્ય કેવી રીતે પસંદ થાય છે.
OpenVPN 3 સેશન
OpenVPN 3 Linux દરેક ટનલ માટે પ્રોસેસને બદલે સેશન મોડેલ વાપરે છે. સેવાને ખબર હોય તેવા સેશન તમે તપાસો છો, પછી એક સેશન પથ પર કાર્ય કરો છો. પથ એ ઓળખકર્તા છે, અને તે કન્ફિગરેશન નામ સાથે બદલી શકાય તેવો નથી.
openvpn3 sessions-list
openvpn3 session-manage --path /net/openvpn/v3/sessions/... --disconnect
દરેક સેશન ડિસ્કનેક્ટ કરવું એ અલગ ક્રિયા છે, અને તે જાણી જોઈને કરવી જોઈએ.
એક જ હોસ્ટ ઘણા વપરાશકર્તાઓના સેશન રાખી શકે છે, તેથી કાર્ય કરતા પહેલા યાદી બનાવો અને જે સેશન સમાપ્ત કરવા જઈ રહ્યા છો તેના માલિકની ખાતરી કરો.
પછી શું ચકાસવું
આમાંથી કોઈપણ બંધ કર્યા પછી ત્રણ વસ્તુ ચકાસો: સક્રિય કનેક્શન યાદીમાં હવે ટનલ નથી, ઇન્ટરફેસ ગયું છે, અને આંતરિક સરનામા માટે રૂટ શોધ હવે ટનલ ઉપકરણ પસંદ કરતી નથી. પછી નક્કી કરો કે આગલા બૂટ પર શું થશે.
ip -brief address
ip route get 10.8.0.1
જાતે ઇન્ટરફેસ દૂર કરવાથી માલિક બંધ થતો નથી, અને સફાઈ અડધી થયેલી રહે છે.
હમણાં ડિસ્કનેક્ટ કરવું, આગલું સ્વચાલિત શરૂ થવું અટકાવવું, અને પછી બિન-VPN ટ્રાફિકને મંજૂરી આપવી એ ત્રણ અલગ પસંદગીઓ છે. દરેકને સ્પષ્ટ રીતે કરો.