VPN-asiakas pingaa tiedostopalvelinta, selvittää sen nimen eikä silti voi avata jakoa. Samban isäntäkäytäntö on yksi neljästä kerroksesta, jotka voivat hylätä kyseisen yhteyden, ja se on kerros, jota ihmiset muokkaavat viimeiseksi. Sallittujen luetteloa arvioidaan lähdeosoitetta vasten, jonka smbd todella vastaanottaa, eikä se välttämättä ole osoite, jonka asiakas luulee omaavansa. Kun lähde selvitetään oikein, epämääräinen käyttöoikeusongelma muuttuu yhden rivin kokoonpanomuutokseksi.

Neljä kerrosta, jotka epäonnistuvat samalla viestillä

Hylkäys voi tulla reitiltä, isännän palomuurilta, Samban isäntäkäytännöltä tai SMB-identiteetiltä. Jokainen kerros tuottaa asiakkaalle viestin, joka sanoo suunnilleen saman, siksi arvailu maksaa yhden iltapäivän. Kun tarkistukset järjestetään verkosta sisäänpäin, suurin osa arvailusta katoaa.

Aloita kuljetuksesta. Jos portti 445 ei koskaan saavuta palvelinta, mikään Samba-asetus ei merkitse mitään, ja kaappaus palvelimen rajapinnalla ratkaisee sen sekunneissa. Seuraavaksi tulee isännän palomuuri itse palvelimella, joka voi pudottaa sallitun lähteen ennen kuin smbd edes näkee sen. Vasta kun nämä kaksi ovat menneet läpi, sallittujen luettelosta tulee ehdokas. Tunnistautuminen tulee viimeisenä, koska epäonnistunut kirjautuminen ja isännän hylkäys näyttävät palvelimen lokissa erilaisilta, vaikka asiakas raportoisi molemmat käytön estoksi. Järjestys on tärkeämpi kuin työkalut, koska jokaisella kerroksella on komento, joka vastaa siihen.

Etsi lähdeosoite, jonka smbd todella näkee

Reititetyssä käytössä palvelin näkee yleensä asiakkaan osoitteen VPN-altaasta. Kun yhdyskäytävässä on lähdemuunnos, se näkee sen sijaan yhdyskäytävän LAN-osoitteen, ja jokainen kyseisen yhdyskäytävän takana oleva asiakas muuttuu erottamattomaksi.

Tämä ero ratkaisee, onko sallittujen luettelon merkintä käytäntö vai aukko. Muunnetun yhdyskäytäväosoitteen salliminen päästää sisään kaikki sen takana olevat, mitä asiakaskohtainen sääntö harvoin halusi ilmaista. Lue lähde palvelimelta, älä asiakkaan omasta käsityksestä osoitteestaan. Kaappaus palvelimen rajapinnalla on halvin tapa nähdä se, ja sama kaappaus todistaa, saapuiko paketti lainkaan. Rajoita kaappaus pakettimäärällä ja lisää isäntäsuodatin, kun tiedät mitä asiakasta seuraat. Samban istuntotaulukko on vastauksen toinen puoli: tulosteessa smbstatus -b jokaisen istuntorivin asiakassarake on se vastapuoli, jonka smbd kirjasi, ja se on nopein vahvistus osoitteelle, joka todella saavutti palvelun.

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

Lue sallittujen luetteloa niin kuin Samba lukee sen

hosts allow -asetus ottaa luettelon osoitteista, verkoista tai nimistä, ja se voi esiintyä yleisesti tai jaon sisällä. Kaksi merkintää, jotka näyttävät sinusta samanarvoisilta, eivät välttämättä ole sitä jäsentimelle, joten tehokas kokoonpano on se, mitä pitää tarkastella. Se tarkoittaa yhdistettyä näkymää, ei tiedostoa, jota satuin muokkaamaan.

Havainnollistava etuliitepari näyttää alla olevalta riviltä, ja se on esimerkki eikä jo olevien merkintöjen korvaaja. Säilytä ne hallinnolliset ja sovellusasiakkaat, jotka yhdistävät tänään laillisesti, ja lue kaikki kieltoluettelot samalla kertaa. Hyväksytäänkö isäntä, riippuu käytännöstä kokonaisuutena, joten testaa täsmällistä asiakasta sen sijaan että pohtisit etusijaa. Isäntälupa ei kerro mitään jako-oikeuksista tai tiedostojärjestelmän tiloista, jotka ovat erillisiä portteja. Testityökalujen onnistuminen tarkoittaa, että isäntäkäytäntö hyväksyy kyseisen lähteen, eikä mitään sen enempää.

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

Muuta tiedostoa, joka säilyy uudelleenkäynnistyksen yli

Tavallisella Linux-isännällä kokoonpanopolku on kiinteä ja palvelu lukee sen uudelleen käynnistyksen yhteydessä. Reitittimessä tai laitteessa käynnissä oleva smb.conf luodaan usein käynnistyksen yhteydessä, ja käsin tehty muutos katoaa seuraavassa uudelleenkäynnistyksessä. Käytä laitteen tuettua mukautusmekanismia, joka on yleensä oma kokoonpanotiedostonsa.

Kiusaus tässä vaiheessa on väläyttää vaihtoehtoinen laiteohjelmisto, koska yksi ketju kertoi sen toimivan. Se on suuri muutos pieneen käytäntöongelmaan, ja se vie laitteen pois tuetusta tilastaan. Tunnista ensin tuettu hallintakeino, koska useimmat laitteet näyttävät sallittujen luettelon oman käyttöliittymänsä kautta. Jos ne todella eivät tee niin, tuo rajoitus on argumentti eri laitteistolle eikä tukemattomalle koosteelle.

Kirjaa, mitä tiedostoa muutit ja mikä luo sen uudelleen, jotta seuraava henkilö ei toista diagnoosia.

Testaa yhtä sallittua ja yhtä suljettua asiakasta

Testaa molemmat tulokset, älä vain sitä, jonka halusit. Yhdistävä sallittu asiakas todistaa, että muutos toimii; yhä hylätty suljettu asiakas todistaa, ettei sääntö yksinkertaisesti avannut kaikkea.

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

Kun yhteys ei koskaan saavuta smbd:tä, vastaus on reitityksessä tai palvelimen palomuurissa. Jos isäntä on sallittu ja kirjautuminen epäonnistuu, ongelma on identiteetissä eikä sallittujen luettelon laajentaminen auta. Pidä diagnostiikkatuloste yksityisenä, koska yksityiskohtainen Samba-loki voi paljastaa jakopolkuja ja tilinimiä. Muuta yhtä kerrosta kerrallaan, muuten seuraava tulos ei kerro sinulle mitään.

Aiheeseen liittyvät artikkelit