Montaje de fstab y cifs, ¿es posible almacenar información de autenticación fuera de fstab?

10

Actualmente estoy usando cifs para montar algunos recursos compartidos de red (que requieren autenticación) en / etc / fstab. Funciona de manera excelente, pero me gustaría mover los detalles de autenticación (nombre de usuario / contraseña) fuera de fstab y poder modificarlo 600 (ya que fstab puede tener problemas si tuviera que cambiar sus permisos). Me preguntaba si es posible hacer esto (sistema de muchos usuarios, no quiero que todos los usuarios puedan ver estos permisos).

desde:

//server/foo/bar /mnt/bar cifs username=user,password=pass,r 0 0

a:

//server/foo/bar /mnt/bar cifs <link to permissions>,r 0 0

(o algo análogo a esto). Gracias.

TJ L
fuente

Respuestas:

11

Desde la página de manual de mount.cifs:

credenciales = nombre de archivo
    especifica un archivo que contiene un nombre de usuario y / o contraseña. El formato del archivo es:

                         nombre de usuario = valor
                         contraseña = valor
   Esto se prefiere a tener contraseñas en texto sin formato en un archivo compartido, como / etc / fstab. Asegúrese de proteger cualquier archivo de credenciales correctamente.

janneb
fuente
2
Tenga en cuenta que el vago "Asegúrese de proteger cualquier archivo de credenciales correctamente". por lo general significa que debe guardar el archivo (como root) a /root/, y chmod 700que
Nate Parsons
mi conexión también necesita domain=valueparte
vladkras
3
Esperaba que la situación fuera diferente siete años después , pero lamentablemente, parece que esta sigue siendo la "mejor" respuesta. Y no es remotamente seguro. Cada persona con sudoacceso al servidor puede leer .smbcredentials. En mi caso, el archivo contendría, a menos que haya estafado a alguien más para que renuncie a los suyos, _mi_ créditos de inicio de sesión de Windows. Por ejemplo, ¿las mismas credenciales de inicio de sesión único que uso para acceder a todos los sistemas de Evil Corp, incluidas la nómina, los beneficios, etc.? Parece cargado de peligros. Algo como esto puede ser un poco más seguro: askubuntu.com/a/1081421 .
evadeflow
1
La sintaxis de ese archivo es delicada. No ponga líneas vacías o incluso # commentsallí.
David Tonhofer
8

Use la opción de credenciales como:

http://www.justlinux.com/nhf/Filesystems/Mounting_smbfs_Shares_Permanently.html

Ejemplo del sitio web:

cd
echo username=mywindowsusername > .smbpasswd
echo password=mywindowspassword >> .smbpasswd
chmod 600 .smbpasswd

Sustituya su nombre de usuario y contraseña de Windows en los comandos. Nadie más que root podría leer el contenido de este archivo.

Una vez que se crea, modificaría la línea en el archivo / etc / fstab para que se vea así:

//servername/sharename /mountdirectory smbfs credentials=/home/myhomedirectory/.smbpasswd 0 0

ejemplo de / etc / fstab:

//server/share/   /mnt/localmountpoint   cifs   credentials=/root/.creda

La publicación de janneb y el enlace a la página man muestran lo que debe estar presente en el archivo de credenciales.

Damorg
fuente
2
Gracias, ambas respuestas fueron útiles (debería haber leído las páginas de manual). Si pudiera marcar 2 respuestas como la respuesta correcta, lo haría.
TJ L
sin preocupaciones ... una vez vi la respuesta de janneb, estaba claro que la respuesta fue cubierto :)
damorg
6

Entonces estoy acumulando ambas respuestas

  1. Crear archivo, por ejemplo /root/.cifs

    username=value
    password=value
    domain=value (optional)
    
  2. establecer permiso 600(rw- permission) para proteger sus credenciales

    # chmod 600 /root/.cifs
    
  3. pasar credentials=/root/.cifsa su comando en lugar de username=ypassword=

vladkras
fuente
2
Comentario de menor importancia: chmodno es necesario, ya que /rootes de esperar que el directorio de inicio de root rwx------ya lo esté .
David Tonhofer
Tuve problemas al usar solo nombre de usuario y contraseña cuando intenté montar una carpeta compartida de Windows en Red Hat Linux. Tuve éxito solo después de agregar el dominio al archivo de credenciales. Me pareció que, en este caso, la información del dominio es muy recomendable.
aldemarcalazans