Odjemalec VPN pinga datotečni strežnik, razreši njegovo ime in vseeno ne more odpreti skupne rabe. Pravilo gostiteljev v Sambi je ena od štirih plasti, ki lahko zavrnejo to povezavo, in prav to ljudje urejajo zadnje. Seznam dovoljenih se ocenjuje glede na naslov vira, ki ga smbd dejansko prejme, in to morda ni naslov, za katerega odjemalec misli, da ga ima. Če ta vir pravilno določite, se nejasen problem z dovoljenji spremeni v enovrstično spremembo konfiguracije.

Štiri plasti, ki odpovejo z istim sporočilom

Zavrnitev lahko pride s poti, z gostiteljevega požarnega zidu, iz pravila gostiteljev v Sambi ali iz identitete SMB. Vsaka plast odjemalcu sporoči približno isto, zato ugibanje stane popoldne. Če preglede razporedite od omrežja navznoter, odpade večina ugibanja.

Začnite s prenosom. Če vrata 445 nikoli ne dosežejo strežnika, nobena nastavitev Sambe ni pomembna, in zajem na vmesniku strežnika to razreši v sekundah. Nato pride gostiteljev požarni zid na samem strežniku, ki lahko zavrže dovoljeni vir, preden ga smbd sploh vidi. Šele ko ta dva prideta skozi, seznam dovoljenih postane kandidat. Preverjanje pristnosti je zadnje, ker neuspešna prijava in zavrnitev gostitelja v dnevniku strežnika izgledata različno, tudi ko odjemalec oboje poroča kot zavrnjen dostop. Vrstni red je pomembnejši od orodij, ker ima vsaka plast ukaz, ki ji odgovori.

Poiščite naslov vira, ki ga smbd dejansko vidi

Pri usmerjenem dostopu strežnik običajno vidi naslov odjemalca iz bazena VPN. Pri pretvorbi vira na prehodu namesto tega vidi naslov LAN prehoda, in vsak odjemalec za tem prehodom postane nerazločljiv.

Ta razlika odloči, ali je vnos na seznamu dovoljenih politika ali luknja. Če dovolite prevedeni naslov prehoda, spustite vse za njim, kar pravilo za posameznega odjemalca redko želi izraziti. Vir berite na strežniku in ne iz odjemalčeve predstave o lastnem naslovu. Zajem na vmesniku strežnika je najcenejši način, da ga vidite, in isti zajem dokaže, ali je paket sploh prispel. Zajem omejite s številom paketov in dodajte filter gostitelja, ko veste, kateremu odjemalcu sledite. Tabela sej Samba je druga polovica odgovora: v smbstatus -b je stolpec odjemalca v vsaki vrstici seje partner, ki ga je smbd zabeležil, in to je najhitrejša potrditev naslova, ki je res dosegel storitev.

sudo tcpdump -ni any -c 20 'tcp port 445'
sudo smbstatus -b
ss -tnp | grep ':445'

Berite seznam dovoljenih tako, kot ga bere Samba

Nastavitev hosts allow sprejme seznam naslovov, omrežij ali imen in lahko stoji globalno ali znotraj skupne rabe. Dva vnosa, ki se vam zdita enakovredna, morda nista enakovredna za razčlenjevalnik, zato je treba pregledati prav dejansko konfiguracijo. To pomeni združeni pogled in ne datoteke, ki ste jo slučajno uredili.

Ilustrativni par predpon izgleda kot vrstica spodaj, in to je primer, ne nadomestilo za že obstoječe vnose. Obdržite skrbniške in aplikacijske odjemalce, ki se danes zakonito povezujejo, in preberite morebitni seznam prepovedi v istem koraku. Ali bo gostitelj sprejet, je odvisno od politike kot celote, zato preizkusite točnega odjemalca, namesto da razglabljate o prednosti. Dovoljenje gostitelja tudi ne pove ničesar o dovoljenjih za skupno rabo ali načinih datotečnega sistema, ki so ločena vrata. Uspeh preskusnih orodij pomeni, da pravilo gostiteljev sprejme ta vir, in nič več.

hosts allow = 192.168.50.0/24 10.90.0.0/24
testparm -s
testparm -s /etc/samba/smb.conf client.example 10.90.0.14

Spremenite datoteko, ki preživi ponovni zagon

Na običajnem gostitelju Linux je pot konfiguracije fiksna in storitev jo ob ponovnem zagonu znova prebere. Na usmerjevalniku ali napravi se delujoči smb.conf pogosto ustvari ob zagonu, in ročni popravek ob naslednjem zagonu izgine. Uporabite podprti mehanizem prilagajanja naprave, ki je običajno lastna konfiguracijska datoteka.

Skušnjava na tej točki je, da bi namestili alternativno programsko opremo, ker je ena nit poročala, da deluje. To je velika sprememba za majhen problem s politiko in napravo pelje iz podprtega stanja. Najprej določite podprti nadzor, saj večina naprav prikaže seznam dovoljenih prek svojega vmesnika. Če tega res ne počnejo, je ta omejitev argument za drugo strojno opremo in ne za nepodprto gradnjo.

Zapišite, katero datoteko ste spremenili in kaj jo znova ustvari, da naslednja oseba ne bo ponavljala diagnostike.

Preizkusite enega dovoljenega in enega izključenega odjemalca

Preizkusite oba izida, ne le želenega. Dovoljeni odjemalec, ki se poveže, dokaže, da sprememba deluje; izključeni odjemalec, ki je še vedno zavrnjen, dokaže, da pravilo ni preprosto odprlo vsega.

smbclient -L //fileserver -U alice
sudo testparm -s /etc/samba/smb.conf alice-laptop 10.90.0.14
sudo tail -n 40 /var/log/samba/log.smbd

Ko povezava nikoli ne doseže smbd, je odgovor v usmerjanju ali v požarnem zidu strežnika. Če je gostitelj dovoljen in prijava ne uspe, je problem identiteta in širjenje seznama dovoljenih ne bo pomagalo. Diagnostični izhod hranite zasebno, ker lahko podroben dnevnik Sambe razkrije poti skupne rabe in imena računov. Spreminjajte eno plast na poskus, sicer vam naslednji rezultat ne bo povedal ničesar.

Sorodni članki