Ventanas.  virus  Cuadernos.  Internet.  oficina.  Utilidades.  Conductores

Samba- un programa que le permite acceder unidades de red en varios sistemas operativos a través del protocolo SMB/CIFS. Tiene partes de cliente y servidor. Es gratis software, publicado bajo la licencia GPL.

Samba se ejecuta en la mayoría de los sistemas similares a Unix, como GNU/Linux, Solaris compatible con POSIX y Mac OS X Server, varias variantes de BSD, OS /2, Windows. Samba incluido en casi todas las distribuciones GNU/Linux, incluyendo, por supuesto, Ubuntu.

Instalación

Para crear una carpeta compartida en Ubuntu Desktop simplemente haga clic en botón derecho del ratón haga clic en la carpeta y seleccione el elemento de menú "Publicar carpeta". Ninguno Archivos de configuración no hay necesidad de editar. Todo lo que se describe a continuación se aplica únicamente a Ajuste manual, por ejemplo, en el caso de crear un servidor de archivos.

Para instalar, simplemente abra una terminal y escriba:

sudo apt-get install samba

La aplicación se descargará e instalará automáticamente.

Configuración

Hagámoslo usando la terminal. respaldo archivo de configuración inicial:

sudo cp /etc/samba/smb.conf(,.bak)

Ahora puede editar el archivo de configuración /etc/samba/smb.conf, para hacer esto, ábralo en cualquier editor de texto con derechos de superusuario. Por ejemplo, así:

sudo nano /etc/samba/smb.conf

Lo que se escribe a continuación es generalmente solo un caso de uso específico de Samba, y en una gran cantidad de casos todo está configurado absolutamente mal. El artículo necesita ser corregido, enfocándose en las capacidades de Samba, y no solo en usar este programa como un almacenamiento de archivos con autorización local. Es mejor sacar un ejemplo con el almacenamiento de archivos en un artículo detallado por separado.

Un ejemplo de cómo configurar Samba como un servidor de archivos independiente con autorización:

; Configuración global del servidor; Configuración general del servidor; El nombre de la computadora que se mostrará en el entorno de red netbios name = main-server server string = ; Grupo de trabajo grupo de trabajo de clientes = GRUPO DE TRABAJO anunciar versión = 5.0 opciones de socket = TCP_NODELAY IPTOS_LOWDELAY SO_KEEPALIVE SO_RCVBUF=8192 SO_SNDBUF=8192 passdb backend = tdbsam seguridad = usuario contraseñas nulas = verdadero; Nombre de usuario alias archivo nombre de usuario map = /etc/samba/smbusers name resolve order = hosts wins bcast ; El soporte de wins se establece en sí si su Samba nmbd(8) es un servidor WINS. No establezca esta opción en sí a menos que tenga varias subredes y no desee que su nmbd actúe como un servidor WINS. Nunca establezca esta opción en sí en más de una máquina dentro de la misma subred. gana apoyo = no; Impresión de soporte de impresora = CUPS printcap name = CUPS; Registros archivo de registro = /var/log/samba/log.%m syslog = 0 syslog only = no ; Establecer el enlace a las interfaces en las que escuchar, si no se especifica, escucha en todas las interfaces; interfaces = lo, eth0 ; enlazar interfaces solamente = true ; ; ; ruta = /var/lib/samba/impresoras; navegable = sí; invitado ok = si ; solo lectura = si ; escribir lista = raíz; crear máscara = 0664; máscara de directorio = 0775; ; ; ruta = /tmp; imprimible = sí; invitado ok = si ; navegable = no; ; ;ruta = /media/cdrom ;navegable =sí ;solo lectura =sí ;invitado ok =sí ; Shara disco duro; El nombre de las bolas, visible para los clientes; Ruta a la ruta del disco compartido = /media/sda1 ; ¿Es posible navegar navegable = sí solo lectura = no invitado ok = no crear máscara = 0644 máscara de directorio = 0755; Vinculación a un nombre de usuario o grupo específico, nombres separados por un espacio; forzar usuario = usuario1 usuario2 ; fuerza grupo = grupo1 grupo2 ; Otro disco duro, similar a la ruta anterior = /media/sde1 navegable = sí solo lectura = no invitado ok = no crear máscara = 0644 máscara de directorio = 0755

Ahora tenemos que tratar con los usuarios.

Samba usa usuarios que ya están en el sistema, tomemos el nombre de usuario por ejemplo, digamos que ya está en el sistema, debe agregarlo a la base de datos SMB y asignar una contraseña para acceder a los recursos compartidos, hagamos esto con el dominio:

Smbpasswd -un usuario

Se le pedirá que ingrese una contraseña, el usuario se agregará a la base de datos, ahora debe habilitar a este usuario.

Smbpasswd -e usuario

A continuación, vamos a crear un alias para el nombre de usuario usuario para que nos sea más fácil acceder con maquinas windows sobre el cual por ejemplo tenemos un usuario llamado Admin, para ello crearemos y editaremos el archivo /etc/samba/smbusers:

sudo touch /etc/samba/smbusers sudo gedit /etc/samba/smbusers

Escribe un par de líneas en el archivo.

# Unix_name = SMB_name1 SMB_name2 usuario = Admin

Esto completa la configuración, reinicie Samba.

Puede instalar la GUI más simple para Samba con el comando:

sudo apt-get install sistema-config-samba

Se inicia con el comando:

sudo sistema-config-samba

Escribe todos los cambios en el archivo de configuración de samba.

Para la administración remota de Samba como una interfaz web para Samba es perfecta

Linux es un gran sistema operativo, pero no podemos alejarnos de Windows y también lo es de nosotros. Las ventanas siempre nos rodearán, ya sea en casa, red corporativa o cibercafé. Constantemente tenemos que intercambiar documentos con computadoras con Windows; después de todo, no todos los usuarios prefieren trabajar en Linux. Tener un servidor a tu disposición linux , en todo caso, habrá necesidad de interactuar con equipos Windows, por lo que hablaremos de conexión linux a la red de Microsoft.

Instalando Samba

Para instalar Samba, necesitamos instalar los paquetes samba y samba-client. También es recomendable instalar el paquete smbfs. Además, el sistema actualizará el paquete samba-common, que puede que ya esté instalado en el sistema. Todas mis manipulaciones se llevarán a cabo en ubuntu 10.04, la principal diferencia con otras distribuciones es el método de instalación. Para ubuntu a través de la consola así:

$ sudo apt -get install samba

O usando el administrador de paquetes Synaptic, cosa que hice, me resultó más conveniente esta opción, ya que podía seleccionar de la lista los paquetes que necesitaba, estos eran:

    samba

    cliente smb

    samba-común

Si alguna vez has usado otro distribución de linux, entonces probablemente esté familiarizado con el programa LinNeighborhood. Este programa de gráficos, que le permite ver los recursos de red de Windows. No es necesario en Ubuntu. Primero, las herramientas estándar de GNOME le permiten navegar por las redes de Windows. Y en segundo lugar, por interés, el programa LinNeighborhood se instaló desde uno de los repositorios de Ubuntu. Resultó que este programa, encontrado por Synaptic, no se puede utilizar en absoluto (problemas con la localización). Bueno, está bien, tiene sentido entender si hay excelentes medios estándar que ya están funcionando.

Configuración básica de Samba

En esta etapa, supondremos que la utilidad está instalada. El archivo de configuración principal de Samba es /etc/samba/smb.conf. Necesitas abrirlo y cambiar varios parámetros. El primero es grupo de trabajo - especifica el nombre (de su elección) del grupo de trabajo o dominio NT:

GRUPO DE TRABAJO = Mi Grupo Hogar

También puede configurar el parámetro de comentario; esta es una descripción de su computadora:

comentario = Mi computadora Linux

Configure la opción de seguridad. Si la red es un cliente/servidor, debe seleccionar parámetro del servidor, y sired peer-to-peer (es decir, una red sin un servidor dedicado), entonces debe seleccionar usuario o compartir:

seguridad = compartir

Nombre del invitado cuenta instalar así:

cuenta de invitado = invitado

También necesita configurar codificaciones:

página de código de cliente = 866

conjunto de caracteres = utf8

Para hacer que Samba se ejecute más rápido, configure las siguientes opciones:

opciones de socket = TCP_NO RETARDO SO_RCVBUF=8192 SO_SNDBUF=8192

proxy dns=no

El parámetro interfaces especifica las interfaces en las que se debe ejecutar el servicio Samba. Es necesario especificar aquellas interfaces que conectan nuestra máquina con redes Windows:

interfaces = 192.168.0.22/24

Configuración de recursos compartidos

Ahora queda configurar los recursos que queremos compartir, este es el [ público].

# directorio compartido

comentario = directorio publico

# camino

ruta = /var/samba

# no solo leer

solo lectura = no

# permitir escribir

escribible = sí

# permitir el acceso de invitados

invitado ok = si

# permitir ver el contenido del directorio

navegable = sí

En este caso, el directorio /var/samba será el recurso compartido de nuestra computadora (es necesario crearlo, ya que no existe dicho directorio en el sistema por defecto). Otros usuarios podrán escribir sus archivos en él (solo lectura = no, escritura = sí), naturalmente, podrán leerlos (explorable = sí). No es necesario verificar el nombre de usuario y la contraseña para acceder al recurso (guest ok=yes), se utiliza el llamado acceso de invitado. El comentario "Directorio público" lo verán otros usuarios de la red de Windows al visualizar los recursos de nuestro ordenador.

Si es necesario proporcionar acceso general("compartir") a los directorios de inicio de los usuarios, luego vaya a la sección ;. Descomente todas las líneas comentadas con un punto y coma antes de la línea;. t mi . debe obtener lo siguiente:

comentario = Inicio Directorios

navegable = no

usuarios válidos = %S

escribible = no

crear máscara = 0600

máscara de directorio = 0700

Ahora los directorios de usuarios no estarán visibles en la lista de recursos compartidos, puede acceder a ellos en \\servidor\nombre de usuario . Por ejemplo, \\servidor\petya. Si desea que los recursos de usuario sean navegables, establezca el parámetro navegable en sí:

navegable = sí

Después de todos los cambios, guarde el archivo de configuración e inicie (o reinicie - reinicie) Samba:

$ sudo /etc/init.d/samba start

Visualización de recursos de red de Windows

Puede ver los recursos de red de Windows usando el programa smbclient, pero funciona en modo de texto, por lo que no es muy conveniente de usar. Es mucho más conveniente usar el explorador de archivos para ver los recursos de la red. Puedes hacerlo usando el menú. Transición | Conectar al servidor...

Secretos de optimización de Samba

Ahora hablemos de cómo hacer que Samba funcione un poco más rápido. Si abre el archivo de configuración smb.conf, encontrará la opción de enlaces anchos en él. Nunca lo instale en No ! Por lo tanto, reduciremos significativamente el rendimiento de Samba. Por el contrario, debe configurarlo en sí (si el parámetro de enlaces anchos se deshabilitó antes), lo que aumentará significativamente el rendimiento.

La opción de enlaces amplios determina cómo Samba sigue los enlaces simbólicos. Si enlaces anchos = no, Samba no seguirá enlaces simbólicos fuera del área exportada. Samba primero sigue el enlace simbólico y luego realiza una llamada búsqueda de ruta de directorio (una llamada al sistema que determina dónde termina el enlace). Esta operación implica 6 llamadas al sistema más que si wide links=yes. Teniendo en cuenta que hay muchas operaciones de este tipo, deshabilitar los enlaces anchos reduce el rendimiento de Samba en aproximadamente un 30%.

Samba es un software para compartir archivos y compartir archivos entre computadoras que ejecutan Linux/Unix y un sistema operativo. sistema de ventanas. Samba consta de partes de cliente y servidor. El lado del cliente permite el acceso a carpetas de red y recursos de Windows, y la sala de servidores, a su vez, comparte la carpeta de Ubuntu con otras máquinas, incluido Windows.

Este breve tutorial cubrirá la configuración más simple de Samba Ubuntu 18.04, así como también cómo compartir una carpeta de Ubuntu con varios niveles de privilegios.

Crearemos tres carpetas públicas con diferentes niveles de permisos. Una carpeta con acceso anónimo, con acceso para usuarios pertenecientes a un grupo específico y acceso solo para un usuario específico.

Tanto las máquinas Linux como Widnows podrán acceder a las carpetas compartidas en Ubuntu usando cualquier programa que funcione a través del protocolo SMB.

Para que todo funcione correctamente, todas las máquinas deben estar en el mismo grupo de trabajo especificado en el servidor Samba. De forma predeterminada en Windows, Linux y MacOS, el grupo de trabajo se denomina Grupo de trabajo. Para averiguar qué grupo de trabajo se utiliza en su Windows, abra línea de comando(Win + R, luego cmd) y ejecute el siguiente comando:

estación de trabajo de configuración de red

Vemos el parámetro que necesitamos en la línea. Dominio puesto de trabajo . Este es el grupo de trabajo.

Ahora, si una computadora con un servidor Samba en su red tiene una dirección IP permanente, es recomendable ingresarla en archivo de hosts. Para hacer esto, ejecute el símbolo del sistema como administrador:

Y ejecuta el comando:

bloc de notas C:\Windows\System32\drivers\etc\hosts

En el archivo que se abre, agregue una línea con la dirección IP de la computadora en la que se instalará Samba:

192.168.0.1 srvr1.dominio.com srvr1

Ahora podemos pasar a la cuestión de cómo compartir la carpeta de Ubuntu.

Configurando Samba en Ubuntu 16.04

Comencemos, como de costumbre, con la instalación. La instalación de Samba Ubuntu junto con todos los componentes necesarios se realiza con el comando:

sudo apt-get install -y samba samba-common python-glade2 system-config-samba

Cuando todo esté instalado, puede proceder a la configuración. Primero, haga una copia de seguridad del archivo de configuración original de Samba:

sudo mv /etc/samba/smb.conf /etc/samba/smb.conf.bak

Después de crear una copia de seguridad, cree su archivo de configuración con este comando:

sudo vi /etc/samba/smb.conf

Primero, especifiquemos la configuración del servidor de archivos global. Para hacer esto, inserte las siguientes líneas en el archivo:


grupo de trabajo = GRUPO DE TRABAJO

netbiosname = Compartir Ubuntu
proxy dns=no

tamaño máximo de registro = 1000
passdb backend = tdbsam
sincronización de contraseña de unix = sí

cambio de contraseña de pam = sí
map to guest = mal usuario
compartir usuario permitir invitados = sí

Echemos un vistazo más de cerca a lo que significan estas líneas.

  • grupo de trabajo- el grupo de trabajo, como ya se mencionó, debe ser el mismo en todas las máquinas
  • netbios-nombre- nombre de la computadora que se mostrará en Windows;
  • archivo de registro- la dirección del archivo donde se almacenarán los mensajes de error y otra información;
  • seguridad- realizar la autenticación a nivel de usuario por defecto;
  • orden de resolución de nombres- orden de resolución de direcciones IP por nombre NetBIOS. bcast significa enviar a red local solicitud de difusión. Si todos los equipos entre los que se planea la interacción están en la misma red, esta opción es óptima;
  • backend passdb- método de almacenamiento de contraseñas de usuario;
  • sincronización de contraseña de unix- sincronización de contraseñas de usuario de samba con contraseñas locales de Unix;
  • mapa para invitados- Especifica cuándo se otorgará acceso de invitado al usuario. Hay tres valores disponibles - nunca- nunca, mal usuario- cuando no existe tal usuario, contraseña incorrecta- cuando la contraseña se ingresa incorrectamente,

Cuando haya terminado de crear el archivo de configuración, pasamos a la cuestión de cómo compartir la carpeta de Ubuntu para Windows.

Uso compartido de carpetas de Ubuntu

Primero, creemos una carpeta pública accesible para todos. Es decir, con acceso anónimo, sin autorización de samba.

Crea una carpeta a la que abriremos acceso, por ejemplo:

sudo mkdir -p /samba/allaccess

Una vez creada la carpeta, debe otorgarle los permisos correctos. Los siguientes comandos permiten el acceso a la carpeta para todos y hacen que el propietario sea nadie:

cd / samba
sudo chmod -R 0755 allaccess
sudo chown -R nadie: ningún grupo allaccess/

El siguiente paso es describir la carpeta allaccess en el archivo de configuración de samba:


ruta=/samba/todos los accesos
navegable = sí
escribible = sí
invitado ok = si
solo lectura = no

Su archivo de configuración ahora debería verse así:


grupo de trabajo = GRUPO DE TRABAJO
cadena de servidor = %h servidor (Samba, Ubuntu)
netbiosname = Compartir Ubuntu
proxy dns=no
archivo de registro = /var/log/samba/log.%m
tamaño máximo de registro = 1000
passdb backend = tdbsam
sincronización de contraseña de unix = sí
contraseña programa = /usr/bin/contraseña %u
cambio de contraseña de pam = sí
map to guest = mal usuario
compartir usuario permitir invitados = sí
#==============
ruta=/samba/todos los accesos
navegable = sí
escribible = sí
invitado ok = si
solo lectura = no

Echemos un vistazo más de cerca a las opciones que se usaron aquí:

  • camino- ruta a la carpeta a compartir;
  • navegable- si la carpeta se mostrará en la lista de recursos compartidos disponibles;
  • escribible- si se podrá escribir en la carpeta;
  • solo lectura- la carpeta es de solo lectura;
  • invitado ok, publico- si se permitirá el acceso de invitados;
  • solo invitado- si se establece en sí, la carpeta estará disponible solo para invitados;
  • los anfitriones permiten- direcciones IP desde las que puede acceder a este servidor;
  • usuarios validos- de forma predeterminada, todos los usuarios pueden iniciar sesión, si pasa una lista de usuarios en este parámetro, solo ellos pueden iniciar sesión;
  • crear máscara- máscara de derechos para archivos creados.

Para aplicar los cambios, reinicie el servidor Samba:

sudo systemctl reiniciar samba

La configuración de Samba Ubuntu 16.04 para el acceso anónimo ahora está completa. Ahora puedes consultar la disponibilidad carpeta compartida allaccess desde Windows, para ello presiona Win + R y ejecuta:

\\srvr1\acceso total

Verá nuestra carpeta. Si no lo ves, revisa la configuración nuevamente. Se puede acceder a la carpeta sin autorización de samba. La configuración de los recursos compartidos de Samba con acceso sin autorización está completa.

También puede conectarse a este servidor desde Linux usando Nautilus, solo escriba la dirección smb://ip del servidor, bajo otros lugares:

Uso compartido seguro de carpetas de Ubuntu

Para compartir una carpeta para ventanas ubuntu, al que solo tendrán acceso los usuarios de un determinado grupo, crearemos una carpeta separada y la describiremos en el archivo de configuración de Samba en Ubuntu.

Primero creamos una carpeta:

sudo mkdir -p /samba/allaccess/asegurado

Crear un grupo:

sudo addgroup grupo seguro

Configuración de derechos:

cd /samba/todo acceso
$ sudo chown -R richard: grupo asegurado asegurado
$ sudo chmod -R 0770 asegurado/

El último paso es agregar ajustes al archivo de configuración de samba:

sudo vi /etc/samba/smb.conf


ruta=/samba/todo acceso/asegurado
usuarios válidos = @securedgroup
invitado ok = no
escribible = sí
navegable = sí

Reinicie el servidor Samba. Ahora solo los usuarios del grupo de grupo seguro pueden acceder a la carpeta compartida en Ubuntu.

Para probar cómo funciona, agreguemos al usuario richard a nuestro grupo:

sudo usermod -a -G grupo seguro ricardo

El archivo de configuración principal de Samba es /etc/samba/smb.conf. El archivo de configuración inicial tiene una cantidad significativa de comentarios para documentar las distintas directivas de configuración.

No todas las opciones posibles están habilitadas en el archivo de configuración predeterminado. ver la guía hombre smb.conf o la colección de preguntas frecuentes de Samba para más detalles.

1. Primero cambie los siguientes pares clave/valor en la sección Archivo /etc/samba/smb.conf:

Grupo de trabajo=EJEMPLO ... seguridad=usuario

Parámetro seguridad es significativamente inferior en la sección y está comentado por defecto. también reemplazar EJEMPLO a algo más apropiado para su entorno.

2. Cree una nueva sección al final del archivo o elimine el comentario de uno de los ejemplos para el directorio que desea compartir:

Comentario = Ubuntu File Server Share ruta = /srv/samba/share browsable = sí invitado ok = sí solo lectura = no crear máscara = 0755

    comentario: una breve descripción del recurso compartido. Utilizado para su comodidad.

    camino: ruta al directorio compartido.

    Este ejemplo usa /srv/samba/sharename porque, según el estándar de jerarquía del sistema de archivos (FHS), el directorio /srv es donde deben residir todos los datos relacionados con este sitio. Técnicamente, un recurso compartido de Samba se puede colocar en cualquier parte del sistema de archivos donde límites de archivo acceso, pero se recomienda seguir las normas.

    navegable: permite a los clientes de Windows ver el contenido de un directorio compartido usando Explorador de Windows.

    invitado bien: permite a los clientes conectarse al recurso compartido sin especificar una contraseña.

    solo lectura: especifica si el recurso es de solo lectura o de solo escritura. Los privilegios de escritura están disponibles solo cuando se especifican No, como se muestra en este ejemplo. si el valor , el acceso al recurso será de solo lectura.

    crear máscara: determina qué permisos se establecerán para los nuevos archivos que se creen.

3. Ahora que Samba está configurado, debe crear un directorio y establecer permisos en él. Escriba en la terminal:

sudo mkdir -p /srv/samba/share sudo chown nadie.nogroup /srv/samba/share/

parámetro -pag le dice a mkdir que cree el árbol de directorios completo si no existe.

4. Finalmente, reinicie los servicios de samba para aplicar la nueva configuración:

sudo reiniciar smbd sudo reiniciar nmbd

Ahora puedes encontrar archivo ubuntu servidor usando cliente de Windows y navegar por sus directorios compartidos. Si su cliente no muestra sus recursos compartidos automáticamente, intente acceder a su servidor por su dirección IP, por ejemplo, \\192.168.1.1, desde una ventana del Explorador de Windows. Para probar que todo funciona, intente crear un directorio dentro de su recurso compartido desde Windows.

Para crear recursos compartidos adicionales, cree una nueva sección en /etc/samba/smb.conf y reinicie Samba. Solo asegúrese de que el directorio compartido esté creado y tenga los permisos correctos.

recurso compartido "" y camino /srv/samba/compartir son solo ejemplos. Establezca el nombre del recurso y el nombre del directorio para que coincida con su entorno. Es una buena idea utilizar el nombre del directorio del recurso en el sistema de archivos como nombre del recurso. En otras palabras, el recurso se puede especificar como para el directorio /srv/samba/qa.

Samba es un programa que le permite acceder a unidades de red en varios sistemas operativos utilizando el protocolo SMB/CIFS. Tiene partes de cliente y servidor. Es software libre, publicado bajo la licencia GPL.
Samba se ejecuta en la mayoría de los sistemas similares a Unix, como GNU/Linux, Solaris compatible con POSIX y Mac OS X Server, en varias variantes de BSD, en OS/2, Windows. Samba está incluido en casi todas las distribuciones de GNU/Linux, incluida, por supuesto, Ubuntu.
Instalación

Para crear una carpeta compartida en Ubuntu Desktop, simplemente haga clic derecho en la carpeta y seleccione el elemento de menú "Compartir carpeta". No es necesario editar ningún archivo de configuración. Todo lo que se describe a continuación se aplica solo a la configuración manual, por ejemplo, en el caso de crear un servidor de archivos.
Para instalar, simplemente abra una terminal y escriba:

sudo apt-get install samba

La aplicación se descargará e instalará automáticamente.

Configuración

Usando la terminal, haga una copia de seguridad del archivo de configuración inicial:

sudo cp /etc/samba/smb.conf(,.bak)

Ahora puede editar el archivo de configuración /etc/samba/smb.conf, para hacer esto, ábralo en cualquier editor de texto con derechos de superusuario. Por ejemplo, así:

Sudo nano /etc/samba/smb.conf Ejemplo de configuración de Samba como servidor de archivos independiente con autorización: ; Configuración global del servidor; Configuración general del servidor; El nombre de la computadora que se mostrará en el entorno de red netbios name = main-server server string = ; Grupo de trabajo clientes grupo de trabajo = GRUPO DE TRABAJO anunciar versión = 5.0 opciones de socket = TCP_NODELAY IPTOS_LOWDELAY SO_KEEPALIVE SO_RCVBUF=8192 SO_SNDBUF=8192 passdb backend = tdbsam security = user null passwords = true ; Nombre de usuario alias archivo nombre de usuario map = /etc/samba/smbusers name resolve order = hosts wins bcast ; El soporte de wins se establece en sí si su Samba nmbd(8) es un servidor WINS. No establezca esta opción en sí a menos que tenga varias subredes y no desee que su nmbd actúe como un servidor WINS. Nunca establezca esta opción en sí en más de una máquina dentro de la misma subred. gana apoyo = no; Impresión de soporte de impresora = CUPS printcap name = CUPS; Registros archivo de registro = /var/log/samba/log.%m syslog = 0 syslog only = no ; Establecer el enlace a las interfaces en las que escuchar, si no se especifica, escucha en todas las interfaces; interfaces = lo, eth0 ; enlazar interfaces solamente = true ; ; ; ruta = /var/lib/samba/impresoras; navegable = sí; invitado ok = si ; solo lectura = si ; escribir lista = raíz; crear máscara = 0664; máscara de directorio = 0775; ; ; ruta = /tmp; imprimible = sí; invitado ok = si ; navegable = no; ; ;ruta = /media/cdrom ;navegable =sí ;solo lectura =sí ;invitado ok =sí ; Bola de disco duro; El nombre de las bolas, visible para los clientes; Ruta a la ruta del disco compartido = /media/sda1 ; ¿Es posible navegar navegable = sí solo lectura = no invitado ok = no crear máscara = 0644 máscara de directorio = 0755; Vinculación a un nombre de usuario o grupo específico, nombres separados por un espacio; forzar usuario = usuario1 usuario2 ; fuerza grupo = grupo1 grupo2 ; Otro disco duro, similar al anterior ruta = /media/sde1 navegable = sí solo lectura = no invitado ok = no crear máscara = 0644 máscara de directorio = 0755

Ahora tenemos que tratar con los usuarios.

Samba usa usuarios que ya están en el sistema, tomemos el nombre de usuario por ejemplo, digamos que ya está en el sistema, debe agregarlo a la base de datos SMB y asignar una contraseña para acceder a los recursos compartidos, hagamos esto con el dominio:

Smbpasswd -un usuario

Se le pedirá que ingrese una contraseña, el usuario se agregará a la base de datos, ahora debe habilitar a este usuario.

Smbpasswd -e usuario

A continuación, crearemos un alias para el nombre de usuario usuario para facilitar el acceso desde la máquina Windows en la que tengamos, por ejemplo, un usuario llamado Admin, para ello crearemos y editaremos el archivo /etc/samba/smbusers:

sudo touch /etc/samba/smbusers sudo gedit /etc/samba/smbusers

Escribe un par de líneas en el archivo.

# Unix_name = SMB_name1 SMB_name2 usuario = Admin

Esto completa la configuración, reinicie Samba.

Servidor de archivos Samba para red Windows

Muy a menudo, Samba se utiliza para crear un servidor de archivos en red de ventanas.

Servidor de archivos en un dominio de Active Directory

Para crear un servidor de archivos integrado en el dominio Directorio Activo, primero debe unir su máquina Ubuntu al dominio. Este es el tema de un artículo separado:

Para crear un servidor de archivos, no necesita configurar PAM, solo agregue usuarios y grupos de dominio a través de Winbind al sistema.

Después de iniciar sesión con éxito en el dominio, todo lo que tiene que hacer es configurar los recursos compartidos en su computadora.

Aquí debe prestar atención de inmediato a una cosa muy importante: Samba intenta asignar los derechos de los archivos de Windows a los derechos de Unix; sin embargo, debido a las diferencias cardinales en los mecanismos para asignar derechos, esto no siempre es posible. Tenga en cuenta que los permisos de archivo siempre y en cualquier caso están controlados por su sistema de archivos en la máquina Ubuntu, samba solo puede adaptarse a ellos, pero no cambiar su comportamiento.

Por lo tanto, de manera predeterminada, los recursos compartidos tendrán capacidades de control de acceso muy deficientes: la asignación de diferentes derechos para el usuario, el grupo y todos los demás. Sin embargo, esto se puede solucionar fácilmente agregando soporte POSIX ACL a su sistema de archivos. En este caso, será posible asignar varios derechos a diferentes usuarios y grupos, casi como en Windows.

El soporte de POSIX ACL está al menos en ext3/4, para activarlo solo necesita agregar a las opciones de montaje sección deseada parámetro ac.

Es importante que el directorio que desea compartir a través de Samba esté en una unidad montada con la opción acl. De lo contrario, no podrá utilizar correctamente el mecanismo para delimitar los derechos de acceso a los archivos en las bolas.

Hay otro punto muy importante: las ACL POSIX no admiten la herencia de los derechos de acceso de los directorios principales, y esta característica está presente en Windows. Por lo tanto, Samba implementa un mecanismo adicional para almacenar información sobre la herencia de los derechos de acceso, que utiliza los atributos extendidos del sistema de archivos. Por lo tanto, para que Samba maneje correctamente la herencia de derechos, además de acl, es necesario agregar el parámetro user_xattr a las opciones de montaje del sistema de archivos, que es responsable de habilitar el soporte para atributos extendidos.

Por ejemplo, siempre uso discos LVM separados para organizar los recursos compartidos, y mis líneas fstab para ellos se ven así:

/dev/mapper/data-profiles /var/data/profiles ext3 defaults,noexec,acl,user_xattr 0 2

La opción noexec es necesaria porque 100% Shares for Windows no debería ser ejecutable archivos Linux, y una vez más, no estará de más ir a lo seguro.

Para trabajar con acl en Ubuntu, debe instalar un paquete de utilidades adecuadas:

sudo aptitude instalar acl

Después de eso, puede ver los derechos extendidos (es decir, ACL) en un archivo o directorio con el comando

Obtener archivo facl

E instalar con el comando

archivo setfacl

Por si acaso, quiero llamar la atención sobre el hecho de que el mecanismo POSIX ACL no tiene nada que ver con Samba, es solo un complemento del mecanismo de permisos estándar de Linux. En consecuencia, Samba puede usarlo, pero no puede cambiarlo ni eludirlo de ninguna manera.

Para trabajar con atributos extendidos de FS, necesitará un paquete de utilidades muy similar a acl - attr , que se puede instalar con el comando

sudo aptitude install atributo

Para ver los atributos extendidos, puede usar el comando

Obtener archivo fattr

Y para la instalación

Archivo setfattr

Sin embargo, hay un pequeño inconveniente aquí. El punto es que Samba almacena toda la información sobre la herencia en forma binaria en un único atributo extendido user.SAMBA_PAI. Por lo tanto, no podrá cambiar nada con setfattr, a menos que elimine por completo los atributos extendidos (a veces es posible que deba hacer esto).

Pues tendrás que gestionar la herencia de derechos desde una máquina Windows utilizando las herramientas estándar de este sistema. O con la utilidad smbcacls si puede descubrir cómo usarla.

También hay un módulo VFS experimental acl_xattr que le permite almacenar ACL de NT completamente en atributos extendidos. Desafortunadamente, no hay documentación al respecto, por lo que es difícil decir algo inteligible al respecto. Se espera que Samba 4 tenga soporte integrado completo para NT ACL, pero por ahora, puede usar lo que tiene.

Si tiene algo que agregar sobre los atributos extendidos en Samba y cómo trabajar con ellos, asegúrese de escribirlo en este hilo del foro. Agradecería cualquier enlace, artículos y comentarios sobre el tema.

Además, los atributos extendidos del sistema de archivos permiten que Samba incluya soporte completo para los atributos de archivos de DOS, como oculto, archivo, etc.

Entonces, supondremos que tiene un directorio en el sistema que desea compartir a través de Samba (y está ubicado en un disco montado con soporte para acl y user_xattr). Ahora necesita configurar realmente su uso compartido. Para hacer esto, debe ingresar la información adecuada en el archivo /etc/samba/smb.conf.

Empecemos con Configuración general, que se puede agregar a la sección de este archivo (estas no son todas las opciones posibles, solo algunas bastante útiles):

# Deshabilitar el uso compartido de impresoras. A menos, por supuesto, que realmente quieras compartirlos. # Para deshabilitar completamente las 4 líneas a continuación, cargar impresoras = no mostrar asistente para agregar impresora = no nombre de printcap = /dev/null deshabilitar spoolss = sí # Ocultar cuando se ve desde archivos de Windows con los siguientes nombres ocultar archivos = /$RECYCLE.BIN/desktop.ini/lost+found/Thumbs.db/ # Usar el siguiente usuario de UNIX como cuenta de invitado para el recurso compartido público compartir = nadie # Tratar a los usuarios no registrados como mapa de invitados para invitado = Usuario incorrecto ## Configuración usando atributos extendidos del sistema de archivos # Manejar la herencia de permisos con atributos extendidos del sistema de archivos map acl heredar = yes # Usar atributos extendidos del sistema de archivos para almacenar atributos de DOS store dos atributos = yes # Deshabilitar la asignación de atributos de DOS en permisos de UNIX, habilitado por defecto # De acuerdo con man smb.conf, estas opciones deben deshabilitarse cuando se usan atributos extendidos map archive = no map system = no map hidden = no map readonly = no

Ahora la configuración del recurso compartido directamente. lo tengo llamado perfiles, y físicamente en la máquina Ubuntu se encuentra en /var/datos/perfiles:

# Comentario comentario = Perfiles de usuario # Ruta a la carpeta que compartimos ruta = /var/data/profiles/ # Usuarios con derechos de acceso ilimitados al recurso compartido # Tengo un grupo de administradores de dominio. # Estos usuarios son tratados como raíz local cuando trabajan con usuarios administradores de archivos = "@DOMINIO\Administradores de dominio" # Ocultar carpetas a las que el usuario no tiene acceso para ocultar ilegibles = sí # Acceso de solo lectura solo lectura = no # Máscaras para archivos creados - se puede configurar como se desee #crear máscara = 0600 #máscara de directorio = 0700 # Deshabilitar bloqueo - es mejor deshabilitar bloqueo = no

Hay muchas otras opciones: consulte la documentación de Samba para obtener más información.

No olvide establecer el propietario correcto y los derechos de acceso a la carpeta que comparte; de ​​lo contrario, a pesar de cualquier configuración de samba, escriba en el nivel derechos de linux. Yo suelo hacer esto:

sudo chmod ug+rwx /var/data/profiles sudo chown root:"usuarios del dominio" /var/data/profiles

Tenga en cuenta que dado que su máquina Ubuntu está ingresada en el dominio, puede usar usuarios y grupos de dominio como propietarios de archivos directamente en Ubuntu.

Verifica que la configuración de Samba sea correcta con el comando

testparm

Luego reinicie Samba:

sudo /etc/init.d/samba reiniciar

Ahora puede acceder al recurso compartido desde cualquier máquina del dominio.

Por cierto, no te olvides de SGID y Sticky bits para directorios. Le permitirán heredar el grupo de propietarios y evitar que los usuarios eliminen archivos que no son suyos; esto puede ser muy conveniente para los almacenamientos de múltiples usuarios. Sin embargo, a diferencia de los derechos de edición de Windows, cambiar estos bits en carpetas en un recurso compartido no funcionará, solo manualmente directamente en la computadora Ubuntu.

Entre otras cosas, Samba le permite organizar el almacenamiento Versión anterior archivos, que a veces es útil cuando se crean recursos compartidos con datos de usuario.

servidor de archivos independiente

No todo el mundo tiene un dominio de Active Directory. Por lo tanto, a menudo se vuelve necesario organizar un almacenamiento de archivos fuera de línea en una máquina Linux con su propio propio sistema autorización. Esto es muy fácil de hacer.

La característica principal de tal organización de almacenamiento de archivos será que toda la información sobre los usuarios se almacenará en la base de datos de Samba, respectivamente, deberá agregar y eliminar usuarios de samba manualmente.

Lo más importante es decidir el método utilizado para acceder al recurso. Para cambiarlo, debe configurar correctamente el valor del parámetro de seguridad en la sección del archivo /etc/samba/smb.conf. Puede leer más sobre este parámetro o en la documentación oficial.

Por lo general, el valor es compartir o usuario.

Servidor de archivos independiente sin autorización

Es conveniente para la casa para que todos puedan ver a todos. Esto se puede hacer agregando 4 líneas a la sección del archivo /etc/samba/smb.conf. Es posible que algunos ya existan.

[global] grupo de trabajo = mapa de GRUPO DE TRABAJO para invitado = usuario incorrecto nombre de netbios = seguridad de CUADERNO = usuario

CUADERNO: el nombre de la computadora que estará en la red. Además, necesita instalar programas adicionales:

sudo apt-get install samba

Para kubuntu, también necesita instalar smb4k. Después de editar las configuraciones, debe reiniciar los servicios. En systemd (a partir del 15.04), un reinicio se ve así:

sudo systemctl reiniciar smbd.servicio nmbd.servicio

Puede ver las "bolas" a través del explorador de archivos nautilus, konkueror o así:

Cliente Smb -L 127.0.0.1

. Documentación oficial en inglés.

Compartir una carpeta en ubuntu

Cree una carpeta para compartir archivos.

mkdir ~/compartir

Agregue las siguientes líneas al final del archivo /etc/samba/smb.conf, reemplace yuraku1504 con el nombre de usuario de la computadora samba:

[MyShareWork] comentario = Anónimo Samba Share path = / home/ yuraku1504/ share guest ok = sí navegable = sí escribible = sí solo lectura = no forzar usuario = yuraku1504 forzar grupo = yuraku1504

La carpeta se abrirá para lectura y escritura.

Si nota un error, seleccione un fragmento de texto y presione Ctrl + Enter
COMPARTIR: