Samba på en VPN-adresse: hvorfor lytteren forsvinder
Delingen virker, indtil tunnelen genstarter, og derefter udløber den, mens ping stadig svarer. En lytter bundet til en forsvundet adresse forklarer hele mønsteret.
Delingen virker hele formiddagen, tunnelen genopretter forbindelsen ved frokost, og den samme UNC-sti udløber nu, mens ping til serveren stadig svarer. Intet er ændret i delingens definition, og VPN er oppe. Det, der er ændret, er den lokale adresse, som Samba var bundet til, og som ikke findes længere, efter at grænsefladen er genskabt. Den fejltilstand er et problem i lytterens livscyklus, ikke et tilladelsesproblem.
Delingen virker, indtil tunnelen genstarter
Når en tjeneste bindes til en adresse, knyttes dens socket til den adresses levetid. Når tunnelgrænsefladen nedbrydes og genopbygges, forsvinder den gamle adresse, og socketten, der var bundet til den, forsvinder med den. Tjenesten kører videre, men intet lytter der, hvor klienterne sendes hen.
Ping kan stadig lykkes, hvis den nye adresse svarer på ICMP, og derfor ser rækkevidde fin ud, mens delingen er død. Netop den ene vildledende succes sender folk til firewallen.
Rækkevidde er ikke en bindingsadresse
Tre beslutninger blandes sammen her. Ruten afgør, om en klientpakke ankommer. Den lyttende socket afgør, om noget accepterer den på den lokale adresse. Delingens konfiguration og filsystemets tilladelser afgør, hvad der sker bagefter. Kun den anden går i stykker, når grænsefladen genskabes.
En adresse fra VPN-puljen er heller ikke automatisk en lokal bindingsadresse. Den tilhører en klient, ikke filserveren. Ping er en dårlig test for en filtjeneste.
Hold også de ejere adskilt i dokumentationen. En fremtidig ændring i VPN-puljen bør ikke kræve redigering af Samba, og en ændring af delingstilladelser bør ikke kræve en genstart af tunnelen.
Bind i stedet til en stabil adresse
Det mere stabile design holder Samba på en fast adresse og lader VPN føre klienterne til den. Serveradressen ændrer sig ikke, når en tunnel blafrer, så lytteren skal aldrig følge en grænseflade. Adgang håndhæves derefter af VPN-ruten og værtsfirewallen, som er bygget til netop det.
Hvis du absolut skal binde til tunnelen, skal du forstå kontrakten i den installerede version. Parametrene interfaces og bind interfaces only er ikke det samme, og dokumentationen for binding advarer om ustabile grænseflader. Dynamisk lytterhåndtering findes på nogle platforme, men det er en egenskab, der skal verificeres, ikke antages. Læs tabellen før og efter en blafren, og sammenlign de to udgange.
ss -ltnp | grep ':445'Test genopkoblingen, ikke det grønne lys
Kontrollér lytteren efter en genopkobling, ikke kun efter en tjenestestart. Genskab tunnelen, læs derefter lyttetabellen, og bekræft, at socketten findes på den adresse, klienterne sendes til. En grøn tunnelindikator og et bestået konfigurationstjek beviser ingen af delene.
smbclient -L //files.corp.example -U aliceKør derefter én tilladt handling og én afvist sti fra en klient, og gentag efter en anden genopkobling. Hvis delingen kun virker indtil den første blafren, er bindingen stadig knyttet til grænsefladens levetid, og designet er ikke rettet. Ændr bindingen eller tjenesteadressen, og symptomet holder op med at komme tilbage.