windows下以指定用户访问SMB服务器进行读写

一 概述

最近遇到一个问题,linux 的 smb服务器开启匿名访问,windows访问linux文件夹不需要用户名密码就可以进去使用,但是存在一个问题,ssh连接到linux 后修改的文件,在windows已smb方式下打开某个文件修改 是没有权限的,所以需要 windows用ssh登录linux相同的用户名 登录smb服务器,那样才能已同样的权限控制。进行以下几步即可

1. 打开 映射网络 驱动器,

把图片中红色 打勾,点击 "完成" 就会弹出对应框让你输入 新的用户名密码 登录

二 ubunut上安装smb服务器

1.安装samba

bash 复制代码
sudo  apt-get  install  samba smbfs -y

2.配置共享文件夹

备份并编辑smb.conf允许网络用户访问

bash 复制代码
sudo  cp  /etc/samba/smb .conf  /etc/samba/smb .conf_backup
sudo  vim  /etc/samba/smb .conf

增加内容如下

bash 复制代码
[Share]
comment = Shared Folder  for  debug  in  remote win client
netbios name=smb_test_server
path= /opt/smbkiki
valid  users =smbkiki
create mask=0644
directory mask=0755
force user=zlgci
force group=root
public= yes
writable= yes
browseable= yes
available= yes

说明

  1. netbios name 在windows 网上领居 能够看到的名字
  2. path 要共享的目录
  3. valid users 能够访问该共享的用户,可用通配符
  4. create mask 和 directory mask 表示新建文件 目录时的权限
  5. force user 和 force group 表示进行读写时映射到服务器端对应的用户和用户组
  6. writable 表示可写
  7. browseable表示可以浏览。
  8. 找到[global]把 workgroup = MSHOME 改成workgroup = WORKGROUP
    就是改为跟你的win在同一个工作组

3. 添加SMB客户端访问的账号(例如用户名为:smbkiki)

  1. 如果ubuntu系统还没这个账户则先添加
bash 复制代码
sudo useradd smbkiki
  1. 将smbkiki添加到smb访问账户名单里,并设置密码
bash 复制代码
sudo smbpasswd -a smbkiki

4.重启smb服务器

bash 复制代码
sudo  /etc/init.d/smbd  restart

5.windows上访问smb服务器

快捷键 win+r ,输入 \IP地址 即可访问,如果要指定用户名来映射网络驱动器,请看文章开头的部分。

相关推荐
阿昭L16 分钟前
Windows认证和安全对象的基本概念
windows·安全
周山至水数翠峰27 分钟前
Windows 事件与跨线程调用
windows
techdashen1 小时前
拆开任意 Electron 应用:从 Windows 安装包到 Discord 的私有更新协议
javascript·windows·electron
PascalMing2 小时前
从零实现一款 Windows 下的 SSH 批量运维工具:LinuxSshTools 技术详解
运维·windows·ssh
Cheng小攸2 小时前
CTF攻防综合实战(1)
windows
未力忘3 小时前
【无标题】
windows
大明者省3 小时前
在 Windows Server 2019 环境下配置 IIS 站点、本地端口服务、反向代理及内外网访问、多站点多服务部署
windows
您^_^3 小时前
ClaudeCode最近更新导致第三方模型Token消耗率暴涨,缓存命中也相当夸张!!
人工智能·windows·缓存·个人开发·claudecode·deepseek v4 pro
您^_^3 小时前
新手上路(四):Codex MCP 实战——让 Codex 连接外部世界
人工智能·windows·个人开发·codex·deepseek v4 pro
开开心心就好3 小时前
小白友好的程序联网封锁实用工具
windows·eureka·计算机外设·rabbitmq·word·excel·csdn开发云