Il-mina togħla, iċ-ċertifikat jiġi vvalidat, u mbagħad dialog jgħid li s-server DNS jew id-dominji ma setgħux jiġu stabbiliti. Fuq Linux dan id-dialog normalment mhuwiex dwar il-gateway: il-klijent jgħaddi l-konfigurazzjoni tal-ismijiet lil systemd-resolved permezz ta' D-Bus, u trasferiment miċħud iħalli l-interface 'l fuq b' riżoluzzjoni li għadha tindika lejn il-link antik. L-istess laptop jaqta' l-ismijiet sew qabel ma l-profil jieħu suffiss, u dan huwa l-indizju li jistħoqqlu jiġi segwit. Xejn mill-mina ma nbidel fil-mument li fih deher id-dialog.

Mingħajr suffiss il-klijent jimbotta biss servers tal-ismijiet. Żid dominju tat-tfittxija u tiġi magħquda sejħa oħra, SetLinkDomains, bil-verifika tal-awtorizzazzjoni tagħha stess, għalhekk l-istess profil jaħdem fuq Windows u jonqos hawn. Il-gateway jimbotta l-istess settings fiż-żewġ każi, u l-komponent li jirrifjuta dawn huwa lokali.

Ikkonferma li systemd-resolved huwa r-riżolvitur

Dan il-klijent jitkellem ma' systemd-resolved u ma' ħadd ieħor. Arch u diversi distribuzzjonijiet oħra jikkunsinnawh mitfi, u /etc/resolv.conf jista' jappartjeni għal riżolvitur kompletament differenti, għalhekk stabbilixxi s-sid qabel ma tħares lejn il-permessi.

Tliet kmandi jsolvu dan:

systemctl status systemd-resolved
ls -l /etc/resolv.conf
resolvectl status

Qed tfittex servizz attiv, kollegament simboliku li jindika lejn /run/systemd/resolve/stub-resolv.conf, u DNS għal kull link f' resolvectl. Meta NetworkManager ikollu s-sjieda minflok, erfaħha għal resolved minflok ma tiġġieled mal-klijent; id-drop-in hawn taħt jistabbilixxi ż-żewġ ċavetta:

[main]
dns=systemd-resolved
systemd-resolved=true

Erġa' ibda NetworkManager ladarba jkun hemm dik il-fajl. Riżolvitur inattiv flimkien ma' klijent li jibqa' jsejjaħ ismu D-Bus jipproduċi żball li ma jsemmi lil ħadd minnhom.

Osserva s-sejħa D-Bus li tonqos

Dan il-pass jibdel id-dialog fi tweġiba speċifika. Osserva l-interface tar-riżolvitur f'terminal wieħed u l-ġurnal f'ieħor, imbagħad erġa' qabbad:

sudo dbus-monitor --system "interface='org.freedesktop.resolve1.Manager'"
journalctl -fu systemd-resolved

Għandhom jidhru tliet sejħiet: SetLinkDNS, SetLinkDomains u SetLinkDefaultRoute. Dik li tiġi lura bħala tweġiba ta' żball hija dik li trid tiġi msewwija. Dik it-tweġiba normalment issemmi r-raġuni tagħha, pereżempju org.freedesktop.DBus.Error.AccessDenied kontra SetLinkDomains. Innota liema sejħa kienet, għax it-taqsima li jmiss hija dwar li tħalli dik is-sejħa tgħaddi.

Agħti lill-klijent l-azzjonijiet polkit li jeħtieġ

Aqra l-politika qabel ma tikteb regola. Klijent li jaħdem bħala servizz ma jistax iwieġeb għal talba interattiva, għalhekk auth_admin_keep impliċitu huwa triq bla ħruġ.

pkaction --verbose --action-id org.freedesktop.resolve1.set-domains
pkaction --action-id org.freedesktop.resolve1.set-dns-servers --verbose

Jekk it-tweġiba hija auth_admin_keep, il-klijent jeħtieġ regola espliċita. Is-silta hawn taħt tippermetti l-erba' azzjonijiet resolve1 li klijent VPN juża matul konnessjoni u tħalli kollox ieħor fi polkit.Result.NOT_HANDLED:

polkit.addRule(function(action, subject) {
  var allowed = [
    "org.freedesktop.resolve1.set-dns-servers",
    "org.freedesktop.resolve1.set-domains",
    "org.freedesktop.resolve1.set-default-route",
    "org.freedesktop.resolve1.revert"
  ];
  if (allowed.indexOf(action.id) !== -1 &&
      subject.isInGroup("wheel")) {
    return polkit.Result.YES;
  }
  return polkit.Result.NOT_HANDLED;
});

Poġġih fi /etc/polkit-1/rules.d/ bħala fajl li se tagħraf aktar tard, pereżempju 50-azurevpn.rules, u ibdel l-isem tal-grupp fis-silta b'tiegħek qabel ma toħroġ u terġa' tidħol. Żommu dejjaq, għax li tippermetti kull azzjoni resolve1 għal kull kont huwa usa' milli jeħtieġ dan il-klijent u ħafna aktar diffiċli biex tawditjah wara.

Iċċekkja l-XML tal-profil qabel ma timmodifika polkit

Profil modifikat bl-idejn jista' jiġi injorat bla kelma. Microsoft tiddokumenta tqassim ċatt li fih l-entrati dnsserver joqogħdu direttament ġewwa dnsservers, u s-suffissi ġewwa dnssuffixes. Element tal-kejl żejjed madwar kull indirizz mhuwiex dik il-forma, u l-klijent jaqa' bil-kwiet lura għal dak li jimbotta l-gateway.

Agħmel it-test tat-tneħħija qabel ma tmiss polkit. Neħħi l-blokka tas-suffiss, erġa' qabbad u ara jekk id-dialog jinbidilx. Jekk jinbidel, is-sejħa li fallew kienet it-trasferiment tad-dominju, u s-sewwa hija awtorizzazzjoni mhux ieħor modifika XML.

Ivverifika d-dominju fuq il-link tal-mina

Erġa' qabbad u aqra resolvectl status mill-ġdid, u ċċekkja li l-link tal-mina jġorr is-server tal-ismijiet u d-dominju tat-tfittxija flimkien. Issolvi isem privat qasir minflok wieħed pubbliku. Meta l-isem jiġi solvut iżda s-servizz warajh ma jweġibx, it-trasferiment DNS ħadem u l-problema li fadal hija r-rotta.

Ikteb fit-ticket is-sid tar-riżolvitur, is-sejħa D-Bus li falliet, il-fajl tar-regola u l-verżjoni tal-profil. Dawk l-erba' linji jagħmlu l-laptop Linux li jmiss tiswija qasira minflok investigazzjoni ripetuta.

Artikli relatati