At videresende SMB-trafik er ikke samme opgave som at afslutte den, og en router, der gør det ene, klarer måske ikke det andet. Videresendelse betyder, at routeren flytter pakker, hvis indhold den aldrig analyserer. Montering betyder, at routeren bliver filklient med software, den måske ikke leverer, legitimationsoplysninger, den skal beskytte, og fejltilstande, den nu ejer. Valget mellem de to handler om, hvor filerne er nødvendige, ikke om hvad routingplatformen kan overtales til at installere.

Videresendelse og afslutning er forskellige opgaver

I videresenderrollen har routeren ét ansvar: at levere pakker mellem klienten og serveren, mens den anvender den politik, stien kræver. Den godkender sig ikke over for delingen, cacher ikke fildata og er ligeglad med, om serveren taler SMB2 eller SMB3, fordi den aldrig læser så langt ind i strømmen. Hvis delingen bliver utilgængelig, ser brugeren en fejl, og routeren bliver ved med at route.

I klientrollen deltager routeren i protokolsamtalen. Den forhandler en dialekt, godkender sig, opløser navne, holder et monteringspunkt og præsenterer en lokal filsystemvisning for alt, der kører ovenover. Det er en rigtig tjeneste med en livscyklus, og den gør gatewayen til en afhængighed af filarbejdsgangen. Den arver også alle fejltilstande af den afhængighed, herunder ventetider ved opstart og forældede legitimationsoplysninger.

Sammenligningen handler ikke kun om evne. En platform, der kan montere en deling, er ikke automatisk en platform, der bør gøre det, og en platform, der ikke kan montere en, kan stadig være det rigtige sted at route trafikken.

Hvad en CIFS-montering i kernen egentlig kræver

På et Linux-baseret apparat er kerne-CIFS-klienten og en brugerrums-klient separate evner, og små images indeholder ofte ingen af dem. Kernestøtte skal være til stede i det kørende image, monteringshjælperen skal findes, og den SMB-dialekt, der forhandles med serveren, skal være en, som begge parter accepterer. Det beskriver Linux CIFS-klientvejledningen, som gennemgår kernens indretning og dens monteringsvalg, og det er den rigtige reference, før du antager, at et leverandørbuild indeholder den.

Kontroller evnen, før du designer ud fra den, og kontroller versionen frem for tilstedeværelsen af et kommandonavn. Et modulnavn på en pakkeliste er ikke det samme som en fungerende klient.

lsmod | grep -w cifs
modinfo cifs | head -5
mount.cifs --version
smbclient -L //fs02.corp.internal -U svc-router -m SMB3

Et kernemodul, der indlæses, og et brugerrumsværktøj, der rapporterer en version, garanterer stadig ikke, at en montering overlever en VPN-nøglefornyelse, så behandl prøven som en startbetingelse, ikke som bevis. Hvis imaget kun leverer SMB1-støtte, er det en grund til at stoppe, ikke en grund til at aktivere det på serveren.

Legitimationsoplysninger og kildeidentitet er anderledes end på en bærbar

En videresendt anmodning bærer den bærbares identitet gennem tunnelen, mens en anmodning, der opstår på routeren, bærer routerens egen kildeadresse, resolversti og udgangsfiltrering. De kan ende i en anden firewallregel, en anden DNS-visning og en anden tilladelsesliste på serversiden. En kopi, der virker fra en arbejdsstation, beviser derfor intet om routerens egen montering. Test monteringen fra routerens egen shell, ikke fra en arbejdsstation bag den.

Giv routeren en snævert autoriseret tjenesteidentitet, hvis rollen overhovedet godkendes. Læg aldrig en adgangskode direkte i monteringskommandolinjen, da den bliver i shell-historikken og vises i procestabellen, mens monteringen kører.

Gem legitimationsoplysningerne via platformens beskyttede mekanisme, og læs dem fra en fil med stramme rettigheder. Den fil bør være ulæselig for enhver konto undtagen den, der kører monteringen.

install -m 600 /dev/null /etc/cifs-reports.creds
printf 'username=svc-router\npassword=REPLACE_ME\ndomain=CORP\n' > /etc/cifs-reports.creds
mount -t cifs //fs02.corp.internal/reports /mnt/reports -o credentials=/etc/cifs-reports.creds,vers=3.1.1,ro

Hvem ejer fejlen, når delingen forsvinder

Et manglende eksternt filsystem opfører sig anderledes end en manglende rute. En montering kan blokere processer, der rører ved den, den kan fejle ved opstart, før tunnelen findes, og en skrivning beregnet til serveren kan havne det forkerte sted, hvis en lokal mappe ligger under monteringspunktet. Det er lagerfejl, som netværksteamet nu ejer, uanset om teamet ønskede dem. Ingen accepterede det ejerskab, men det følger med monteringen.

Design opstartsrækkefølgen og monteringsvalgene omkring den virkelighed. En skrivebeskyttet montering med kort timeout og et dokumenteret gendannelsestrin er lettere at forsvare end en skrivbar montering, som alt andet afhænger af. Bekræft, at tunnelen kommer op, før noget forsøger at montere, ellers hænger den første opstart efter en strømafbrydelse.

Til omfattende filbehandling eller til noget, der re-eksporterer data videre, giver en separat vært normalt en klarere ejerskabsgrænse. Routeren bliver ved med at route, og filarbejdsgangen får en maskine, der kan genstartes uden at tage netværket med.

Kontroller beslutningen mod den faktiske opgave

Skriv ned, hvilken opgave der har brug for filerne, og hvor den opgave kører. Hvis svaret er en arbejdsstation, route delingen og stop der. Hvis svaret er en tjeneste på apparatet, skal du bekræfte klientens evne, den understøttede dialekt og legitimationsstien før den første montering og derefter afgøre, om apparatet virkelig er den rigtige vært.

Kontroller den monterede visning og den ledige plads fra routeren selv, da det er der, arbejdsbelastningen ser dem. Gentag kontrollen efter en genopkobling, ikke kun efter en ren opstart.

findmnt -t cifs -o TARGET,SOURCE,OPTIONS
df -h /mnt/reports
ls -l /mnt/reports | head

En montering, der viser filer, men rapporterer et fuldt eller skrivebeskyttet filsystem, har allerede fortalt dig, hvilken fejl du møder klokken 2 om natten. Bekræft også gendannelsesstien: afmontér rent, tag tunnelen ned, bring den op igen, og montér igen uden at genstarte apparatet. Hvis den sekvens kræver en supportsag hver gang, er routeren det forkerte sted til klientrollen.

Relaterede artikler