smb 服务使用的是哪个端口, docker 有办法通过端口映射的方式暴露服务吗? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
LeeReamond
V2EX    程序员

smb 服务使用的是哪个端口, docker 有办法通过端口映射的方式暴露服务吗?

  •  
  •   LeeReamond 2023-02-03 17:20:51 +08:00 2775 次点击
    这是一个创建于 981 天前的主题,其中的信息可能已经有所发展或是发生改变。

    宿主机是 windows ,需要实现局域网内各种主机到 NAS 的文件共享。

    windows 本身是有共享系统的,而且做的还不错,优点是权限管理粒度很细,但缺点是双方电脑都要经过比较复杂设置,开放很多权限,否则连不上。目前在用的 linux 的 smb 方案的缺点是粒度不够细,优点则是任意一台电脑不需要经过复杂配置,直接输入网络位置和密码就能访问。我目前倾向于使用 smb ,win 的每台机器都要设置的话太麻烦了。

    一个想法是宿主机是 windows ,并且想使用 smb 的话,能否通过 docker desktop ,挂载一个本地硬盘,并且在 docker 里暴露服务到主机端口,这样达到类似运行了一个 linux 物理机的效果?因为查了查,docker 的桥接模式跟普通意义上的网络桥接好像不太一样,没办法连接到路由器并获取一个内网都能访问到的 IP 位置。

    21 条回复    2023-02-04 18:49:10 +08:00
    leoQaQ
        1
    leoQaQ  
       2023-02-03 17:27:59 +08:00
    smb 有个默认端口,忘了,注册表可以改,具体 Google 一下;
    不建议使用默认端口,风险太大。
    ppyzzz
        2
    ppyzzz  
       2023-02-03 17:28:42 +08:00
    445
    LeeReamond
        3
    LeeReamond  
    OP
       2023-02-03 17:48:57 +08:00
    @leoQaQ
    @ppyzzz 主要不是很理解这种服务的原理。。毕竟它不是个 http 服务,不是很懂是不是把 445 转接出来就能实现代理了。。

    另外安全性问题,既然是在家庭路由内网里使用,还有密码保护,应该还好吧
    f5c4ebc2
        4
    f5c4ebc2  
       2023-02-03 18:22:51 +08:00 via Android
    其实只需要知道 SMB 服务默认暴露 445 端口,不需要了解原理就能通过 docker 的端口映射来使用服务了。SMB 虽然不是 HTTP 服务,但本质上也是基于 TCP 协议和对应的 IP:port
    f5c4ebc2
        5
    f5c4ebc2  
       2023-02-03 18:23:59 +08:00 via Android
    通信的,所以只要能访问这个 socket 就能使用服务。
    webcape233
        6
    webcape233  
       2023-02-03 20:13:27 +08:00 via iPhone
    samba 的 linux 上性能比 win 上差的老远了。
    LeeReamond
        7
    LeeReamond  
    OP
       2023-02-03 20:14:23 +08:00
    @f5c4ebc2 试了试无法绑定,提示端口已占用,比较符合之前潜意识里感觉不行。而且试了试 docker desktop 的内存占用挺坑的,完全没有省的特征,还不如 hv 直接开个虚拟机
    LeeReamond
        8
    LeeReamond  
    OP
       2023-02-03 20:15:50 +08:00
    @webcape233 我试了试,hv 走虚拟网卡的话大概顺序读写是 500/500MBPS,其实还可以了,机械硬盘读写都能跑满,我没啥不满意的
    webcape233
        9
    webcape233  
       2023-02-03 20:23:14 +08:00 via iPhone
    win 共享不是很简单呢,共享出去就行了,在 server 端管理用户,client 端登录即可。
    f5c4ebc2
        10
    f5c4ebc2  
       2023-02-03 21:47:41 +08:00
    @LeeReamond #7 端口已占用可能是因为宿主机 445 端口上已经跑了其他服务了(例如 Windows 自身的 SMB ),和 Docker 本身无关,可以使用一个非默认端口来解决; Docker Desktop 资源占用的确比较大。
    czwstc
        11
    czwstc  
       2023-02-03 21:49:49 +08:00
    听说过永恒之蓝吗?
    kenvix
        12
    kenvix  
       2023-02-03 22:07:01 +08:00 via Android
    @webcape233 你要高性能实现的话是 ksmbd
    beijiaoff
        13
    beijiaoff  
       2023-02-03 22:09:43 +08:00
    不用担心勒索病毒,lz 这是局域网内部。
    话说我没理解你需求,你局域网的 windows 直接提供 smb 服务就完事了呀,为什么还要牵扯 docker 等?
    windows 共享后,其他客户端也是不需要复杂配置,直接输入网络位置和密码就能访问的。
    LeeReamond
        14
    LeeReamond  
    OP
       2023-02-03 23:06:20 +08:00
    @beijiaoff 我个人使用经验是(系统是企业版 win10 ),如果使用 win 自己的共享的话,需要进共享中心,把所有网络发现都打开,然后密码和相关要求选项全都取消,c 和 s 全都要这么调才能连上,s 端额外还需要对文件夹进行一些共享和高级共享设置,这个不提。linux 的体验是新的 windows 不用调共享设置,直接添加网络位置并输入密码就可以访问
    opengps
        15
    opengps  
       2023-02-03 23:16:36 +08:00
    没记错的话,运营商默认封 445 端口了
    LisaSue
        16
    LisaSue  
       2023-02-03 23:16:36 +08:00
    @LeeReamond win+r \\+ip 地址就好了啊,哪有那么复杂
    onikage
        17
    onikage  
       2023-02-03 23:55:45 +08:00
    性能比起直连差的比较多,我的 2.5 寸 cmr 笔记本硬盘共享出来千兆跑不满.
    LeeReamond
        18
    LeeReamond  
    OP
       2023-02-04 05:11:25 +08:00
    @LisaSue 有的机器能访问有的机器不能访问。

    [Window Title]
    网络错误

    [Main Instruction]
    Windows 无法访问 \\DESKTOP-115TIM8\Sunny

    [Content]
    你没有权限访问 \\DESKTOP-115TIM8\Sunny 。请与网络管理员联系请求访问权限。

    有关权限的详细信息,请参阅 Windows 帮助和支持

    [关闭(C)]
    tree2525
        19
    tree2525  
       2023-02-04 12:18:33 +08:00
    在用 linux 的 smb ,多用户权限也很好用啊,还有共享文件的回收站,详细的日志;
    beijiaoff
        20
    beijiaoff  
       2023-02-04 16:40:50 +08:00   1
    @LeeReamond 有的访问不了这个的确是常见的问题……给我的感觉就是 smb 鲁棒性很差。不如在 windows 上开一个第三方的 webdav 服务,我用过一阵 Cute Http File Server(chfs ,一个很简单独立 exe 文件打开即用)感觉就很稳定。说到 webdav ,windows 本身也可以挂载,但是也是有参数限制,否则就访问不了。win 做网络服务真让人觉得是个半成品。
    flexbug
        21
    flexbug  
       2023-02-04 18:49:10 +08:00 via iPhone
    你来这问不如问 chatgpt
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     971 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 24ms UTC 23:11 PVG 07:11 LAX 16:11 JFK 19:11
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86