Com instal·lar Samba4 a CentOS 7 per compartir fitxers a Windows
Al nostre darrer article, vam mostrar com instal·lar Samba4 a Ubuntu per compartir fitxers bàsics entre sistemes Ubuntu i màquines Windows. On vam mirar la configuració de l'ús compartit de fitxers anònim (no segur) i segur.
Aquí, descriurem com instal·lar i configurar Samba4 a CentOS 7 (també funciona a RHEL 7) per compartir fitxers bàsics entre altres sistemes Linux i màquines Windows.
Important: a partir de la versió 4.0, Samba es pot executar com a controlador de domini Samba4 Active Directory, que inclou temes crítics per a Ubuntu, CentOS i Windows.
Instal·leu Samba4 a CentOS 7
1. Primer instal·leu Samba4 i els paquets necessaris des dels dipòsits predeterminats de CentOS mitjançant l'eina de gestor de paquets yum tal com es mostra.
# yum install samba samba-client samba-common
2. Després d'instal·lar els paquets de samba, habiliteu els serveis de samba mitjançant el tallafoc del sistema amb aquestes ordres.
# firewall-cmd --permanent --zone=public --add-service=samba # firewall-cmd --reload
Comproveu la configuració del grup de treball de la màquina de Windows
3. Abans de procedir a configurar samba, assegureu-vos que la màquina Windows estigui al mateix grup de treball per configurar-lo al servidor CentOS.
Hi ha dues maneres possibles de veure la configuració del grup de treball de la màquina Windows:
- Feu clic amb el botó dret a \Aquest PC o a \El meu ordinador → Propietats → Configuració avançada del sistema → Nom de l'ordinador.
- Com a alternativa, obriu el indicador cmd i executeu l'ordre següent i, a continuació, cerqueu \domini de l'estació de treball a la sortida, tal com es mostra a continuació.
>net config workstation
Configuració de Samba4 a CentOS 7
4. El fitxer de configuració principal de samba és /etc/samba/smb.conf, el fitxer original ve amb paràmetres de configuració prèvia que expliquen diverses directrius de configuració per guiar-vos.
Però, abans de configurar samba, us suggereixo que feu una còpia de seguretat del fitxer predeterminat com aquest.
# cp /etc/samba/smb.conf /etc/samba/smb.conf.orig
A continuació, procediu a configurar samba per a serveis de compartició de fitxers anònims i segurs, tal com s'explica a continuació.
5. Primer creeu el directori compartit on s'emmagatzemaran els fitxers al servidor i establiu els permisos adequats al directori.
# mkdir -p /srv/samba/anonymous # chmod -R 0775 /srv/samba/anonymous # chown -R nobody:nobody /srv/samba/anonymous
A més, heu de canviar el context de seguretat de SELinux per al directori compartit de samba de la manera següent.
# chcon -t samba_share_t /srv/samba/anonymous
6. A continuació, obriu el fitxer de configuració de samba per editar-lo, on podeu modificar/afegir les seccions següents amb les directives corresponents.
# vi /etc/samba/smb.conf
[global] workgroup = WORKGROUP netbios name = centos security = user [Anonymous] comment = Anonymous File Server Share path = /srv/samba/anonymous browsable =yes writable = yes guest ok = yes read only = no force user = nobody
7. Ara verifiqueu la configuració actual de samba executant l'ordre següent.
# testparm
Load smb config files from /etc/samba/smb.conf rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384) Processing section "[homes]" Processing section "[printers]" Processing section "[print$]" Processing section "[Anonymous]" Loaded services file OK. Server role: ROLE_STANDALONE Press enter to see a dump of your service definitions # Global parameters [global] netbios name = centos printcap name = cups security = USER idmap config * : backend = tdb cups options = raw [homes] comment = Home Directories browseable = No inherit acls = Yes read only = No valid users = %S %D%w%S [printers] comment = All Printers path = /var/tmp browseable = No printable = Yes create mask = 0600 [print$] comment = Printer Drivers path = /var/lib/samba/drivers create mask = 0664 directory mask = 0775 write list = root [Anonymous] comment = Anonymous File Server Share path = /srv/samba/anonymous force user = nobody guest ok = Yes read only = No
8. Finalment, inicieu i activeu els serveis de samba perquè s'iniciïn automàticament al proper arrencada i també apliqueu els canvis anteriors perquè tinguin efecte.
# systemctl enable smb.service # systemctl enable nmb.service # systemctl start smb.service # systemctl start nmb.service
9. Ara, a la màquina Windows, obriu \Xarxa des d'una finestra de l'Explorador de Windows i, a continuació, feu clic a l'amfitrió CentOS, o bé proveu d'accedir al servidor mitjançant la seva adreça IP (utilitzeu l'ordre ifconfig per obtenir l'adreça IP).
e.g. \2.168.43.168.
10. A continuació, obriu el directori Anònim i proveu d'afegir-hi fitxers per compartir-los amb altres usuaris.
Configura l'ús compartit de fitxers segur de Samba4
11. Primer comenceu creant un grup del sistema samba, després afegiu usuaris al grup i configureu una contrasenya per a cada usuari així.
# groupadd smbgrp # usermod tecmint -aG smbgrp # smbpasswd -a tecmint
12. A continuació, creeu un directori segur on es guardaran els fitxers compartits i establiu els permisos adequats al directori amb context de seguretat SELinux per a la samba.
# mkdir -p /srv/samba/secure # chmod -R 0770 /srv/samba/secure # chown -R root:smbgrp /srv/samba/secure # chcon -t samba_share_t /srv/samba/secure
13. A continuació, obriu el fitxer de configuració per editar-lo i modifiqueu/afegiu la secció següent amb les directives corresponents.
# vi /etc/samba/smb.conf
[Secure] comment = Secure File Server Share path = /srv/samba/secure valid users = @smbgrp guest ok = no writable = yes browsable = yes
14. De nou, comproveu la configuració de samba executant l'ordre següent.
$ testparm
Load smb config files from /etc/samba/smb.conf rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384) Processing section "[homes]" Processing section "[printers]" Processing section "[print$]" Processing section "[Anonymous]" Loaded services file OK. Server role: ROLE_STANDALONE Press enter to see a dump of your service definitions # Global parameters [global] netbios name = centos printcap name = cups security = USER idmap config * : backend = tdb cups options = raw [homes] comment = Home Directories browseable = No inherit acls = Yes read only = No valid users = %S %D%w%S [printers] comment = All Printers path = /var/tmp browseable = No printable = Yes create mask = 0600 [print$] comment = Printer Drivers path = /var/lib/samba/drivers create mask = 0664 directory mask = 0775 write list = root [Anonymous] comment = Anonymous File Server Share path = /srv/samba/anonymous force user = nobody guest ok = Yes read only = No [Secure] comment = Secure File Server Share path = /srv/samba/secure read only = No valid users = @smbgrp
15. Reinicieu els serveis de Samba per aplicar els canvis.
# systemctl restart smb.service # systemctl restart nmb.service
16. Aneu a la màquina Windows, obriu \Xarxa des d'una finestra de l'Explorador de Windows i, a continuació, feu clic a l'amfitrió CentOS o, en cas contrari, intenteu accedir al servidor mitjançant la seva adreça IP.
e.g. \2.168.43.168.
Se us demanarà que proporcioneu el vostre nom d'usuari i contrasenya per iniciar sessió al servidor CentOS. Un cop hàgiu introduït les credencials, feu clic a D'acord.
17. Un cop hàgiu iniciat la sessió correctament, veureu tots els directoris compartits de samba. Ara compartiu de manera segura alguns fitxers amb altres usuaris permesos de la xarxa deixant-los anar al directori segur.
També podeu consultar aquests articles útils sobre l'ús compartit de fitxers Samba en una xarxa.
- Com muntar/desmuntar sistemes de fitxers locals i de xarxa (Samba i NFS) a Linux
- Ús d'ACL (llistes de control d'accés) i muntatge de recursos compartits de Samba/NFS
- Com solucionar la vulnerabilitat de SambaCry (CVE-2017-7494) als sistemes Linux
En aquesta guia, us vam mostrar com configurar Samba4 per compartir fitxers de manera anònima i segura entre CentOS i altres sistemes Linux, així com màquines Windows. Comparteix qualsevol pensament amb nosaltres a través de la secció de comentaris a continuació.