Kuinka asentaa Samba Ubuntun tiedostojen jakamiseen Windowsissa


Samba on ilmainen/avoimen lähdekoodin ja yleisesti käytetty ohjelmisto tiedostojen ja tulostuspalvelujen jakamiseen Unix-tyyppisten järjestelmien, mukaan lukien Linux- ja Windows-isännät, välillä samassa verkossa.

Tässä oppaassa näytetään, kuinka Samba4 asetetaan perustiedostojen jakamista varten Ubuntu-järjestelmien ja Windows-koneiden välillä. Käsittelemme kahta mahdollista skenaariota: nimettömän (suojaamaton) ja suojatun tiedostojen jakamisen.

Huomaa, että versiosta 4.0 alkaen Sambaa voidaan käyttää Active Directory (AD) -toimialueohjaimena (DC). Olemme järjestäneet erityisen sarjan Samba4 Active Directory -toimialueen ohjaimen asentamista varten, joka sisältää keskeiset aiheet Ubuntussa, CentOS: ssa ja Windowsissa.

  1. Samba4 Active Directory -toimialueen ohjaimen määrittäminen

Asenna ja määritä Samba Ubuntussa

Samba-palvelin on asennettavissa Ubuntun oletusvarastoista apt-paketinhallintatyökalulla kuvan osoittamalla tavalla.

$ sudo apt install samba samba-common python-dnspython

Kun samba-palvelin on asennettu, nyt on aika määrittää samba-palvelin seuraavasti: suojaamaton anonyymi ja turvallinen tiedostojen jakaminen.

Tätä varten meidän on muokattava Samba-päätiedostotiedostoa /etc/samba/smb.conf (joka selittää erilaisia kokoonpanodirektiivejä).

Varmuuskopioi ensin alkuperäinen samba-määritystiedosto seuraavasti.

$ sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.orig

Sen jälkeen jatkamme samban määrittämistä nimettömille ja suojatuille tiedostojen jakamispalveluille alla kuvatulla tavalla.

Tärkeää: Ennen kuin jatkat siirtymistä, varmista, että Windows-kone on samassa työryhmässä, joka määritetään Ubuntu-palvelimella.

Kirjaudu sisään Windows-koneellesi, napsauta hiiren kakkospainikkeella ”Tämä tietokone” tai ”Oma tietokone” → Ominaisuudet → Järjestelmän lisäasetukset → Tietokoneen nimi vahvistaaksesi työryhmän.

Vaihtoehtoisesti voit avata komentokehotteen ja tarkastella sitä suorittamalla alla olevan komennon ja etsimällä "työaseman toimialue".

>net config workstation

Kun tiedät, että Windows-työryhmäsi on aika siirtyä eteenpäin ja määrittää samba-palvelin tiedostojen jakamista varten.

Nimetön Samba-tiedostojen jakaminen

Aloita luomalla ensin jaettu samba-hakemisto, johon tiedostot tallennetaan.

$ sudo mkdir -p /srv/samba/anonymous_shares

Määritä sitten tarvittavat oikeudet hakemistoon.

$ sudo chmod -R 0775 /srv/samba/anonymous_shares
$ sudo chown -R nobody:nogroup /srv/samba/anonymous_shares

Avaa nyt määritystiedosto.

$ sudo vi /etc/samba/smb.conf
OR
$ sudo nano /etc/samba/smb.conf

Muokkaa tai muokkaa seuraavaksi direktiiviasetuksia alla kuvatulla tavalla.

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

Tarkista nyt nykyiset samba-asetukset suorittamalla alla oleva komento.

$ 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

Käynnistä sitten Samba-palvelut uudelleen yllä olevien muutosten tekemiseksi.

$ sudo systemctl restart smbd   [Systemd]
$ sudo service smbd restart     [Sys V]

Siirry Windows-koneeseen ja avaa Verkko Windowsin Resurssienhallinta-ikkunasta. Napsauta Ubuntu-isäntää (TECMINT meidän tapauksessamme) tai yritä muuten käyttää samba-palvelinta sen IP-osoitteen avulla.

\2.168.43.168

Huomaa: Käytä ifconfig-komentoa saadaksesi Ubuntu-palvelimen IP-osoitteen.

Avaa sitten Anonyymi-hakemisto ja yritä lisätä tiedostoja sinne jakamaan muiden käyttäjien kanssa.

Suojattu Samba-tiedostojen jakaminen

Samba-jaon salasanasuojaamiseksi sinun on luotava ryhmä "smbgrp" ja asetettava salasana kullekin käyttäjälle. Tässä esimerkissä käytän käyttäjänä aaronkilik ja salasanana “tecmint”.

$ sudo addgroup smbgrp
$ sudo usermod aaronkilik -aG smbgrp
$ sudo smbpasswd -a aaronkilik

Huomaa: Samban suojaustila: security = user vaatii asiakkaita antamaan käyttäjänimen ja salasanan, jotta he voivat muodostaa yhteyden jakamiseen.

Samban käyttäjätilit ovat erillään järjestelmätileistä, mutta voit kuitenkin asentaa libpam-winbind-paketin, jota käytetään järjestelmän käyttäjien ja salasanojen synkronointiin samba-käyttäjätietokannan kanssa.

$ sudo apt install libpam-winbind

Luo sitten suojattu hakemisto, johon jaetut tiedostot säilytetään.

$ sudo mkdir -p /srv/samba/secure_shares

Määritä seuraavaksi tarvittavat oikeudet hakemistoon.

$ sudo chmod -R 0770 /srv/samba/secure_shares
$ sudo chown -R root:smbgrp /srv/samba/secure_shares

Avaa nyt määritystiedosto.

$ sudo vi /etc/samba/smb.conf
OR
$ sudo nano /etc/samba/smb.conf

Muokkaa tai muokkaa seuraavaksi direktiiviasetuksia alla kuvatulla tavalla.

[Secure]
	comment = Secure File Server Share
	path =  /srv/samba/secure_shares
	valid users = @smbgrp
	guest ok = no
	writable = yes
	browsable = yes

Aivan kuten aiemmin, suorita tämä komento nähdäksesi nykyiset samba-asetukset.

$ 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

Kun olet suorittanut yllä olevat määritykset, käynnistä Samba-palvelut uudelleen muutosten toteuttamiseksi.

$ sudo systemctl restart smbd   [Systemd]
$ sudo service smbd restart     [Sys V]

Kuten aiemmin, avaa Windows-koneessa "Verkko" Windowsin Resurssienhallinta-ikkunasta. Napsauta Ubuntu-isäntää (TECMINT meidän tapauksessamme). Saatat saada alla olevan virheen, ellei siirry seuraavaan vaiheeseen.

Yritä käyttää palvelinta sen IP-osoitteen avulla, esim. \\ 192.168.43.168 näin. Syötä sitten käyttäjän aaronkilik käyttäjätiedot (käyttäjänimi ja salasana) ja napsauta OK.

Näet nyt kaikki jaetut hakemistot, avaa se napsauttamalla Suojattu.

Voit jakaa joitain tiedostoja turvallisesti verkon muiden sallittujen käyttäjien kanssa pudottamalla ne tähän hakemistoon.

Ota Samba käyttöön UFW-palomuurissa Ubuntussa

Jos järjestelmässäsi on käytössä/aktiivinen UFW-palomuuri, sinun on lisättävä säännöt, jotta Samba voi kulkea palomuurisi läpi.

Tämän testaamiseksi olemme käyttäneet 192.168.43.0 -verkkokaaviota. Suorita alla olevat komennot ja määritä verkko-osoitteesi.

$ 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

Voit myös tutustua näihin hyödyllisiin artikkeleihin, jotka koskevat Samba-tiedostojen jakamista verkossa.

  1. Samba4 Active Directory -toimialueen ohjaimen määrittäminen - osa 1-14
  2. Paikallisten ja verkkotiedostojärjestelmien (Samba & NFS) asentaminen/irrottaminen Linuxissa
  3. ACL-luetteloiden (kulunvalvontaluettelot) käyttö ja Samba/NFS-osakkeiden liittäminen
  4. SambaCry-haavoittuvuuden (CVE-2017-7494) korjaaminen Linux-järjestelmissä

Siinä kaikki! Tässä oppaassa näytimme, kuinka Samba4 asetetaan anonyymille ja turvalliselle tiedostojen jakamiselle Ubuntu- ja Windows-koneiden välillä. Käytä alla olevaa palautelomaketta jakamaan ajatuksia kanssamme.