Windows 10 un samba 4 publiski šārētie faili

Jānis Rubļevskis (koko) // 2015. gada 9. septembrī, 14:08 // #Datori

Atnācis ir kārtējais Windows no Microsoft. Nedaudz paskatoties - diezgan smuks un ērts, bet apakšā pilns ar gļukiem. Šoreiz par vienu "uzlabojumu", ar kuru saskāros savā praksē - par publiski pieejamām mapītēm, kuras tīklā dala uz linuxa uzlikts Samba 4 serverītis.

Situācijas apraksts: ir lokāls tīkls, kuram pieslēgts linux serveris, kas darbina Sambu 4.1 (turpmāk tekstā: serveris), ir daudzi Windows datori (Win XP, Win 7, Win 8.1 un nu jau Win 10). Windows datori šajā lokālajā tīklā drīkst piekļūt servera publiski šārētajām mapēm bez autenfitikācijas - mazs uzņēmumiņš ar mazām vajadzībām. Protams, visiem datoriem nav problēmu, izņemot Windows 10.

Secība, kādā atrisināju šo problēmu

1. Sakonfigurējam sambu publiskai šārei

Ir tā, ka ar samba 4 versiju tika atmesta security = share iespēja, pamata konfigurācija manā gadījumā ir šāda (dažas sistēmas konfigurācijas lietas izlaidu, jo tas katram specifiski. Nozīmīgāko ieboldošu.

[global]
    workgroup = BIROJS # šajā workgurpā jābūt visiem lokālā tīkla datoriem
    server string = Samba Server %v 
    hosts allow = 127.0.0.1 192.168.1.0/24 # atļaujam tikai lokālo tīklu
    hosts deny = 0.0.0.0/0 # nogriežam pieeju no  visiem citiem tīkliem
   
    usershare allow guests = yes # teorētiski bez šitā var arī iztikt
    guest ok = yes # atļaujam anonīmu lietotāju piekļuvi
    security = user # šī rinda ir obligāta
    map to guest = bad user # šī rinda arī ir obligāta
   
[dati]
    comment = Public Files
    browseable = yes
    public = yes
    create mode = 0777
    directory mask = 0777
    guest ok = yes
    path = /links/uz/publisko/folderi
    read only = no

2. Windows 10 publiskās šāres atļaušana

Izrādās, ka MicroSoft tomēr nedaudz domā par lietotāju drošību un ir izdomājuši, ka publisko autentifikāciju pieļaut nevajadzētu vispār. Lielākoties es šim viedoklim piekrītu, bet šoreiz ir cits gadījums. Lai šo publisko piekļuvi aļautu, nepieciešams mainīt sistēmas reģistrus. Tātad:

  1. atveram regedit (var atrast win iebūvētajā meklētājā)
  2. atrodam ceļu uz reģistru HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\LanmanWorkstation\Parameters
  3. ja vēl nav (noteikti, ka nebūs), izveidojam jaunu parametru AllowInsecureGuestAuth ar tipu DWORD un atzīmējam to kā 1

Teorētiski ar šiem diviem soļiem būtu jāpietiek. Man pat testa tīklā ar šiem diviem soļiem strādāja. Ja tev vēl nestrādā, tad mans Ilgais ceļš kāpās turpinājās.

3. Windows 10 tīkla adaptera settingu pamainīšana

Izrādās, ka Win 10 vairs nav defaultā iespējots netBIOS over TCP/IP, bet ir tāds pseidorežīms ar nozīmi "A ja nu tomēr, tad ieslēgsim", kas manā gadījumā nenostrādā. Tāpēc jāiet uz Network and Sharing center, jāatrod Adapter settings, jānospiež labā poga uz tava tīkla adaptera un jānospiež Properties. Tad jāatrod sarakstā TCP IP V4 protokols un ar dubultklikšķi jāatver. Tālāk jāspiež poga Advanced, jāizvēlas sadaļa WINS un jāieklikšķina pretī Enable NetBIOS over TCP/IP. Var gadīties, ka tagad tava publiskā šāre strādā, bet, ja tomēr vēl nē, tad turpini.

4. Nesaderīgo sistēmu vardarbīga sapārošana ar čītošanas paņēmieniem

Kad biju nojājies ar visiem iespējamajiem settingiem, izpētījis 10. līmeņa sambas logus un sapratis tikai to, ka protokolus viens otram nosūta pareizos, bet beigās kaut kas vienā pusē atliecas, tad iedomājos mest plinti klūrmos un uztaisīt normālu šāri ar autorizāciju. Lieta tāda, ka, vienreiz autorizējoties (neieklikšķinot, lai atceras paroli), Windows 10 sāka ļoti labi sadarboties ar sambas publiskajām direktorijām. Tālāk soli pa solim manas darbības:

  1. pievienojam sistēmas lietotāju linux serverim, jo (teorētiski) sambai bez tāda lietotāja pie manis norādītā konfiga nevajadzētu strādāt (darbības jāveic ar root lietotāju): useradd testis.
  2. Izveidojam samba lietotāju (arī ar root): smbpasswd -a testis
  3. Laikam jau vajag arī norādīt sambas lietotāja mappingu uz sistēmas lietotāju, kas mūsu gadījumā ir vienādi, tātad failā /etc/samba/smbusers ierakstam tests="testis" (pamaini uz tevis izveidoto lietotājvārdu)
  4. Sakonfigurējam testa šāri sambai, lai samba paprasītu pieejas tam sūda Win 10.
    [tests]
        comment = Nepubliski dati
        browseable = yes
        public = no
        create mode = 0777
        directory mask = 0777
        path = /home/testis
        allowed users = testis
  5. Restartējam sambu un mēģinam piekļūt no windows kastes. Kad paprasa lietotāju un paroli, norādam savus tikko izveidotos kredenšilus. Tagad vajadzētu redzēt arī publiskās mapes un tām normāli piekļūt, labot un piemapot kā tīkla diskus.
  6. Opcionāla sūdu savākšana (garbage collection) - notestēju, ka tagad to Nepublisko failu šāri var no sambas ņemt laukā, jo arī pēc visādiem restartiem un bez tās šāres konfigurācijas, windows 10 spēj normāli piekļūt publiskajām sambas mapēm.

Iespējams, ka ar visu šo es vienkārši esmu sapisies kaut kurā brīdī meistarībā, bet fakts kā tāds, bez visiem četriem soļiem divos dažādos tīklos man neizdevās win 10 sapārot ar sambu bez parolītes. Līdz ar to sanāk, ka problēmu tomēr esmu atrisinājis. Ja gadījumā tava pieredze ir daudz vienkāršāka, tad nepakautrējies man paziņot komentāros, bet neaizmirsti, ka galvenais nosacījums bija publiskā šāre, kas nozīmē, ka piekļuvei jābūt bez paroles.

Komentāri

Paud savu subjektīvo viedokli:

Visi lauki (izņemot interneta vietni) aizpildāmi obligāti!
E-pasts publiski netiks parādīts.
Zinot vairākumu, komentāros tagi netiek atrādīti kā tagi. Linki automātiski pārveidosies par spiežamiem (cerams).
Bloga īpašnieks patur tiesības ļaunus komentārus dzēst vai pārveidot cilvēkiem patīkamākā formā, bet tajā pašā laikā neatbild par komentāru saturu.