Skapa ett hemnätverk med Samba för enheter som kör Windows, Linux, Android OS. Samba och Windows filserver för Windows nätverksmappdelning Ubuntu


Linux är ett utmärkt operativsystem, men vi kan inte komma bort från Windows och inte heller från oss. Fönster kommer alltid att omge oss - oavsett om det är hemma, på ett företagsnätverk eller på ett internetkafé. Vi måste hela tiden utbyta dokument med Windows-datorer - trots allt är det inte alla användare som föredrar att arbeta i Linux. Att ha till ditt förfogande en server på Linux , i alla fall kommer det att finnas ett behov av att interagera med Windows-datorer, så vi kommer att prata om att ansluta Linux till Microsofts nätverk.

Installerar Samba

För att installera Samba måste vi installera paketen samba och samba-klient. Det är också lämpligt att installera smbfs-paketet. Dessutom kommer systemet att uppdatera samba-common-paketet, som kanske redan är installerat på systemet. Alla mina manipulationer kommer att utföras på Ubuntu 10.04, de största skillnaderna från andra distributioner är installationsmetoden. För Ubuntu via konsolen, så här:

$ sudo apt - skaffa installera samba

Eller genom att använda Synaptic-pakethanteraren, vilket är vad jag gjorde, det här alternativet visade sig vara bekvämare för mig, eftersom jag kunde välja de paket som jag behövde från listan, dessa var:

    samba

    smbclient

    samba-vanligt

Om du någonsin har använt en annan Linux-distribution är du förmodligen bekant med programmet LinNeighborhood. Detta är ett grafiskt program som låter dig se Windows nätverksresurser. Det finns inget behov av det i Ubuntu. För det första låter vanliga GNOME-verktyg dig bläddra i Windows-nätverk. Och för det andra, bara för skojs skull, installerade jag LinNeighborhood-programmet från ett av Ubuntu-förråden. Det visade sig att detta program, hittat av Synaptic, inte alls är användbart (problem med lokalisering). Tja, okej, det är vettigt att ta reda på om det finns utmärkta standardverktyg som redan fungerar.

Grundläggande Samba-inställning

I detta skede kommer vi att anta att verktyget är installerat. Sambas huvudsakliga konfigurationsfil är /etc/samba/smb.conf. Du måste öppna den och ändra flera parametrar. Den första är arbetsgrupp - den anger namnet (som du väljer) på arbetsgruppen eller NT-domänen:

ARBETSGRUPP = MyHomeGroup

Du kan också ställa in kommentarsparametern - det här är en beskrivning av din dator:

kommentar = Min Linux-dator

Ställ in säkerhetsparametern. Om nätverket är klient/server måste du välja serverparametern och ompeer-to-peer-nätverk (dvs. ett nätverk utan en dedikerad server), då måste du välja användare eller dela:

säkerhet = andel

Ställ in gästkontots namn så här:

gästkonto = gäst

Du måste också konfigurera kodningarna:

klientkodtabell = 866

teckenuppsättning = utf8

För att få Samba att fungera snabbare, ställ in följande alternativ:

socket alternativ = TCP_NO FÖRDRÖJNING SO_RCVBUF=8192 SO_SNDBUF=8192

dns proxy = nej

Gränssnittsparametern anger de gränssnitt som Samba-tjänsten ska köras på. Det är nödvändigt att specificera gränssnitten som ansluter vår maskin till Windows-nätverk:

gränssnitt = 192.168.0.22/24

Konfigurera andelar

Nu återstår det att konfigurera resurserna som vi vill tillhandahålla för allmänt bruk, det här är avsnittet [ offentlig].

# delad katalog

kommentar = Offentlig katalog

# sökväg

sökväg = /var/samba

# inte bara läsning

endast läs = nej

# tillåt skrivning

skrivbar = ja

# tillåt gäståtkomst

gäst ok = ja

# tillåt kataloginnehåll att ses

bläddringsbar = ja

I det här fallet kommer den delade resursen på vår dator att vara katalogen /var/samba (den måste skapas, eftersom det inte finns någon sådan katalog på systemet som standard). Andra användare kommer att kunna skriva in sina filer i den (endast läs=nej, skrivbar=ja), och naturligtvis kommer de att kunna läsa dem (bläddringsbar=ja). Att verifiera användarnamn och lösenord för att komma åt resursen är inte nödvändigt (gäst ok=ja) - så kallad gäståtkomst används. Kommentaren "Public Directory" kommer att ses av andra Windows-nätverksanvändare när de tittar på resurserna på vår dator.

Om det finns ett behov av att ge allmän åtkomst ("dela") till användarnas hemkataloger, gå sedan till avsnittet;. Avkommentera alla rader som kommenteras ut med semikolon före raden;. T . e. det ska se ut så här:

kommentar = Hemkataloger

bläddringsbar = nej

giltiga användare = %S

skrivbar = nej

skapa mask = 0600

katalogmask = 0700

För närvarande kommer användarkataloger inte att vara synliga i listan över delade resurser du kan komma åt dem på \\server\användarnamn . Till exempel \\server\petya. Om du vill att användarresurser ska vara synliga ställer du in parametern bläddringsbar till ja:

bläddringsbar = ja

Efter alla ändringar, spara konfigurationsfilen och kör (eller starta om) Samba:

$ sudo /etc/init.d/samba start

Visa nätverksresurser i Windows

Du kan se Windows nätverksresurser med hjälp av programmet smbclient, men det fungerar i textläge, så det är inte helt bekvämt att använda. Det är mycket bekvämare att använda en filläsare för att visa nätverksresurser. Du kan göra detta med hjälp av menyn Övergång | Anslut till server...

Samba optimeringshemligheter

Låt oss nu prata om hur man får Samba att fungera lite snabbare. Om du öppnar smb.conf-konfigurationsfilen hittar du parametern wide links i den. Installera den aldrig i Nej ! Detta kommer att avsevärt minska Samba-prestandan. Tvärtom måste du ställa in den på ja (om parametern breda länkar var inaktiverad tidigare), vilket kommer att förbättra prestandan avsevärt.

Parametern för breda länkar avgör hur Samba kommer att följa symboliska länkar. Om breda länkar=nej, kommer Samba inte att följa symboliska länkar utanför det exporterade omfånget. Samba följer först den symboliska länken och utför sedan vad som kallas en katalogsökväg (ett systemanrop som bestämmer var länken slutar). Denna operation involverar 6 fler systemanrop än om breda länkar=ja. Med tanke på att det finns många liknande operationer som görs, minskar sambas prestanda med cirka 30 % av att inaktivera breda länkar.

Den huvudsakliga Samba-konfigurationsfilen är /etc/samba/smb.conf. Den initiala konfigurationsfilen har ett betydande antal kommentarer för att dokumentera de olika konfigurationsdirektiven.

Alla möjliga alternativ ingår inte i standardinställningsfilen. Se manual man smb.conf eller Samba FAQ för mer information.

1. Ändra först följande nyckel/värdepar i avsnittet filen /etc/samba/smb.conf:

Arbetsgrupp = EXEMPEL ... säkerhet = användare

Parameter säkerhet ligger mycket lägre i sektionen och kommenteras som standard. Byt även ut EXEMPEL till något mer lämpligt för din omgivning.

2. Skapa ett nytt avsnitt i slutet av filen eller avkommentera ett av exemplen för katalogen som du vill dela:

Kommentar = Ubuntu File Server Share sökväg = /srv/samba/share bläddringsbar = ja gäst ok = ja skrivskyddad = nej skapa mask = 0755

    kommentar: En kort beskrivning av den delade resursen. Används för din bekvämlighet.

    väg: sökväg till den delade katalogen.

    Det här exemplet använder /srv/samba/sharename eftersom, enligt File System Hierarchy Standard (FHS), är /srv-katalogen där all data relaterad till en given webbplats ska finnas. Tekniskt sett kan en Samba-resurs placeras var som helst i filsystemet där begränsningar för filåtkomst tillåter, men att följa standarder rekommenderas.

    bläddringsbar: Tillåter Windows-klienter att visa innehållet i en delad katalog med Windows Explorer.

    gäst okej: Tillåter klienter att ansluta till den delade resursen utan att ange ett lösenord.

    endast läs: Bestämmer om resursen är tillgänglig med skrivskyddad eller skrivbehörighet. Skrivbehörigheter är endast tillgängliga när du anger Nej, som visas i detta exempel. Om värdet ja, då kommer åtkomsten till resursen att vara skrivskyddad.

    skapa mask: Definierar vilka åtkomsträttigheter som kommer att ställas in för nya filer som skapas.

3. Nu när Samba är konfigurerat måste du skapa en katalog och ställa in behörigheter för den. Ange i terminalen:

Sudo mkdir -p /srv/samba/share sudo chown nobody.nogroup /srv/samba/share/

parameter -s säger till mkdir att skapa ett komplett katalogträd om det inte finns.

4. Starta slutligen om samba-tjänsterna för att tillämpa de nya inställningarna:

Sudo omstart smbd sudo omstart nmbd

Du kan nu söka på Ubuntu-filservern med Windows-klienten och bläddra i dess delade kataloger. Om din klient inte visar dina resurser automatiskt, försök att komma åt din server via dess IP-adress, till exempel \\192.168.1.1, från ett Windows Explorer-fönster. För att kontrollera att allt fungerar, försök att skapa en katalog i din resurs från Windows.

För att skapa ytterligare delningar, skapa en ny sektion i /etc/samba/smb.conf och starta om Samba. Se bara till att den delade katalogen är skapad och har rätt behörigheter.

Delad resurs "" och vägen /srv/samba/share– det här är bara exempel. Ställ in resursnamn och katalognamn enligt din miljö. Det är en bra idé att använda namnet på resursens katalog i filsystemet som namn på resursen. Med andra ord kan resursen specificeras som för katalogen /srv/samba/qa.

I den här handledningen ska vi lära oss hur man installerar och konfigurerar Samba-servern på Ubuntu 16.04. Samba är en gratis implementering med öppen källkod av SMB/CIFS-protokollet för Unix och Linux som tillåter fil- och skrivarkommunikation på Unix/ och Windows-maskiner i ett lokalt nätverk.

Samba är ett mjukvarupaket, varav de två viktigaste är:

  • smbd: Tillhandahåller SMB/CIFS-tjänst (fil- och utskriftsdelning) och kan även fungera som en Windows-domänkontrollant.
  • nmbd: Tillhandahåller NetBIOS-namntjänst

Hur man installerar Samba-server på Ubuntu 16.04

Samba ingår i de flesta Linux-distributioner. För att installera Samba på, kör helt enkelt:

Sudo apt installera samba

Den senaste tillgängliga stabila versionen är 4.5.3, släppt den 19 december 2016. För att kontrollera versionen Samba , springa

Sudo smbstatus

Sudo smbd --version

Exempel på utdata:

Samba version 4.3.11-Ubuntu

För att kontrollera om Samba-tjänsten körs, kör följande kommandon.

Systemctl status smbd systemctl status nmbd

För att starta dessa två tjänster, kör följande kommandon:

Sudo systemctl start smbd sudo systemctl start nmbd

Efter lanseringen, smbd kommer att lyssna på port 139 och 445.

Redigera en konfigurationsfil

Det finns bara en konfigurationsfil som behöver redigeras: /etc/samba/smb.conf.

Sudo nano /etc/samba/smb.conf

Kontrollera värdet i avsnittet arbetsgrupp tillhör en arbetsgrupp av Windows-datorer.

Arbetsgrupp = ARBETSGRUPP

Scrolla ner till botten av filen. (I nanotextredigeraren trycker du på CTRL+W och sedan CTRL+V .) Inkludera ett nytt avsnitt som visas nedan. Ersätt användarnamn med önskat användarnamn.

Kommentar = Hemsökväg för allmän mapp = /hem/användarnamn/ skrivbar = ja giltiga användare = användarnamn

Home Share är namnet på mappen som kommer att visas i Windows-nätverket. En kommentar är en beskrivning av den delade mappen. De följande 3 raderna indikerar att endast den angivna användaren, giltiga användare, har tillgång till katalogen /home/username/, som också är skrivbar. Ovanstående konfiguration kommer att inaktivera anonym åtkomst.

Spara och stäng filen och kör sedan följande kommando för att kontrollera om det finns syntaxfel.

Testparm

Skapa en användare

Samba innehåller en standardanvändare som säkerhetsläge, vilket innebär att klienter måste ange ett användarnamn och lösenord för att komma åt den delade mappen. För att lägga till en användare i Ubuntu, kör följande kommando:

Sudo adduser användarnamn

Du kommer att bli ombedd att ange ett Unix-lösenord. Dessutom måste du ställa in ett separat Samba-lösenord för användaren med följande kommando:

Sudo smbpasswd -ett användarnamn

Nu återstår bara att starta om smbd-demonen.

Sudo systemctl starta om smbd

Samba-åtkomst till delad mapp från Windows

På en Windows-dator som är i samma nätverk, öppna Filutforskaren och klicka på Nätverk i den vänstra rutan. Du kommer att se en sambaserver. Dubbelklicka på den delade mappen och ange ditt användarnamn och lösenord.

Samba-åtkomst till delad mapp från Ubuntu-dator

I Filhanteraren, gå till fliken Nätverk i den vänstra rutan och välj Windows Network.

Välj arbetsgruppen, Samba-servern och den delade mappen och ange sedan Samba-användarnamnet och lösenordet.

Lägga till flera användare eller grupper

Om flera konton behöver få åtkomst till en delad mapp måste de behöriga användarna ändras, som visas nedan i filen /etc/samba/smb.conf.

Giltiga användare = användare1, användare2, användare3

Använd också smbpasswd för att ställa in Samba-lösenordet för var och en av dessa användare.

Sudo smbpasswd -a användare1 sudo smbpasswd -a användare2 sudo smbpasswd -a användare3

För att tillåta en grupp användare att komma åt en delad mapp, använd följande konfiguration i /etc/samba/smb.conf.

Giltiga användare = @sambashara

Skapa en grupp.

Sudo groupadd sambashare

Lägg sedan till användare i den här gruppen

Sudo gpasswd -a user1 sambashare sudo gpasswd -a user2 sambashare sudo gpasswd -a user3 sambashare

Gruppen måste ha skrivbehörighet till den delade mappen, vilket kan uppnås med följande två kommandon.

Ställ in sambashare som gruppägare för den delade mappen:

Sudo chgrp sambashare /path/to/shared/folder -R

Ge skrivtillstånd till gruppen.

Sudo chmod g+w /sökväg/till/delad/mapp/ -R

Jag hoppas att den här artikeln hjälpte dig att konfigurera en Samba-server på Ubuntu 16.04. Som alltid, om du tyckte att det här inlägget var användbart, vänligen lämna en kommentar.

Implementering av nätverksprotokoll Servermeddelandeblock (SMB) Och Common Internet File System (CIFS). Huvudsyftet är att dela filer och skrivare mellan Linux- och Windows-system.

Samba består av flera demoner som körs i bakgrunden och tillhandahåller tjänster och ett antal kommandoradsverktyg för att interagera med Windows-tjänster:

  • smbd- en demon som är en SMB-server för filtjänster och utskriftstjänster;
  • nmbd- en demon som tillhandahåller NetBIOS-namntjänster;
  • snäll- Verktyget ger kommandoradsåtkomst till SMB-resurser. Det låter dig också få listor över delade resurser på fjärrservrar och se din nätverksmiljö;
  • smb.conf- en konfigurationsfil som innehåller inställningar för alla Samba-verktyg;

Lista över portar som används av Samba

  • dela med sig- Det här säkerhetsläget emulerar den autentiseringsmetod som används av operativsystemen Windows 9x/Windows Me. I det här läget ignoreras användarnamn och lösenord tilldelas resurser. I det här läget försöker Samba använda ett klientlevererat lösenord som kan användas av olika användare.
  • användare* - Det här säkerhetsläget är inställt som standard och använder ett användarnamn och lösenord för autentisering, som vanligtvis görs i Linux. I de flesta fall, på moderna operativsystem, lagras lösenord i en krypterad databas som endast används av Samba.
  • server- det här säkerhetsläget används när det är nödvändigt för Samba att utföra autentisering när man kommer åt en annan server. För klienter ser detta läge ut på samma sätt som autentisering på användarnivå (användarläge), men Samba kontaktar faktiskt servern som anges i lösenordsserverparametern för att utföra autentisering.
  • domän- med detta säkerhetsläge kan du gå med i en Windows-domän helt; För klienter ser detta ut på samma sätt som autentisering på användarnivå. Till skillnad från autentisering på servernivå använder domänautentisering säkrare lösenordsutbyte på domännivå. För att helt gå med i en domän måste du köra ytterligare kommandon på Samba-systemet och eventuellt på domänkontrollanten.
  • annonser- Det här säkerhetsläget liknar domänautentiseringsmetoden, men kräver en Active Directory Domain Services-domänkontrollant.

Fullständig lista över parametrar Samba finns i manpages.

Ovan var ett exempel med åtkomst för en delad katalog. Låt oss överväga ett annat exempel med en privat katalog, som endast kan nås med inloggning och lösenord.

Låt oss skapa en grupp och lägga till en användare till den

Sudo groupadd smbgrp sudo usermod -a -G smbgrp proft

Låt oss skapa en katalog för användaren och ange rättigheter

Sudo mkdir -p /srv/samba/proft sudo chown -R proft:smbgrp /srv/samba/proft sudo chmod -R 0770 /srv/samba/proft

Låt oss skapa en samba-användare

Sudo smbpasswd -a proft

Lägg till en ny resurs till /etc/samba/smb.conf

Sökväg = /srv/samba/proft giltiga användare = @smbgrp gäst ok = ej skrivbar = ja läsbar = ja

Låt oss starta om servern

Sudo systemctl starta om smbd

Ett exempel på att sätta upp en resurs som innehåller symbollänk till användarens mapp ( /srv/samba/media/video » /home/proft/video)

Sökväg = /srv/samba/media gäst ok = ja skrivskyddad = ja läsbar = ja tvinga användare = proft

Klientinställningar

Visa din dators delade resurser

Smbclient -L 192.168.24.101 -U%

Ett annat sätt att ansluta för en anonym användare med kommandoraden

Smbclient -U ingen //192.168.24.101/public ls

Om servern är konfigurerad med en högre säkerhetsnivå kan du behöva skicka användarnamnet eller domännamnet med alternativen -W respektive -U.

Smbclient -L 192.168.24.101 -U proft -W ARBETSGRUPP

Montera en samba-resurs

# skapa en monteringspunkt mkdir -p ~/shares/public # montera en resurs # för anonym användare nobody mount -t cifs //192.168.24.101/public /home/proft/shares/public -o user=nobody,password=, workgroup= WORKGROUP,ip=192.168.24.101,utf8 # för användare proft mount -t cifs //192.168.24.101/public /home/proft/shares/public -o user=proft,lösenord=1,arbetsgrupp=ARBETSGROUP,ip= 192.168 24.101,utf8

Det är ännu bättre att lagra lösenord i en separat fil.

# sudo vim /etc/samba/sambacreds användarnamn=proft lösenord=1 användarnamn=noboy lösenord=

Ställ in åtkomsträttigheter till 0600

Sudo chmod 0600 /etc/samba/sambacreds

Ny monteringslinje

Montera -t cifs //192.168.24.101/public /home/proft/shares/public -o user=proft,credentials=/etc/samba/sambacreds,workgroup=WORKGROUP,ip=192.168.24.101

Och ett exempel för /etc/fstab

//192.168.24.101/public /home/proft/shares/public cifs noauto,username=proft,credentials=/etc/samba/sambacreds,workgroup=WORKGROUP,ip=192.168.24.101 0 0

Du kan öppna resursen i Nautilus/Nemo/etc filhanteraren med den här sökvägen smb://192.268.24.101.

Om Nemo skriver Nemo kan inte hantera "smb"-platser. det betyder att paketet saknas gvfs-smb.

Åtkomst till servern med Windows och Android-klient

Under Windows kan du ta reda på arbetsgruppen från konsolen med hjälp av

Nätkonfigurationsarbetsstation

Du kan öppna resurser på en fjärrdator genom att skriva UNC-adressen i Explorer-raden eller i Kör (Start - Kör): \192.168.24.101 .

På Android kan du ansluta till servern med hjälp av ES File Explorer, på fliken Nätverk, lägg till en server, helt enkelt via IP (utan att ange schemat, smb). Därefter kan du öppna de delade resurserna. För statistik: en HDRIP-film körs utan avmattning.

Ytterligare läsning







2024 gtavrl.ru.