UNIX netværks filsystem. NFS: Netværksfilsystem

1.4 Netværk filsystem

CIFS-filsystemet dominerer markedet for netværksfilsystemer Windows platforme. På UNIX-platformen er den vigtigste netværksfilsystemet (Netværk Filsystem- NFS). Derudover anses NFS for at være det første bredt anvendte filsystem, der dateres tilbage til midten af ​​1980'erne. Dog trods nogle generelle funktionalitet CIFS og NFS (netværksfilsystemer, der giver klienter adgang til serverressourcer), disse systemer har helt andre arkitektoniske funktioner. Med udgivelsen af ​​NFS version 4 er nogle forskelle blevet revideret.
CIFS-protokollen gemmer servicedata, der er specifikke for hver klient. Før version 3 beholdt NFS-filsystemet ikke klientstatus, hvilket ændrede sig i version 4.
NFS-klienten "forhandler" ikke med NFS-serveren for at etablere en session. Der tages sikkerhedsforanstaltninger for hele sessionen eller hver kommunikation mellem klienten og serveren. Implementering sidste mulighed uoverkommeligt dyrt, så NFS lægger ansvaret for sikkerheden på klienten. Serveren "antager", at bruger-id'erne på klient- og serversystemerne er de samme (og klienten har verificeret brugerens identitet, før han tillader ham at registrere sig under specificeret identifikator). Derudover giver NFS et vist niveau af sikkerhed ved at kontrollere listen over filsystemer, som en klient kan montere. Hver gang en CIFS-klient åbner en fil, modtager et filhåndtag (det vil sige servicedata, som serveren skal gemme) og bruger det til at udføre læse- eller skriveoperationer på klientsiden, forespørger NFS-serveren serveren, som returnerer filen håndtere. Denne filbeskrivelse behandles af klienter, der understøtter standarderne NFS 3 og NFS 2. Klienten cacher den resulterende filbeskrivelse og forventer, at deskriptoren altid peger på den samme fil.
For dem, der er bekendt med UNIX, består en filbeskrivelse typisk af et inodenummer, en inodegenereringstælling og det fil-id, der er knyttet til diskpartitionen. Det er tilstrækkeligt at sige, at inoden er en ekstremt vigtig datastruktur, der bruges i UNIX-filsystemer. Der gemmes tilstrækkelig information til at fjerne håndtag, der er cachelagret af klienter, hvis den tilsvarende fil for håndtaget er ændret, og håndtaget skal pege på en anden fil. For eksempel, hvis en fil slettes, og en fil med samme navn kopieres i stedet for, vil inodegenereringstælleren blive ændret, og filbeskrivelsen, som er cachelagret af klienten, vil være ugyldig. NFS 4-filsystemet har forskelle i implementering.
Nogle NFS-klienter udfører cachelagring på klientsiden ved at gemme data på diske, hvilket svarer til CIFS-cachelagring. Nogle NFS-klienter ændrer også værdien af ​​timeouts afhængigt af serverens responstid. Jo langsommere serveren reagerer, jo større timeoutværdi og omvendt.
NFS-filsystemet blev designet til at være transportuafhængigt og brugte oprindeligt transporten UDP protokol. Forskellige typer NFS kan bruge TCP og andre protokoller.

1.4.1 Netværksfilsystem version 3

NFS 3-filsystemet forbedrer ydeevnen, især for store filer, ved at tillade klienten og serveren dynamisk at vælge den maksimale mængde data, der overføres i én logisk element pakke, når du skriver eller læser. I NFS 2-filsystemet var pakkestørrelsen begrænset til 8 KB. Med andre ord kunne klienten maksimalt sende 8 KB i en skriveanmodning, og serveren kunne maksimalt sende 8 KB i et læseanmodningssvar. Derudover har NFS 3 omdefineret filforskydninger og datastørrelser. Disse er nu 64-bit værdier i stedet for 32-bit i NFS 2.
Nedenfor er nogle af funktionerne i NFS 3.
■ Filbeskrivelser i NFS 3 er variabel størrelse; deres maksimale størrelse er 64 bit.
■ NFS 3-filsystemet giver klienter og servere mulighed for at vælge maksimal størrelse fil- og mappenavne.
■ NFS 3 definerer en liste over fejl, som serveren kan returnere til klienter. Serveren skal returnere en af ​​de angivne fejl eller slet ingen fejl.
■ I NFS 3 har serveren lov til at cache data, som klienten sendte med en skriveanmodning. Serveren kan cache data og sende et svar på anmodningen til klienten, før dataene skrives til disken. Der er også tilføjet en COMMIT-kommando, som giver klienten mulighed for at sikre, at alle indsendte data er blevet skrevet til disken. Dette gør det muligt at finde en balance mellem at forbedre ydeevnen og bevare dataintegriteten.
■ NFS 3 reducerer antallet af anmodnings-/svarhandlinger mellem klient og server. For at gøre dette sendes filattributdata sammen med den første anmodning. I NFS 2 skulle klienten indhente filnavne og en deskriptor for hver fil, først derefter blev filattributterne overført.

1.4.2 Netværksfilsystem version 4

NFS 4 gennemgik de grundlæggende principper fuldstændigt og implementerede mange CIFS-specifikke funktioner, hvilket i høj grad forstyrrede nogle NFS-apologeter. Hvis du ser på historien om netværksfilsystemer, kan du se, at NFS er blevet udbredt. SMB-filsystemet blev designet med styrkerne og svagheder NFS og nu, af i det mindste blandt klienter er CIFS/SMB mere almindelige, og NFS er under udvikling, idet der tages højde for alle ulemper og fordele ved CIFS/SMB. Det følgende fremhæver funktioner, der blev føjet til NFS 4 for at forbedre ydeevne, sikkerhed og interoperabilitet med CIFS.
■ NFS 4 introducerede COMPOUND-anmodningen, som giver dig mulighed for at pakke flere anmodninger i en enkelt anmodning og flere svar i et enkelt svar. Denne innovation er designet til at forbedre ydeevnen ved at reducere netværksbelastningen og reducere latens, når anmodninger og svar rejser på tværs af netværket. Hvis dette lyder lidt som CIFS AndX SMB-funktionen (se afsnit 3.3.5.1), så er det måske ikke en simpel tilfældighed.
■ Network File System version 4 låner nogle funktioner fra Suns WebNFS. Især NFS 4 understøtter nogle sekundære protokoller i basisspecifikationen, hvilket gør NFS mere velegnet til brug med firewalls. I NFS 3 og nyere tidligere versioner en speciel protokol blev brugt til at montere serverdelingen i det lokale filsystemtræ. Fordi mount-protokoltjenesten ikke havde en tildelt TCP-port eller UDP, sender klienten først en anmodning til portmapper-dæmonen, som giver portnummeret, som mount-tjenesten lytter efter anmodninger på. Ud over NFS deltog således monterings- og portkortlægningsprotokoller i processen. Desuden, da mount-tjenesten kunne bruge en vilkårlig port, blev det meget vanskeligt at konfigurere firewallen. I NFS 4 blev mount- og portmapping-protokollerne fjernet. Derudover var låsning inkluderet i basis NFS-protokolspecifikationen, og NLM-protokollen (Network Lock Manager), som blev brugt i tidligere versioner af NFS, er blevet permanent forældet.
■ NFS 4 filsystem kræver brug af transportprotokol, som giver mulighed for at registrere overbelastning i netværket. Det betyder, at NFS-klienter og -servere gradvist vil flytte til TCP protokol i stedet for UDP, som normalt bruges med NFS 3.
■ NFS 2 og NFS 3 tillod brugen af ​​det amerikanske tegnsæt. ASCII eller ISO Latin 1. Dette forårsagede problemer, da en klient, der brugte et tegnsæt, oprettede en fil, og denne fil blev tilgået af en klient, der brugte et andet tegnsæt. NFS 4 bruger UTF-8-tegnsættet, som understøtter kompakt komprimering af 16- og 32-bit tegn til transmission over netværket. Derudover indeholder UTF-8-tegnsættet nok information til at undgå problemer, når du opretter en fil med et tegnsæt og får adgang til en fil med et andet tegnsæt.
■ NFS 4-filsystemet kræver, at klienten håndterer filbeskrivelser separat. I NFS 3 kunne klienten cache håndtaget som et objekt, mens serveren sikrede, at håndtaget altid pegede på en fil. NFS 4 definerer to typer filbeskrivelser. Den ene kaldes persistente fildeskriptorer og har evnerne til filbeskrivelser fra NFS 3. Den anden, midlertidige fildeskriptorer, antager, at deskriptoren udløber efter et bestemt tidsrum eller begivenhed. Dette er en funktion til servere, hvis filsystemer (såsom NTFS) ikke kan levere en ensartet kortlægning mellem viste filer og håndtag.
■ NFS 4 tilføjer understøttelse af OPEN- og CLOSE-operationer, hvis semantik tillader interaktion med CIFS-klienter. OPEN-kommandoen opretter tilstandsdata på serveren.
■ Understøttelse af OPEN-anmodningen i NFS 4 giver klienten mulighed for at udstede en åben anmodning om en fil, hvis struktur vil ligne åbne anmodninger Windows-applikationer. Udvælgelse er også understøttet deling fil med andre klienter eller eksklusiv adgang til filen.

1.4.2.1 NFS 4-sikkerhed

NFS 4-filsystemet giver dig mulighed for at forbedre sikkerheden for lagrede data. Især NFS 4 tilføjede understøttelse mere fil attributter. En af disse attributter er en Windows NT-stiladgangskontrolliste (ACL). Dette giver mulighed for forbedret interoperabilitet mellem filsystemer og en stærkere sikkerhedsstruktur.
Mens brugen af ​​sikkerhedsfunktioner i NFS 2 og NFS 3 kun blev anbefalet, er det i NFS 4 blevet obligatorisk. NFS 4-filsystemet kræver implementering af en sikkerhedsmekanisme, der bruger RPCSEC_GSS (Generic Security Services)-grænsefladen generelt og Kerberos 5/LIPKEY-protokollerne i særdeleshed. Bemærk, at RPCSEC_GSS simpelthen fungerer som en API og transportmekanisme for sikkerhedsrelaterede etiketter og data. NFS 4-filsystemet giver mulighed for flere godkendelses- og sikkerhedsskemaer og muligheden for at vælge det passende skema til klienter og servere.
Lad os være lidt opmærksomme på at studere LIPKEY-teknologien, som bruger en kombination af symmetrisk og asymmetrisk kryptering. Klienten krypterer brugerdata og adgangskode ved hjælp af en tilfældigt genereret 128-bit nøgle. Kryptering udføres vha symmetrisk algoritme, dvs. den samme nøgle skal bruges til dekryptering. Da serveren har brug for denne nøgle til at dekryptere meddelelser, skal en tilfældigt genereret nøgle sendes til serveren. Klienten krypterer nøglen (som er tilfældigt genereret) med offentlig nøgle server. Serveren dekrypterer dataene med sine privat nøgle, udtrækker den symmetriske nøgle og dekrypterer brugerdata og adgangskode.
Klienter kan godkende servere ved hjælp af et servercertifikat, og certifikatmyndighedstjenester bruges til at verificere certifikatet. En af de populære hackingmetoder er at opsnappe "fremmede" datapakker og derefter sende dem efter en vis periode. Når du bruger Kerberos, tilføjer NFS-filsystemet et tidsstempel til hver pakke. Serverregistreringerne modtog for nylig tidsstempler og sammenligner dem med tidsstemplerne for nye RPC-pakker. Hvis pakkernes tidsstempler er ældre end dem, der tidligere er modtaget af serveren, ignorerer serveren de modtagne pakker

1.5 Adgangsproblemer ved brug af flere protokoller

Flere virksomheder er begyndt at tilbyde systemer, der samtidig understøtter CIFS, NFS og andre netværksfilsystemklienter. Leverandører har gjort en masse arbejde for at overvinde de tekniske udfordringer, der opstår fra kunder, der potentielt bruger forskellige operativsystemer og filsystemer. Bemærk venligst, at problemerne ikke opstår med selve dataene, men med filernes metadata. En simpel test for tilstedeværelsen lignende problemer filen vil blive kopieret fra serveren til klienten og tilbage til serveren (eller omvendt). Når filen er placeret i den indledende ressource, skal metadataene indeholde basisværdierne, dvs. Filtilladelser og tidsstempler bør ikke ændres. Hvis dette ikke er sandt, er problemet blevet opdaget.
Følgende er eksempler på nogle mulige tekniske problemer.
■ Brug af forskellige operativsystemer forskellige metoder for at spore bruger- og gruppeadgangstilladelser.
■ Forskellige operativsystemer og filsystemer har forskellig semantik til åbning og låsning af filer.
■ Filnavnekonventioner håndteres forskellige veje. Forskellige filsystemer har forskellige repræsentationer af den maksimale størrelse af et filnavn, et filnavns store og små bogstaver og det tilladte tegnsæt i navne.
■ Data og deres struktur er forskellige i forskellige filsystemer; for eksempel sporer nogle filsystemer to tidsstempler, mens andre sporer tre tidsstempler (det tidspunkt, hvor filen sidst blev tilgået, filen blev sidst ændret, og filen blev oprettet). Selvom begge filsystemer sporer to tidsstempler, kan måleenhederne variere. Et andet eksempel er enheder til måling af forskydninger i filer. Nogle filsystemer understøtter 32-bit offsets, og nogle understøtter 16- eller 64-bit offsets.
■ Problemer med adressering af viste låse. CIFS-serveren gennemtvinger låsning: Hvis en klient har låst et område af en fil, vil enhver skriveoperation til den filregion af en anden klient resultere i en fejl. Tvungen låsning understøttes dog ikke af NFS-servere. Derfor skal du vælge, om låsen skal håndhæves, hvilket vil resultere i, at der sendes en fejlmeddelelse til NFS-klienten.

dette øjeblik Du skal have en fungerende TCP/IP-forbindelse til dit netværk. Du bør være i stand til at pinge andre computere på netværket, og hvis du har konfigureret gatewayen korrekt, bør du også kunne pinge computere på internettet. Som bekendt, hovedmål Tilslutning af en computer til et netværk er at få adgang til information. Mens nogle mennesker måske forbinder en computer til et netværk, bare fordi, vil de fleste gerne dele og få adgang til filer og printere. De vil gerne have adgang til dokumenter på internettet eller spille onlinespil. Ved at installere TCP/IP-understøttelse og det nødvendige software, du får det hele; Men ved kun at installere TCP/IP-understøttelse vil funktionaliteten være meget begrænset. At give og modtage generel adgang til filer, bliver vi nødt til at overføre dem frem og tilbage ved hjælp af FTP eller SCP. Vi kan ikke se på vores ny computer med Slackware filtræ via " ikoner netværk” eller “Hele netværket” fra Windows-computere. Vi vil gerne have konstant adgang til filer på andre Unix-maskiner.

Ideelt set vil vi gerne bruge netværks filsystem, hvilket giver os mulighed for at have gennemsigtig adgang til filer på computere. De programmer, vi bruger til at arbejde med information, der er gemt på computere, behøver faktisk ikke engang at vide, hvilken computer den er gemt på. påkrævet fil. De behøver kun at vide, at filen eksisterer og en måde at få den på. Resten er operativsystemets opgave, som giver adgang til denne fil ved hjælp af tilgængelige lokale og netværksfilsystemer. De to mest brugte netværksfilsystemer er SMB (implementeret via Samba) og NFS.

5.6.1. SMB/Samba/CIFS

SMB (Server Message Block) er en efterkommer af den ældre NetBIOS-protokol, der oprindeligt blev udviklet af IBM til deres LAN Manager-produkt. Microsoft selskab til gengæld har jeg altid været interesseret i NetBIOS og dets efterfølgere (NetBEUI, SMB og CIFS). Samba-projektet begyndte i 1991, da det blev skrevet til at levere kommunikation mellem IBM PC'en og Unix server. I dag er deling af filer og printtjenester over et SMB-netværk den foretrukne metode for næsten hele den civiliserede verden, da Windows understøtter det.

Samba-konfigurationsfilen /etc/samba/smb.conf er en af ​​de mest veldokumenterede konfigurationsfiler som du kan finde. Der er færdige eksempler med delte ressourceindstillinger til din rådighed, så du kan se og ændre dem efter dine behov. Hvis du vil have endnu mere kontrol, er smb.conf man-siden til din rådighed. Da Samba har så god dokumentation, vil vi ikke omskrive den her. Lad os dog hurtigt gennemgå hovedpunkterne.

smb.conf er opdelt i flere sektioner: en sektion pr. share, plus en global sektion til konfiguration af parametre, der bruges overalt. Nogle parametre er kun gyldige i den globale sektion, og nogle er kun gyldige uden for den. Husk, at en global sektion kan tilsidesættes af enhver anden sektion. Bag Yderligere Information se manualsiderne.

Du vil højst sandsynligt ønske at redigere din smb.conf fil, så den afspejler dine lokale netværksindstillinger. Vi råder dig til at ændre følgende punkter:

Dette vil være beskrivelsen af ​​din Slackware-computer, vist i mappen My Network Places (eller hele netværket).

Du vil næsten helt sikkert bruge brugersikkerhedsniveauet på dit Slackware-system.

Hvis adgangskodekryptering ikke er aktiveret, vil du ikke være i stand til at bruge Samba med NT4.0, Win2k, WinXP og Win2003 systemer. Til tidligere versioner Windows-operativsystemer at give adgang til fælles ressourcer ingen kryptering var påkrævet.

SMB er en autentificeret protokol, dvs. du kan angive et brugernavn og en adgangskode for at drage fordel af denne tjeneste. Vi fortæller samba-serveren, at brugernavne og adgangskoder er korrekte ved hjælp af kommandoen smbpasswd. smbpasswd gør det muligt at tilføje offentlige nøgler som almindelige brugere, og brugermaskiner (SMB kræver, at du tilføjer computernes NETBIOS-navne som brugermaskiner, og derved begrænser antallet af computere, hvorfra godkendelse kan udføres).

Det er vigtigt at overveje det givet navn Bruger- eller maskinnavnet skal allerede eksistere i filen /etc/passwd. Du kan opnå dette ved at bruge kommandoen adduser. Bemærk, at når du bruger kommandoen adduser til at tilføje et computernavn, skal du tilføje det med et dollartegn ("$"). Dog dette Ikke skal gøres, når du arbejder med smbpasswd. Værktøjet smbpasswd tilføjer selve dollartegnet. Overtrædelse af denne regel ved brug af adduser vil resultere i en fejl ved tilføjelse af maskinnavnet til samba.

#adduser maskine$

5.6.2. Netværksfilsystem (NFS)

NFS ( Netværksfil System) blev oprindeligt skrevet af Sun til Solaris, deres implementering af Unix-systemet. Og selvom det er meget nemmere at konfigurere og konfigurere sammenlignet med SMB, er NFS meget mindre sikkert. Hoved svage punkt sikkerhed er letheden ved at erstatte bruger- og gruppeidentifikatorer for én maskine med identifikatorer fra en anden maskine. NFS-protokollen implementerer ikke godkendelse. Det er oplyst, at fremtidige versioner af NFS-protokollen vil forbedre sikkerheden, men det er i skrivende stund endnu ikke gjort.

NFS konfigureres gennem filen /etc/exports. Når du downloader standard fil/etc/exports til editoren, vil du se tom fil med en kommentar øverst på to linjer. Vi bliver nødt til at tilføje en linje til eksportfilen for hver af de mapper, som vi ønsker at eksportere, med en liste over de klientarbejdsstationer, der får adgang til den mappe. For eksempel, hvis vi skal eksportere mappen /home/foo til arbejdsstation Bar, skal vi tilføje følgende linje til vores /etc/exports-fil:

Som du kan se, er der flere forskellige muligheder, men de fleste af dem burde fremgå af dette eksempel.

NFS antager, at en given bruger på én maskine på netværket har den samme identitet på alle andre maskiner. Når en NFS-klient forsøger at læse eller skrive til en NFS-server, sendes UID'et som en del af læse-/skriveanmodningen. Dette UID betragtes som det samme, som hvis anmodningen blev foretaget fra den lokale maskine. Som du kan se, hvis nogen kan tilfældigt angiv det angivne UID, når du får adgang til ressourcer på fjern maskine, problemer kan og sker. Et middel til delvist at undgå dette er at montere alle mapper med root_squash-indstillingen. Dette tilsidesætter UID'et for enhver bruger, der hævder at være root til et andet UID, og ​​forhindrer således root-adgang til filer og mapper i den eksporterede mappe. Det ser ud til, at root_squash er aktiveret som standard af sikkerhedsmæssige årsager, men forfatterne anbefaler stadig, at du udtrykkeligt angiver det i din /etc/exports-fil.

Du kan også eksportere en mappe på serveren direkte fra kommandolinje ved at bruge exportfs-kommandoen som vist nedenfor:

# exportfs -o rw,no_root_squash Bar:/home/foo

Denne kommando eksporterer mappen /home/foo til "Bar"-computeren og giver den læse-/skriveadgang. Derudover har NFS-serveren ikke root_squash-parameteren aktiveret, hvilket betyder, at enhver bruger på Bar med UID "0" (UID-rod) vil have de samme privilegier på serveren som root. Syntaksen ser ret mærkelig ud (normalt når du angiver mappe i formen computer:/directory/file, henviser du til en fil i en mappe på den angivne computer).

Du kan finde flere oplysninger om eksportfilen på man-siden.

Netværkstjenester

Foredrag 10

Sættet af server- og klientdele af operativsystemet, der giver adgang til en bestemt type computerressource via et netværk, kaldes netværkstjeneste . Klientdelen laver netværksanmodninger til serverdelen af ​​en anden computer. Serverdelen opfylder anmodninger til lokale serverressourcer. Klientdelen er aktiv, serverdelen er passiv.

I netværkskommunikation spiller netværksadgang til filsystemet en væsentlig rolle. I dette tilfælde dannes klient- og serverdelene sammen med netværksfilsystemet filtjeneste

En nøglekomponent i et distribueret OS er netværksfilsystemet. Et netværksfilsystem understøttes af en eller flere computere, der gemmer filer (filservere)

Klient computere vedhæfter eller monterer disse filsystemer til deres lokale filsystemer

Filtjeneste omfatter serverprogrammer og klientprogrammer, der interagerer over netværket ved hjælp af en protokol.

Filtjenester inkluderer selve filtjenesten ( filhandlinger) og adressebogstjeneste (indeksstyring)

Netværksmodel filtjeneste omfatter følgende elementer:

Lokalt filsystem (FAT, NTFS)

Lokalt filsystem grænseflade ( systemopkald)

Netværksfilsystemserver

Netværksfilsystemklient ( Windows Stifinder, UNIX-skal etc.)

Netværksfilsystemgrænseflade (gentager lokale filsystemkald)

Network File System Client-Server Protocol (SMB-Server Message Block for Windows, NFS (Network File System) og FTP ( Filoverførsel protokol) for UNIX)

Netværksfilsystemgrænseflade

Der er flere typer grænseflader, som er kendetegnet ved:

Filstruktur. De fleste netværksfilsystemer understøtter flade filer

Filændringsmuligheder. De fleste netværksfilsystemer har mulighed for at ændre en fil. Nogle distribuerede filsystemer forbyder ændringsoperationer. Kun oprette og læse er muligt. For sådanne filer er det lettere at organisere caching og replikering.

Filadskillelse semantik:

Semantik UNIX (centraliseret). Hvis en læsning følger flere skrivninger, læses den seneste opdatering. Dette princip er også muligt i et distribueret filsystem, forudsat et filserver og manglen på filcache på klienten.

Session semantik.Ændringer begynder, efter at filen er åbnet, og fuldføres, når filen er lukket. Med andre ord, for andre processer er ændringer kun synlige, efter at filen er lukket. I I dette tilfælde Der er et problem med at dele en fil. Semantik af uforanderlige filer. Filen kan kun oprettes og læses. Du kan også genskabe filen under et andet navn. Derfor kan filen ikke ændres, men kan erstattes med en ny fil. Der er intet delingsproblem.



Transaktionsmekanisme. Dette er en måde at arbejde med delte filer på ved hjælp af en transaktionsmekanisme (udelelige operationer)

Adgangskontrol. For eksempel er der for Windows NT/2000 to mekanismer: på biblioteksniveau (for FAT) og på filniveau (NTFS)

Adgangsenhed. Fuld fil upload/download model (FTP). Den anden model er brugen af ​​filoperationer.

På dette tidspunkt bør du have en fungerende TCP/IP-forbindelse til dit netværk. Du bør være i stand til at pinge andre computere på netværket, og hvis du har konfigureret gatewayen korrekt, bør du også kunne pinge computere på internettet. Som bekendt er hovedformålet med at tilslutte en computer til et netværk at få adgang til information. Mens nogle mennesker måske forbinder en computer til et netværk, bare fordi, vil de fleste gerne dele og få adgang til filer og printere. De vil gerne have adgang til dokumenter på internettet eller spille onlinespil. Ved at installere TCP/IP-understøttelse og den nødvendige software i dit nye Slackware-system, har du det hele; Men ved kun at installere TCP/IP-understøttelse vil funktionaliteten være meget begrænset. For at levere og dele filer skal vi overføre dem frem og tilbage ved hjælp af FTP eller SCP. Vi kan ikke se filtræet på vores nye computer med Slackware gennem ikonerne "Network Neighborhood" eller "Whole Network" fra Windows-computere. Vi vil gerne have konstant adgang til filer på andre Unix-maskiner.

Ideelt set vil vi gerne bruge netværks filsystem , hvilket giver os mulighed for at have gennemsigtig adgang til filer på computere. De programmer, som vi bruger til at arbejde med oplysninger, der er gemt på computere, behøver faktisk ikke engang at vide, på hvilken computer den nødvendige fil er gemt. De behøver kun at vide, at filen eksisterer og en måde at få den på. Resten er operativsystemets opgave, som giver adgang til denne fil ved hjælp af tilgængelige lokale og netværksfilsystemer. De to mest brugte netværksfilsystemer er SMB (implementeret via Samba) og NFS.

5.6.1. SMB/Samba/CIFS

SMB (Server Message Block) er en efterkommer af den ældre NetBIOS-protokol, der oprindeligt blev udviklet af IBM til deres LAN Manager-produkt. Microsoft har til gengæld altid været interesseret i NetBIOS og dets efterfølgere (NetBEUI, SMB og CIFS). Samba-projektet begyndte i 1991, da det blev skrevet til at levere kommunikation mellem en IBM-pc og en Unix-server. I dag er deling af filer og printtjenester over et SMB-netværk den foretrukne metode for næsten hele den civiliserede verden, da Windows understøtter det.

Samba konfigurationsfilen /etc/samba/smb.conf er en af ​​de bedst dokumenterede konfigurationsfiler du finder. Der er færdige eksempler med delte ressourceindstillinger til din rådighed, så du kan se og ændre dem efter dine behov. Hvis du vil have endnu mere kontrol, er smb.conf man-siden til din rådighed. Da Samba har så god dokumentation, vil vi ikke omskrive den her. Lad os dog hurtigt gennemgå hovedpunkterne.

smb.conf er opdelt i flere sektioner: en sektion pr. share, plus en global sektion til konfiguration af parametre, der bruges overalt. Nogle parametre er kun gyldige i den globale sektion, og nogle er kun gyldige uden for den. Husk, at en global sektion kan tilsidesættes af enhver anden sektion. Se venligst manualsiderne for mere information.

Du vil højst sandsynligt ønske at redigere din smb.conf fil, så den afspejler dine lokale netværksindstillinger. Vi råder dig til at ændre følgende punkter:

Skift arbejdsgruppeværdien til det domæne/arbejdsgruppe, der bruges på dit LAN.

Dette vil være beskrivelsen af ​​din Slackware-computer, vist i mappen My Network Places (eller hele netværket).

Du vil næsten helt sikkert bruge brugersikkerhedsniveauet på dit Slackware-system.

Hvis adgangskodekryptering ikke er aktiveret, vil du ikke være i stand til at bruge Samba med NT4.0, Win2k, WinXP og Win2003 systemer. Tidligere versioner af Windows-operativsystemer krævede ikke kryptering for at give adgang til delte ressourcer.

SMB er en autentificeret protokol, dvs. du kan angive et brugernavn og en adgangskode for at drage fordel af denne tjeneste. Vi fortæller samba-serveren, at brugernavne og adgangskoder er korrekte ved hjælp af kommandoen smbpasswd. smbpasswd tillader brugen af ​​offentlige nøgler til at tilføje både almindelige brugere og maskinbrugere (SMB kræver, at du tilføjer NETBIOS-navnene på maskinerne som maskinbrugere, og derved begrænser antallet af maskiner, hvorfra godkendelse kan udføres).

Det er vigtigt at bemærke, at det angivne brugernavn eller maskinnavn allerede skal eksistere i filen /etc/passwd. Du kan opnå dette ved at bruge kommandoen adduser. Bemærk, at når du bruger kommandoen adduser til at tilføje et computernavn, skal du tilføje det med et dollartegn ("$"). Dog dette Ikke skal gøres, når du arbejder med smbpasswd. Værktøjet smbpasswd tilføjer selve dollartegnet. Overtrædelse af denne regel ved brug af adduser vil resultere i en fejl ved tilføjelse af maskinnavnet til samba.

# adduser maskine$

5.6.2. Netværksfilsystem (NFS)

NFS (Network File System) blev oprindeligt skrevet af Sun til Solaris, deres implementering af Unix-systemet. Og selvom det er meget nemmere at konfigurere og konfigurere sammenlignet med SMB, er NFS meget mindre sikkert. Den største sikkerhedssvaghed er letheden ved at erstatte bruger- og gruppeidentifikatorer på én maskine med identifikatorer fra en anden maskine. NFS-protokollen implementerer ikke godkendelse. Det er oplyst, at fremtidige versioner af NFS-protokollen vil forbedre sikkerheden, men det er i skrivende stund endnu ikke gjort.

NFS konfigureres gennem filen /etc/exports. Når du indlæser standardfilen /etc/exports i editoren, vil du se en tom fil med en kommentar på de to øverste linjer. Vi bliver nødt til at tilføje en linje til eksportfilen for hver af de mapper, som vi ønsker at eksportere, med en liste over de klientarbejdsstationer, der får adgang til den mappe. For eksempel, hvis vi skulle eksportere mappen /home/foo til Bar-arbejdsstationen, skulle vi tilføje følgende linje til vores /etc/exports-fil:

Som du kan se, er der flere forskellige muligheder, men de fleste af dem burde fremgå af dette eksempel.

NFS antager, at en given bruger på én maskine på netværket har den samme identitet på alle andre maskiner. Når en NFS-klient forsøger at læse eller skrive til en NFS-server, sendes UID'et som en del af læse-/skriveanmodningen. Dette UID betragtes som det samme, som hvis anmodningen blev foretaget fra den lokale maskine. Som du kan se, hvis nogen vilkårligt kan angive et givet UID, når de får adgang til ressourcer på en ekstern maskine, kan og sker der problemer. Et middel til delvist at undgå dette er at montere alle mapper med root_squash-indstillingen. Dette tilsidesætter UID'et for enhver bruger, der hævder at være root til et andet UID, og ​​forhindrer således root-adgang til filer og mapper i den eksporterede mappe. Det ser ud til, at root_squash er aktiveret som standard af sikkerhedsmæssige årsager, men forfatterne anbefaler stadig, at du udtrykkeligt angiver det i din /etc/exports-fil.

Du kan også eksportere en mappe på serveren direkte fra kommandolinjen ved at bruge kommandoen exportfs, som vist nedenfor:

# exportfs -o rw,no_root_squash Bar:/home/foo

Denne kommando eksporterer mappen /home/foo til computeren "Bar" og giver den læse-/skriveadgang. Derudover har NFS-serveren ikke root_squash-parameteren aktiveret, hvilket betyder, at enhver bruger på Bar med UID "0" (UID-rod) vil have de samme privilegier på serveren som root. Syntaksen ser ret mærkelig ud (normalt når du angiver mappe i formen computer:/directory/file, du refererer til en fil i en mappe på den givne computer).

Du kan finde flere oplysninger om eksportfilen på man-siden.

Network File System (NFS) er en fildelingsløsning til organisationer, der har blandede Windows- og Unix/Linux-maskinemiljøer. NFS-filsystemet giver dig mulighed for at dele filer mellem specificerede forskellige platforme med en fungerende operativ system Windows Server 2012: NFS Services i Windows Server 2012 inkluderer følgende funktioner og forbedringer.

1. Søg ind Active Directory. Du har mulighed for at bruge Windows Active Directory til at få adgang til filer. Identity Management for Unix-skemaudvidelsen til Active Directory indeholder identitetsfelter Unix bruger(Unix-bruger-id - UID) og gruppe-id (GID). Dette tillader Servertjenester for NFS og Client for NFS se kontotilknytninger Windows-brugere på Unix direkte fra Active Directory Domain Services. Identitetsstyring til Unix gør det nemmere at administrere tilknytningen af ​​Windows-brugerkonti på Unix til Active Directory Domain Services.

2. Forbedret serverydelse. Tjenester til NFS inkluderer en filfilterdriver, der væsentligt reducerer den samlede ventetid, når du får adgang til filer på serveren.

3. Understøttelse af specielle Unix-enheder. Services til NFS understøtter specielle Unix-enheder (mknod).

4. Udvidet Unix-understøttelse. Services til NFS understøtter følgende Unix-versioner: Sun Microsystems Solaris version 9, Red Hat Linux versioner 9, IBM AIX version 5L 5.2 og Hewlett Packard HP-UX version 11i, samt mange moderne Linux-distributioner.

Et af de mest almindelige scenarier, der skaber et behov for NFS, involverer at udsætte et Unix-baseret ERP-system (Enterprise Resource Planning) for Windows-brugere. Mens de er i ERP-systemet, kan brugere oprette rapporter og/eller eksportere økonomiske data til Microsoft Excel for yderligere analyse. NFS-filsystemet gør det muligt at få adgang til disse filer, mens de stadig er i Windows-miljøet, hvilket reducerer behovet for specialiserede tekniske færdigheder og den tid, der bruges på at eksportere filer ved hjælp af et Unix-script og derefter importere dem til et specifikt Windows-program.

Der kan også være en situation, hvor du har et Unix-system, der bruges til at gemme filer på en form for Storage Area Network (SAN). Starter NFS-tjenester til Windows maskine Server 2012 giver brugere i en organisation mulighed for at få adgang til filer, der er gemt der, uden omkostningerne ved Unix-side scripting.

Før du installerer NFS Services, skal du fjerne alle tidligere installerede NFS-komponenter, såsom NFS-komponenter, der var inkluderet i Services for Unix.

NFS Services-komponenter

Følgende to NFS-servicekomponenter er tilgængelige.

1. Server til NFS(Server til NFS). Typisk kan en Unix-baseret computer ikke få adgang til filer, der er placeret på en Windows-baseret computer. En computer, der kører Windows Server 2012 R2 og Server til NFS, kan dog fungere som en filserver til Windows- og Unix-computere.

2. Klient til NFS(Klient til NFS). Typisk kan en Windows-baseret computer ikke få adgang til filer, der er placeret på en Unix-baseret computer. En computer, der kører Windows Server 2012 R2 og Client for NFS-funktionen kan dog få adgang til filer, der er gemt på en Unix-baseret NFS-server.

Installation af server til NFS ved hjælp af PowerShell

Lad os se, hvordan du bruger PowerShell til at installere NFS-rollen på en server og oprette en NFS-filshare.

1. Åbn et Windows PowerShell-vindue via proceslinjen som en administratorkonto.

2. Indtast følgende kommandoer for at installere NFS-rollen på serveren:

PS C:\> Import-Module ServerManager PS C:\> Tilføj-Windows-funktion FS-NFS-Services PS C:\> Import-Module NFS

3. Indtast kommandoen nedenfor for at oprette en ny NFS-fildeling:

PS C:\> New-NfsShare -Navn "Test" -Sti "C:\Shares\Test"

4. For at se alle de nye NFS-specifikke PowerShell-cmdlets, der er tilgængelige i Windows Server 2012 R2, skal du køre følgende kommando:

PS C:\>Get-Command -Modul NFS

5. Klik på mappen C:\Shares\Test Højreklik mus, vælg "egenskaber", og gå derefter til fanen NFS-deling. Klik på knappen Administrer NFS-deling, i dialogboksen, der vises, kan du administrere mappeadgangstilladelser, tillade anonym adgang, konfigurer filkodningsindstillinger. Du kan dele en mappe over NFS ved at bruge dialogboksen NFS Advanced Sharing uden at bruge PowerShell.

Indstilling af standardopløsninger

Nu bliver vi nødt til at åbne nogle firewall-porte for at NFS kan fungere. De porte, der kræves for at NFS-tjenester kan fungere korrekt, er vist i tabellen nedenfor.