I file server spesso devono ospitare una varietà di diversi sistemi client. L'esecuzione di Samba consente ai sistemi Windows di connettersi e accedere ai file, nonché ad altri sistemi Linux e MacOS. Una soluzione alternativa sarebbe quella di eseguire un server FTP/SFTP, che può supportare anche le connessioni da molti sistemi.
In questa guida esamineremo le istruzioni per configurare un server Samba su AlmaLinux. Questo è un ottimo modo per preparare il tuo file server dopo l'installazione di AlmaLinux o la migrazione da CentOS ad AlmaLinux. Vedremo anche come connettersi al file server da altri computer client AlmaLinux.
In questo tutorial imparerai:
- Come installare Samba su AlmaLinux
- Come consentire Samba tramite firewalld
- Come creare un utente Samba
- Come configurare Samba per condividere una directory
- Come consentire Samba tramite SELinux
- Come connettersi al server Samba dal client AlmaLinux
Categoria | Requisiti, convenzioni o versione del software utilizzata |
---|---|
Sistema | AlmaLinux |
Software | Samba |
Altro | Accesso privilegiato al tuo sistema Linux come root o tramite sudo comando. |
Convenzioni | # – richiede che i comandi linux dati vengano eseguiti con i privilegi di root direttamente come utente root o usando sudo comando$ – richiede che i comandi linux dati vengano eseguiti come un normale utente non privilegiato |
Installa Samba
Il primo passo è installare Samba su AlmaLinux, nel caso non sia già sul sistema. Utilizzare il comando seguente per installare i pacchetti Samba necessari tramite il gestore di pacchetti dnf.
$ sudo dnf install samba samba-client
Una volta installati i pacchetti, dobbiamo avviare e abilitare il smb
e il nmb
demoni all'avvio. Il primo è il demone che si occupa di eseguire i trasferimenti effettivi e le operazioni di condivisione, mentre il secondo esegue il NetBIOS
risoluzioni dei nomi, consentendo alle risorse di apparire durante la navigazione in rete su Windows. Ora possiamo abilitare e avviare entrambi i servizi systemd con un solo comando:
$ sudo systemctl enable --now {smb,nmb}
Consenti Samba attraverso il firewall
AlmaLinux viene fornito con firewalld abilitato per impostazione predefinita e bloccherà altre connessioni da altri computer che stanno tentando di accedere al nostro servizio Samba. Possiamo consentire le porte appropriate tramite firewalld eseguendo i seguenti comandi. Assicurati di aggiungere --zone
opzione al tuo comando se necessario per la tua configurazione.
$ sudo firewall-cmd --permanent --add-service=samba $ sudo firewall-cmd --reload
Crea un utente Samba
È possibile configurare una condivisione Samba che non richiede le credenziali dell'account a cui connettersi, ma non è pratico nella maggior parte delle situazioni a causa dell'ovvio problema di sicurezza. Invece, è meglio creare account utente per le persone che si collegheranno alla condivisione Samba.
Ogni utente Samba avrà bisogno di un normale account utente sul sistema AlmaLinux. Ciò non significa che devi fornire loro una home directory, una shell o qualcosa del genere, ma avranno comunque bisogno di un account utente. Se hanno già un account utente sul sistema, sarà sufficiente. Altrimenti, dovremo creare un account nuovo di zecca. Usa il comando seguente per creare un nuovo account utente per la nostra condivisione Samba.
$ sudo adduser -M sambauser -s /sbin/nologin
Il -M
l'opzione passata al comando è la forma abbreviata di --no-create-home
, che è abbastanza autoesplicativo. E i -s
l'opzione ci permette di specificare una shell, in questo caso una non valida apposta:/sbin/nologin
. Non è necessario impostare una password per questo account utente, solo una password per il servizio Samba.
Crea una password Samba per l'utente appena creato con il seguente comando:
$ sudo smbpasswd -a sambauser New SMB password: Retype new SMB password: Added user sambauser.
Configura Samba per condividere una directory
Ora che abbiamo Samba in esecuzione e un nuovo utente creato, configuriamo una directory che desideriamo condividere tramite Samba.
Per il nostro esempio, creeremo la nostra directory condivisa in /mnt/shared
.
$ sudo mkdir -p /mnt/shared $ sudo chmod 777 /mnt/shared
Ora modifichiamo il file di configurazione di Samba per informare il servizio di questa nuova directory che vorremmo condividere. Usa nano o il tuo editor di testo preferito per aprire il seguente file di configurazione.
$ sudo nano /etc/samba/smb.conf
Vai fino in fondo a questo file e incolla le seguenti righe.
[linuxconfig] path = /mnt/shared guest ok = no read only = no
Nota che in questo esempio abbiamo chiamato la nostra condivisione linuxconfig inserendolo tra parentesi. Dovrai conoscere questo nome quando monti la condivisione su un server remoto.
Salva le modifiche al file ed esci. Quindi, riavvia il servizio Samba per rendere effettive le nuove modifiche.
$ sudo systemctl restart {smb,nmb}
Consenti Samba tramite SELinux
SELinux è abilitato per impostazione predefinita in AlmaLinux. Dovremo assegnare il contesto appropriato alla nostra directory condivisa e ai nostri file utilizzando il comando seguente. Ciò consentirà a Samba di funzionare pur mantenendo SELinux nella modalità di applicazione consigliata.
$ sudo chcon -R -t samba_share_t /mnt/shared
Connessione al server Samba dal client AlmaLinux
Ora abbiamo un server Samba completamente funzionante, con un utente Samba dedicato e una directory condivisa. Altri sistemi dovrebbero essere in grado di connettersi a questa directory per caricare o scaricare file dal server Samba. Questa sezione mostrerà come connettersi al server Samba da un altro sistema AlmaLinux (client).
Sul sistema client, dobbiamo creare una directory vuota che possiamo usare come punto di montaggio per la condivisione Samba remota.
$ sudo mkdir -p /mnt/fileserver
Quindi, usa il mount
comando per montare la condivisione Samba remota nella cartella che abbiamo appena creato. È possibile utilizzare il nome host della macchina remota o l'indirizzo IP.
$ sudo mount -t cifs -o username=sambauser //192.168.1.10/linuxconfig /mnt/fileserver
Dopo aver inserito la tua password, la condivisione Samba verrà ora montata.
In alternativa, puoi accedere alla condivisione Samba dal file manager di GNOME inserendo la seguente sintassi. Sostituire l'indirizzo IP se necessario.
smb://127.0.0.1/linuxconfig/Inserisci il percorso della condivisione Samba
Dopo l'accesso, la condivisione Samba verrà montata sul lato sinistro del file manager di GNOME.
La condivisione Samba è stata montataPensieri conclusivi
In questo tutorial abbiamo imparato come installare Samba su AlmaLinux. Abbiamo anche visto come creare una condivisione Samba, un utente Samba e configurare il firewall e SELinux per consentire Samba. Quindi, abbiamo esaminato i passaggi per connetterci al nostro server Samba da una macchina client. L'utilizzo di questa guida dovrebbe consentire di creare un file server in grado di ospitare connessioni da vari sistemi operativi.