如何設定 Windows Server 以進行檔案分享
若要為一位或多位使用者設定透過網路存取檔案的權限,您需要在儲存這些檔案的電腦上設定檔案分享。 部署共用資源以儲存檔案的一種常見方式,是設定 Windows 檔案分享。在此情況下,我們指的是 Windows SMB 檔案分享,且此檔案分享可在任何 Windows 版本上進行設定。
這篇部落格文章說明如何在 Windows Server 2019 上設定 Windows 檔案分享,以允許多名使用者存取此分享。
什麼是檔案共享
檔案分享是指位於電腦、伺服器或虛擬機器上的目錄,其中包含的檔案與目錄可透過支援的檔案分享協定之一,讓其他使用者透過網路存取。只要支援適當的檔案分享協定(例如 SMB 或 NFS),即可在任何作業系統上設定檔案分享。我們已經介紹過 SMB 協定及其變體.
無論是 Windows 客戶端版本(Windows XP、7、8、10 等)還是 Windows 伺服器版本(Windows Server 2003、2008、2012、2016、2019 等),均支援透過 SMB 協定進行 Windows 檔案分享。然而,相較於客戶端版本,Windows Server 版本提供了更多功能,例如最大同時連線數。 最近,我們比較了 檔案伺服器與 NAS. 在這篇部落格文章中,我們將說明如何在 Windows 中設定檔案分享伺服器,也就是說,如何設定檔案伺服器。
我們的 Window 伺服器環境
我們將在屬於工作群組的 Windows Server 2019 上設定 Windows SMB 檔案分享。對於位於 Active Directory 網域中的 Windows 電腦,其設定原則完全相同,但在設定檔案分享權限時,您需要指定(區分)網域使用者與電腦上的本機使用者。
我們的 Windows 檔案伺服器參數如下:
- IP 位址:192.168.101.209
- 電腦名稱: Win2019
本文所述的工作流程適用於較舊版本的 Windows Server。至於 Windows 客戶端系統,您在 Windows XP Pro、Windows 7 Ultimate、Windows 10 Pro 等高階版本上,大多可遵循相同的工作流程進行檔案分享。不過,請注意可能存在某些限制。
建立使用者與群組
首先,我們需要建立使用者帳戶。雖然從技術上來說,可以使用 Windows 中的現有使用者帳戶進行檔案分享,但基於安全性考量,不建議採用此方法。因此,我們不會使用現有的系統管理員和使用者帳戶來設定 Windows 檔案分享,也不會將這些憑證提供給存取分享的使用者。
我們將為需要存取檔案分享伺服器的使用者建立專用帳戶。若檔案伺服器上的使用者名稱與密碼,與使用者在遠端 Windows 客戶端電腦上登入 Windows 時所使用的使用者名稱與密碼相同,則在存取 Windows SMB 分享時,系統將不會提示輸入憑證。此特點不僅讓使用者存取檔案分享更加便利,對管理員而言也是最佳的解決方案。
開啟 Computer Management 視窗,您可以透過前往 Server Manager > Tools > Computer Management. 或者,您也可以直接執行 compmgmt.msc 在 CMD 中輸入該指令。
註: 在 Active Directory 網域中,您需要開啟 Active Directory 使用者和電腦 在網域控制器上開啟視窗以建立網域使用者和群組。您可以透過執行以下指令來完成此操作 dsa.msc 在命令列或"執行"視窗(Win+R)中。請使用 Active Directory 使用者與電腦 而非 電腦管理 在網域控制器上。
建立使用者
- 在 電腦管理 開啟視窗(亦可稱為 Microsoft 管理主控台 (MMC) 模組的集合),請前往
System Tools>Local Users and Groups>Users. - 選取後
Users,在右側窗格的空白處按右鍵,然後按一下New User在右鍵選單中。
- 請輸入使用者名稱,此名稱將用於存取 Windows 檔案分享時進行使用者驗證。請注意,此帳戶亦可用於登入當前的 Windows Server 電腦。我們的使用者名稱是
user1.
- 我們以相同的方式建立更多使用者。我們為存取檔案分享伺服器而建立的使用者包括:
- 使用者1、使用者2、使用者3、使用者4
- user11、user12、user13、user14
建立群組
當您需要為多位使用者設定相同的存取權限時,管理使用者群組會更加方便。
在我們的檔案共享伺服器設定範例中,我們建立兩個群組:
Group_A– 用於授予檔案分享資料夾的完整存取權限(讀取、寫入、變更)。該群組包含以下成員: user1, user2, user3、user4。Group_B– 用於提供對共用資料夾的唯讀存取權限。該群組包含以下成員: user11、user12、user13、 user14.
您可以建立一個群組、將使用者加入該群組,並為該群組設定對 Windows SMB 共用資料夾的存取權限,如此一來,便無需在共用設定中逐一新增使用者,也不必手動為每位使用者設定相同的設定。
建立新群組的方法如下:
- 右鍵點擊
Groups在 電腦管理 視窗並點擊New Group在右鍵選單中。
- 請輸入群組名稱(即 A組 (就我們的情況而言)在 新群組 視窗(請參閱下方的螢幕截圖)。
- 點擊
Add將使用者新增至該群組。 - 在 選取使用者 視窗中,輸入使用者名稱,例如 user1,然後點擊
Check Names. 當使用者名稱輸入正確時,該使用者名稱會被劃上底線,並以全名顯示(電腦名稱 使用者名稱 或 網域名稱使用者名稱)。若要繼續新增使用者,請按Space或新增semicolon並輸入下一個使用者名稱,然後點擊Check Names等等。
若要為在網域成員電腦上建立的本地使用者帳戶設定存取權限,請手動輸入完整使用者名稱,格式如下:ComputerNameUserName。您亦可依此方式輸入網域使用者的完整名稱。
- 輸入所有必要的使用者名稱並檢查無誤後,請按
OK儲存設定並關閉 選取使用者 視窗。 - 點擊
Create在 新群組 視窗以完成群組建立。
Windows 檔案分享設定
建立完所需的用戶和群組後,我們就可以繼續設定 Windows 檔案分享。
- 請選擇您要分享的目錄,或選擇一個新目錄。在本範例中,我們將建立一個新目錄,其路徑為:
E:share
- 右鍵點擊此目錄(資料夾),然後在快顯選單中點選
Properties.
設定共用權限
- 請選擇
Sharing目錄中的分頁 屬性 視窗並點擊Advanced Sharing按鈕。 - 請選擇
Share this folder位於 進階分享 視窗並點擊Permissions.
您可以看到,預設情況下所有人都能讀取共用資料夾的內容。 Everyone 是包含當前電腦上所有使用者的預設群組。在本範例中,我們選取 Everyone 然後點擊 Remove 因為我們需要建立一個自訂設定。
- 點擊
Add以新增所需的使用者和群組,以便為他們設定對 Windows SMB 共用資料夾的存取權限。
- 該 選擇使用者或群組 視窗已開啟。
- 請輸入您要為其設定存取權限的使用者和群組名稱。在此範例中,我們輸入
Group_A. - 點擊
Check Names就像您將使用者新增至群組時一樣。若名稱正確(且存在),輸入的名稱會顯示底線並以完整格式呈現。如有需要,您可以輸入多個使用者或群組名稱。 - 點擊
OK儲存設定並關閉此視窗。
- 我們可以看到 A組 在群組或使用者名稱清單中 權限 我們的共用資料夾視窗。
- 選取此使用者/群組 (A組 (以我們的情況為例)並選取
Allow Full Control核取方塊。
- 接著我們加入
Group_B就像我們之前所添加的 A組. 讓我們保留對 B組.
- 我們還加入了內建的
Administrators群組,並為管理員啟用完全存取權限。(如果電腦是網域成員,您可以使用Domain Administrators(群組)。 - 點擊
OK以儲存 Windows 檔案分享權限並關閉 權限 視窗。
設定檔案系統權限
我們已經為共用資料夾設定了檔案分享權限。此外,我們還必須為此資料夾設定檔案系統權限,以授予使用者適當的存取權限。NTFS 是我們在 Windows 磁碟區上使用的檔案系統。
- 請選擇
Security[標籤] 中的 屬性 共用資料夾的視窗。已為該資料夾設定預設的 NTFS 權限 創作者兼所有者, 系統, 管理員 以及 使用者. - 點擊
Edit在檔案系統層級設定資料夾的權限。
- 如您所見,位於
Users該群組預設具有此資料夾的讀取權限。 - 點擊
Add以在檔案系統層級新增所需的群組或使用者,並為其設定權限。
- 該 選擇使用者或群組 視窗開啟。
- 請輸入您要新增的使用者或群組名稱 (
Group_A(就我們的情況而言)。 - 點擊
Check Names. - 點擊
OK以儲存設定。
- 選擇
Group_A在"使用者與群組"清單中。選取Allow Full Control勾選此方塊以授予完全存取權限 A組.
- 新增
Group_B就像你所添加的那樣 A組. - 我們保留預設權限,其中包括
Read & Execute,List folder contents,以及Read因為 B組. - 點擊
OK在 權限 視窗。點擊OK在共用資料夾中 屬性 視窗。
我們已為共用資料夾設定了共用權限和檔案系統權限。同樣地,您也可以在檔案分享伺服器上建立其他共用資料夾。
存取 Windows SMB 共用資料夾
現在,使用者可以從自己的電腦存取 Windows 檔案分享 (SMB 共用)。
若要從另一台電腦存取 Windows SMB 共用,請開啟 Windows Explorer (點擊 My Computer 或 This PC (圖示)並在位址列中輸入檔案伺服器的網路位址,格式如下: Server-IP-Address 或 Server-Name
我們輸入以下路徑:
192.168.101.209
我們在 Windows 電腦上登入後,存取此檔案分享 user1.
我們可以看到一個名為 分享 在我們的共用檔案分享伺服器上。
雙擊共用資料夾以存取其內容。我們可以看到共用資料夾中的檔案。我們的 user1 是……的成員 A組 並擁有對該共用資料夾內容的完整存取權限。此使用者可以在此共用資料夾中建立、編輯及刪除檔案。
如何建立隱藏的檔案分享
建立隱藏式 Windows SMB 共用檔案分享的工作流程與上述相同。差異在於檔案分享名稱。請在名稱後面加上 $ 在共用名稱的結尾加上一個字元,以將此共用目錄設為隱藏,例如: share_h$. 當您透過網路瀏覽檔案伺服器(例如輸入伺服器的 IP 位址或名稱)時,隱藏的檔案分享不會顯示(192.168.101.209 或 Server 2019(例如)。
若要存取隱藏的檔案分享,您必須輸入分享資料夾的完整路徑,例如:
192.168.101.209share_h$
註: Windows 預設會建立一些隱藏共用資料夾,用於系統運作及管理存取。
C$針對系統磁碟區,以及每個磁碟區的類似共用資料夾Admin$– 存取%SystemRoot%目錄(通常C:Windows)IPC$– 命名管中使用的遠端進程間通訊
進階分享設定
Windows 圖形使用者介面中的"網路和共用中心"內設有進階共用設定。
若要存取這些設定,請前往 Control Panel > Network and sharing center > Advanced sharing settings.
若要在檔案分享時讓 Windows 電腦在網路上可見,並允許使用者存取共用資源,請在您正在使用的網路設定檔中選取以下選項:
- 開啟網路偵測
- 開啟檔案分享和印表機共用
這些設定會影響 Windows 防火牆的設定,以允許 ICMP 和 SMB 流量。
伺服器的防火牆必須開啟 TCP 埠 445 和 139,才能進行檔案分享。請確保 File and Printer Sharing (SMB-In) 已啟用 Windows 防火牆中的此規則,以避免發生問題。
請注意,該 Server 必須在 Windows 中執行此服務,才能使 Windows 檔案分享正常運作。
如何映射網路磁碟機
如前所述,使用者可以輸入檔案分享的路徑來存取共用檔案和資料夾。此外,也可以建立共用資料夾的捷徑。不過,對某些使用者而言,這種方式可能並非最方便的。在這種情況下,您可以將檔案分享映射為網路磁碟機,並透過 我的電腦 或 這台電腦 (Windows 檔案總管)就像您存取本機磁碟區一樣。
請依照以下步驟映射網路磁碟機:
- 請依照上述說明,在 Windows 檔案總管中存取檔案分享伺服器。在位址列中輸入伺服器名稱或 IP 位址,例如: 192.168.101.209
- 請等待共享資料夾清單顯示出來。如果客戶端與伺服器的憑證不符,您可能需要輸入使用者名稱和密碼。
- 右鍵點擊您要作為網路磁碟機連接的共用資料夾,然後點擊
Map network drive.
- 在開啟的視窗中,設定共用資料夾的網路磁碟機參數。
- 選擇一個磁碟機代號,例如,
H: - 已自動選取共用資料夾的路徑。
Reconnect at sign-in– 當使用者在客戶端電腦上登入 Windows 時,共用資料夾會自動連線。Connect using different credentials– 若您用於在客戶端電腦上登入的用戶帳戶憑證,與檔案伺服器上用於存取檔案分享所設定的用戶帳戶憑證不符,請使用此選項。另一種使用情境是,使用權限高於目前登入用戶的用戶憑證。
現在,您可以在 Windows 檔案總管中看到已映射的網路磁碟機,並透過它存取檔案共用伺服器(檔案伺服器)上的資料夾。
如何檢查 Windows SMB 共用狀態
設定 Windows 檔案分享是架設檔案伺服器的重點。然而,您需要了解如何監控共用資源,包括共用資料夾、連線狀態以及已開啟的檔案。這些資訊對於疑難排解也相當有用。
您可以在 Computer Management 視窗,您可以透過執行 compmgmt.msc 在 CMD 中輸入指令:
前往 System Tools > Shared Folders 在 電腦管理 視窗。該處有三項內容的位置: Shares, Sessions,以及 Open Files.
Shares. 此項目會顯示目前這台 Windows 電腦上所有已共用的資料夾,包括隱藏共用資料夾。Sessions. 此項目會顯示所有活躍的連線,包括已連線的使用者、電腦及連線時間。Open files. 顯示儲存於共用資料夾中的哪些檔案已被開啟,以及以何種模式(讀取/寫入)開啟。
您可以右鍵點擊所需的項目(例如已開啟的會話或檔案),並關閉該會話或檔案(斷開已連線的使用者並解除檔案鎖定)。
在命令列中設定 Windows 檔案分享
我們先前在圖形使用者介面 (GUI) 中設定 Windows 檔案分享所執行的操作,同樣也能在命令列介面 (CMD) 中完成。了解如何在 CMD 中設定 Windows SMB 檔案分享,有助於您將設定流程自動化。
讓我們設定一個檔案分享,其設定與先前在 GUI 中設定的完全相同。
- 新聞
Win+R. 在"執行"視窗中輸入cmd並點擊Enter以開啟 Windows 命令提示字元。 - 透過設定使用者名稱和密碼來新增使用者。指令語法如下:
net user username userpassword /add我們添加 user21 在 CMD 中:
net user user21 Password-21 /add - 新增群組的指令如下:
net localgroup groupname /add.我們添加 群組2 在此情況下:
net localgroup group2 /add - 請使用類似以下的指令將使用者加入群組:
net localgroup groupname username /add.在我們的情況下,我們會加入 user21 至 群組2:
net localgroup group2 user21 /add - 現在我們需要建立一個新資料夾,並將其設為共用。我們前往 C 槽 E: 並建立 share2c 目錄 (c (為使目錄名稱更清晰,此處意指命令列或主控台)。
e:md share2c - 列出目錄內容以確認該目錄已建立:
dir - 分享這則 share2c 透過設定資料夾路徑、使用者或群組名稱,以及該使用者或群組的權限,來管理目錄。一般命令語法如下:
net share sharename=folderpath /grant:username, permissions.權限可以是 閱讀, 變更,或 完整. 在我們的情況下,確切的指令是:
net share share2c=e:share2c /grant:group2,full.我們授予以下對象完全權限: 群組2.
- 使用以下指令設定共用資料夾的 NTFS 權限:
icacls. - 我們為 group2 賦予 E:share2c 目錄的完整權限:
icacls "E:share2c" /grant group2:(OI)(CI)F /T您可以在下方的螢幕截圖中看到,這些在命令列中套用的設定在圖形化使用者介面(GUI)中的顯示方式。
- 檢查 Windows 檔案分享狀態。
- 管理 Windows 工作群組檔案分享時的有用指令。
- 透過指定檔案 ID 來關閉使用者開啟的檔案(該 ID 會透過 `net files` 指令顯示,如上圖所示):
net file id /close - 列出指定電腦名稱的已開啟工作階段:
net session ComputerName - 斷開選定電腦的傳入 SMB 連線:
net session ComputerName /delete - 使用登入憑證連線至檔案分享,並將該檔案分享映射為網路磁碟機:
net use H: FileServerSharedFolder如果檔案分享名稱中包含空格,您必須將路徑用引號括起來 (“路徑”)。
- 替代指令:
pushd FileServerSharedFolder
結論
設定檔案分享伺服器並不困難,特別是在 Windows Server 2019 上。請注意,當允許多名使用者存取時,Windows SMB 共用資料夾以及 NFS 共用資料夾中的檔案可能會遭到損毀或永久刪除。請務必使用專用的解決方案來備份 Windows 伺服器和檔案分享伺服器。最佳選擇是支援多平台的解決方案,例如 NAKIVO Backup & Replication.


























