Configuración do servidor Samba
Ir a la navegación
Ir a la búsqueda
Introdución
- Neste apartado imos realizar a configuración básica do servidor samba, para poder utilizalo como un servidor de dominio Windows e que tome os usuarios do servidor LDAP.
O ficheiro /etc/samba/smb.conf
- Todos os parámetros de configuración do servidor samba residen no ficheiro smb.conf, que podemos atopar na ruta /etc/samba/smb.conf.
- Este ficheiro contén un montón de parámetros (cada un nunha liña coa sintaxe parámetro = valor) agrupados en seccións.
- Ao comezo de cada sección indícase por unha liña que contén o nome da sección entre corchetes (por exemplo [global], [homes], [comun], etc.), e a continuación todos os parámetros que se inclúan nas seguintes liñas pertencen a esa sección.
- O fin dunha sección márcase co comezo da seguinte sección, ou co final do ficheiro.
- Cada sección describe os parámetros de configuración dun recurso compartido, e o nome da sección será o nome do recurso compartido.
- Así, a sección [comun] define o recurso compartido comun, e dentro dela definiremos os parámetros do recurso: que carpeta se comparte, con que permisos, etc.
- Hai tres seccións especiais:
- [global]: Esta é a sección que engloba os parámetros de configuración globais do servidor samba, e polo tanto é a única que non se corresponde con un recurso compartido.
- [homes]: É un recurso compartido especial que comparte todas as carpetas persoais dos usuarios, de forma que cando un usuario inicia sesión no servidor samba, verá a súa carpeta persoal.
- [printers]: É un recurso compartido especial que comparte todas as impresoras do equipo.
- Podemos contar por centos o número de parámetros que pode conter o ficheiro de configuración de samba, así que o que se presenta aquí é un exemplo de configuración cos parámetros de configuración máis relevantes explicados con comentarios (as liñas que comezan por # son comentarios), pero por suposto dependendo das circunstancias concretas pode ser necesario axustar outros parámetros que no exemplo non aparecen.
- Remítese ao lector/a ao manual do ficheiro smb.conf (http://us1.samba.org/samba/docs/man/manpages-3/smb.conf.5.html) para obter información dos parámetros que se poden usar.
- No noso caso, o paquete do servidor samba inclúe un ficheiro smb.conf con unha serie de información de exemplo e moitos comentarios; pero nós imos completar o noso ficheiro de configuración dende cero.
- Así que renomeamos o ficheiro /etc/samba/smb.conf e comezamos a editar un novo ficheiro baleiro con este mesmo nome.
mv /etc/samba/smb.conf /etc/samba/smb.conf.orixinal
- Introducimos a liña que marca o comezo da sección global do novo ficheiro /etc/samba/smb.conf:
[global]
Parámetros básicos na rede Windows
A continuación introducimos os parámetros básicos para o servidor de samba na rede Windows, como é o nome do equipo, descrición, etc:
#
# PARAMETROS BASICOS DA REDE WINDOWS
#
# Nome do dominio
workgroup = IESCALQUERA
# Nome do equipo na rede Windows
netbios name = dserver00
# Descricion do equipo na rede Windows
server string = Servidor de dominio do IES Calquera
# O servidor actua como servidor WINS (Resolucion de nomes na rede Windows)
wins support = yes
# O parametro security e un dos mais importantes, xa que determina o modo en que samba controla o acceso
# aos recursos compartidos. Os valores posibles son:
# share: Establecese unha autenticacion por recurso compartido. Non se recomenda
# user: Opcion por defecto. O usuario autentificase ao acceder ao servidor
# domain: Usaremola cando o equipo estea integrado nun dominio Windows NT e samba valida os usuarios contra o PDC
# server: Samba valida os usuarios contra outro servidor samba
# ads: Usaremola cando o equipo estea integrado nun dominio con Active Directory. Samba usara kerberos para autenticarse
security = user
Parámetros para actuar como controlador de dominio
Os seguintes parámetros configuran o servidor samba como un controlador dun dominio Windows:
#
# PARAMETROS DE CONTROLADOR DE DOMINIO WINDOWS
#
# Para activar a autentificación de clientes do dominio
domain logons = yes
# Este número indica na rede Windows o tipo de sistema operativo do equipo. Desta maneira, estamoslle
# dicindo ao resto dos equipos da rede Windows que este equipo e un servidor
os level = 65
# Para que actúe como servidor do dominio
domain master = yes
# Este parametro e necesario para que se poida iniciar no dominio en clientes con Windows 10
server max protocol = NT1
# Conecta a carpeta persoal do usuario na unidade Z: do cliente
logon drive = Z:
# Indica onde se atopa a carpeta persoal do usuario (\\Servidor\NomeUsuario)
# Teremos que compartir con samba os directorios home dos usuarios para que esa comparticion exista
logon home = \\%N\%U
# Indica onde se almacena a configuracion persoal do usuario (o seu perfil)
# Por defecto gardase dentro do directorio persoal, pero poderia interesarnos gardalos nunha carpeta
# particion aparte, poñendo por exemplo o valor \\%N\perfis\%U
# Isto verase na parte VI do curso
# logon path = \\%N\%U\profile
Parámetros para utilizar o servidor LDAP como backend
Para configurar samba para que use o LDAP como backend, introducimos a seguinte configuración:
#
# PARAMETROS PARA OBTER OS USUARIOS DO LDAP
#
# Indicamos que use o servidor LDAP para obter os usuarios. Non e necesaria a conexion segura xa
# que o servidor LDAP esta na mesma maquina. Tamen poderiamos poñer ldapi:///
passdb backend = ldapsam:"ldap://localhost"
# Parametros para a conexion co LDAP e localizar os distintos elementos
ldap suffix = dc=iescalquera,dc=local
ldap user suffix = ou=usuarios
ldap group suffix = ou=grupos
ldap machine suffix = ou=maquinas
ldap idmap suffix = ou=idmap
ldap admin dn = cn=admin,dc=iescalquera,dc=local
ldap ssl = no
ldap passwd sync = yes
# Con estes parametros samba usara o servidor LDAP para obter a asignacion
# entre UIDs e GIDs cos identificadores dos usuarios en Windows:
idmap backend = ldap:ldap://localhost
idmap uid = 10000-20000
idmap gid = 10000-20000
# Estes scripts permiten que o servidor de samba poida dar de alta maquinas no LDAP (por exemplo,
# cando se agrega un equipo no dominio) e xestionar os usuarios e grupos, de forma que se poden
# manipular con ferramentas de xestión de Windows:
add user script = /usr/sbin/smbldap-useradd -a -m '%u'
delete user script = /usr/sbin/smbldap-userdel '%u'
add group script = /usr/sbin/smbldap-groupadd -p '%g'
delete group script = /usr/sbin/smbldap-groupdel '%g'
add user to group script = /usr/sbin/smbldap-groupmod -m '%u' '%g'
delete user from group script = /usr/sbin/smbldap-groupmod -x '%u' '%g'
set primary group script = /usr/sbin/smbldap-groupmod -g '%g' '%u'
add machine script = /usr/sbin/smbldap-useradd -w '%u'
Parámetros de rexistro e rendemento
Os seguintes parámetros axustan os ficheiros e nivel de rexistro (log) do servidor samba e axustes para obter un mellor rendemento:
#
# PARAMETROS DE REXISTRO E RENDEMENTO
#
# Desta forma o servidor samba manten un ficheiro de rexistro por cada cliente que se conecta
log file = /var/log/samba/log.%m
# Tamano maximo dos ficheiros de rexisto (en KB)
max log size = 1000
# O servidor mostrase como un servidor de tempo para os clientes Windows
time server = yes
# Opcions de rendemento recomendadas para Linux
socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
# Evita que busque por dns nomes de equipo de NetBIOS
dns proxy = no
Parámetros para a compartición de recursos
Os seguintes parámetros poden ser interesantes na compartición de carpetas por samba:
#
# PARAMETROS DE COMPARTICION DE RECURSOS
#
# Oculta para os clientes ficheiros especiais como sockets e dispositivos
hide special files = yes
# Comparte como ocultos os ficheiros que comezan por punto (os ocultos de Linux)
hide dot files = yes
# Oculta para os clientes os ficheiros e directorios para os que o usuario non ten permiso de lectura
hide unreadable = yes
- Gardamos o ficheiro
Proporcionarlle a samba o contrasinal do LDAP. Reinicio servizo
- Para rematar a configuración do servidor samba, temos que proporcionarlle o contrasinal do administrador do LDAP (indicado no parámetro ldap admin dn) para que poida acceder a este servizo con privilexios administrativos. Este contrasinal non se almacena como un parámetro máis do servidor de samba porque o ficheiro de configuración de samba pode ser lido por todos os usuarios, e é conveniente gardalo nun ficheiro máis seguro (ficheiro secrets.tdb).
- Para subministrar a clave usaremos o comando smbpasswd:
smbpasswd -w abc123.
- E reiniciamos o servidor samba para activar a configuración:
service smbd restart
- Para asegurarse do funcionamento correcto de samba recoméndase reinicar o servidor dserver00.