Prosljeđivanje SMB saobraćaja nije isti posao kao njegovo prekidanje, a ruter koji radi jedno možda ne upravlja drugim. Prosljeđivanje znači da ruter prenosi pakete čiji sadržaj nikada ne parsira. Montiranje znači da ruter postaje datotečni klijent, sa softverom koji možda ne isporučuje, akreditivima koje mora zaštititi i načinima kvara koje sada posjeduje. Odabir između to dvoje je pitanje gdje su datoteke potrebne, a ne šta se platforma za usmjeravanje može nagovoriti da instalira.

Prosljeđivanje i prekidanje su različiti poslovi

U ulozi prosljeđivanja ruter ima jednu odgovornost: dostaviti pakete između klijenta i servera primjenjujući politiku koju put zahtijeva. On se ne autentificira na dijeljenom resursu, ne kešira datotečne podatke i ne zanima ga govori li server SMB2 ili SMB3, jer nikada ne čita tako duboko u tok. Ako resurs postane nedostupan, korisnik vidi grešku, a ruter nastavlja usmjeravati.

U ulozi klijenta ruter se pridružuje razgovoru protokola. On pregovara dijalekt, autentificira se, razrješava imena, drži točku montiranja i prikazuje lokalni prikaz datotečnog sistema svemu što radi iznad njega. To je stvarna usluga sa životnim ciklusom i pretvara pristupnik u zavisnost datotečnog toka rada. On nasljeđuje i svaki način kvara te zavisnosti, uključujući čekanja pri podizanju i zastarjele akreditive.

Poređenje nije samo o sposobnosti. Platforma koja može montirati resurs nije automatski platforma koja bi to trebala raditi, a platforma koja ga ne može montirati možda je ipak pravo mjesto za usmjeravanje saobraćaja.

Šta kernel CIFS montiranje zapravo treba

Na uređaju zasnovanom na Linuxu kernel CIFS klijent i korisnički klijent su odvojene sposobnosti, a male slike često ne sadrže nijednu. Podrška jezgre mora biti u pokrenutoj slici, pomoćnik za montiranje mora postojati, a SMB dijalekt dogovoren sa serverom mora biti onaj koji prihvataju obje strane. O tome piše vodič za CIFS klijent na Linuxu, koji opisuje raspored jezgre i njegove opcije montiranja i pravi je izvor prije nego pretpostavite da ga build dobavljača sadrži.

Provjerite sposobnost prije nego što oko nje projektujete i provjerite verziju, a ne postojanje imena komande. Ime modula na listi paketa nije isto što i klijent koji radi.

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

Kernel modul koji se učita i korisnički alat koji ispiše verziju još uvijek ne garantuju da će montiranje preživjeti obnovu ključeva VPN-a, pa probu tretirajte kao početni uslov, a ne kao dokaz. Ako slika isporučuje samo SMB1 podršku, to je razlog da se zaustavite, a ne razlog da je omogućite na serveru.

Akreditivi i identitet izvora razlikuju se od onih na prijenosniku

Proslijeđeni zahtjev nosi identitet prijenosnika kroz tunel, dok zahtjev nastao na ruteru nosi vlastitu izvornu adresu rutera, put resolvera i filtriranje izlaza. Oni mogu završiti u drugom pravilu zaštitnog zida, drugom DNS prikazu i drugoj listi dozvola na strani servera. Zato kopija koja radi s radne stanice ništa ne dokazuje o vlastitom montiranju rutera. Testirajte montiranje iz vlastite ljuske rutera, a ne s radne stanice iza njega.

Dajte ruteru usko ovlašten identitet usluge ako je uloga uopšte odobrena. Nikada ne stavljajte zaporku direktno u komandnu liniju montiranja, jer ona ostaje u historiji ljuske i pojavljuje se u tabeli procesa dok montiranje radi.

Pohranite akreditive kroz zaštićeni mehanizam platforme i čitajte ih iz datoteke s restriktivnim dozvolama. Ta datoteka treba biti nečitljiva za svaki račun osim onog koji izvršava montiranje.

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

Ko posjeduje kvar kada resurs nestane

Nedostajući udaljeni datotečni sistem ponaša se drugačije od nedostajuće rute. Montiranje može blokirati procese koji ga dodiruju, može pasti pri podizanju prije nego tunel postoji, a upis namijenjen serveru može završiti na pogrešnom mjestu ako lokalni direktorij stoji pod točkom montiranja. To su kvarovi pohrane koje sada posjeduje mrežni tim, htio on to ili ne. Niko nije pristao na to vlasništvo, ali ono dolazi s montiranjem.

Projektujte redoslijed podizanja i opcije montiranja oko te stvarnosti. Montiranje samo za čitanje s kratkim vremenskim ograničenjem i dokumentiranim korakom oporavka lakše je braniti od montiranja za upis o kojem sve ostalo zavisi. Potvrdite da se tunel podiže prije nego što bilo šta pokuša montirati, inače će se prvo podizanje nakon nestanka struje objesiti.

Za ozbiljnu obradu datoteka ili za bilo šta što podatke ponovo izvozi dalje, odvojeni host obično daje jasniju granicu vlasništva. Ruter nastavlja usmjeravati, a datotečni tok rada dobija mašinu koja se može restartovati bez nošenja mreže sa sobom.

Provjerite odluku prema stvarnom zadatku

Zapišite koji zadatak treba datoteke i gdje se taj zadatak izvršava. Ako je odgovor radna stanica, usmjerite resurs i zaustavite se tu. Ako je odgovor usluga na uređaju, potvrdite sposobnost klijenta, podržani dijalekt i put akreditiva prije prvog montiranja, pa odlučite je li uređaj zaista pravi host.

Provjerite montirani prikaz i slobodan prostor s rutera samog, jer će ih tamo vidjeti radno opterećenje. Ponovite provjeru nakon ponovnog povezivanja, a ne samo nakon čistog podizanja.

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

Montiranje koje izlistava datoteke ali prijavljuje pun ili samo-za-čitanje datotečni sistem već vam je reklo s kojim ćete se kvarom sresti u 2 sata ujutro. Potvrdite i put oporavka: demontirajte čisto, spustite tunel, vratite ga i montirajte ponovo bez restarta uređaja. Ako taj slijed svaki put traži servisni slučaj, ruter je pogrešno mjesto za ulogu klijenta.

Povezani članci