你要实现两个核心安全目标:

  1. 服务器本地:禁止 U 盘、移动硬盘等外部存储设备接入

  2. 共享文件:仅允许单位内网电脑访问,拒绝外网 / 非内网 IP 访问

下面分 Windows 服务器Linux 服务器 给出完整、可直接操作的方案。

当然,对一些企事业单位来说,如果没有专门的网络管理人员,可以考虑部署一些专门的共享文件管理软件。例如“大势至局域网共享文件管理系统”,只需要在公司内部文件服务器上安装之后,就可以设置共享文件访问权限,可以进行IP和MAC地址绑定,可以只让公司电脑访问共享文件,禁止外部电脑访问共享文件;同时,还可以只让读取共享文件而禁止复制共享文件、只让打开共享文件而禁止另存为本地磁盘、只让修改共享文件而禁止删除共享文件,并可以禁止打印共享文件、禁止共享文件截屏等,全面保护服务器共享文件的安全。同时,还可以详细记录共享文件访问日志,便于事后备查和审计。如下图:

编辑

图:大势至局域网共享文件管理系统


一、Windows 服务器:禁止外部设备(U 盘 / 移动硬盘)

1. 组策略(推荐:企业域 / 批量管理)


  1. Win+R → 运行 gpedit.msc(本地组策略)


  2. 进入:

计算机配置管理模板系统可移动存储访问


  1. 启用:


    • 所有可移动存储类:拒绝所有权限(完全禁用)


    • 或:可移动磁盘:拒绝读取权限 / 拒绝写入权限(精细控制)




  1. (可选)阻止安装新 USB 设备:

计算机配置管理模板系统设备安装设备安装限制

启用:禁止安装可移动磁盘

2. 注册表(仅禁 USB 存储、保留键鼠)


  1. Win+R → regedit


  2. 定位:

plaintext

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\USBSTOR


  1. 修改 Start = 4(禁用)


    • 3 = 自动、4 = 禁用


3. BIOS/UEFI 硬件级禁用(最安全)


  • 开机按 Del / F2 / F10 进 BIOS


  • 找到:USB Configuration → USB Mass Storage Support = Disabled


  • 优点:系统层面无法绕过


  • 缺点:会影响所有 USB 设备(键鼠也可能被禁)


二、Windows 共享:仅允许单位内网电脑访问

1. 防火墙限制 SMB(445 端口):仅内网 IP 可访问

文件共享用 SMB 协议(TCP 445

方法 A:图形界面


  1. 控制面板 → Windows Defender 防火墙 → 高级设置


  2. 入站规则新建规则


    • 规则类型:端口


    • TCP → 特定本地端口:445


    • 允许连接


    • 只勾选:域、专用(不勾选公用)


    • 作用域 → 远程 IP 地址:下列 IP 地址


→ 添加你单位内网网段:如 192.168.1.0/24


  1. 命名:Allow_SMB_Only_LAN


  2. 禁用系统原有文件和打印机共享(SMB-In规则

方法 B:PowerShell(一键)

powershell

# 仅允许内网 192.168.1.0/24 访问445

New-NetFirewallRule -DisplayName "Allow_SMB_LAN" `

  -Direction Inbound -Protocol TCP -LocalPort 445 `

  -RemoteAddress 192.168.1.0/24 -Action Allow


# 禁用默认SMB规则

Disable-NetFirewallRule -DisplayName "文件和打印机共享 (SMB-In)"

2. 共享权限 + NTFS 权限双重控制


  1. 文件夹 → 属性 → 共享 → 高级共享 → 权限


    • 删除 Everyone


    • 只加:Domain Users / 本地授权用户组



  2. 安全(NTFS 权限):


    • 同样只保留内网用户 / 组,移除 Everyone


3. 企业级加固(可选)


  • 启用 SMB 加密

powershell

Set-SmbServerConfiguration -EncryptData $true


  • 防火墙 / 出口路由:禁止外网入站 445 端口Microsoft Learn


  • 启用 网络准入 NAC / 802.1X:非单位设备连内网也无法通信


三、Linux 服务器:禁止 USB 外部设备

1. 黑名单 USB 存储模块(推荐)

bash

运行

echo "blacklist usb_storage" > /etc/modprobe.d/blacklist-usb-storage.conf

update-initramfs -u

reboot

2. USBGuard(精细管控)

bash

运行

apt install usbguard

usbguard generate-policy > /etc/usbguard/rules.conf

systemctl enable --now usbguard


四、Linux 共享(NFS/SMB):仅内网 IP 访问

1. NFS 共享(Linux 常用)

编辑 /etc/exports:

plaintext

/data/share  192.168.1.0/24(rw,sync,no_root_squash,no_subtree_check)

bash

运行

exportfs -a

systemctl restart nfs-server

2. Samba(SMB,Windows 访问 Linux)

编辑 /etc/samba/smb.conf:

ini

[share]

path = /data/share

valid users = @staff

hosts allow = 192.168.1.0/24   # 仅允许内网

hosts deny = all

bash

运行

systemctl restart smbd

3. 防火墙(firewalld)

bash

运行

# 仅允许内网访问NFS/SMB

firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.0/24" service name="nfs" accept'

firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.0/24" service name="samba" accept'

firewall-cmd --reload


五、最终效果(企业标准)


  • U / 移动硬盘插入服务器:无法识别、无法读写


  • 外网 / 非内网 IP 访问共享:连接超时 / 拒绝访问


  • 仅单位内网 IP192.168.x.x)可正常访问


  • ✅ 配合域账号 + NTFS 权限,实现 “谁能看、谁能改