Sa isang thread sa forum, ifconfig-noexec iniaalok ito bilang ang ayos na nagpapanatili ng buhay ng SSH session kapag umangat ang tunnel. Mukhang makatwiran ang pangangatwiran hanggang tingnan mo kung ano talaga ang hinahawakan ng opsyon. Pinipigilan nito ang OpenVPN na i-configure ang address ng interface ng tunnel at ibinibigay ang mga halagang iyon sa mga script sa halip; tungkol sa kung saan napupunta ang mga tugon sa iyong koneksyon sa pamamahala, wala itong sinasabi. Ang maniwala sa kabaligtaran ay gumagawa ng tunnel na walang magagamit na address at SSH session na namamatay pa rin.

Ano talaga ang ipinagkakatiwala ng opsyon

Bilang default, itinataas ng kliyente ang device ng tunnel at itinatakda ang lokal at malayong address na ibinigay ng server. Kapag ifconfig-noexec ay nakatakda, nilalaktawan ang hakbang na iyon, at iniluluwas ang mga napagkasunduang halaga sa kapaligiran ng script upang may ibang makapagpatupad ng mga ito.

Lumilipat ang pagmamay-ari. Walang naimbento sa lugar nito.

Kaya ang tanong na sinasagot ng opsyon ay kung sino ang nag-configure ng interface, at ang tanong na hindi nito sinasagot ay kung paano nakakahanap ng daan pabalik sa iyo ang mga packet. Panatilihing hiwalay ang dalawa, kung hindi ay gugugol ka ng isang gabi sa pag-edit ng mga ruta para mabayaran ang interface na walang address.

Tatlong magkatulad na opsyon na may magkaibang gawain

Madaling malito sa pamilyang ito dahil isang salita lang ang pagkakaiba ng mga pangalan at nagkakapatung-patong ang mga sintomas. Basahin kung ano ang pinipigilan ng bawat isa bago pumili ng alinman.

OptionWhat stops happening
ifconfig-noexecOpenVPN's own tunnel-address configuration; values go to scripts instead
route-noexecAutomatic route addition and removal; route details go to a script
route-nopullServer-pushed routes and related options such as DNS are rejected

Ito ay mga alternatibong dapat unawain nang isa-isa, hindi isang set na ididikit nang sabay. Ang pigilan ang configuration ng address ay hindi pumipigil sa mga pagbabago ng ruta, mga patakaran ng firewall o sa mga itinulak na opsyon na nagdadala ng DNS. Ang delegadong script ay malaya ring magbago ng mga ruta, at iyon ay desisyong ipinapasa mo sa halip na iniiwasan.

Kung binabalot ng kliyente ng vendor ang engine, gamitin ang sinusuportahang integrasyon nito sa halip na maglagay ng mababang antas na direktiba sa profile at umasa na igagalang ito ng wrapper. Madalas muling buuin ng mga wrapper ang profile kapag kumokonekta, kaya nawawala nang walang error ang manu-manong pag-edit. Tingnan kung saan itinatago ng kliyente ang mga setting nito bago gugulin ang isang gabi sa file. Naaangkop iyon sa bawat hilera sa talahanayan, hindi lamang sa pinuntahan mo.

Ang SSH session na balak mong protektahan

Ang koneksyon ng SSH ay may source address, destination address at ruta ng tugon. Sa server na karara lang nag-install ng default na buong tunnel, tumutugma sa tunnel ang tugon sa iyong pampublikong address, at itinatapon ito ng gateway ng VPN.

Wala sa configuration ng address ng interface ng tunnel ang nagbabago niyan.

Ang nag-aayos nito ay isang mas tiyak na ruta para sa iyong address ng pamamahala sa pamamagitan ng gateway bago ang tunnel, o isang patakaran na naglilihis sa trapik na iyon, kasama ang mga setting ng filter na inilalapat ng iyong host. Minsan sabay na lumilitaw ang dalawang problema, at ganoon nakakalito ang isa bilang lunas sa isa. Subukan sila nang hiwalay: itaas ang tunnel nang walang opsyon, tingnan ang address ng interface at ang ruta ng tugon, pagkatapos ay magpasya kung alin sa dalawa ang talagang sira.

Ano ang dapat akuin ng delegadong script

Kung talagang gusto mong ibang may-ari ang mag-configure ng interface, ilista ang gawain: ilapat ang lokal at malayong address, itaas ang device, ibalik o alisin ang pag-address kapag tinanggal, at gawin muli ang pareho pagkatapos ng muling pagkonekta. Ang mga halaga mula sa isang matagumpay na session ay hindi dapat i-hard-code, dahil maaaring magbigay ang server ng ibang pares sa susunod.

Ang mga variable ng kapaligiran na iniluluwas ng kliyente ang tanging sinusuportahang input para sa gawaing iyon.

env | grep -E '^ifconfig_|^route_'

Sa loob ng isang route-up script, available ang mga variable na iyon; mula sa gawain ng cron o manu-manong shell ay hindi. Kumpirmahin kung aling hook ng lifecycle ang ginagamit ng iyong bersyon, at kumpirmahin na tumatakbo ang hook na may sapat na pribilehiyo upang baguhin ang interface, dahil maaaring bumaba na ang kliyente sa isang user na walang pribilehiyo.

Subukan ang buong lifecycle, hindi isang session

Itaas ang tunnel, tingnan ang address sa device, pagkatapos ay kumonekta muli at tingnan muli. Ang configuration na gumagana nang isang beses at nabibigo sa ikalawang pagtatangka ay karaniwang nangangahulugan na ang delegadong hakbang ay tumatakbo lamang sa unang koneksyon.

Pagkatapos ay subukan ang dalawang pamantayan ng pagtanggap nang sabay: gumagana ang bagong koneksyon ng SSH sa nilalayong ruta ng pamamahala, at wastong ginagamit ng pinahintulutang aplikasyon ang tunnel.

Ang lumang SSH session na nagkataong nabubuhay habang walang address ang tunnel ay hindi tagumpay, at iyon mismo ang kalagayang nililikha ng opsyong ito kapag walang kumukuha ng gawain. Tingnan muna ang address ng interface, pagkatapos ang ruta ng tugon ng pamamahala, pagkatapos ang aplikasyon. Kung dalawa sa tatlo ang mali, inilipat ng opsyon ang gawain nang hindi binibigyan ito ng may-ari.

Kaugnay na mga artikulo