GNU/Linux >> Linux Esercitazione >  >> Linux

Iniziare con Samba per l'interoperabilità

Le condivisioni di file sono importanti per la collaborazione in qualsiasi rete. In questa serie di articoli, ti mostrerò come Samba può aiutarti a configurare e servire condivisioni di file su server Linux accessibili da client Linux e Windows.

Cos'è il Samba?

Prima di addentrarci e configurare le condivisioni di file, parliamo di cos'è Samba e cosa può fare per te.

Samba è una suite di applicazioni che implementa il protocollo Server Message Block (SMB). Molti sistemi operativi, incluso Microsoft Windows, utilizzano il protocollo SMB per la rete client-server. Samba consente alle macchine Linux/Unix di comunicare con le macchine Windows in una rete.

Samba è un software open source. Originariamente, Samba è stato sviluppato nel 1991 per la condivisione rapida e sicura di file e stampe per tutti i client che utilizzano il protocollo SMB. Da allora si è evoluto e ha aggiunto più capacità. Oggi Samba fornisce una suite di applicazioni che consentono un collegamento in rete e un'interoperabilità senza interruzioni tra *nix e Windows.

Installa i pacchetti Samba

In questo esempio, sto usando CentOS 8 con il nome host centos come il mio server Samba con un indirizzo IP di 192.168.1.122. L'unico pacchetto che dovrai installare è Samba, ma vorrei includere altri strumenti client come samba-common e samba-client per testare le nostre condivisioni in seguito.

# yum install samba samba-client samba-common -y

Crea una directory da condividere e imposta i suoi permessi

Dopo aver installato i pacchetti richiesti sul server, creiamo una directory e forniamo le autorizzazioni richieste sulla directory. Crea una directory chiamata share nella nostra directory principale. Puoi nominare questa directory come vuoi e darle i permessi di lettura, scrittura ed esecuzione. In questo esempio, faremo affidamento sulla configurazione di Samba per controllare l'accesso in lettura e scrittura alla directory condivisa.

# mkdir /share

# chmod -R 777 /share

Configura una condivisione

Ora che abbiamo installato i pacchetti necessari, è il momento di configurare la directory condivisa. Il file di configurazione si trova in /etc/samba . Usando il tuo editor di testo preferito, aggiungi quanto segue a /etc/samba/smb.conf . Lascia il resto del file di configurazione così com'è e questo dovrebbe essere utile per la nostra configurazione.

# vim /etc/samba/smb.conf

[myshare]
        comment = My share
        path = /share
        read only = No


Ho creato una condivisione chiamata myshare e ha fornito un percorso per la condivisione, che nel nostro caso si trova in /share . Gli ho quindi dato i permessi di lettura/scrittura con read only = No . Ci sono molti altri parametri di configurazione che puoi passare qui, ma per la nostra configurazione queste impostazioni sono buone.

Controlla la configurazione di Samba

Samba fornisce uno strumento per controllare il nostro file di configurazione. Possiamo verificare se il nostro file di configurazione contiene errori utilizzando il testparm comando.

# testparm

Successivamente, dobbiamo creare un account utente Samba, in modo che Samba possa comunicare nelle sessioni Samba con condivisioni. Il smbpasswd comando ha diverse funzioni a seconda se esegui il comando come root o come utente standard. Se emetti smbpasswd senza argomenti come non-root utente, per impostazione predefinita smbpasswd cambierà la password Samba dell'utente attualmente connesso. Quando esegui smbpasswd comando come root , potrai creare nuovi account Samba. Puoi creare un account Samba solo per account utente Linux esistenti.

# smbpasswd -a user

New SMB password:
Retype new SMB password:

Abbiamo bisogno di configurare SELinux su /share directory in modo che il servizio Samba disponga delle autorizzazioni appropriate.

# semanage fcontext -a -t samba_share_t "/share(/.*)?"

# restorecon -R -v /share

Successivamente, dobbiamo abilitare e avviare smb e nmb servizi.

# systemctl enable smb

# systemctl start smb

#systemctl enable nmb

#systemctl start nmb


Se hai firewalld in esecuzione sul tuo server, dobbiamo configurarlo per consentire il traffico Samba. Puoi farlo usando il firewall-cmd comando. Non dimenticare di rendere permanenti queste modifiche e di ricaricare firewalld .

Ora abbiamo i nostri servizi abilitati e avviati. Possiamo verificare se la condivisione è disponibile dal server utilizzando il smbclient attrezzo. Questo è il motivo per cui ho installato gli strumenti del client Samba sulla macchina locale. Il comando utilizza la seguente sintassi:

smbclient -U -L

# smbclient -U user -L 192.168.1.122

Enter SAMBA\user's password:

Verifichiamo se possiamo accedere alla condivisione emettendo il seguente comando sul server:

# smbclient -U user //192.168.1.122/myshare

Enter SAMBA\user's password:

Try "help" to get a list of possible commands.

smb: \>

Concludi

Abbiamo installato e configurato il servizio di condivisione file Samba sul nostro server Linux. Siamo stati in grado di accedere a quelle condivisioni sulla macchina locale. Nel prossimo articolo, configureremo un client Linux e un client Windows 10 per accedere alla condivisione che abbiamo appena creato.

[ Vuoi saperne di più sull'amministrazione del sistema Linux? Segui un corso di amministrazione del sistema Red Hat. ]


Linux
  1. Iniziare con Zsh

  2. Iniziare con ls

  3. 5 suggerimenti per iniziare con la sicurezza del server Linux

  4. Introduzione a socat, uno strumento di inoltro multiuso per Linux

  5. Iniziare con PostgreSQL su Linux

Introduzione al sistema operativo Linux

Guida introduttiva a GitHub

Iniziare con Nix Package Manager

Iniziare con systemctl

Guida introduttiva a Buildah per la gestione dei container Linux

Guida introduttiva e installazione di Slack per Linux