Bouw een eenvoudige Samba-server met een computer met weinig bronnen

Er is zeker veel literatuur over Samba eenvoudig of robuust te bouwen Opslagservers, maar vaak leiden ze ons niet direct naar het punt in de meest praktische opties met hun respectievelijke verduidelijkingen en mogelijke scenario's voor echt gebruik, dat wil zeggen, we vinden altijd veel informatie maar niet aangepast aan de behoeften van velen en vooral beginners of beginners in de omgeving.

lpi

Hoe dan ook, ik laat mijn ervaring achter in deze post over het onderwerp:

Eerst laat ik u de technische kenmerken van de gebruikte low-resource computer achter:

Hardware:

Software:

Daarna ging ik verder met het installeren en configureren van het samba-pakket op de server van mijn kleine meid LAN-netwerk zelfgemaakt als volgt:

1. - Installeer samba met het commando commando:

aptitude install samba samba-common smbclient samba-doc smbfs winbind

2.- Ik ging verder met het maken van een back-up van de standaard samba-configuratie in het configuratiebestand smb.conf met het commando commando:

cp /etc/samba/smb.conf /etc/samba/smb.conf.bck
  1. Bewerk vervolgens het configuratiebestand met een editor van mijn voorkeur met het commando commando:
vi /etc/samba/smb.conf

Laat het als volgt over:


#======================= Global Settings =======================

[global]

## Browsing/Identification ###

workgroup = WORKGROUP
dns proxy = no
; wins support = no
; wins server = w.x.y.z
; server string = %h server
; name resolve order = lmhosts host wins bcast

#### Networking ####

; interfaces = 127.0.0.0/8 eth0
; bind interfaces only = yes

#### Debugging/Accounting ####

log file = /var/log/samba/log.%m
max log size = 1000
syslog = 0
panic action = /usr/share/samba/panic-action %d
; syslog only = no

####### Authentication #######

server role = standalone server
passdb backend = tdbsam
obey pam restrictions = yes
unix password sync = yes
passwd program = /usr/bin/passwd %u
passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* .
pam password change = yes
map to guest = bad user
security = user
username map = /etc/samba/smbusers
; encrypt passwords = true

########## Domains ###########

; server role = primary classic domain controller
; server role = backup domain controller
; server role = domain logons
; logon path = \\%N\profiles\%U
; logon path = \\%N\%U\profile
; logon drive = H:
; logon home = \\%N\%U
; logon script = logon.cmd
; add user script = /usr/sbin/adduser --quiet --disabled-password --gecos "" %u
; add machine script  = /usr/sbin/useradd -g machines -c "%u machine account" -d /var/lib/samba -s /bin/false %u
; add group script = /usr/sbin/addgroup --force-badname %g
; domain logons = yes

############ Misc ############

usershare allow guests = yes
; usershare max shares = 100
; include = /home/samba/etc/smb.conf.%m
; domain master = auto
; idmap uid = 10000-20000
; idmap gid = 10000-20000
; template shell = /bin/bash
; winbind enum groups = yes
; winbind enum users = yes
; usershare max shares = 100
; SO_RCVBUF=8192 SO_SNDBUF=8192
; socket options = TCP_NODELAY
; message command = /bin/sh -c '/usr/bin/linpopup "%f" "%m" %s; rm %s' &


#======================= Share Definitions =======================

[homes]

comment = Home Directories
browseable = no
read only = yes
create mask = 0700
directory mask = 0700
valid users = %S

; [netlogon]

; comment = Network Logon Service
; path = /home/samba/netlogon
; guest ok = yes
; read only = yes

; [profiles]

; comment = Users profiles
; path = /home/samba/profiles
; guest ok = no
; browseable = no
; create mask = 0600
; directory mask = 0700

[printers]

comment = All Printers
browseable = no
path = /var/spool/samba
printable = yes
guest ok = no
read only = yes
create mask = 0700

[print$]

comment = Printer Drivers
path = /var/lib/samba/printers
browseable = yes
read only = yes
guest ok = no
; write list = root, @lpadmin

; [cdrom]
; comment = Samba server's CD-ROM
; read only = yes
; locking = no
; path = /cdrom
; guest ok = yes
; /dev/scd0   /cdrom  iso9660 defaults,noauto,ro,user   0 0
; preexec = /bin/mount /cdrom
; postexec = /bin/umount /cdrom

# EJEMPLO DE RECURSO COMPARTIDO

[RECURSO_COMPARTIDO]

comment = Servidor Disco Duro 500 GB
path = /media/usuario-sysadmin/RESPALDO
writeable = yes
browseable = yes
public = yes
valid users = usuario_samba
create mask = 0755
directory mask = 0755
guest ok = no
; read only = no
; write list = usuario_samba
; force group = usuario_samba
; hide dot files = yes
; guest only = yes
; guest account = nobody
; delete veto files = yes
; veto files = /*.exe/*.com/*.dll/*.mp3/*.avi/*.mkv/*.msi/*.mpg/*.wmv/*.wma

Zoals ik al zei, is er op internet een overvloed aan informatie over samba en elk van de opties moet worden geconfigureerd in het smb.conf-bestand, wat niet de bedoeling is van deze publicatie. Ik laat u echter deze paar links over deze kwestie achter:

Ik ging toen verder met het maken van het samba-gebruiker "samba_user" Binnenin mij Samba-server, wat ik vroeger deed beheren (beheren) gedeelde bronnen op afstand vanaf mijn andere computers met GNU / Linux en MS Windows.  In mijn specifieke geval ga ik niet werken met delen Mappen maar helemaal mijn harde schijf secundair van 500 GB. Daarom vereist ik dat genoemde schijf automatisch wordt aangekoppeld wanneer de server start, zelfs zonder de grafische interface te laden, dus ging ik verder met het uitvoeren van de volgende procedure:

De Harde schijf 500 GB binnen de Besturingssysteem Server

a) Valideer (ik heb nota genomen) van het koppelpunt en lokale map waar mijn Besturingssysteem hij monteerde automatisch de 500GB harde schijf. Anders zou het mogelijk zijn geweest om een ​​map te maken waar de lokale bron die moet worden gedeeld, wordt gemount, met de opdracht: mkdir -p / aangewezen_pad / aangewezen_map en geef er dan de gebruiker toestemming voor op mijn hoofdgebruiker van de aangeroepen server "Gebruiker-sysadmin".

b) Bewerk het bestand fstab met de opdrachtvolgorde "Nano / etc / fstab" en plaats de volgende assemblagelijn:

/ dev / sdb1 / media / user-sysadmin / BACKUP / ntfs-3g rw, user_id = 1000, group_id = 1000

Opmerking: gebruik "Ntfs-3g" sinds mijn schijf is geformatteerd in NTFS. U kunt de optie al dan niet toevoegen auto van de lopende band in de fstab, afhankelijk van uw vereisten of behoeften. Vooral voor mij veroorzaakte deze optie instabiliteit (intermittentie) bij het koppelen van de bron tijdens het opstarten Besturingssysteem. U kunt de server opnieuw opstarten om de automatische koppeling van de harde schijf te verifiëren of testen door de opdrachtopdracht uit te voeren "Mount -a" om het koppelpunt te testen. Als alles goed gaat, start u opnieuw op om de koppeling vanaf het begin opnieuw te proberen. Deze lijn kan op veel manieren en meer gedetailleerde manieren worden geconfigureerd, maar dat wordt overgelaten aan persoonlijk onderzoek, aangezien het niet het onderwerp van de publicatie is. Voor meer informatie over de mogelijkheden fstab, Klik here.

Hierna ging ik verder met het maken van het lokale gebruiker Wat zal ik gebruiken in samba om mijn aandelen op afstand te beheren. Dit kan op 2 verschillende manieren:

1.- Basis:

1.1) Maak een lokale gebruiker aan om samba te beheren:

adduser user_samba

2. - Geavanceerd:

2.1) Maak de thuismap van de lokale gebruiker om samba te beheren:

mkdir / aangewezen_pad / samba_gebruiker

2.2) Maak een groep samba-gebruikers aan:

groupadd user_group

2.2) Maak een samba-gebruikersprofiel aan:

useradd-g user_samba -d / aangewezen_pad / samba_user -c "Basismap van de gebruiker" -s / bin / false user_group

Vervolgens, en nadat samba is geïnstalleerd en geconfigureerd, de gedeelde bron is ingeschakeld en aangekoppeld, de lokale gebruiker heeft aangemaakt, moeten we:

Voeg de lokale gebruiker toe al Samba-server (service) geïnstalleerd met de opdrachtprompt:

adduser user_samba sambaaandeel

Creëer het toegangswachtwoord wat zal hij hebben Lokale gebruiker in Samba met het commando commando:

smbpasswd -a user_samba

Start de Samba-service opnieuw:

a) service samba herladen

b) service smbd herstart

c) herstart service nmbd

Nu moeten we gewoon controleer de toegang vanaf een computer op het netwerk tot de share. Hiervoor moeten we open een bestandsverkenner, verken de netwerkomgeving en bekijk de share vanaf de server. Om de beschikbaarheid via de terminal te zien, kunnen de volgende commandocommando's worden uitgevoerd, al dan niet bekend met het IP-adres of de naam van de Samba-server:

1) smbclient –list = 192.168.XX

2) smbclient –list = 192.168.XX –user = samba_user

3) nbtscan 192.168.0.0/24

4) nmblookup samba_server_name

En om toegang te krijgen tot de share vanaf een computer op het netwerk, opent u een bestandsverkenner, onderzoekt u de netwerkomgeving en doet u dat dubbelklik op de share van de server, in voer de toegangsgegevens in (gebruiker / wachtwoord / domein), of plaats het directe pad in de volgende indeling: smb: //192.168.xx/RESOURCE_SHARED. Te verbinden via terminal, voer de volgende opdracht uit: smbclient –user = samba_user //192.168.xx/SHARED_RESOURCE

Ten slotte, en indien nodig, kunt u configureren dat deze gedeelde bron automatisch wordt geladen op uw netwerkapparatuur met behulp van de volgende procedure:

a) Maak een lokale map waar de gedeelde bron zal worden aangekoppeld, met het commando commando:

mkdir -p / aangewezen_pad / aangewezen_map

b) Bewerk het fstab-bestand met de opdrachtvolgorde "Nano / etc / fstab" en plaats de volgende assemblagelijn:

//192.168.XX/SHARED_RESOURCE/ / aangewezen_pad / aangewezen_map cifs gebruiker, rw, gebruikersnaam = samba_gebruiker, wachtwoord = samba_gebruiker_wachtwoord, gid = 100 ?, Uid = 100 ?, Iocharset = utf8, dir_mode = 0755, file_mode = 0755 0 2

Opmerking: gebruik "Cifs" aangezien het het moderne samba-protocol is dat samba gebruikt om verbinding te maken met een netwerkbron, moet u in sommige gevallen mogelijk gebruik maken van «smb » in plaats van «cifs ». Het type toestemming dat is toegewezen in dir_mode y bestandsmodus het zal afhangen van wat u aanwijst en / of de gebruiker van de gedeelde map vereist, hoewel ze bij voorkeur hetzelfde moeten zijn als degene die zijn aangewezen in het smb.conf-bestand voor de gedeelde bron. En de bijbehorende waarden in id y uid Ze moeten geschikt zijn, dat wil zeggen die van de gebruiker die de bron op de externe computer zal aankoppelen. Bovendien kunt u de optie al dan niet toevoegen auto van de lopende band in de fstab, afhankelijk van uw vereisten of behoeften. Vooral voor mij veroorzaakte deze optie instabiliteit (intermittentie) bij het koppelen van de bron tijdens het opstarten Besturingssysteem. U kunt de server opnieuw opstarten om de automatische koppeling van de harde schijf te verifiëren of testen door de opdrachtopdracht uit te voeren "Mount -a" om het koppelpunt te testen. Als alles goed gaat, start u opnieuw op om de koppeling vanaf het begin opnieuw te proberen. Deze lijn kan op veel manieren en meer gedetailleerde manieren worden geconfigureerd, maar dat wordt overgelaten aan persoonlijk onderzoek, aangezien het niet het onderwerp van de publicatie is. Voor meer informatie over de mogelijkheden fstab, Klik here.

Nou, ik hoop dat je dit bericht leuk vindt met mijn bescheiden stappen en aanbevelingen voor dat doel.


Laat je reactie achter

Uw e-mailadres wordt niet gepubliceerd. Verplichte velden zijn gemarkeerd met *

*

*

  1. Verantwoordelijk voor de gegevens: Miguel Ángel Gatón
  2. Doel van de gegevens: Controle SPAM, commentaarbeheer.
  3. Legitimatie: uw toestemming
  4. Mededeling van de gegevens: De gegevens worden niet aan derden meegedeeld, behalve op grond van wettelijke verplichting.
  5. Gegevensopslag: database gehost door Occentus Networks (EU)
  6. Rechten: u kunt uw gegevens op elk moment beperken, herstellen en verwijderen.

  1.   knapperig zei

    Zeer interessant.

    En voor een simpele mailserver ...?

    Groeten.

  2.   José Albert zei

    Ik zal proberen er een te maken!

  3.   oscar silva zei

    Beste, het was nodig om het kleine detail toe te voegen met betrekking tot de verbinding vanaf Windows-computers ..., anders een goede tuto.

    Groeten 🙂