使用samba实现共享文档

引言

  • 场景:由于公司升级安全系统后,想访问服务器都需要使用跳板机再访问代理服务器,但是有时候第三方软件比如xftp设置代理模式失效,rz和sz又限制文件大小(4G),所以我意外知道了samba模块,可以完成我需要的功能
  • 以下为在docker容器中操作的步骤

samba原理介绍

结构图

  • 上图是我们搭建samba服务的大体框架,在samba服务中可以配置用户的访问权限。用户user1 和user2 访问自己的网络文件夹。其中samba服务需要使用系统端口139和445,139端口主要是SMB运行NBT(NetBIOS over TCP/IP)上使用,445是win2000后SMB直接在tcp/ip上使用的端口。所以没有特殊的NBT层,可以只使用445端口。

使用docker操作

# docker hub
# https://registry.hub.docker.com/r/dperson/samba

关于官方配置介绍

  • 具体看原文参考链接
  • 我们只需要整理一下拿到我们需要用的参数即可
    • docker中常见的启动参数就不介绍了,主要是看samba启动时配置的 -p -u 和 -s。如果需要进行权限管理,那么就需要加上-p,否则默认是全公开的访问。那么-u和-s就是对用户以及共享文件的管理参数设置了。

权限设置

  • -u 新增用户 user1 user2
  • -s 配置文件夹和访问权限
  • 例如:

使用docker创建

sudo docker run -it -p 139:139 -p 445:445 \
            -v /path/to/directory:/share \
            -d dperson/samba -p \
            -u "user1;badpass" \
            -u "user2;badpass" \
            -s "public;/share/public" \
            -s "share_1_2;/share/dir_1_2;yes;no;no;user1,user2;admin;admin;user1与user2专用" \
            -s "share1;/share/dir1;yes;no;no;user1;admin;admin;user1专用" \
            -s "share2;/share/dir2;no;no;no;user2;admin;admin;user2专用"
  • 原作者还给出来另一种配置yml文件的方式,具体看参考资料

如何使用(以个人为例)

结尾

  • 本文仅使用简单的文件传输功能,更多功能以及samba介绍请见参考资料
  • 使用容器建立samba需要掌握docker容器参数,以后本人也会整理一篇关于dockers容器常见操作的文章

参考资料

主要参考资料
samba详细介绍

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

矮人三等

秀儿,是你吗秀儿?

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值