Linux

fstab 和 cifs 掛載,可以在 fstab 之外儲存身份驗證資訊嗎?

  • September 13, 2021

我目前正在使用 cifs 在 /etc/fstab 中掛載一些網路共享(需要身份驗證)。它工作得很好,但我想將身份驗證詳細資訊(使用者名/密碼)移到 fstab 之外,並能夠將其 chmod 為 600(因為如果我要更改其權限,fstab 可能會出現問題)。我想知道是否可以這樣做(多使用者系統,不希望所有使用者都可以查看這些權限)。

從:

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

到:

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

(或類似的東西)。謝謝。

從 mount.cifs 聯機幫助頁:

憑據=文件名
指定包含使用者名和/或密碼的文件。文件格式為:

使用者名=值
密碼=值
這比在共享文件(例如 /etc/fstab)中使用明文密碼更可取。請務必正確保護任何憑據文件。

使用憑證選項,例如:

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

來自網站的範例:

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

在命令中替換您的 Windows 使用者名和密碼。除了 root 之外,沒有其他人能夠讀取此文件的內容。

一旦創建,您將修改 /etc/fstab 文件中的行,如下所示:

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

/etc/fstab 中的範例:

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

janneb 的文章和手冊頁的連結顯示了憑證文件中需要包含的內容。

引用自:https://serverfault.com/questions/222074