ifconfig-noexec rett net Är SSH-Sitzung: wat et wierklech mécht
Et ënnerdréckt dem OpenVPN seng eege Interface-Adresskonfiguratioun. Et reservéiert keng Äntwertstreck fir SSH, schalt net all Routenännerung aus a liwwert net déi fehlend Adress.
An engem Forumsthread, ifconfig-noexec gëtt et als de Fix ugebueden, deen eng SSH-Sitzung lieweg hält, wann en Tunnel eropkënnt. D'Begrënnung kléngt plausibel, bis ee kuckt, wat d'Optioun wierklech beréiert. Et hält OpenVPN dovun of, d'Adress vum Tunnelinterface ze konfiguréieren, an iwwerléisst déi Wäerter amplaz Skripten; iwwer d'Fro, wou d'Äntwerten op Är Managementverbindung higinn, seet et näischt. Wann ee dat ëmgekierpt mengt, kritt een en Tunnel ouni brauchbar Adress an eng SSH-Sitzung, déi nach ëmmer stierft.
Wat d'Optioun wierklech delegéiert
Standardméisseg hieft de Client den Tunneldevice an a verdeelt déi lokal an déi remote Adressen, déi de Server him ginn huet. Mat ifconfig-noexec gesat gëtt dëse Schrëtt iwwersprongen, an déi ausgehandelt Wäerter ginn an d'Skriptëmwelt exportéiert, sou datt eppes aneres se ka passen.
D'Eegentum wiesselt. Et gëtt näischt erfonnt, wat seng Plaz hëlt.
Also d'Fro, déi d'Optioun beäntwert, ass wien den Interface konfiguréiert, an d'Fro, déi se net beäntwert, ass wéi d'Pakete hire Wee zréck zu Iech fannen. Halt déi zwee getrennt, soss verbréngt Dir en Owend mat Routen editéieren, fir en Interface ouni Adress ze kompenséieren.
Dräi ähnlech Optiounen mat verschiddenen Aufgabe
D'Famill ass liicht ze verwiesselen, well d'Nimm sech an engem Wuert ënnerscheeden an d'Symptomer sech iwwerschneiden. Liest wat jiddwereen ënnerdréckt, ier Dir eng dovun auswielt.
| Option | What stops happening |
|---|---|
ifconfig-noexec | OpenVPN's own tunnel-address configuration; values go to scripts instead |
route-noexec | Automatic route addition and removal; route details go to a script |
route-nopull | Server-pushed routes and related options such as DNS are rejected |
Dëst sinn Alternativen, déi een eenzel muss verstoen, keen Set fir zesummen ze pechen. D'Adresskonfiguratioun z'ënnerdrécken ënnerdréckt keng Routenännerungen, Firewallregele oder déi gedréckt Optiounen, déi DNS transportéieren. En delegéierte Skript ass och fräi, Routen ze änneren, wat eng Entscheedung ass, déi Dir iwwergitt amplaz se ze vermeiden.
Wann e Vendor-Client de Motor ëmwickelt, benotzt seng ënnerstëtzten Integratioun, amplaz eng niddereg Direktiv an e Profil ze geheien an ze hoffen, datt de Wrapper se respektéiert. Wrapperen regeneréieren de Profil dacks beim Verbannen, sou datt eng manuell Ännerung ouni Feeler verschwënnt. Kuckt no, wou de Client seng Astellungen hält, ier Dir en Owend um Fichier verbréngt. Dat gëllt fir all Zeil an der Tabell, net nëmmen déi, fir déi Dir komm sidd.
D'SSH-Sitzung, déi Dir wollt schützen
Eng SSH-Verbindung huet eng Quelladress, eng Destinatiounsadress an en Äntwertswee. Op engem Server, deen just e Volltunnel-Standard installéiert huet, passt d'Äntwert op Är ëffentlech Adress zum Tunnel, an de VPN-Gateway verwërft se.
Näischt an der Adresskonfiguratioun vum Tunnelinterface ännert dat.
Wat et reparéiert, ass eng méi spezifesch Streck fir Är Managementadress iwwer de Gateway virum Tunnel, oder eng Politikregel, déi deen Trafik ëmleedet, plus déi Filtersäitstellungen, déi Ären Host uwendet. Déi zwee Problemer erschéngen heiansdo zesummen, an esou gëtt een zum Heil vum aneren. Test se getrennt: hieft den Tunnel ouni d'Optioun, kuckt d'Interfaceadress an den Äntwertswee, an entscheet dann, wéi vun deenen zwee wierklech futti ass.
Wat en delegéierte Skript iwwerhuele muss
Wann Dir wierklech wëllt, datt en aneren Eegentemer den Interface konfiguréiert, zielt d'Aarbecht op: passt déi lokal an déi remote Adress un, hieft den Apparat, restauréiert oder läscht d'Adresséierung beim Ofbau, a maacht datselwecht nach enger Verbindung nach eng Kéier. Wäerter aus enger eenzeger gelungener Sitzung däerfen net haart kodéiert sinn, well de Server d'nächst Mol eng aner Puer ka ginn.
D'Ëmweltvariabelen, déi de Client exportéiert, sinn déi eenzeg ënnerstëtzt Input fir déi Aarbecht.
env | grep -E '^ifconfig_|^route_'An engem route-up Skript sinn déi Variabelen disponibel; aus engem Cronjob oder enger manueller Shell net. Bestätegt, wéi Liewenszyklus-Hook Är Versioun benotzt, a bestätegt, datt den Hook mat genuch Rechter leeft, fir den Interface z'änneren, well de Client vläicht schonn op en net-privilegéierte Benotzer erofgaang ass.
Test de ganze Liewenszyklus, net eng eenzeg Sitzung
Hieft den Tunnel, kontrolléiert d'Adress um Apparat, verbënnt Iech dann nei a kontrolléiert nach eng Kéier. Eng Konfiguratioun, déi eemol funktionéiert an beim zweeten Versuch feelt, heescht meeschtens, datt de delegéierte Schrëtt nëmmen beim éischte Verbannen leeft.
Test dann béid Akzeptanzkriterien zesummen: eng nei SSH-Verbindung iwwer de virgesi Managementwee funktionéiert, an eng erlaabten Applikatioun benotzt den Tunnel richteg.
Eng al SSH-Sitzung, déi zoufälleg iwwerlieft, während den Tunnel keng Adress huet, ass kee Succès, an et ass genau dee Zoustand, deen dës Optioun produzéiert, wann keen d'Aarbecht iwwerhëlt. Kontrolléiert als éischt d'Interfaceadress, dann den Äntwertswee vum Management, dann d'Applikatioun. Wann zwee vun den dräi falsch sinn, huet d'Optioun Aarbecht verréckelt, ouni hir en Eegentemer ze ginn.