Kaip įdiegti „Samba“ „Ubuntu“ failų bendrinimui sistemoje „Windows“
„Samba“ yra nemokama/atviro kodo ir populiariai naudojama programinė įranga, skirta dalytis failais ir spausdinimo paslaugomis tarp „Unix“ tipo sistemų, įskaitant „Linux“ ir „Windows“ kompiuterius tame pačiame tinkle.
Šiame vadove parodysime, kaip nustatyti „Samba4“ pagrindiniam failų bendrinimui tarp „Ubuntu“ sistemų ir „Windows“ mašinų. Mes apimsime du galimus scenarijus: anoniminį (nesaugų) ir saugų failų bendrinimą.
Atkreipkite dėmesį, kad pradedant nuo 4.0 versijos, „Samba“ galima naudoti kaip „Active Directory“ (AD) domeno valdiklį (DC). Mes sukūrėme specialią „Samba4 Active Directory“ domeno valdiklio nustatymo seriją, kurią sudaro pagrindinės „Ubuntu“, „CentOS“ ir „Windows“ temos.
- „Samba4 Active Directory“ domeno valdiklio nustatymas
Įdiekite ir sukonfigūruokite „Samba“ „Ubuntu“
„Samba“ serverį galima įdiegti iš numatytųjų „Ubuntu“ saugyklų naudojant „apt“ paketų tvarkyklės įrankį, kaip parodyta.
$ sudo apt install samba samba-common python-dnspython
Kai buvo įdiegtas „Samba“ serveris, atėjo laikas sukonfigūruoti „Samba“ serverį taip: nesaugus anoniminis ir saugus failų bendrinimas.
Tam turime redaguoti pagrindinį „Samba“ konfigūracijos failą /etc/samba/smb.conf (kuris paaiškina įvairias konfigūravimo direktyvas).
Pirmiausia sukurkite atsarginę „Samba“ konfigūracijos failo kopiją taip.
$ sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.orig
Vėliau mes sukonfigūruosime „Samba“ anoniminėms ir saugioms failų bendrinimo paslaugoms, kaip paaiškinta toliau.
Svarbu: prieš pereidami toliau, įsitikinkite, kad „Windows“ mašina yra toje pačioje darbo grupėje, kuri bus sukonfigūruota „Ubuntu“ serveryje.
Prisijunkite prie „Windows“ kompiuterio, dešiniuoju pelės mygtuku spustelėkite „Šis kompiuteris“ arba „Mano kompiuteris“ → Ypatybės → Išplėstiniai sistemos nustatymai → Kompiuterio pavadinimas, kad patikrintumėte darbo grupę.
Arba atidarykite komandų eilutę ir peržiūrėkite ją vykdydami žemiau esančią komandą ir ieškokite „darbo vietos domeno“.
>net config workstation
Kai žinosite savo „Windows“ darbo grupės laiką judėti į priekį ir sukonfigūruoti „Samba“ serverį dalytis failais.
Anonimas „Samba“ failų bendrinimas
Pirmiausia sukurkite bendrą samba katalogą, kuriame bus saugomi failai.
$ sudo mkdir -p /srv/samba/anonymous_shares
Tada kataloge nustatykite reikiamus leidimus.
$ sudo chmod -R 0775 /srv/samba/anonymous_shares $ sudo chown -R nobody:nogroup /srv/samba/anonymous_shares
Dabar atidarykite konfigūracijos failą.
$ sudo vi /etc/samba/smb.conf OR $ sudo nano /etc/samba/smb.conf
Tada redaguokite arba keiskite direktyvos nustatymus, kaip aprašyta toliau.
global] workgroup = WORKGROUP netbios name = ubuntu security = user [Anonymous] comment = Anonymous File Server Share path = /srv/samba/anonymous_shares browsable =yes writable = yes guest ok = yes read only = no force user = nobody
Dabar patikrinkite dabartinius „samba“ nustatymus vykdydami toliau pateiktą komandą.
$ testparm
Load smb config files from /etc/samba/smb.conf rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384) WARNING: The "syslog" option is deprecated Processing section "[printers]" Processing section "[print$]" Processing section "[Shares]" Loaded services file OK. Server role: ROLE_STANDALONE Press enter to see a dump of your service definitions # Global parameters [global] netbios name = UBUNTU server string = %h server (Samba, Ubuntu) server role = standalone server map to guest = Bad User obey pam restrictions = Yes pam password change = Yes passwd program = /usr/bin/passwd %u passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* . unix password sync = Yes syslog = 0 log file = /var/log/samba/log.%m max log size = 1000 dns proxy = No usershare allow guests = Yes panic action = /usr/share/samba/panic-action %d idmap config * : backend = tdb [printers] comment = All Printers path = /var/spool/samba create mask = 0700 printable = Yes [print$] comment = Printer Drivers path = /var/lib/samba/printers browseable = No [Anonymous] comment = Anonymous File Server Share path = /srv/samba/anonymous_shares force user = nobody read only = No guest ok = Yes
Tada paleiskite „Samba“ paslaugas iš naujo, kad atliktumėte aukščiau nurodytus pakeitimus.
$ sudo systemctl restart smbd [Systemd] $ sudo service smbd restart [Sys V]
Eikite į „Windows“ kompiuterį ir „Windows Explorer“ lange atidarykite „Tinklas“. Spustelėkite „Ubuntu“ pagrindinį kompiuterį (mūsų atveju - „TECMINT“) arba bandykite prieiti prie „Samba“ serverio naudodami jo IP adresą.
\2.168.43.168
Pastaba: Norėdami gauti savo „Ubuntu“ serverio IP adresą, naudokite komandą „ifconfig“.
Tada atidarykite „Anonymous“ katalogą ir pabandykite pridėti failų ten, kad galėtumėte jais dalytis su kitais vartotojais.
Saugus „Samba“ failų bendrinimas
Norėdami apsaugoti „samba“ bendrinimą slaptažodžiu, turite sukurti grupę „smbgrp“ ir nustatyti kiekvieno vartotojo slaptažodį. Šiame pavyzdyje aš naudoju „aaronkilik“ kaip vartotoją ir slaptažodį kaip „tecmint“.
$ sudo addgroup smbgrp $ sudo usermod aaronkilik -aG smbgrp $ sudo smbpasswd -a aaronkilik
Pastaba: „Samba“ saugos režimas: saugumas = vartotojas reikalauja, kad klientai įvestų vartotojo vardą ir slaptažodį, kad prisijungtų prie bendrinamų elementų.
„Samba“ vartotojo abonementai yra atskirai nuo sistemos abonementų, tačiau galite pasirinkti įdiegti „libpam-winbind“ paketą, kuris naudojamas sistemos vartotojams ir slaptažodžiams sinchronizuoti su „Samba“ vartotojų duomenų baze.
$ sudo apt install libpam-winbind
Tada sukurkite saugų katalogą, kuriame bus laikomi bendri failai.
$ sudo mkdir -p /srv/samba/secure_shares
Tada nustatykite reikiamus leidimus kataloge.
$ sudo chmod -R 0770 /srv/samba/secure_shares $ sudo chown -R root:smbgrp /srv/samba/secure_shares
Dabar atidarykite konfigūracijos failą.
$ sudo vi /etc/samba/smb.conf OR $ sudo nano /etc/samba/smb.conf
Tada redaguokite arba keiskite direktyvos nustatymus, kaip aprašyta toliau.
[Secure] comment = Secure File Server Share path = /srv/samba/secure_shares valid users = @smbgrp guest ok = no writable = yes browsable = yes
Kaip ir anksčiau, vykdykite šią komandą, kad pamatytumėte dabartinius „samba“ nustatymus.
$ testparm
Load smb config files from /etc/samba/smb.conf rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384) WARNING: The "syslog" option is deprecated Processing section "[printers]" Processing section "[print$]" Processing section "[Shares]" Loaded services file OK. Server role: ROLE_STANDALONE Press enter to see a dump of your service definitions # Global parameters [global] netbios name = UBUNTU server string = %h server (Samba, Ubuntu) server role = standalone server map to guest = Bad User obey pam restrictions = Yes pam password change = Yes passwd program = /usr/bin/passwd %u passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* . unix password sync = Yes syslog = 0 log file = /var/log/samba/log.%m max log size = 1000 dns proxy = No usershare allow guests = Yes panic action = /usr/share/samba/panic-action %d idmap config * : backend = tdb [printers] comment = All Printers path = /var/spool/samba create mask = 0700 printable = Yes [print$] comment = Printer Drivers path = /var/lib/samba/printers browseable = No [Anonymous] comment = Anonymous File Server Share path = /srv/samba/anonymous_shares force user = nobody read only = No guest ok = Yes [Secure] comment = Secure File Server Share path = /srv/samba/secure_shares valid users = @smbgrp read only = No
Atlikę aukščiau nurodytas konfigūracijas, iš naujo paleiskite „Samba“ paslaugas, kad pritaikytumėte pakeitimus.
$ sudo systemctl restart smbd [Systemd] $ sudo service smbd restart [Sys V]
Kaip ir anksčiau, „Windows“ kompiuteryje atidarykite „Network“ iš „Windows Explorer“ lango. Spustelėkite Ubuntu pagrindinį kompiuterį (TECMINT mūsų atveju). Toliau galite gauti klaidą, jei ne, pereikite prie kito veiksmo.
Pabandykite pasiekti serverį naudodami jo IP adresą, pvz. \192.168.43.168
kaip šis. Tada įveskite vartotojo aaronkilik kredencialus (vartotojo vardą ir slaptažodį) ir spustelėkite Gerai.
Dabar peržiūrėsite visus bendrinamus katalogus, spustelėkite „Saugus“, kad juos atidarytumėte.
Kai kuriuos failus galite saugiai bendrinti su kitais leidžiamais tinklo vartotojais, įvesdami juos į šį katalogą.
Įjunkite „Samba“ „UFW“ užkardoje „Ubuntu“
Jei jūsų sistemoje yra įjungta/aktyvi UFW užkarda, turite pridėti taisykles, kad „Samba“ galėtų pereiti per jūsų užkardą.
Norėdami tai išbandyti, naudojome tinklo 192.168.43.0 schemą. Vykdykite toliau nurodytas komandas nurodydami savo tinklo adresą.
$ sudo ufw allow proto udp to any port 137 from 192.168.43.0/24 $ sudo ufw allow proto udp to any port 138 from 192.168.43.0/24 $ sudo ufw allow proto tcp to any port 139 from 192.168.43.0/24 $ sudo ufw allow proto tcp to any port 445 from 192.168.43.0/24
Taip pat galite peržiūrėti šiuos naudingus straipsnius apie „Samba“ failų bendrinimą tinkle.
- „Samba4 Active Directory“ domeno valdiklio nustatymas - 1–14 dalys
- Kaip prijungti/atjungti vietinių ir tinklo („Samba“ ir NFS) failų sistemas sistemoje „Linux“
- ACL (prieigos kontrolės sąrašų) naudojimas ir „Samba/NFS Shares“ montavimas
- Kaip ištaisyti „SambaCry“ pažeidžiamumą (CVE-2017-7494) „Linux“ sistemose
Tai viskas! Šiame vadove mes parodėme, kaip nustatyti „Samba4“ anoniminiam ir saugiam failų bendrinimui tarp „Ubuntu“ ir „Windows“ mašinų. Norėdami pasidalinti mintimis su mumis, naudokite toliau pateiktą atsiliepimų formą.