december 25, 2021

Så här konfigurerar du Samba-Server i Redhat Linux

denna handledning förklarar hur du konfigurerar Samba-server i Linux och Samba-klient i Windows och Linux, inklusive hur du skapar IPTABLES-regler och konfigurerar SELinux Booleans för att tillåta Samba-trafik steg för steg med praktiska exempel. Lär dig hur du delar resurser och får tillgång till delade resurser i Samba-nätverket.

  • Microsoft window använda Common Internet File System (CIFS) protokoll för nätverk.
  • CIFS har utvecklats från Server Message Block (SMB) protokoll.
  • Samba är en programvara med öppen källkod.
  • Samba använder TCP / IP-protokollet.
  • Samba är Linux-implementering av SMB / CIFS-protokoll.
  • Samba tillåter interoperabilitet mellan Linux och Window.
  • Samba tillhandahåller fil-och utskriftsdelningstjänst mellan Linux och Window system.
  • Samba tillåter Linux att interagera med Fönsterklient, Server, medlem i Active Directory, primär domänkontrollant eller medlemsserver.
  • Samba stöd Microsoft Access Control listor.
  • Huvudkonfigurationsfilen för Samba-servern är / etc/samba / smb.conf
  • Samba Web Administration tool (SWAT) är ett GUI-baskonfigurationsverktyg för Samba Servertillgänglig från RHEL 6
  • i Linux SAMBA tillhandahåller följande tjänster:
    • användarautentisering och auktorisering
    • fil-och skrivardelning
    • namnupplösning
    • bläddring

RHCE examen ämne som omfattas av denna artikel

  • ge nätverksresurser till specifika kunder.
  • ge nätverksandelar som är lämpliga för gruppsamarbete.

under RHCE-examen har du inte tillgång till Microsoft window så du måste veta hur du testar Samba-konfiguration med Linux-system.

i denna handledning kommer jag att använda två system Server och linuxclient från vår labbmiljö. Jag kommer att konfigurera Samba Server på serversystem och samba klient på linuxclient systemet. Om du vill kontrollera nätverkstopologin som används i den här artikeln, kolla följande artikel. Lab inrättat för RHEL-övning.

RPM krävs för Samba Server

RPM beskrivning
samba Basvarvtal för Samba-Server
samba-klient Basvarvtal för Samba-klient
samba-common inkludera kommandon som krävs av Samba Server och klient
samba-doc tillhandahålla Samba-dokumentation
samba-swat grafiskt gränssnitt för Samba-konfiguration
samba-winbind Tillåt interoperabilitet mellan Linux och Window
samba-domainjoin-gui Tillåt linux-användare att ansluta till windows arbetsgrupper och domäner.

LAB-uppgifter

  • konfigurera Samba på serversystemet. Konfigurera iptables firewall och SELinux Booleans för att tillåta Samba-anslutning på servern.
  • Skapa 5 användare på serversystemet. Gör en grupp med två användare. Lägg till alla användare i Samba användardatabas.
  • kontrollera anslutningsformulär linuxclient och windowclient-system. Verifiera genom inloggning från en användare.
  • skapa en sharedata-mapp på servern. Bevilja läs-och skrivåtkomst till allmänheten på sharedata-mappen. Dela offentligt den här mappen. Testformulär linux och fönster klient.

konfigurera Samba-Server

på samba-server efter RPM krävs

  • samba
  • Samba-common
  • samba-winbind

kontrollera nödvändiga rpm

rpm-qa-samba

du kan installera RPM från flera källor, inklusive YUM repository, dump of RPM, FTP, etc. I den här artikeln installerar jag RPM form RHEL 6 disk. Montera RHEL 6 disk i media mapp och ändra katalog till Paketmapp

cd-media-package

installera nödvändigt varvtal.

rpm-samba

Samba demoner

för Samba behöver vi tre tjänster för att köra, en valfri och två krävs

Service demoner beskrivning
krävs smb smbd (SMB/CIFS Server) main samba-tjänst som ger användarautentisering och auktorisering och fil-och skrivardelning
krävs NMB NMBD (NetBIOS namnserver) resurser bläddring
valfritt winbind winbindd för värd och användarnamn upplösning

om du just har installerat RPM än dessa tjänster skulle stoppas.

smb-nmb-stoped

starta nödvändiga tjänster

smb-nmb-running

se till att tjänsterna körs nästa gång Linux startas

chkconfig-smb-on

hur man tillåter samba genom brandvägg

under RHCE 6-examen kommer vi att ha både brandvägg (iptables) och SELinux-skydd.

för att Samba ska kunna kommunicera utanför servern måste vi konfigurera iptables och SELinux.

hur man tillåter Samba i iptables

SAMBA använder portar 137,138,139 och 445

Port 137 UDP NetBIOS namntjänst (vinner)
Port 138 UDP NetBIOS datagram
Port 139 TCP NetBIOS Session (TCP), Windows fil-och skrivardelning
Port 445 Microsoft-DS Active Directory, Windows-aktier( TCP)
Port 445 Microsoft-DS SMB fildelning (UDP)

för att öppna brandvägg för Samba lägger till följande regler och starta om iptables

 #iptables -A INPUT -m state --state NEW -m udp -p udp --dport 137 -j ACCEPT #iptables -A INPUT -m state --state NEW -m udp -p udp --dport 138 -j ACCEPT #iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 139 -j ACCEPT #iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 445 -j ACCEPT

iptables-samba-server

hur man tillåter Samba server från SELinux brandvägg

SELinux som en säkerhetsfunktion förhindrar någon visning av en aktie automatiskt. SELinux är de komplexa säkerhetsfunktionerna i Linux. För RHCE 6-examen bör du veta följande SELinux booleans

samba_enable_home_dirs möjliggör delning av hemkataloger
samba_export_all_ro aktivera skrivskyddad åtkomst till valfri katalog
samba_export_all_rw ställer in läs – / skrivåtkomst till valfri katalog
samba_share_t Standardfil som Samba kan dela

du kan aktivera samba_export_all_ro eller samba_export_all_rw Booleans i labbmiljö men det i verkliga livet som skulle vara en säkerhetsrisk. Dess goda vana att ställa in en filtyper för fil och kataloger som måste vara dela via Samba. Du kan göra det med följande kommando

# chcon -R -t samba_share_t /sharedata

i det här exemplet aktiverar vi / sharedata katalog. Nu kan Samba dela den här katalogen.

för att dela standard hemkatalogen kör följande kommando:

setsebool -P samba_enable_home_dirs on

-P ser till att ändringen bevaras efter omstart.

setbool

du kan bara skapa en ny Samba-användare från giltiga konton på en Linux-dator så Skapa 5 användare

useradd

Ange lösenord för alla användare. Undvik att ställa in lösenord för lokalt system om du bara skapar dessa användare för Samba-tjänsten och inte vill ge dem åtkomst till lokalt system.

passwd

passwd1

kommando smbpasswd-a kan användas för att lägga till en användare i lösenordsdatabasen under /etc/samba/ för Samba-autentisering. Ställ in Samba-användare med kommandot smbpasswd.

smbpasswd

skapa en smbgroup och Lägg till smbuser3-och smbuser4-användare

group-add

öppna nu huvudkonfigurationsfilen för Samba

vi-smb-conf

smb.conf-filen innehåller två typer av kommentarrader.

  • hashsymbolen ( # ) används beskriver en funktion
  • semikolon (;), används för att kommentera funktionen (Lägg till; för att inaktivera funktionen, Ta bort ; för att aktivera funktionen)

anteckna värdet på workgroup directory

workgroup-mygroup

det skulle vara samma på nätverk för sömlös anslutning

navigera nu till avsnittet Dela definitioner som standard Samba delar automatiskt hemkatalogen för den inloggade användaren som definieras i de första fyra raderna i detta avsnitt.
browseable = ingen gräns användare till sin egen hemkatalog. Samba läser hemkataloginformation från/etc / passwd fil så du behöver inte ange hemkataloger sökvägen.
share-home

Stäng smb.conf-fil nu och anteckna serverns IP-adress

serverip

det är alla konfigurationer som vi behöver just nu på servern.

konfigurera Samba-klient på Linux-system

på Samba-klient efter RPM krävs

  • samba-klient
  • Samba-common
  • samba-winbind-klient

rpm-qa-samba-client

montera RHEL 6-skivan i media-mappen och flytta till Paketkatalogen

cd-media-ls-package

installera RPM om det behövs.

rpm-samba-client

Kontrollera anslutning från Samba Server.

ping-server

försök att lista Dela från Samba server med smbuser1

client-login

för att verifiera ”dela användarhemkatalog”, lista delningen från smbuser5 och skapa en sambatmp-mapp. Inloggad från smbuser5 och montera sin hemkatalog i sambatmp mapp. För att se till att användaren har skrivbar behörighet skapar du också en testfil.

smbuser5-login

gå på serversystem och inloggad från smbuser5 och verifiera testningen.

ls-smbuser5

vi har framgångsrikt konfigurerat Samba-klient på Linux-klientsystem.

konfigurera fönster 7 som Samba-klientsystem

öppna datoregenskaper

computer-properties

klicka på Ändra inställning

change-setting

klicka på Ändra

change-rename

ändra arbetsgruppens namn till MYGROUP

mshome-workgroup

systemstart krävs, bekräfta omstart

restart-ok

efter omstart av systemet Kontrollera anslutningsformulär Server

winconnectivity

öppna nätverk och klicka på serversystem

win-network

logga in från smbuser1

smbuerlogin

användaren kommer att loggas i sitt hem katalog

smbuser

vi har framgångsrikt konfigurerat window 7 som ett klientsystem för Samba.

skapa en sharedata-mapp på servern. Bevilja läs-och skrivåtkomst till allmänheten på sharedata-mappen. Dela offentligt den här mappen. Testformulär linux och fönster klient.

på servern skapa en / sharedata mapp. Den här mappen skapas från root-användare så att våra användare inte kommer att kunna skriva i den här mappen. Ändra dess tillstånd 777. Konfigurera SELinux Boolean . Öppna nu smb.conf-fil

mkdir-sharedata

denna andel av / sharedata delar en gemensam plats där användaren kan ladda ner / ladda upp / läsa filerna. I det här slutet av filen Lägg till följande strofe och spara filen

 # Common location for people to share files comment = common location file sharing path = /sharedata read only = no public = yes 

smb-conf-sharedata

starta om smb-tjänsten

restart-smb

på linuxclient skapa en tmpdata-katalog och montera sharedata-mappen i den. Skapa testfiler.

mount-sharedata

sharedata är en tillfällig mapp och vi har delat den med full behörighet för alla. Det betyder att andra användare ska kunna läsa / skriva filen från smbuser5. För att testa det gå på fönstersystem och öppna serversystem från nätverket. Öppna sharedata-mappen och läs filen

read-file-on-window

ta bort den här filen.

confirm-delete-window

skapa en mapp och skapa fil i den

create-file-window

kontrollera dessa på serversystemet.

check-on-server

i ovanstående exempel delade vi en mapp i försäkra sätt där alla användare kan ta bort andra fil och mapp. Nu gör det lite säkert. Gå server och ändra behörighet till 1777

set-stickybit-sharedata

på linuxclient inloggad från smbuser5 och skapa en fil

linuxclient-exmpale-stickybit

på fönster vi loggas från smbuser1, försök att läsa filen.

read-stickybit-file-window

försök nu ta bort den här filen.

try-to-delete-sticky-bit-file

det kommer att nekas

sticky-bit-error-delete

så här nekar du Användare i Samba

Samba låter dig neka användare / användare från delade resurser. Att neka smbuser5 från sharedata open / etc / samba / smb.conf och ändra konfigurationsvärde för att följa och spara filen

deny-smbuser5-server

ladda om smb-tjänsten

reload-smb

på linuxclient systemet först försöka montera sharedata från smbuser5 och än från smbuser1

deny-smbuser5-clinet

hur man begränsar samba till grupp

vi har skapat en grupp smbgroup ovan i denna handledning. Konfigurera nu Samba för att endast tillåta åtkomst till den här gruppen.

på servern ändra gruppen sharedata och uppdatera behörigheten till 1770. Öppna smb.conf-fil

chgrp-sharedata

uppdatera strofen och spara filen

group-samba-share

ladda om smb-tjänsten

reload-smb

på linux-klienten först försöka med smbuser5 som inte är medlem i smbgroup och senare försöka med smbuser3 som är medlem i smbgroup

group-samba-linuxclient

hur man begränsar samba till användare

nu delar vi bara för användare/ användare. Konfigurera nu Samba toallow endast smbuser1 på sharedata mapp.

på servern gör smbuser1 ägare / sharedata mapp och uppdatera tillstånd. Öppna smb.conf

samba-user-share

ändra strofen och spara filen

samba-user-share-config

ladda om filen

reload-smb

på linuxclient försök först med andra användare och senare försök med smbuser1

single-user-samba

hittills i den här artikeln har vi konfigurerat olika åtkomstnivåer för Samba share. För RHCE 6-examen kom alltid ihåg att filbehörigheter, filsystemmonteringsalternativ, SELinux Booleans, ACL inte kan åsidosättas av Samba. Det betyder att om en katalog inte har skrivbehörighet och du har Samba-inställning writeable = yes, tillåter det inte att skriva. Detta är anledningen till att vi först uppdaterar filsystembehörigheten än vi ställer in Samba-inställningar.

under RHCE 6 examen efter 2 kommandon kan vara mycket praktiskt för dig.

testparm

testparm kommandot kommer att kontrollera smb.conf-fil för interna fel. Om produktionen av detta kommandon tillbaka utan några fel, du använder konfigurationsfilen.

testparm

smbstatus

detta kommando listar den aktuella Samba-anslutningen.

smbstaus

för RHCE 6 examen bör också veta följande direktiv smb.conf-fil

hur man ändrar samba servernamn

som standard Samba värdnamn som NetBIOS namn. NetBIOS är namn som andra klienter ser i nätverksbläddringslistor som de som visas från ett Microsoft net view-kommando eller ett vanligt Linux smbclient-kommando. För att ändra Samba servernamn Avkommentera och ändra värdet av följande direktiv.

; netbios name = MYSERVER

så här ändrar du samba arbetsgruppsnamn

standard arbetsgruppsnamn för Samba är MYGROUP. Du kan uppdatera det formulär smb.conf-fil. För att ändra standard arbetsgruppsnamn uppdatera värdet för följande direktiv.

workgroup = MYGROUP

hur begränsa samba till lokalt nätverk

för att begränsa åtkomsten till det angivna nätverket, Avkommentera följande direktiv och ge ange nätverket.

; hosts allow = 127. 192.168.12. 192.168.13.

om du avkommenterar utan att ändra värdet skulle det begränsa åtkomsten till nätverken med 192.168.12.0 och 192.168.13.0 nätverks IP-adresser, liksom den lokala datorn (127.): Du kan också konfigurera hosts deny-direktivet. Konfigurera värd Tillåt / neka direktiv här bara om du vill behöva göra ändringar globalt. Individuellt delade kataloger kan också konfigureras med värdar Tillåt / neka. Så om du söker efter individuellt konfigurationer gör det i sin egen sektion.

network-related-opration

det är allt för den här artikeln.

Lämna ett svar

Din e-postadress kommer inte publiceras.