Android

Hur man installerar och konfigurerar samba på centos 7

Install and Configure Samba on CentOS 7 ( Require Password )

Install and Configure Samba on CentOS 7 ( Require Password )

Innehållsförteckning:

Anonim

Samba är en gratis och öppen källkod för implementering av SMB / CIFS-nätverksfildelningsprotokollet som gör det möjligt för slutanvändare att komma åt filer, skrivare och andra delade resurser.

I den här tutorialen kommer vi att visa hur man installerar Samba på CentOS 7 och konfigurerar det som en fristående server för att tillhandahålla fildelning över olika operativsystem över ett nätverk.

Vi skapar följande Samba-aktier och användare.

användare:

  • sadmin - En administrativ användare med läs- och skrivåtkomst till alla delningar. josh - En vanlig användare med sin egen privata fildelning.

aktier:

  • användare - Denna delning är tillgänglig med läs- / skrivbehörigheter för alla användare. josh - Denna delning är tillgänglig med läs / skrivbehörigheter endast av användare josh och sadmin.

Fildelningarna är tillgängliga från alla enheter i ditt nätverk. Senare i handledning kommer vi också att ge detaljerade instruktioner om hur du ansluter till Samba-servern från Linux-, Windows- och macOS-klienter.

förutsättningar

Innan du börjar, se till att du är inloggad på ditt CentOS 7-system som en användare med sudo-privilegier.

Installera Samba på CentOS

Samba är tillgängligt från de vanliga CentOS-lagren. För att installera det på ditt CentOS-system kör du följande kommando:

sudo yum install samba samba-client

När installationen är klar, starta Samba-tjänsterna och låt dem starta automatiskt vid systemstart:

sudo systemctl start smb.service sudo systemctl start nmb.service

sudo systemctl enable smb.service sudo systemctl enable nmb.service

smbd tjänsten tillhandahåller fildelning och utskriftstjänster och lyssnar på TCP-portarna 139 och 445. nmbd tjänsten tillhandahåller NetBIOS via IP-namngivningstjänster till klienter och lyssnar på UDP-port 137.

Konfigurera brandväggen

Nu när Samba är installerat och körs på din CentOS-maskin måste du konfigurera din brandvägg och öppna de nödvändiga portarna. För att göra det, kör följande kommandon:

firewall-cmd --permanent --zone=public --add-service=samba firewall-cmd --zone=public --add-service=samba

Skapa Samba-användare och katalogstruktur

För enklare underhåll och flexibilitet istället för att använda standardkatalogerna ( /home/user ) kommer alla Samba-kataloger och data att finnas i katalogen /samba .

Börja med att skapa /samba katalogen:

sudo mkdir /samba

Skapa en ny grupp med namnet sambashare . Senare lägger vi till alla Samba-användare i denna grupp.

sudo groupadd sambashare

Ställ in /samba sambashare till sambashare :

sudo chgrp sambashare /samba

Samba använder Linux-användare och grupptillståndssystem men har en egen autentiseringsmekanism som är separat från standard Linux-autentisering. Vi skapar användarna med det vanliga Linux- useradd verktyget och ställer sedan in lösenordet med smbpasswd verktyget.

Som vi nämnde i inledningen skapar vi en vanlig användare som har åtkomst till sin privata fildelning och ett administratörskonto med läs- och skrivåtkomst till alla delar på Samba-servern.

Skapa Samba-användare

För att skapa en ny användare med namnet josh , använd följande kommando:

sudo useradd -M -d /samba/josh -s /usr/sbin/nologin -G sambashare josh

useradd alternativen har följande betydelser:

  • -M skapa inte användarens hemkatalog. Vi skapar manuellt den här katalogen. -d /samba/josh - ställ användarens hemkatalog till /samba/josh . -s /usr/sbin/nologin - inaktivera -s /usr/sbin/nologin för den här användaren. -G sambashare - lägg till användaren i sambashare gruppen.

Skapa användarens hemkatalog och ställ josh till användarjosh och grupp sambashare :

sudo mkdir /samba/josh sudo chown josh:sambashare /samba/josh

Följande kommando lägger till setgid-biten i /samba/josh katalogen så att de nyligen skapade filerna i den här katalogen ärver gruppen för överordnad katalog. Det här sättet, oavsett vilken användare som skapar en ny fil, kommer filen att ha sambashare av sambashare . Om du till exempel inte ställer in katalogens behörigheter till 2770 och sadmin skapar en ny fil kommer användaren josh inte att kunna läsa / skriva till den här filen.

sudo chmod 2770 /samba/josh

Lägg till josh användarkontot i Samba-databasen genom att ställa in användarlösenordet:

sudo smbpasswd -a josh

Du blir ombedd att ange och bekräfta användarlösenordet.

New SMB password: Retype new SMB password: Added user josh.

När lösenordet har ställts in aktiverar du Samba-kontot genom att skriva:

sudo smbpasswd -e josh

Enabled user josh.

För att skapa en annan användare, upprepa samma process som när du skapar användarjosh.

Låt oss nu skapa en användare och grupp sadmin . Alla medlemmar i denna grupp har administrativa behörigheter. Senare om du vill bevilja administrativa behörigheter till en annan användare lägger du bara till den användaren i sadmin .

Skapa den administrativa användaren genom att skriva:

sudo useradd -M -d /samba/users -s /usr/sbin/nologin -G sambashare sadmin

Kommandot ovan kommer också att skapa en grupp sadmin och lägga till användaren till både sadmin och sambashare grupper.

Ställ in ett lösenord och aktivera användaren:

sudo smbpasswd -a sadmin sudo smbpasswd -e sadmin

Skapa sedan katalogen Users dela:

sudo mkdir /samba/users

Ställ in sadmin till användarsadmin och grupp sambashare :

sudo chown sadmin:sambashare /samba/users

Den här katalogen är tillgänglig för alla autentiserade användare. Följande kommando konfigurerar skriv / läsåtkomst till medlemmar i sambashare gruppen i /samba/users katalogen:

sudo chmod 2770 /samba/users

Konfigurera Samba-aktier

Öppna Samba-konfigurationsfilen och bifoga avsnitten:

sudo nano /etc/samba/smb.conf /etc/samba/smb.conf

path = /samba/users browseable = yes read only = no force create mode = 0660 force directory mode = 2770 valid users = @sambashare @sadmin path = /samba/josh browseable = no read only = no force create mode = 0660 force directory mode = 2770 valid users = josh @sadmin

Alternativen har följande betydelser:

  • och - Namnen på aktierna som du kommer att använda när du loggar in. path - Sökvägen till delningen. browseable - Huruvida aktien ska listas i listan över tillgängliga aktier. Genom att sätta till no andra användare kommer inte att kunna se delningen. read only - oavsett om de användare som anges i den valid users kan skriva till denna delning. force create mode - Ställer in behörigheterna för de nyligen skapade filerna i denna delning. force directory mode - Ställer in behörigheter för de nyligen skapade katalogerna i denna delning. valid users - En lista över användare och grupper som har åtkomst till delningen. Grupper är förinställda med symbolen @ .

Mer information om tillgängliga alternativ finns på dokumentationssidan för Samba-konfigurationsfilen.

När du är klar, starta om Samba-tjänsterna med:

sudo systemctl restart smb.service sudo systemctl restart nmb.service

I följande avsnitt visar vi dig hur du ansluter till en Samba-delning från Linux-, macOS- och Windows-klienter.

Ansluter till en Samba Share från Linux

Linux-användare kan komma åt samba-delen från kommandoraden med filhanteraren eller montera Samba-aktien.

Använda smbclient-klienten

smbclient är ett verktyg som låter dig komma åt Samba från kommandoraden. smbclient paketet är inte förinstallerat på de flesta Linuxdistros, så du måste installera det med din distributionspaketchef.

För att installera smbclient på Ubuntu och Debian kör:

sudo apt install smbclient

smbclient installerar du smbclient på CentOS och Fedora run:

sudo yum install samba-client

Syntaxen för åtkomst till en Samba-aktie är följande:

mbclient //samba_hostname_or_server_ip/share_name -U username

Till exempel för att ansluta till en josh heter josh på en Samba-server med IP-adressen 192.168.121.118 som användarjosh josh du köra:

smbclient //192.168.121.118/josh -U josh

Du blir ombedd att ange användarlösenordet.

Enter WORKGROUP\josh's password:

När du anger lösenordet kommer du att loggas in i Samba kommandoradsgränssnitt.

Try "help" to get a list of possible commands. smb: \>

Montering av Samba-aktien

För att installera en Samba-delning på Linux först måste du installera cifs-utils paketet.

På Ubuntu och Debian kör:

sudo apt install cifs-utils

På CentOS och Fedora kör:

sudo yum install cifs-utils

Skapa sedan en monteringspunkt:

sudo mkdir /mnt/smbmount

Montera delningen med följande kommando:

sudo mount -t cifs -o username=username //samba_hostname_or_server_ip/sharename /mnt/smbmount

Till exempel för att montera en josh heter josh på en Samba-server med IP-adressen 192.168.121.118 som användarjosh till /mnt/smbmount monteringspunkten du skulle köra:

sudo mount -t cifs -o username=josh //192.168.121.118/josh /mnt/smbmount

Du blir ombedd att ange användarlösenordet.

Password for josh@//192.168.121.118/josh: ********

Använda GUI

Files, standardfilhanteraren i Gnome har ett inbyggt alternativ för åtkomst till Samba-aktier.

  1. Öppna filer och klicka på "Andra platser" i sidofältet. I "Anslut till server", ange adressen för Samba-aktien i följande format smb://samba_hostname_or_server_ip/sharename Klicka på "Connect" och följande skärm kommer att visas:

Slutsats

I denna handledning har du lärt dig hur du installerar en Samba-server på CentOS 7 och skapar olika typer av delade och användare. Vi har också visat dig hur du ansluter till Samba-servern från Linux-, macOS- och Windows-enheter.

samba centos