Hur man får samba att fungera. Samba filserver


Samba är programvara för att organisera fildelning och arbeta med delade resurser mellan datorer som kör Linux/Unix och operativsystemet Windows. Samba består av en klient- och serverdel. Klientdelen låter dig komma åt nätverksmappar och Windows-resurser, och serverdelen öppnar i sin tur allmän åtkomst till Ubuntu-mappen för andra maskiner, inklusive Windows.

Denna korta instruktion kommer att täcka den enklaste installationen av Samba Ubuntu 18.04, samt hur man ställer in delad åtkomst till Ubuntu-mappen med flera nivåer av privilegier.

Vi kommer att skapa tre delade mappar med olika behörighetsnivåer. En mapp med anonym åtkomst, med åtkomst för användare som tillhör en specifik grupp och åtkomst endast för en specifik användare.

Både Linux- och Windows-maskiner kan komma åt delade mappar i Ubuntu, med vilket program som helst som körs över SMB-protokollet.

För att allt ska fungera korrekt måste alla maskiner finnas i samma arbetsgrupp som anges på Samba-servern. Som standard, för Windows, Linux och MacOS, kallas arbetsgruppen Workgroup. För att ta reda på vilken arbetsgrupp som används i ditt Windows, öppna kommandoraden (Win+R, sedan cmd) och kör följande kommando:

net config arbetsstation

Vi ser parametern vi behöver i raden Arbetsstationsdomän. Detta är arbetsgruppen.

Nu, om en dator med en Samba-server i ditt nätverk har en permanent IP-adress, är det lämpligt att ange den i hosts-filen. För att göra detta, kör kommandoraden som administratör:

Och kör kommandot:

anteckningsblock C:\Windows\System32\drivers\etc\hosts

I filen som öppnas lägger du till en rad med IP-adressen till datorn som Samba ska installeras på:

192.168.0.1 srvr1.domain.com srvr1

Nu kan du gå vidare till frågan om hur man delar Ubuntu-mappen.

Konfigurera Samba på Ubuntu 16.04

Låt oss börja, som vanligt, med installationen. Installation av Samba Ubuntu tillsammans med alla nödvändiga komponenter görs med kommandot:

sudo apt-get install -y samba samba-common python-glade2 system-config-samba

När allt är installerat kan du fortsätta till konfigurationen. Skapa först en säkerhetskopia av din ursprungliga Samba-konfigurationsfil:

sudo mv /etc/samba/smb.conf /etc/samba/smb.conf.bak

När du har skapat säkerhetskopian skapar du din konfigurationsfil med det här kommandot:

sudo vi /etc/samba/smb.conf

Låt oss först specificera de globala filserverinställningarna. För att göra detta, infoga följande rader i filen:


arbetsgrupp = ARBETSGRUPP

netbios namn = Ubuntu Share
dns proxy = nej

max stockstorlek = 1000
passdb backend = tdbsam
unix lösenordssynkronisering = ja

pam lösenordsändring = ja
map till gäst = dålig användare
usershare tillåter gäster = ja

Låt oss ta en närmare titt på vad dessa rader betyder.

  • arbetsgrupp- Arbetsgruppen bör, som redan nämnts, vara densamma på alla maskiner
  • netbios namn- datornamn som kommer att visas i Windows;
  • loggfil- adressen till filen där felmeddelanden och annan information kommer att lagras;
  • säkerhet- Utför autentisering på användarnivå som standard;
  • namn lösa ordning- Upplösningsordning för IP-adresser efter NetBIOS-namn. bcast - betyder att skicka en sändningsförfrågan till det lokala nätverket. Om alla datorer mellan vilka interaktion är planerad finns på samma nätverk, är det här alternativet optimalt;
  • passdb backend- metod för att lagra användarlösenord;
  • unix lösenordssynkronisering- Synkronisering av samba-användarlösenord med lokala Unix-lösenord;
  • karta till gäst- indikerar när användaren kommer att beviljas gäståtkomst. Tre värden är tillgängliga - aldrig- aldrig, dålig användare- när en sådan användare inte finns, dåligt lösenord- när lösenordet har angetts felaktigt,

När du är klar med att skapa konfigurationsfilen går vi vidare till frågan om hur man delar Ubuntu-mappen för Windows.

Ubuntu mappdelning

Låt oss först skapa en delad mapp som alla kan komma åt. Det vill säga med anonym åtkomst, utan samba-auktorisering.

Skapa en mapp som vi delar åtkomst till, till exempel:

sudo mkdir -p /samba/allaccess

När mappen har skapats måste du ställa in rätt åtkomsträttigheter för den. Följande kommandon tillåter åtkomst till mappen för alla och gör ägaren till ingen:

cd /samba
sudo chmod -R 0755 tillgång
sudo chown -R ingen:nogroup allaccess/

Nästa steg är att beskriva allaccess-mappen i samba-konfigurationsfilen:


sökväg = /samba/allaccess
bläddringsbar = ja
skrivbar = ja
gäst ok = ja
endast läs = nej

Din konfigurationsfil ska nu se ut så här:


arbetsgrupp = ARBETSGRUPP
serversträng = %h server (Samba, Ubuntu)
netbios namn = Ubuntu Share
dns proxy = nej
loggfil = /var/log/samba/log.%m
max stockstorlek = 1000
passdb backend = tdbsam
unix lösenordssynkronisering = ja
passwd program = /usr/bin/passwd %u
pam lösenordsändring = ja
map till gäst = dålig användare
usershare tillåter gäster = ja
#==============
sökväg = /samba/allaccess
bläddringsbar = ja
skrivbar = ja
gäst ok = ja
endast läs = nej

Låt oss ta en närmare titt på alternativen som användes här:

  • väg- sökväg till mappen som behöver delas;
  • bläddringsbar- om mappen kommer att visas i listan över tillgängliga resurser;
  • skrivbar- om mappen kommer att vara skrivbar;
  • endast läs- mappen är skrivskyddad;
  • gäst ok, offentlig- om gästtillträde kommer att tillåtas;
  • enda gäst- om inställt på ja, kommer mappen endast att vara tillgänglig för gäster;
  • värdar tillåter- IP-adresser från vilka du kan komma åt den här servern;
  • giltiga användare- som standard kan alla användare logga in om du skickar en lista över användare i denna parameter, då kan bara de logga in;
  • skapa mask- Rättighetsmask för skapade filer.

För att tillämpa ändringarna, starta om Samba-servern:

sudo systemctl starta om samba

Konfigurationen av Samba Ubuntu 16.04 för anonym åtkomst är klar. Nu kan du kontrollera tillgängligheten för den delade mappen allaccess från Windows, för att göra detta, tryck på Win+R och kör:

\\srvr1\allaccess

Du kommer att se vår mapp. Om du inte ser det, kontrollera din konfiguration igen. Mappen kan nås utan samba-auktorisering. Konfigureringen av Samba-delningar med åtkomst utan auktorisering är klar.

Du kan också ansluta till den här servern från Linux med Nautilus, skriv bara in adressen smb://ip-server, i avsnittet andra platser:

Säker mappdelning Ubuntu

För att dela en mapp för Windows Ubuntu, som endast användare från en viss grupp kommer att ha tillgång till, skapar vi en separat mapp och beskriver den i Samba-konfigurationsfilen i Ubuntu.

Först skapar vi en mapp:

sudo mkdir -p /samba/allaccess/secured

Skapa en grupp:

sudo addgroup securedgroup

Konfigurera rättigheter:

cd /samba/allaccess
$ sudo chown -R richard:securedgroup säkrad
$ sudo chmod -R 0770 säker/

Det sista steget är att lägga till inställningar i samba-konfigurationsfilen:

sudo vi /etc/samba/smb.conf


sökväg = /samba/allaccess/secured
giltiga användare = @securegroup
gäst ok = nej
skrivbar = ja
bläddringsbar = ja

Starta om Samba-servern. Nu kan bara användare av den säkra gruppen komma åt den delade mappen i Ubuntu.

För att kontrollera hur detta fungerar, låt oss lägga till användaren Richard till vår grupp:

sudo usermod -a -G securedgroup richard

Eller kanske är det bara intresse och nyfikenhet som driver användare att söka efter olika lämpliga program. Samba är en sådan programvara. Du behöver veta hur du ställer in Samba på Ubuntu Server om du vill förvandla din dator till en databas eller fillagring.

Genom att installera Samba på Ubuntu Server kan du skapa en databas.

Om du trodde att sidan var tillägnad att lära dig dans, så hade du lite fel. Samba är fri programvara. Det ger tillgång till skrivare och filer. Och det gör det på olika operativsystem.

Vad är det för?

I jämförelse med andra programvarupaket för liknande ändamål har Samba flera fördelar och funktioner.

  • Låter dig ansluta ett Unix-liknande system, det vill säga vilket Linux- och Windows-system som helst, till varandra. Och inte bara Windows. Programmet är mycket "allätande": MacOS, Solaris och andra operativsystem av olika grad av popularitet.
  • Samba tillåter Windows-användare att använda Ubuntu-datorer som server. Det vill säga, använd de filer som åtkomst har etablerats till, samt några av de anslutna enheterna.
  • Stöder NT Domain-domänstrukturen, hanterar NT-användare, stöder medlems- och primärkontrollfunktioner.

För många är förmodligen det viktigaste från detta kommunikation med Windows-maskiner. I det här fallet fungerar de som en klient och Ubuntu-datorn fungerar som en server. Å andra sidan kan en Ubuntu-användare också komma åt Windows-nätverksmappar.

Samba har producerats sedan 1992. Och, viktigast av allt, nya versioner släpps fortfarande. Den senare släpptes den 7 mars 2017. Varje år försöker utvecklare etablera kompatibilitet med ett stort antal olika versioner av operativsystem, men huvudfunktionen förblir anslutningen av Linux-system med Microsoft. Jämfört med Windows Server kan Samba vara sämre än den på grund av bristen på stöd för vissa protokoll och värdinfrastruktur. Men många hävdar att hastigheten på Samba är mycket högre.

Ställer in Samba

Innan du installerar måste programmet installeras. Installation av Samba görs på samma sätt som med andra program - genom att ange kommandot i terminalen:

sudo apt-get installera samba

Observera genast: alla steg som kommer att beskrivas, inklusive installation av programmet, kan utföras både på enkel Ubuntu och på Ubuntu Server. Endast den senare har ett exklusivt textgränssnitt tillgängligt.

Efter installationen bör du göra en säkerhetskopia av konfigurationsfilen:

$ sudo mv /etc/samba/smb.conf /etc/samba/smb.conf.bak

$ sudo vi /etc/samba/smb.conf

Eller så redigerar vi en befintlig. Den här filen innehåller de grundläggande inställningarna för Samba-servern. För att ta reda på vad vi ska göra härnäst måste vi förstå vad de olika raderna betyder.

  • Arbetsgrupp - arbetsgrupp. Värdet på denna parameter kommer också ofta att vara Workgroup, eftersom standardarbetsgruppsdomänen i Windows ser ut så här.
  • Netbios namn är namnet på Ubuntu-datorn som ses av Windows-användare. Här kan du ange värdet efter eget gottfinnande.
  • Säkerhet - användarbehörighetsläge. Standard är Användare, det vill säga autentisering på användarnivå. För nu är det bäst att lämna det så.
  • Os-nivå - indikerar den prioritet som Samba har framför andra klienter (datorer) på det lokala nätverket eller internetnätverket.
  • Namnlösningsordning - ordning för IP-adressupplösning efter NetBIOS-namn.
  • Skrivskyddad - behörighet att läsa eller skriva en katalog. Värdet kan vara "ja" - skrivskyddad, "nej" - skriv.

Skapa en användare

Detta är den enklaste åtgärden som du kan börja arbeta med Samba med.

Lägg till en användare i själva operativsystemet:

$ useradd -M -l -s /sbin/nologin användarnamn

Låt oss skapa ett lösenord för det:

Låt oss lägga till vår användare i Samba-databasen:

$ smbpasswd -ett användarnamn

Du kan utföra olika andra åtgärder med kommandot $ smbpasswd:

  • $ smbpasswd användarnamn - ändra lösenord
  • $ smbpasswd -x användarnamn - ta bort en användare
  • $ smbpasswd -d användarnamn - ban användare

Servern måste startas om om du gör ändringar i konfigurationsfilen. Detta görs med kommandot:

$ systemctl starta om smb

Det här är de grundläggande Samba-inställningarna. Nu kan du försöka omsätta programmet i praktiken.

Mappåtkomst

Låt oss först försöka skapa en mapp som kommer att vara tillgänglig för alla användare, även de som inte är auktoriserade i Samba.

Vi skapar en mapp som vi sedan kommer att arbeta med på två datorer:

$ sudo mkdir -p /samba/access

Nu ger vi den här mappen utökad åtkomst så att alla klienter i vårt lokala nätverk kan öppna den:

$cd/samba
$ sudo chmod -R 0755 åtkomst
$ sudo chown -R nobody:nogroup access/

Ägaren enligt koden är ingen.

Nu i serverkonfigurationsfilen måste du göra två sektioner: den första som innehåller grundläggande information:


arbetsgrupp = ARBETSGRUPP
serversträng = Samba Server %v
netbios namn = srvr1
säkerhet = användare
map till gäst = dålig användare
namnupplösa order = bcast-värd
dns proxy = nej
#==============
Och den andra, som innehåller data om åtkomstmappen:

sökväg = /samba/access
bläddringsbar = ja
skrivbar = ja
gäst ok = ja
endast läs = nej

Avsnitten följer efter varandra i samma ordning.

Uppdatera serverändringar:

$ sudo service smbd omstart

Åtgärder med en Windows-dator

På Windows måste du också utföra några steg så att du enkelt kan öppna en ny delad mapp och redigera den.

  1. Öppna kommandoraden. Det är lämpligt att göra detta med utökade rättigheter, det vill säga som administratör.
  2. Vi kör kommandot:
  3. anteckningsblock C:\Windows\System32\drivers\etc\hosts
  4. En fil öppnas där vi anger följande rad:
  5. 168.0.1 srvr1.domain.com srvr1
    Tack vare det kommer mappen att bli tillgänglig.
  6. Du kan öppna den med raden "Kör". Tryck Win + R, enter: Efter detta öppnas en mapp för oss.

Stängd mapp

En konfigurerad Samba-server kan också användas för att skapa nätverksmappar med begränsad åtkomst. En sådan mapp måste också skapas först och sedan läggas till i Samba-konfigurationen.

Låt oss skapa en mapp som heter "Stängd":

$ sudo mkdir -p /samba/allaccess/stängd

Låt oss skapa en speciell grupp som kan ha åtkomst till denna mapp:

$ sudo addgroup securedgroup

Vi skapar särskilda rättigheter för olika grupper:

$ cd /samba/access
$ sudo chown -R richard:securedgroup stängd
$ sudo chmod -R 0770 stängd/

Precis som i fallet med en öppen mapp lägger vi till information till konfigurationen:


sökväg = /samba/access/stängd
giltiga användare = @securegroup
gäst ok = nej
skrivbar = ja
bläddringsbar = ja

Vi startar om servern.

Som du förstår skapade vi en stängd mapp i Access. Således kan Access öppnas av alla användare på det lokala nätverket, men för att kunna se och redigera Stängd behöver du ha särskilda rättigheter.

För att vara säker på att allt fungerar exakt som vi specificerat i batchfilen kan du följa några enkla steg.

Vi skapar en användare och lägger till honom i vår slutna grupp:

$ sudo usermod -a -G securedgroup winston

Vår användares namn är som ett paket cigaretter (eller Storbritanniens premiärminister).

Låt oss skapa ett lösenord för Winston:

$ sudo smbpasswd -a winston

Efter detta kommer vi att uppmanas att ange ett nytt lösenord för att logga in igen under det nyskapade kontot. Glöm inte att starta om efter detta. Nu vet du hur du ställer in en server via Samba i Ubuntu.

Naturligtvis är Sambas möjligheter inte begränsade till att bara skapa enkla mappar. Men dessa enkla instruktioner och exempel visar vad du kan göra med det här programmet. Detta kommer att vara det första steget mot att förstå essensen av serverdatorer och deras hantering.

Nuförtiden är det ganska vanligt att hitta datorer som kör Linux och Windows på samma lokala nätverk. Orsakerna till denna symbios kan vara olika: till exempel hade ägarna till ett internetkafé inte tillräckligt med pengar för att köpa ett licensierat OS för alla datorer, eller så lockades systemadministratören helt enkelt av de positiva aspekterna av Linux. Populariteten för Microsofts operativsystem bestäms till stor del av klientprogramvaran för Windows. Det är ingen hemlighet att denna mjukvarusektor är mycket utvecklad. Många företag har gjort seriösa ansträngningar för detta och har skapat riktigt bra, och viktigast av allt, lättanvända program som även en vanlig användare lätt kan bemästra. Men som server är Windows position inte längre så tydlig. En server som kör Unix kännetecknas traditionellt av tillförlitlighet, stabil drift, säkerhet och ofta lägre krav på systemresurser. Men i vilket fall som helst, att bara ansluta datorer med olika programvaruplattformar till nätverket kommer inte att få det förväntade resultatet. Problemet är att dessa två system använder olika principer för att organisera nätverksresurser som är inkompatibla med varandra.
Eftersom det inte finns något behov av att vänta på Microsofts nåd, och det är osannolikt att Windows lär sig att arbeta med Unix-nätverksfilsystemet (NFS) med standardmetoder, och för att vara ärlig, jag känner inte till tredjepartsprogram, populärt sätt är att försöka lära Unix att "låtsas" att om det vore Windows NT.

Interaktion i ett nätverk av datorer som kör Windows baseras på användningen av protokollet SMB (servermeddelandeblock)- block av servermeddelanden. Det säkerställer att alla nödvändiga uppgifter i dessa fall utförs: öppna och stänga, läsa och skriva, söka efter filer, skapa och ta bort kataloger, ställa in ett utskriftsjobb och ta bort det därifrån. Alla åtgärder som är nödvändiga för detta implementeras i Unix-liknande operativsystem med hjälp av paketet SAMBA. Dess möjligheter kan delas in i två kategorier: tillhandahållande av resurser (med vilket vi menar åtkomst till skrivarsystemet och filer) för Windows-klienter och åtkomst till klientresurser. Det vill säga att en dator som kör Linux kan fungera som både server och klient. Låt oss först överväga SAMBA-serveralternativet.

Vad ska SAMBA tillhandahålla för normal drift av Windows-maskiner i ett nätverk? Först, åtkomstkontroll, som kan implementeras antingen på resursnivå (andelsnivå), när ett lösenord och motsvarande användningsregler tilldelas valfri resurs i nätverket (till exempel "skrivskyddad"), medan användarnamnet har absolut nej ingen mening; eller en mer avancerad och flexibel organisation på användarnivå, då ett konto skapas för varje användare, som förutom namn och lösenord innehåller all nödvändig information om åtkomsträttigheter till resursen. Innan man får tillgång till den nödvändiga resursen, autentiseras varje användare, varefter han tilldelas rättigheter enligt sina konton. För det andra är emulering av åtkomsträttigheter som bestäms av filsystemet nödvändig. Saken är att systemen i fråga har åtkomsträttigheter till filer och kataloger på disken olika. Unix har traditionellt tre kategorier av filanvändare: ägare, grupp Och resten (annat). Var och en av dessa enheter kan tillhandahållas läsbehörigheter, skriva Och avrättning. I Windows NT är åtkomstsystemet något mer flexibelt åtkomst till flera grupper eller användare, och motsvarande åtkomsträttigheter bestäms separat för varje ämne. Därför är det omöjligt att helt emulera åtkomsträttigheterna i NTFS med SAMBA.

Med kunder igång Windows 9x, situationen är annorlunda. Sedan tiden för farfar till DOS, på grund av det faktum att systemet är enanvändare och det inte kunde vara tal om några användare, än mindre grupper, har bara fyra attribut definierats för FAT-filsystemet - skrivskyddad, system, arkiv och dold. Plus, i Windows, till skillnad från Unix, har filtillägget en speciell betydelse - de som är avsedda att köras har tilläggen .exe, .com eller .bat. När du kopierar filer från Unix-maskiner till Windows-datorer ställs attributen in så här:

bara för att läsa- läsa, skriva för ägaren;

arkiv- utförande för ägaren;

systemisk- utförande för gruppen;

dolda - utförande för gruppen.

Ett nätverk av Windows-maskiner kan organiseras som en arbetsgrupp, när datorerna är oberoende av varandra och var och en har sin egen databas med lösenord och inloggningar med sin egen säkerhetspolicy, och även som en NT-domän. Hela grunden för användar- och datorautentisering hanteras primär domänkontrollant (PDC, Primary Domain Controller), dvs. centraliserad. Samba låter dig begränsa åtkomsten på alla dessa nivåer och fungerar som en "huvudwebbläsare" i en arbetsgrupps- eller domänkontrollant.

Vi har reda ut de allmänna organisatoriska frågorna. Låt oss nu titta specifikt på implementeringen och konfigurationen av en SAMBA-server i Linux. För att Samba-servern ska fungera måste två demoner köras: smbd, som tillhandahåller en utskrifts- och fildelningstjänst för Samba-klienter (som Windows of all stripes), och nmbd, som driver NetBIOS-namntjänsten (den kan också användas för att fråga andra namntjänstdemoner). Protokollet används för att komma åt klienter TCP/IP. Vanligtvis installeras Samba med en Linux-distribution. Hur kollar man?

Ge bara kommandot:

och du borde få något sånt här:

Samba: /usr/sbin/samba /etc/samba /usr/share/man/man7/samba.7.gz

Om den inte ingår i standarddistributionen, välkommen till ftp://ftp.samba.org/pub/samba/samba-latest.tar.gz eller nästan vilken server som helst med program för Linux. Paketet är enkelt att installera, så för att inte ta plats så utgår vi från att du har det installerat. Låt oss nu kontrollera om demonen körs:

$ ps -aux | grep smbd root 1122 0,0 0,6 4440 380 ? S 16:36 0:00 smbd -D Som ni ser har jag den redan igång. Om du inte har det, och du vill att det ska starta när systemet startar, då i Linux Mandrake, till exempel, markera önskad ruta i- DrakConf starta tjänster eller in- Red Hat kontrollpanel Servicekonfiguration

Det är därför jag älskar Linux, eftersom konfigurationsfilerna är ren text (och väl kommenterade inuti), och för att kunna använda de flesta parametrarna behöver du bara avkommentera motsvarande rad. Filen smb.conf är inget undantag. Den består av namngivna sektioner som börjar med sektionsnamnet inom hakparenteser. Inuti varje sektion finns ett antal parametrar i formen nyckel=värde. Konfigurationsfilen innehåller fyra specialsektioner: , och separata resurser (resurser). Som namnet antyder innehåller avsnittet de mest generella egenskaperna som kommer att gälla överallt, men som dock sedan kan åsidosättas i avsnitt för enskilda resurser. Vissa parametrar i det här avsnittet är också relevanta för att konfigurera Samba-klientdelen.

Värden för typiska sektionsparametrar global:

Workgroup = group_name # namn på arbetsgruppen i Windows-nätverket netbios namn = namn på servern på nätverksserversträngen = kommentar som är synlig i fönstret för nätverkssökningsegenskaper gäst ok = ja # tillåter gästinloggning (gäst ok = nej - gäst inloggning är förbjuden) gästkonto = ingen # namn under vilket gästinloggning tillåts säkerhet = användare # Åtkomstnivå. användare - på användarnivå, säkerhet = dela - autentisering baserad på användarnamn och lösenord. Vid lagring av lösenordsdatabasen på en annan SMB-server används värdena säkerhet = server och lösenordsserver = namn_server_NT. Om servern är medlem i en domän används värdet säkerhet = domän, åtkomstlösenordet anges i filen som definieras med alternativet smb passwd file = /path/to/file.

Dessutom kan du under registreringen använda krypterade och okrypterade (vanlig text) lösenord. De senare används i äldre Windows (Windows for Workgroups, Windows 95 (OSR2), alla versioner av Windows NT 3.x, Windows NT 4 (upp till Service Pack 3)). För att aktivera alternativet att använda ett krypterat lösenord, använd alternativet kryptera lösenord = ja. Var särskilt uppmärksam på detta alternativ. På äldre Linux-distributioner som byggdes under Windows 95-eran (och med en äldre version av Samba) är lösenordskryptering inaktiverad som standard, och samba före version 2.0 stöder inte det här läget alls (förresten, det här alternativet och liknande - de som inte hänför sig till åtkomst till specifika resurser - används också i klienten).

För att korrekt visa ryska filnamn behövs följande alternativ: klientkodtabell = 866 och teckenuppsättning = koi8-r. I distributioner med bra lokalisering, till exempel derivator från Mandrake och ryska, är den här raden redan där ibland räcker det bara att avkommentera den, men i de flesta andra måste du lägga till den själv.

Alternativet gränssnitt = 192.168.0.1/24 anger vilket nätverk (gränssnitt) programmet ska köras på om servern är ansluten till flera nätverk samtidigt. När du ställer in parametern bind interfaces only = yes, kommer servern endast att svara på förfrågningar från dessa nätverk.

värdar tillåter = 192.168.1. 192.168.2. 127. - definierar klienter för vilka åtkomst till tjänsten är tillåten.

I den globala sektionen kan du använda olika variabler för mer flexibel konfiguration av servern. Efter att anslutningen har upprättats ersätts verkliga värden istället. Till exempel, i loggfilen = /var/log/samba/%m.log-direktivet, hjälper parametern %m att definiera en separat loggfil för varje klientdator. Här är de vanligaste variablerna som används i det globala avsnittet:

%a - OS-arkitektur på klientdatorn (möjliga värden - Win95, Win NT, OKÄND, etc.);

%m - NetBIOS-namnet på klientdatorn;

%L - NetBIOS-namnet på SAMBA-servern;

%v - SAMBA-version;

%I - IP-adress för klientdatorn;

%T - datum och tid;

%u - namnet på användaren som arbetar med tjänsten;

%H är hemkatalogen för användaren %u.

För mer flexibel konfiguration används inkluderingsdirektivet med ovanstående variabler. Till exempel: include = /etc/samba/smb.conf.%m - nu när du begär försäljning från en dator och det finns en fil /etc/samba/smb.conf.sales, kommer konfigurationen att tas från den här filen. Om det inte finns någon separat fil för en viss maskin, används en gemensam fil för att arbeta med den.

# 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

Eller kanske är det bara intresse och nyfikenhet som driver användare att söka efter olika lämpliga program. Samba är en sådan programvara. Du behöver veta hur du ställer in Samba på Ubuntu Server om du vill förvandla din dator till en databas eller fillagring.

Genom att installera Samba på Ubuntu Server kan du skapa en databas.

Om du trodde att sidan var tillägnad att lära dig dans, så hade du lite fel. Samba är fri programvara. Det ger tillgång till skrivare och filer. Och det gör det på olika operativsystem.

Vad är det för?

I jämförelse med andra programvarupaket för liknande ändamål har Samba flera fördelar och funktioner.

  • Låter dig ansluta ett Unix-liknande system, det vill säga vilket Linux- och Windows-system som helst, till varandra. Och inte bara Windows. Programmet är mycket "allätande": MacOS, Solaris och andra operativsystem av olika grad av popularitet.
  • Samba tillåter Windows-användare att använda Ubuntu-datorer som server. Det vill säga, använd de filer som åtkomst har etablerats till, samt några av de anslutna enheterna.
  • Stöder NT Domain-domänstrukturen, hanterar NT-användare, stöder medlems- och primärkontrollfunktioner.

För många är förmodligen det viktigaste från detta kommunikation med Windows-maskiner. I det här fallet fungerar de som en klient och Ubuntu-datorn fungerar som en server. Å andra sidan kan en Ubuntu-användare också komma åt Windows-nätverksmappar.


Samba har producerats sedan 1992. Och, viktigast av allt, nya versioner släpps fortfarande. Den senare släpptes den 7 mars 2017. Varje år försöker utvecklare etablera kompatibilitet med ett stort antal olika versioner av operativsystem, men huvudfunktionen förblir anslutningen av Linux-system med Microsoft. Jämfört med Windows Server kan Samba vara sämre än den på grund av bristen på stöd för vissa protokoll och värdinfrastruktur. Men många hävdar att hastigheten på Samba är mycket högre.

Ställer in Samba

Innan du installerar måste programmet installeras. Installation av Samba görs på samma sätt som med andra program - genom att ange kommandot i terminalen:

sudo apt-get installera samba


Observera genast: alla steg som kommer att beskrivas, inklusive installation av programmet, kan utföras både på enkel Ubuntu och på Ubuntu Server. Endast den senare har ett exklusivt textgränssnitt tillgängligt.

Efter installationen bör du göra en säkerhetskopia av konfigurationsfilen:

$ sudo mv /etc/samba/smb.conf /etc/samba/smb.conf.bak

$ sudo vi /etc/samba/smb.conf

Eller så redigerar vi en befintlig. Den här filen innehåller de grundläggande inställningarna för Samba-servern. För att ta reda på vad vi ska göra härnäst måste vi förstå vad de olika raderna betyder.

  • Arbetsgrupp - arbetsgrupp. Värdet på denna parameter kommer också ofta att vara Workgroup, eftersom standardarbetsgruppsdomänen i Windows ser ut så här.
  • Netbios namn är namnet på Ubuntu-datorn som ses av Windows-användare. Här kan du ange värdet efter eget gottfinnande.
  • Säkerhet - användarbehörighetsläge. Standard är Användare, det vill säga autentisering på användarnivå. För nu är det bäst att lämna det så.
  • Os-nivå - indikerar den prioritet som Samba har framför andra klienter (datorer) på det lokala nätverket eller internetnätverket.
  • Namnlösningsordning - ordning för IP-adressupplösning efter NetBIOS-namn.
  • Skrivskyddad - behörighet att läsa eller skriva en katalog. Värdet kan vara "ja" - skrivskyddad, "nej" - skriv.

Skapa en användare

Detta är den enklaste åtgärden som du kan börja arbeta med Samba med.


Lägg till en användare i själva operativsystemet:

$ useradd -M -l -s /sbin/nologin användarnamn

Låt oss skapa ett lösenord för det:

Låt oss lägga till vår användare i Samba-databasen:

$ smbpasswd -ett användarnamn


Du kan utföra olika andra åtgärder med kommandot $ smbpasswd:

  • $ smbpasswd användarnamn - ändra lösenord
  • $ smbpasswd -x användarnamn - ta bort en användare
  • $ smbpasswd -d användarnamn - ban användare

Servern måste startas om om du gör ändringar i konfigurationsfilen. Detta görs med kommandot:

$ systemctl starta om smb

Det här är de grundläggande Samba-inställningarna. Nu kan du försöka omsätta programmet i praktiken.

Mappåtkomst

Låt oss först försöka skapa en mapp som kommer att vara tillgänglig för alla användare, även de som inte är auktoriserade i Samba.

Vi skapar en mapp som vi sedan kommer att arbeta med på två datorer:

$ sudo mkdir -p /samba/access

Nu ger vi den här mappen utökad åtkomst så att alla klienter i vårt lokala nätverk kan öppna den:

$cd/samba
$ sudo chmod -R 0755 åtkomst
$ sudo chown -R nobody:nogroup access/

Ägaren enligt koden är ingen.


Nu i serverkonfigurationsfilen måste du göra två sektioner: den första som innehåller grundläggande information:

Arbetsgrupp = ARBETSGRUPP
serversträng = Samba Server %v
netbios namn = srvr1
säkerhet = användare
map till gäst = dålig användare
namnupplösa order = bcast-värd
dns proxy = nej
#==============
Och den andra, som innehåller data om åtkomstmappen:

Sökväg = /samba/access
bläddringsbar = ja
skrivbar = ja
gäst ok = ja
endast läs = nej

Avsnitten följer efter varandra i samma ordning.

Uppdatera serverändringar:

$ sudo service smbd omstart

Åtgärder med en Windows-dator

På Windows måste du också utföra några steg så att du enkelt kan öppna en ny delad mapp och redigera den.

  1. Öppna kommandoraden. Det är lämpligt att göra detta med utökade rättigheter, det vill säga som administratör.
  2. Vi kör kommandot:
  3. anteckningsblock C:\Windows\System32\drivers\etc\hosts
  4. En fil öppnas där vi anger följande rad:
  5. 168.0.1 srvr1.domain.com srvr1
    Tack vare det kommer mappen att bli tillgänglig.
  6. Du kan öppna den med raden "Kör". Tryck Win + R, enter: Efter detta öppnas en mapp för oss.


Stängd mapp

En konfigurerad Samba-server kan också användas för att skapa nätverksmappar med begränsad åtkomst. En sådan mapp måste också skapas först och sedan läggas till i Samba-konfigurationen.

Låt oss skapa en mapp som heter "Stängd":

$ sudo mkdir -p /samba/allaccess/stängd

Låt oss skapa en speciell grupp som kan ha åtkomst till denna mapp:

$ sudo addgroup securedgroup

Vi skapar särskilda rättigheter för olika grupper:

$ cd /samba/access
$ sudo chown -R richard:securedgroup stängd
$ sudo chmod -R 0770 stängd/

Precis som i fallet med en öppen mapp lägger vi till information till konfigurationen:

Sökväg = /samba/access/stängd
giltiga användare = @securegroup
gäst ok = nej
skrivbar = ja
bläddringsbar = ja

Vi startar om servern.

Som du förstår skapade vi en stängd mapp i Access. Således kan Access öppnas av alla användare på det lokala nätverket, men för att kunna se och redigera Stängd behöver du ha särskilda rättigheter.

För att försäkra dig om att allt fungerar exakt som vi specificerat i batchfilen kan du utföra några enkla steg.

Den här artikeln kommer att diskutera att skapa ett trådlöst lokalt nätverk för enheter som kör olika operativsystem Windows, Linux, Android med Samba.

Nuförtiden har nästan varje lägenhet ett Wi-Fi-nätverk, och det finns också ett stort antal olika enheter (bärbara datorer, smartphones, surfplattor, Android TV Box). I detta avseende kommer det förr eller senare att finnas ett behov av att kombinera alla enheter som är tillgängliga för användning i ett hemnätverk för att enkelt komma åt alla typer av filer från vilken gadget som helst.

Detta är faktiskt vad som kommer att diskuteras i detta opus. Så låt oss börja.

För nätverksbyggande kommer vi att använda en färdig lösning som heter Samba. Detta är ett paket med gratis open source-program som låter dig ansluta till nätverksenheter, skrivare och annan utrustning på olika operativsystem med hjälp av sitt eget SMB/CIFS-protokoll.

Mjukvaran består av två delar - server och klient. Vi kommer att installera Samba-servern på en av enheterna, som per definition kommer att vara den huvudsakliga, och Samba-klienten på alla de andra.

Installera Samba-servern

I mitt fall, för serverenheten, valde jag en bärbar dator där Windows 7 och Ubuntu Mate 16.04 installerades parallellt. Nedan kommer vi att i detalj överväga processen för att installera och konfigurera Samba för båda operativsystemen.

Konfigurera sambaserver under Linux

Som standard är Samba inte installerat i Ubuntu, så du måste göra det innan du går vidare. Som ett alternativ, för att inte senare redigera Samba-konfigurationsfilen via terminalen, kommer vi att installera Gadmin-Samba-programmet, som inkluderar, förutom Samba-serverpaket, ett grafiskt gränssnitt.

För att installera, skriv in terminalen:

Sudo apt installera gadmin-samba

När installationen är klar, starta Gadmin Samba. Applikationsgränssnittet är inte russifierat, men det är ganska enkelt att förstå inställningarna.


Det finns många inställningar i programmet, men i stort sett är vi i vårt fall intresserade av fliken "användare". Gå till den och lägg till en ny användare.


Klicka på knappen "Ny användare", i det uppdaterade fönstret, ange användarnamnet, kom med ett lösenord, lägg till det i gruppen (för att inte "uppfinna hjulet", ange det befintliga, nämligen "sambausers") och ställ in hemkatalogen för filerna. Efter det klickar du på "Apply".


HD Videobox - ny användare

För att tillämpa ändringarna, starta om servern med hjälp av knapparna "avaktivera" respektive "aktivera", som finns i det övre vänstra hörnet av programfönstret.


Glöm inte heller att ställa in åtkomsträttigheter till "delade" mappar för delad åtkomst. Detta kan göras antingen via terminalen eller genom det grafiska gränssnittet i Nautilus filutforskare.


Nautilus - ändra behörigheter


Nautilus - filskrivbehörighet

Konfigurera sambaserver under Windows

När det gäller Windows är allt mycket mer prosaiskt, eftersom Samba används som standard i det här operativsystemet.

I princip kan du använda ett befintligt konto eller aktivera gäståtkomst. Alternativt kan du skapa ett annat konto, vars data kommer att användas för nätverksåtkomst

För att skapa ett nytt konto måste du gå till "kontrollpanelen", välja "hantera användarkonton" och skapa ett nytt konto med ett lösenord.


Lägger till ett nytt konto

När du skapar en ny användare måste du välja en kontotyp, skapa ett namn och lösenord.


I det sista skedet måste du ställa in rättigheter för att se ändringar av "delade" mappar. Detta kan göras i standardutforskaren i Windows via snabbmenyalternativet "egenskaper" i förhållande till den mapp du behöver.


"Dela" en mapp


Lägga till en användare och ändra mappbehörigheter

När du har skapat en ny användare, se till att logga in på den aktuella sessionen igen för att ändringarna ska träda i kraft.

Installera Samba-klienten på Android

För att komma åt Samba-servern och följaktligen nätverksenheter på enheter som kör Android rekommenderar jag att du använder Root Explorer-applikationen (länk för att ladda ner den fullständiga versionen utan reklam i slutet av artikeln).

Ibland behöver du mycket snabbt ställa in en fildelning på servern och öppna åtkomst till den. I det här fallet finns det inget behov av att inhägna några komplexa konfigurationer, åtkomsträttigheter eller något annat. Du behöver bara snabb tillgång till information utan onödiga frågor.

Till exempel behövde jag nyligen något liknande för att öppna åtkomst till säkerhetskopior som lagrades på servern. Jag ville inte ta reda på det och leta efter information själv. Jag behövde snabbt ge personen läsåtkomst så att han kunde hitta allt han behövde.

Jag kommer inte specifikt att ta itu med operativsystemversioner. Samba har samma konfigurationer nästan överallt där jag har varit tvungen att arbeta med dem, speciellt i de enklaste konfigurationerna.

Så installera Samba på något lämpligt sätt för ditt operativsystem. Konfigurationerna är giltiga för version 3 av samba. Därefter bestämmer vi vad vi behöver:

  • åtkomst med användare och lösenord,
  • åtkomst via IP-adress,
  • tillgång till alla utan begränsningar.

Beroende på detta kommer inställningarna att vara något annorlunda.

För lösenordsåtkomst rita följande konfiguration:

Säkerhet = användarpassdb backend = tdbsam arbetsgrupp = MYGROUP serversträng = Samba-sökväg = /mnt/shara giltiga användare = @användare tvingar grupp = användare skapar mask = 0660 katalogmask = 0771 skrivbar = ja läsbar = ja

# useradd share-user -M -G användare -s /sbin/nologin

Vi importerar denna användare till Samba och ställer in lösenordet:

# smbpasswd -en share-användare

Och vi försöker gå till balen på adressen:

\\server ip\share

Att organisera åtkomst beroende på IP-adress, gör följande inställningar i smb.conf:

Säkerhet = dela arbetsgrupp = MYGROUP serversträng = Samba map till gäst = dålig användarsökväg = /mnt/filer kan bläddra = ja skrivbar = ja gäst ok = ja skrivskyddad = inga värdar tillåter = 192.168.0.171

I det här fallet kommer adressen 192.168.0.171 att ha full åtkomst. För att lägga till hela undernätet måste du ange följande:

Värdar tillåter = 192.168.0.

Du kan kombinera olika undernät och adresser, separera dem med mellanslag. För att inaktivera åtkomst till vissa individuella adresser från ett tillåtet undernät kan du göra så här:

Värdar tillåter = 192.168.0. utom 192.168.0.15

Åtkomst kommer att tillåtas till hela undernätet 192.168.0.0/24, förutom adressen 192.168.0.15.

Vi startar om samba och kollar.

Om du har samba 4 installerat kommer den här konfigurationen inte att fungera och du kommer att få felmeddelandet:

VARNING: Ignorerar ogiltigt värde "share" for parameter "security" !}

För att IP-åtkomst ska fungera korrekt måste du göra följande ändringar i ovanstående konfiguration:

Säkerhet = användarkarta till gäst = Dåligt lösenord

Låt resten av parametrarna vara desamma. Efter detta kommer åtkomst via IP att fungera på version 4 av Samba.

Om tillgång kommer att ges till alla utan begränsningar, då blir den enklaste samba-konfigurationen så här:

Säkerhet = användararbetsgrupp = MYGROUP serversträng = Samba gästkonto = ingen mappar till gäst = Dålig användarsökväg = /mnt/filer kan bläddra = Ja gäst ok = Ja skrivbar = Ja offentlig = ja

Glöm inte att ställa in behörigheter för alla i mappen:

# chmod 0777 /mnt/filer

Vi startar om Samba och försöker logga in. De borde släppa in dig utan några frågor.

Så här kan du organisera en enkel filserver med samba på bara 5 minuter. Och ofta är det svårare och det är inte nödvändigt. För någon form av fildump är det senaste alternativet lämpligt.

För mer komplexa konfigurationer har jag separata artiklar:

Onlinekurs i Linux

Om du har en önskan om att lära dig bygga och underhålla högst tillgängliga och pålitliga system rekommenderar jag att du bekantar dig med onlinekurs "Linux Administrator" i OTUS. Kursen är inte för nybörjare för att registrera dig behöver du grundläggande kunskaper om nätverk och installation av Linux på en virtuell maskin. Utbildningen varar i 5 månader, varefter framgångsrika kursutexaminerade kommer att kunna genomgå intervjuer med partners. Vad den här kursen ger dig:
  • Kunskaper om Linux-arkitektur.
  • Behärska moderna metoder och verktyg för dataanalys och bearbetning.
  • Möjlighet att välja en konfiguration för de nödvändiga uppgifterna, hantera processer och säkerställa systemsäkerhet.
  • Kunskaper i de grundläggande arbetsverktygen för en systemadministratör.
  • Förståelse av detaljerna för att distribuera, konfigurera och underhålla nätverk byggda på Linux.
  • Förmågan att snabbt lösa uppkommande problem och säkerställa stabil och oavbruten drift av systemet.
Testa dig själv på inträdesprovet och se programmet för mer detaljer.






2024 gtavrl.ru.