如何设置 Windows Server 进行文件共享

如果您想要為一個或多個使用者配置網絡上的文件訪問權限,您需要在存儲這些文件的計算機上配置文件共享。配置用於存儲文件的共享資源的常見方法是配置 Windows 文件共享。在這種情況下,我們談論的是 Windows SMB 共享,並且此文件共享可以在任何 Windows 版本上配置。

本博客文章解釋了如何在 Windows Server 2019 上配置 Windows 文件共享,以允許多個用戶訪問此共享。

什麼是文件共享

A file share is a directory on a computer, server, or virtual machine that contains files and directories that are accessible to other users via the network by using one of the supported file sharing protocols. A file share can be configured on any operating system supporting the appropriate file sharing protocol, for example, SMB or NFS. We have already covered the SMB protocol and its dialects.

客戶端 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專業版、Windows 7終極版、Windows 10專業版等頂級版本相同的Windows文件共享工作流程。但是,請注意可能存在某些限制。

創建用戶和組

首先,我們需要創建用戶。從技術上講,可以使用Windows中現有的用戶帳戶進行文件共享,但出於安全原因,不建議使用這種方法。這就是為什麼我們不會使用現有的管理員和用戶帳戶來配置Windows文件共享,也不會將這些憑據提供給訪問共享的用戶。

我們將為需要訪問文件共享服務器的用戶創建特殊帳戶。如果文件伺服器上的用戶名和密碼與遠程客戶端電腦上的用戶登錄的用戶名和密碼相同,則在訪問Windows SMB共享時不會提示憑據。這個功能使得用戶訪問文件共享更加方便,也更適合管理員。

打開電腦管理視窗,您可以通過進入服務器管理器工具電腦管理來訪問。或者,您可以在CMD中簡單運行compmgmt.msc命令。

注意:在Active Directory域中,您需要在域控制器上打开Active Directory用户和计算机窗口来创建域用户和组。您可以通过在命令行或运行(Win+R)提示符中运行dsa.msc来执行此操作。在域控制器上,请使用Active Directory用户和计算机而不是计算机管理

创建用户

  1. 在打开的计算机管理窗口(也可以称为Microsoft管理控制台捷径集合)中,转到系统工具 > 本地用户和组 > 用户
  2. 选择用户后,在右窗格的空白处右键单击,然后在上下文菜单中单击新建用户
  1. 請輸入一個用戶名,該用戶名將用於訪問 Windows 文件共享時的用戶身份驗證。請記住,該帳戶也可以用於當前 Windows Server 機器上的登錄。我們的用戶名是user1
    1. 如果您的文件服務器是域成員,則創建的域用戶帳戶可用於登錄域計算機。
    2. 輸入密碼並確認密碼。
    3. 點擊創建
  1. 我們以相同的方式創建更多用戶。我們為訪問文件共享服務器而創建的用戶是:
    • user1,user2,user3,user4
    • user11,user12,user13,user14

創建群組

當您需要使用相同設置配置多個使用者的訪問時,管理使用者組更方便。

我們在文件共享伺服器配置範例中創建了兩個組:

  • Group_A – 提供對文件共享的完全訪問權限(讀取、寫入、更改)。該組包含以下成員:user1, user2, user3,user4。
  • Group_B – 提供對共享的唯讀訪問權限。該組包含以下成員:user11,user12,user13, user14

您可以創建一個組,將使用者添加到該組中,並為組配置對Windows SMB共享的訪問權限,而不是在共享配置中分別添加每個使用者並手動配置相同的設置。

要創建新組:

  1. 電腦管理視窗中右鍵單擊,然後在上下文菜單中點擊新建組

  1. 新建組視窗中輸入組名稱(在我們的情況下是Group_A,請參見下面的屏幕截圖)。
  2. 點擊添加以將用戶添加到組中。
  3. 選擇用戶視窗中,輸入用戶名,如user1,然後點擊檢查名稱。當用戶名正確輸入時,該用戶名將被下劃線劃出並顯示為全名(計算機名\用戶名域名\用戶名)。要繼續添加用戶,請按空格或添加分號並輸入下一個用戶名,然後點擊檢查名稱,以此類推。

如果您想为计算机上创建的本地用户帐户设置访问权限,而该计算机是域成员,请手动输入完整用户名,如:ComputerName\UserName。同样,您也可以输入域用户的全名。

  1. 输入所有需要的用户名并核对后,单击确定保存设置并关闭选择用户窗口。
  2. 新建组窗口中单击创建完成组的创建。

Windows文件共享设置

一旦我们创建了所需的用户和组,我们可以继续设置Windows文件共享。

  1. 选择要共享的目录或选择一个新目录。在我们的示例中,我们创建一个新目录,该目录的路径是:E:\share
  1. 右键单击此目录(文件夹),在上下文菜单中点击属性

设置共享权限

  1. 在目录属性窗口中选择共享选项卡,然后点击高级共享按钮。
  2. 高级共享窗口中选中共享此文件夹复选框,然后点击权限

您可以看到,默认情况下每个人都可以读取共享文件夹的内容。 Everyone是默认组,包含当前计算机上的所有用户。在我们的示例中,我们选择Everyone</diy

  1. 點擊新增以添加所需的使用者和組,以配置對Windows SMB共享的訪問權限。

  1. 打開選取使用者或組視窗。
  2. 輸入您想要配置訪問權限的使用者和組的名稱。在我們的情況下,我們輸入Group_A
  3. 點擊檢查名稱,就像您將使用者添加到組時所做的一樣。如果名稱正確(並存在),輸入的名稱將被下劃線標記並以完整格式顯示。如果需要,您可以輸入多個使用者或組名稱。
  4. 點擊確定以保存設置並關閉此視窗。

  1. 我們可以在共享文件夾的權限視窗中的組或使用者名稱列表中看到Group_A
  2. 選擇此使用者/組(在我們的情況下為Group_A)並選擇允許完全控制核取方塊。

  1. 然後,我們添加Group_B,就像我們添加Group_A一樣。讓我們保留Group_B的唯讀共享權限。

  1. 我們還添加了內置的管理員組並為管理員啟用完全訪問權限。(如果計算機是域成員,您可以使用域管理員組)。
  2. 點擊確定以保存Windows文件共享的權限並關閉權限視窗。

設置檔案系統權限

現在我們已經為共享文件夾配置了文件共享權限。除此之外,我們必須為這個文件夾配置文件系統權限,以設置用戶的適當訪問權限。NTFS 是我們在 Windows 卷上使用的文件系統。

  1. 在共享文件夾的 屬性 窗口中選擇 安全 標籤。默認的 NTFS 權限設置為 CREATOR OWNERSYSTEMAdministratorsUsers
  2. 點擊 編輯 以設置文件系統層面上的文件夾權限。

  1. 您可以看到,Users 群組中的用戶默認具有對此文件夾的讀取訪問權限。
  2. 點擊 新增 以添加所需的群組或用戶並為它們設置文件系統層面上的權限。

  1. 打開 選取用戶或群組 窗口。
  2. 輸入您要添加的用戶或群組的名稱(在我們的案例中為 Group_A)。
  3. 點擊 檢查名稱
  4. 點擊 確定 以保存設置。

  1. 在用戶和群組列表中選擇 Group_A。選中 允許完全控制 复選框以授予 Group_A 完全訪問權限。

  1. 像添加 Group_A 一樣添加 Group_B
  2. 我們保留默認權限,包括 讀取和執行列出文件夾內容讀取Group_B
  3. 點擊確定權限視窗中。 在共享文件夾屬性視窗中點擊確定

我們已經為共享文件夾配置了共享權限和文件系統權限。同樣地,您可以在文件共享服務器上創建其他共享。

訪問Windows SMB共享

現在用戶可以從他們的計算機訪問Windows文件共享(SMB共享)。

要從另一台計算機訪問Windows SMB共享,打開Windows Explorer(點擊我的電腦此電腦圖標),在地址欄中輸入文件服務器的網絡地址,格式為:\\伺服器-IP-地址\\伺服器名稱

我們輸入路徑:

\\192.168.101.209

我們以user1登錄後,從Windows機器訪問此文件共享。

在我們的共享文件服務器上,我們可以看到一個名為share的共享文件夾。

雙擊共享文件夾以訪問其內容。我們可以看到共享文件夾中的文件。我們的user1Group_A的成員,並且可以完全訪問共享文件夾的內容。此用戶可以在此共享文件夾中編寫、編輯和刪除文件。

如何創建隱藏文件共享

創建隱藏的 Windows SMB 共享的工作流程相同。區別在於文件共享名稱。在共享名稱的末尾添加$字符,使此共享目錄隱藏,例如,share_h$。瀏覽文件服務器時,隱藏的文件共享不會顯示,方法是添加服務器 IP 地址或名稱(例如\\192.168.101.209\\Server2019)。

要訪問隱藏的文件共享,必須輸入共享的完整路徑,例如:

\\192.168.101.209\share_h$

注意: Windows 中預設創建了用於系統目的和管理訪問的隱藏共享。

  • C$ for a system volume and similar shares for each disk volume
  • Admin$ – 訪問%SystemRoot%目錄(通常是C:\Windows
  • IPC$ – 用於命名管道的遠程 IPC

高級共享設置

在 Windows GUI 的網絡和共享中心中有高級共享設置。

要訪問這些設置,請轉到控制面板 > 網絡和共享中心 > 高級共享設置

如果要在共享文件時使 Windows 機器在網絡上可見並允許用戶訪問共享資源,請在使用的網絡配置文件中選擇以下選項:

  • 打開網絡發現
  • 打開文件和打印共享

這些設置會影響 Windows 防火牆設置以允許 ICMP 和 SMB 流量。

TCP端口445和139必須在伺服器的防火牆上打開,以進行文件共享。確保Windows防火牆中啟用了文件和打印機共享(SMB-In)規則,以避免問題。

請注意,在Windows中使Windows文件共享工作,必須運行Server服務。

如何映射網絡驅動器

如上所述,用戶可以輸入共享路徑來訪問共享文件和文件夾。也可以創建共享文件夾的快捷方式。但是,這種方式對於某些用戶可能不是最方便的。在這種情況下,您可以將文件共享映射為網絡驅動器,在我的電腦此電腦(Windows資源管理器)中訪問此網絡驅動器,就像訪問本地磁盤卷一樣。

請按以下步驟將網絡驅動器映射為網絡驅動器:

  1. 按上述方式在Windows資源管理器中訪問文件共享服務器。在地址欄中輸入服務器名稱或IP地址,例如,\\192.168.101.209
  2. 等待共享文件夾列表顯示。如果客戶端和伺服器上的憑據不匹配,則可能需要輸入用戶名和密碼。
  3. 右鍵單擊要連接為網絡驅動器的共享文件夾,然後單擊映射網絡驅動器
  1. 在打開的窗口中設置共享文件夾的網絡驅動器參數。
  • 選擇一個驅動器字母,例如H:
  • 自動選擇了共享文件夾的路徑。
  • 登錄時重新連接–當用戶登錄到客戶端的Windows時,共享文件夾會自動連接。
  • 使用不同的憑據連接–如果您在客戶端計算機上使用的用戶帳戶的憑據與配置用於訪問文件共享的文件伺服器上的用戶帳戶的憑據不匹配,請使用此選項。另一個使用案例是使用擁有比當前登錄用戶更多權限的用戶的憑據。
  1. 點擊完成保存設置並關閉此窗口。

現在您可以在Windows資源管理器中看到映射的網絡驅動器,並用它來訪問文件共享服務器(文件伺服器)上的文件夾。

如何檢查Windows SMB共享狀態

配置Windows文件共享是設置文件伺服器的主要步驟。但是,您需要知道如何監控共享資源,包括共享文件夾、連接狀態和打開的文件。這些信息也對故障排除很有用。

您可以在電腦管理窗口中獲取Windows文件共享狀態,可以通過在CMD中運行compmgmt.msc命令來訪問它。

前往 系統工具 > 共享資料夾電腦管理 視窗中。您可以在那裡找到三個項目: 共享, 工作階段, 和 已開啟的檔案

  • 共享。此項目顯示當前 Windows 機器上共享的所有資料夾,包括隱藏的共享。
  • 工作階段。此項目顯示所有活動工作階段,顯示連線的使用者、電腦和連線時間。
  • 已開啟的檔案。顯示共享資料夾中已開啟的檔案及其模式(讀取/寫入)。

您可以右鍵單擊所需的項目,例如已開啟的工作階段或檔案,並關閉此工作階段或檔案(中斷已連線的使用者並移除檔案鎖)。

在命令列中配置 Windows 檔案共享

我們在圖形使用者介面(GUI)中進行的操作來設定 Windows 檔案共享也可以在命令列介面(CMD)中執行。知道如何在 CMD 中配置 Windows SMB 共享可以幫助您自動化配置過程。

讓我們使用與之前在 GUI 中配置的設置相同的設置來配置一個檔案共享。

  1. 按下 Win+R。在執行提示符中輸入 cmd 並按 Enter 鍵打開 Windows 命令列。
  2. 添加一個使用者,設置用戶名和密碼。

    命令語法如下:
    net user 用戶名 用戶密碼 /add


    我們在 CMD 中添加 用戶21 :
    net user 用戶21 密碼-21 /add

  3. 添加群組的命令如下:
    net localgroup groupname /add

    在這個案例中,我們添加了群組2 :
    net localgroup group2 /add

  4. 使用以下命令將用戶添加到群組:
    net localgroup groupname username /add

    在我們的情況下,我們將用戶21 添加到群組2:
    net localgroup group2 user21 /add

  5. 現在我們需要創建一個新目錄,我們將分享這個目錄。我們轉到驅動器E:並創建share2c目錄(c表示命令行或控制台,以便在我們的目錄名稱中更清晰)。
    e:
    md share2c
  6. 列出目錄內容以確保目錄已創建:
    dir
  7. 通過設置文件夾路徑、用戶或組名稱以及該用戶或組的權限來共享share2c目錄。一般命令語法如下:
    net share sharename=folderpath /grant:username,permissions

    權限可以是讀取, 更改,或 完整

    在我們的情況下,確切的命令是:
    net share share2c=e:\share2c /grant:group2,full

    我們授予group2完整權限。

  8. 使用icacls為共享文件夾設置NTFS權限。
  9. 我們對 E:\share2c 目錄設置了對 group2 的完全權限:

    icacls “E:\share2c” /grant group2:(OI)(CI)F /T

    您可以在下面的屏幕截圖中看到這些設置如何應用在命令行中顯示在 GUI 中。

  10. 檢查 Windows 文件共享狀態。
  • 檢查現有的文件共享:
    net share
  • 查看用戶連接到共享的會話:
    net sessions
  • 查看用戶通過網絡打開的文件:
    net files
  1. 管理 Windows 文件共享的有用命令。
  • 通過定義文件 ID(該 ID 顯示在您可以在上面的屏幕截圖中看到的 net files 命令中)來關閉用戶打開的文件:
    net file id /close
  • 列出適當的計算機名稱的打開會話:
    net session \\計算機名稱
  • 斷開所選機器的傳入SMB連接:
    net session \\計算機名稱 /delete
  • 使用已登錄的憑據連接到文件共享並將文件共享映射為網絡驅動器:
    net use H: \\文件服務器\共享文件夾

    如果文件共享包含空格,則必須將路徑括在引號中(“路徑”)。

  • 替代命令:
    pushd \\文件服務器\共享文件夾

結論

配置服務器進行文件共享並不困難,特別是在Windows Server 2019上。請記住,如果允許多個用戶訪問,Windows SMB共享以及NFS共享上的文件可能會損壞或永久刪除。請確保使用專用解決方案來備份Windows服務器和文件共享服務器。最佳選擇是支持多個平台的解決方案,如NAKIVO Backup & Replication。

Source:
https://www.nakivo.com/blog/create-file-share-windows-server/