Leestijd: 9 minuten
Wat is Samba?
Samba is een open-source softwarepakket dat is uitgebracht onder een GPL (General Public License). Het stelt ons in staat om toegang te krijgen tot een gedeelde netwerkschijf en printers over verschillende besturingssystemen met behulp van het SMB/CIFS-protocol. Samba heeft zowel client als server componenten. Samba maakt gebruik van het SMB-protocol, wat nodig is bij het benaderen van assets op een bestandsserver vanaf een Microsoft-computer. Samba kan ook werken als een domeincontroller die compatibel is met Microsoft Active Directory.,
Inleiding
in deze handleiding zullen we onze Ubuntu-server instellen als een opslagplatform voor bestanden dat gemakkelijk toegankelijk is vanaf een Windows-computer. We zullen de Samba software gebruiken om deze verbinding mogelijk te maken. Eerst zullen we de database van pakketten die beschikbaar zijn voor installatie bijwerken.
Samba installatie
volgende zullen we beginnen met de Samba installatie op onze Ubuntu server.
Samba configuratie
vervolgens zullen we Samba aanpassen aan onze specifieke behoeften., We zullen toegang moeten krijgen tot deze map waar het configuratiebestand is geïnstalleerd. Deze bestanden bevinden zich in /etc/samba.
in de configuratiebestanden zullen we veel van de standaard configuratie-instellingen aanmaken en gebruiken. Nu, we zullen back-up/hernoemen van het standaard configuratiebestand in het geval dat we nodig hebben om het bestand terug te keren naar de standaardinstellingen.
laten we cd in die map.
root@host:~# cd /etc/sambaroot@host:~# /etc/samba#
laten we nu de lijst met bestanden bekijken.
zoals u kunt zien, onze smb.conf configuratiebestand bevindt zich hier., We maken een back-up van het originele bestand door het te hernoemen. Om dit te bereiken, zullen we het “mv” commando gebruiken omdat we een nieuw smb zullen aanmaken.conf-bestand komt eraan. Het MV commando kan het bestand verplaatsen en hernoemen.
de volgende stap is het aanmaken van een nieuw configuratiebestand. We zullen hiervoor het “touch” commando gebruiken.
root@host:~# /etc/samba# touch smb.confroot@host:~# /etc/samba#
nu zullen we een” smbusers ” bestand aanmaken. Dit bestand slaat de gebruikersnaam en het wachtwoord op van de mensen die toegang krijgen tot de bestandsserver., Deze informatie is versleuteld, zodat er geen problemen met de beveiliging. Dit wordt bereikt met de instelling ‘encrypt passwords = yes’ in het smb.conf file.
nu zullen we een map maken die we op het netwerk zullen delen.
root@host:~# /etc/samba# mkdir /opt/FirstTestShareroot@host:~# /etc/samba#
vervolgens moeten we een permissieset toepassen waarmee onze gebruikers het kunnen lezen, schrijven en wijzigen.
root@host:~# /etc/samba# chmod 0777 /opt/FirstTestShareroot@host:~# /etc/samba#
nu zullen we het smb openen en configureren.conf met behulp van de nano-editor.,
root@host:~# nano smb.conf
het configuratiebestand bestaat uit verschillende secties. Het centrale deel heet . Extra secties kunnen worden toegevoegd afhankelijk van uw behoeften en kunnen omvatten:,, en .
aanvankelijk zullen we de hoofdsectie instellen en een naam voor onze server opgeven.
server string = Test Fileserver Samba
vervolgens zullen we een werkgroep identificeren die bestaat op een Windows-netwerk., Een werkgroep wordt geïdentificeerd als een uniek object dat een gemeenschappelijke bron is voor alle computers binnen een bepaalde netwerkomgeving die kunnen worden gezien en gebruikt. De standaardnaam voor een werkgroep is werkgroep.
workgroup = WORKGROUP
laten we nu de rol van de bestandsserver instellen. Samba heeft meerdere functies, maar vandaag zullen we het gebruiken als een eenvoudige bestandsserver.
server role = standalone server
hierna bekijken we de instellingen voor” autorisatie configureren”., We hebben deze optie nodig om toegang tot de bestandsserver toe te staan, bestanden te downloaden, te lezen, te wijzigen en te verwijderen, alleen voor die gebruikers die een gebruikersnaam en wachtwoord hebben toegevoegd. We gebruiken de waarde user-autorisatie door login en wachtwoord.
security = user
hierna moeten we het bestand van de gebruikersdatabase specificeren. Dit bestand identificeert en slaat de gebruikers die we toegang hebben verleend voor.
smb passwd file = /etc/samba/smbusers
vervolgens moeten we de instelling” forceer enable password encryption ” inschakelen., Deze instelling is essentieel voor de veiligheid zorgen als het gebruik van versleutelde wachtwoorden aanzienlijk vermindert de mogelijkheid van platte tekst wachtwoorden worden “gesnuffeld” wanneer verkeer over het netwerk, zoals wanneer gebruikers gaan om in te loggen op een Samba share.
encrypt passwords = yes
daarnaast kunnen we gast toegang tot de share verbieden. Met deze instelling kunnen we logins van gastgebruikers en autorisatiepogingen verbieden.
map to guest = bad user
vervolgens kunnen we bepalen hoe en waar de applicatielogs worden opgeslagen., Een getal definieert de logging niveaus. Hoe hoger het getal (van 0 -7), hoe gedetailleerder het niveau van logging dat zal worden geschreven. Hoe meer informatie we ontvangen over de werking van de applicatie, hoe beter.
Er is echter een nadeel aan dit. Waarom zou het slecht zijn om een hoger niveau van houtkap in te stellen? Simpelweg omdat dit een grote hoeveelheid informatie produceert en de bestandsgrootte aanzienlijk kan toenemen, waardoor waardevolle schijfruimte wordt verbruikt. Normaal gesproken zijn hogere logging niveaus alleen nodig voor debugging doeleinden., Als u een ontwikkelaar bent of een fout moet opsporen, kan deze op een hoger niveau worden ingesteld, en als u basic logging nodig hebt, kan een gemiddeld getal worden gebruikt.
logfile = /var/log/samba/log.%m
nu kunnen we de naam van de map bepalen. Dit is de zichtbare naam van de gedeelde map. We gebruikten deze naam.
de volgende instelling die we zullen bekijken heet comment. Deze opmerking zal de tooltip waarde die zal worden weergegeven wanneer we de muisaanwijzer over de map.,
comment = Our First Test Share
Vervolgens is het essentieel om het pad aan te geven van onze map die we zullen delen.
path = /opt/FirstTestShare
Met deze volgende instelling geven we aan dat deze map zichtbaar moet zijn. Als deze waarde niet is opgegeven, wordt de map verborgen.
browseable = yes
nu kunnen we gebruikers toestaan om naar de gedeelde map te schrijven.,
writeable = yes
vervolgens kunnen we het machtigingsniveau bepalen dat wordt toegewezen aan bestanden die naar de gedeelde map zijn geüpload.
create mask = 0775
ook voor mappen.
directory mask = 0775
nu we klaar zijn met het configuratiebestand sla het op met het volgende commando.
ctrl + X dan y voer vervolgens
In nadat het configuratiebestand is opgeslagen, moeten we de service opnieuw opstarten.,
root@host:~#/etc/samba# service smbd restartroot@host:~#/etc/samba#
nu kunnen we de service toevoegen aan de systemctl opstartconfiguratie.
vervolgens kunnen we controleren of Samba actief is.
service smbd status
een belangrijke opmerking, eerder heette de service Samba, later werd deze hernoemd naar smbd in ubuntu 16. Als u de smbd-service niet kunt starten, probeer dan het samba-Commando
nu kunnen we onze gedeelde map in een netwerkomgeving zien. We zullen ons IP-adres lokaliseren met het ifconfig Commando.,
root@host:~# ifconfig Command 'ifconfig' not found, but can be installed with: apt install net-toolsroot@host:~#
Als u een foutmelding zoals hierboven hebt ontvangen, moeten we gewoon een extra pakket installeren met de naam nettools.
nu kunnen we het ifconfig Commando herhalen.
zoals we kunnen zien is ons IP 192.168.88.207.
Windows Connection
om verbinding te maken met de share Op Windows, moeten we naar de netwerkomgeving gaan en ons IP-adres invoeren.,
//192.168.88.207
volgende, omdat we de gebruikersnaam en het wachtwoord niet kennen, zullen we ze aanmaken. Hier zullen we een gebruiker lokaal instellen op de bestandsserver en deze vervolgens opslaan in ons eerder aangemaakte smbusers-bestand.
root@host:~#/etc/samba# useradd -c "samba user n1" -s /sbin/nologin user1root@host:~#/etc/samba#
de commando-vlaggen die we gebruikten worden hier opgesplitst. De “- S/sbin / NoLogin user1 ” betekent dat de gebruiker niet in staat zal zijn om in te loggen op de server zelf. Deze instelling is een solide veiligheidsmaatregel.,
root@host:~#/etc/samba# smbpasswd -a user1 New SMB password: Retype new SMB password: Added user user1.root@host:~#/etc/samba#
nu kunnen we in het bestandssysteem gaan en proberen in te loggen. Zodra we in kunnen loggen op de bestandsserver, kunnen we onze mappen en bestanden maken en de bestanden en mappen van andere mensen lezen. Andere gebruikers hebben niet de machtigingen die nodig zijn om een van onze bestanden en mappen te verwijderen. Deze instelling, echter, kan worden gewijzigd in het configuratiebestand met behulp van de ‘create mask’ en ‘directory mask’ parameters. Als bonus analyseren we een problematische situatie die zich kan voordoen en hoe deze op te lossen.,
een advocaat werkt bijvoorbeeld in een organisatie en wil zien welke documenten er in het bestandssysteem staan. Als onbevoegde gebruiker kan hij in de gedeelde map gaan en de bestanden bekijken, maar hij kan ze niet wijzigen of bewerken. User1 en degenen die zich in deze groep bevinden, kunnen standaard bestanden bewerken en verwijderen.
dus, laten we alle gebruikers in dezelfde groep opnemen. We kunnen dit bereiken door een nieuwe groep aan te maken.
root@host:~# groupadd buhroot@host:~#
vervolgens stellen we de standaardgroep in voor zowel user1 als user2.,
root@host:~# usermod -g buh user1root@host:~#root@host:~# usermod -g buh user2root@host:~#
We kunnen Samba nu herstarten om de nieuwe wijzigingen toe te passen.
root@host:~# service smbd restartroot@host:~#
nu kunnen we de eigendomsinstellingen voor alle bestanden en voor de map zelf wijzigen.
root@host:~# chown -R user1:buh /opt/FirstTestShareroot@host:~#
nu kan user2 bestanden in de Buh-map bewerken, zoals user1. U kunt dit ook bereiken met andere gebruikers ook.,
een ander essentieel aspect van deze instellingen is dat gebruikers een bestand kunnen downloaden en wijzigen en het vervolgens opnieuw kunnen opslaan in de gedeelde map. Maar stel je een situatie voor waarin een gebruiker het bestand opende om de inhoud ervan te zien, maar het niet kon sluiten. Een andere gebruiker wil dit bestand openen vanaf een andere locatie. Het bestand zal worden vergrendeld om te worden bewerkt omdat de eerste gebruiker het open heeft. Als een andere gebruiker het bestand probeert te openen, wordt het bestand geopend, maar in een alleen-lezen modus. Ze zullen het kunnen bekijken, maar ze kunnen het niet bewerken.,
in dergelijke situaties bestaat er een smbstatus-hulpprogramma waarmee we kunnen zien wie het bestand geopend heeft.
in de Service sectie kunnen we zien dat er een bestand is met het pid nummer 9127. Om het bestand te sluiten en eraan te gaan werken, kunnen we het bestand met geweld sluiten met het kill commando met ons pid nummer.
sudo kill -9 9127
conclusie
In deze handleiding hebben we geleerd hoe we Samba kunnen installeren en aanpassen aan onze behoeften., We hebben gebruikers gemaakt, gebruikersgroepen opgezet om met bestanden te werken en te delen, en tot slot hebben we enkele eenvoudige problemen opgelost die zich kunnen voordoen tijdens het delen van bestanden.
praat vandaag met een Expert!
bel ons op 800.580.4985, of open een chat of ticket met ons om te spreken met een van onze deskundige oplossingen of ervaren hosting adviseurs om te leren hoe u kunt profiteren van deze technologie vandaag!