|
|
Este documento está disponible en los siguientes idiomas: English Castellano ChineseGB Deutsch Francais Italiano Nederlands Portugues Russian Turkce Arabic |
por Éric Seigne <erics(at)rycks.com> Sobre el autor: Trabajo en el mundo del Software Libre entre otros, desarrollo aplicaciones para acceso a base de datos desde web usando herramientas como PostGreSQL, MySQL y PHP. Para tener algo de libertad en mi forma de trabajar (hacer algun trabajo de vez en cuando... como comenzar un proyecto en C), recientemente he establecido mi propio negocio. Para empeorar las cosas, soy miembro de ABUL www.abul.org (¡y aún no he pagado mi suscripción!). Traducido al español por: Jose María Dueñas Quesada <josemaria.duenas(en)hispalinux.es> Contenidos:
|
Configuración de SambaResumen:
Intentaré explicar aqui el trabajo que hemos realizado para
implementar un servidor Linux/Samba usado como un controlador
de dominio para una red Windows. |
Vamos a suponer que conoces algo acerca
de samba y que ya lo tienes instalado en tu servidor.
Si no es asi, para una rápida instalación, prueba:
Debian: apt-get install samba
RedHat/Mandrake: rpm -ivh /mnt/cdrom/RedHat(Mandrake)/RPMS/samba*
Samba usa un único archivo de configuración en el cual puedes encontrar bloques como [global].
¡Samba usa solamente un archivo de configuración! |
<minimalist smb.conf file> [global] printing = bsd printcap name = /etc/printcap load printers = yes guest account = pcguest log file = /usr/local/samba/log.%m [tmp] comment = Temporary file space path = /tmp read only = yes public = yes </file> |
Si ejecutas Samba con este archivo de configuración, las máquinas Windows de tu red local serán capaces de ver, en Mis sitios de red, que una máquina Linux comparte un directorio temp en el cual tienes permisos de escritura.
ATENCIÓN: cuando actualices el archivo de configuración Samba, debes reiniciarlo usando: /etc/init.d/samba restart (para Debian)
Vamos a detallar los siguientes parámetros:
Aquí especificamos dónde está el netlogon.
Bloque de perfiles de usuario.
Directorio casa del usuario.
Variable | Definición |
Variables del cliente | |
%a | Estructura del cliente Ejemplo: Window 95, WfWG, Windows NT, Samba... |
%I | Dirección IP del cliente |
%m | Nombre netbios del cliente |
%M | Nombre DNS del cliente |
Variables del usuario | |
%g | Grupo primario del usuario |
%H | Directorio casa del usuario |
%u | Actual nombre Unix del usuario |
Variables de compartición | |
%P | Root de la presente compartición |
%S | Nombre de la presente compartición |
Variables del servidor | |
%h | Nombre DNS del servidor Samba |
%L | Nombre Netbios del servidor Samba |
%v | Versión de Samba |
Otras variables | |
%T | Fecha y hora actual |
Ejemplo usando estas variables: Si las maquinas de la red usan Windows 3.11 y Windows 98, puedes crear dos archivos de configuración, uno para cada sistema, usando la variable %a.
<archivo smb.conf>
[global]
printing = bsd
printcap name = /etc/printcap
load printers = yes
guest account = nobody
invalid users = root
; fijamos su nombre netbios
netbios name = pantoufle
; esta es la red a escuchar
; (no necesitas Samba u otra tarjeta de red desde que controla la conexión
; a Internet)
interfaces = 192.168.0.1/255.255.255.0
; la seguridad del usuario implica que cada usuario debe tener una cuenta unix en el servidor
security = user
; El nombre del Grupo de trabajo al cual el servidor pertenece
workgroup = rycks
; La descripción del servidor, visible cuando se visualizan los detalles
; %h es el nombre DNS del servidor y %v la versión de Samba
server string = %h server (Samba %v)
; Usamos el archivo log, no únicamente el syslog
syslog only = no
; La información menos importante tiene que ser escrita en el syslog,
; la otra información se encuentra en /var/log/smb(nmb)/
syslog = 0;
; ¡Vamos a afinarlo!
socket options = IPTOS_LOWDELAY TCP_NODELAY \
SO_SNDBUF=4096 SO_RCVBUF=4096
; Usamos contraseñas encriptadas. Cuidado,
; cada cliente Windows 95 debe ser parchado con MS SMB
(parche se seguridad).
; NT4 debe ser parchado con SP3 o superior.
; No recuerdo en cuanto a lo que windows 3.11 se refiere:
; es probable que no soporte las contraseñas encriptadas:(
encrypt passwords = yes
; Este servidor tambien trabaja como un servidor WINS.
; WINS permite dos redes usando diferentes rangos de IP
; (por ejemplo 192.168.0.0/255.255.255.0 y 192.168.0.1/255.255.255.0)
; para ver los recursos compartidos en la "otra" red,
; tan pronto como el Gateway esté activo.
wins support = yes
; Nivel OS. Si es que nuestro servidor tiene dominio maestro, accesos locales, etc, es
; "superior" que el servidor NT, ¡si es que hay uno!
os level = 34
; Gestión del dominio
domain master = yes
local master = yes
preferred master = yes
; Gestión del dominio de conexión
domain logons = yes
; ¿Qué script ejecutar cuando un usuario se conecta?
; %g corresponde al nombre de grupo primario al que este usuario pertenece
logon script = %g.bat
; ¿En qué directorio podemos encontrar los archivos de script de inicio?
; %L es el nombre Netbios del servidor Samba
logon path=\\%L\netlogon
; ¿Dónde guardar los perfiles de usuario?
; %U es el login del usuario
logon home=\\%L\%U\winprofile
; ¿En qué orden comprobar los recursos para buscar
; el nombre de la máquina?
; Anota el broadcast al final ... a diferencia de Windows
; enviando el broadcast en una base normal.
name resolve order = lmhosts host wins bcast
; ¿Debe ser Samba usado como proxy DNS?
dns proxy = no
; Preservar los nombres de archivos en su caso
preserve case = yes
short preserve case = yes
; ¿Debemos sincronizar las contraseñas de Windows y Linux?
unix password sync = yes
; ¿Qué sincronización de contraseñas utilizar?
passwd program = /usr/bin/passwd %u
passwd chat = *Enter\snew\sUNIX\spassword:* \
%n\n *Retype\snew\sUNIX\spassword:* %n\n .
; Tamaño máximo del archivo log,
; evita que se sature el directorio /var :p
max log size = 1000
; Somos un servidor de hora: sería bueno sincronizar
; las máquinas un poco.
; Usaremos esta característica desde archivo .bat de inicio
time server = yes
; Especificamos donde esta el inicio de red.
; Sólo se usa para conectar la hora,
; ya que no necesitamos hacerla pública.
[netlogon]
path = /home/netlogon/%g
public = no
writeable = no
browseable = no
; El directoio casa para cada usuario
[homes]
comment = Home Directories
browseable = no
; Si deseamos o no que tenga permisos de escritura
read only = no
; El umask por defecto de Unix
create mask = 0700
; Por razones de seguridad, el directorio
; mask se establece a 700 tambien.
directory mask = 0700
; Compartimos FTP, es más fácil tenerlo en
; Mis sitios de red que ejecutar
; un programa específico.
[ftp]
path = /home/ftp/pub
public = yes
printable = no
guest ok = yes
; El directorio temporal
[tmp]
path = /tmp
public = yes
printable = no
guest ok = yes
writable = yes
; Otro directorio temporal especial
; para un usuario que necesite mucho espacio
[bigtemp]
path = /home/bigtemp
public = yes
printable = no
guest ok = yes
valid users = erics
writable = yes
</smb.conf (archivo)>
Como minimo debemos tener:
<file /home/netlogon/admin.bat> net use P: \\pantoufle\homes net use T: \\pantoufle\tmp net time \\pantoufle /SET /YES </file admin.bat> <file /home/netlogon/teachers/teachers.bat> net use P: \\pantoufle\homes net use T: \\pantoufle\tmp net time \\pantoufle /SET /YES regedit /s \\pantoufle\netlogon\teachers.reg </file teachers.bat> <file /home/netlogon/pupils/pupils.bat> net use P: \\pantoufle\homes net use T: \\pantoufle\tmp net time \\pantoufle /SET /YES regedit /s \\pantoufle\netlogon\pupils.reg </file pupils.bat> <file /home/netlogon/teachers/teachers.reg> [HKEY_CURRENT_USER\Software\Microsoft\Windows \CurrentVersion\Explorer\User Shell Folders] "Personal"="P:\\" </file teachers.reg> <file /home/netlogon/pupils/pupils.reg> [HKEY_CURRENT_USER\Software\Microsoft\Windows \CurrentVersion\Explorer\User Shell Folders] "Personal"="P:\\" </file pupils.reg> |
Este archivo permite montar automáticmente el directorio personal del usuario al inicio como P: y el directorio como T:. La hora del sistema también se obtiene del servidor Samba.
NOTA: el archivo .bat debe estar en "modo DOS". La forma más fácil es crear este archivo con el Bloc de notas y después enviarlo al servidor.
La seguridad de Windows es posible usando un controlador de dominio. |
¡Esto es un título!. Bueno, lo tomé prestado de un documento de Microsoft, concerniente a su herramienta de Políticas de seguridad.
Así, para crear una Política de seguridad en Windows, por ejemplo para prevenir que algunos usuarios (¿todos?) puedan ejecutar regedit, un programa DOS, etc., tienes que usar poledit.exe, que está en el CD de Windows 98.
Ejecuta poledit, lee su ayuda, anota la información; este artículo no va a enseñarte como funciona el software propietario.
Una vez que tu archivo .pol está listo, cópialo a tu servidor Samba, dentro del directorio en el que se encuentra el PATH del grupo [netlogon].
AVISO: Para clientes Windows 9x, el archivo de estrategia de sistema
debe ser config.pol, para Windows NT es otro nombre, no tengo
NT y no puedo decírtelo:'(
No, no me envies una versión de prueba de NT. Gracias de todos modos,
eso fue muy amable por tu parte:o)
NOTA: poledit permite crear Grupos de usuarios y Usuarios, pero nosotros aún no lo hemos hecho. Sólo el usuario por defecto está dentro de la cuenta.
Por ejemplo, si creo un grupo "admin" con poledit, al que se le permita ejecutar regedit, si te conectas como "erics" ("admin" es su grupo primario), entonces yo no puedo ejecutar regedit.(
Sin embargo, si creas un usuario "erics" en poledit entonces si funciona.
A menos que queramos crear los 1056 usuarios con poledit y que la gestion global de usuarios sea más interesante, ofrecemos el siguiente "truco":
Para hacer eso, lo resolvimos de este modo: hicimos 3 archivos config.pol, sólo con usuarios por defecto, de este modo, en el servidor Linux tenemos:
/home/netlogon/teachers/CONFIG.POL
/home/netlogon/teachers/teachers.bat
/home/netlogon/pupils/CONFIG.POL
/home/netlogon/pupils/pupils.bat
/home/netlogon/admin/CONFIG.POL
/home/netlogon/admin/admin.bat
Y nosotros cambiamos el archivo smb.conf para introducir esto en la cuenta:
<smb.conf file>
[netlogon]
; añadimos %g para hacer que el netlogon apunte a un directorio diferente con respecto al
; grupo del usuario, en el cual el archivo config.pol correspode a cada perfil de Grupo de
; usuario.
path = /home/netlogon/%g
public = no
writeable = no
browseable = no
</smb.conf file>
Con un poco de suerte, 20 clicks y un reinicio deberían ser suficientes para configurar Windows. |
Para un cliente Windows 98
Haz click en Inicio/Configuración/Panel de control y haz doble click en Red
Instala:
A continuación, haz click en la pestaña "Identificación" e introduce
el correspondiente nombre de computadora y Grupo de trabajo.
Click en "Control de acceso" y selecciona la opción Nivel de control
de acceso
Regresa a la pestaña de configuración y haz doble click en "Cliente para
redes Microsoft"
No olvides configurar el soporte TCP/IP:
Doble click en TCP/IP
Dirección IP :
En funcionamiento, un cuello de botella aparce rápidamente a causa del uso de perfiles Windows.
De hecho, el perfil está lleno de cosas de Microsoft que son importantes como el caché del IE, caché de OutLook, etc.
En pocas palabras, esto significa que alrededor de 10 Mb se descargarán cuando conectes una máquina (sin embargo, mi perfil es uno "clásico", una imagen de fondo) y 10 Mb se cargarán al servidor cuando te desconectes.
10 Mb por cada usuario, en una habitación con 15 máquinas (el tamaño "normal" de un laboratorio), hacen 150 Mb, y si el edificio tiene 10 habitaciones, calcula los usuarios desconectándose cuando suene la campana.
Entonces debes anticiparte y desconectar todo a las 5... (bueno, debo admitir que es lo que yo hacía cuando era estudiante)... mejor que a las 5 pasadas. Es como en los atascos de las grandes ciudades: mejor ir 10 minutos antes que 2 horas después.
Por lo tanto, según la política que implementes, sería una buena idea montar el directorio home a P: (por ejemplo, P de Personal) para todos y decir a los usuarios: "graben sus documentos en P y no en "Mis documentos".
A continuación, tienes que encontrar el software que permita configurar tus Favoritos en P:\bookmarks.html.
¡No sé, ni siquiera si existe eso en Windows!
Si encuentras una solución, escribe un artículo sobre ello, y comparte tus conocimientos con nosotros.
¿Es posible tener varios grupos de trabajo en el mismo dominio, cómo se puede administrar, es posible compartir los problemas entre varios Samba?
¿Cómo usar ambos servidores, NT y Samba?
La configuración de los clientes NT: el equivalente de config.pol tiene otro nombre bajo NT, ¿cuál es?.
Un problema real cuando sólo tienes un servidor Samba (y no NT): Yo trabajo bajo Windows 98 y quiero compartir recursos locales, mi impresora:
Captura de mi impresora compartida
Click en el botón añadir...
ULTIMA NOTICIA: Alguien me dió la solución. Basta con seleccionar "Nivel de control de acceso a los recursos" durante el paso 3 de la configuración de Windows.
Bruno <bcarrere(at)asp-france.fr> por su trabajo de corrección y su preciada ayuda :o)
John Perr por animarme a escribir mi primer artículo para LinuxFocus,
y haberlo traducido al inglés.
Michel Billaud aka MiB por todas las soluciones que encontró a nuestros
problemas :o)
Etienne, Éric, y el hombre invisible del que olvidé el nombre,
!lo siento!. Además, gracias por compartir lo aprendido en tus clases de Microsoft sobre servidores NT.
Jean Peyratout, ¿necesitamos decir por qué? sería muy largo.
The Abul en general
Rycks por proveerme de tiempo y recursos para desarrollar y documentar Software Libre.
Online O'Reilly book: http://www.oreilly.com/catalog/samba/chapter/book/index.html
Este documento será actualizado en la sección de documentación de rycks.com
|
Contactar con el equipo de LinuFocus
© Éric Seigne, FDL LinuxFocus.org |
Información sobre la traducción:
|
2003-11-07, generated by lfparser version 2.41