samba文件共享服务器安装

samba文件共享服务器安装一、安装samba服务以及samba客户端yumlistsambayuminstallsambasamba-client安装好samba软件包以后,在系统中会添加名为smb和nmb的标准系统服务,管理员可以通过service(centos6)或systemctl(centos7)工具来控制Samba服务的启动与终止。其中smbd程序负责监听TCP协议的139端口(SMB协议)、445端口(CIFS协议),而nmbd服务程序负责监听UDP协议的137、138端口(NetBIOS协

大家好,又见面了,我是你们的朋友全栈君。

一、安装samba服务以及samba客户端

yum list samba
yum install samba samba-client

安装好samba软件包以后,在系统中会添加名为smb和nmb的标准系统服务,管理员可以通过service(centos6)或systemctl(centos7)工具来控制Samba服务的启动与终止。

其中smbd程序负责监听TCP协议的139端口(SMB协议)、445端口(CIFS协议),而nmbd服务程序负责监听UDP协议的137、138端口(NetBIOS协议)。

netstat -anput | grep mbd
cp /etc/samba/smb.conf /etc/samba/smb.conf.bak
vim /etc/samba/smb.conf

使用如下配置:

# 全局设置:这部分配置项的内容对整个samba服务器都有效。

[global]

        workgroup = SAMBA

                # share:允许任何匿名用户访问

                # user:默认、每一个用户访问时都需要提供账号密码

                # domain/server:第三方集中认证

        security = user

        passdb backend = tdbsam

        log file = /var/log/samba/log.%m

        printing = cups

        printcap name = cups

        load printers = yes

        cups options = raw



[homes]

        comment = Home Directories

        valid users = %S, %D%w%S

        browseable = No

        read only = No

        inherit acls = Yes

#打印机共享设置:若需要共享打印机设备,可以在这部分进行配置。

#[printers]

#       comment = All Printers

#        path = /var/tmp

#        printable = Yes

#        create mask = 0600

#        browseable = No



[print$]

        comment = Printer Drivers

        path = /var/lib/samba/drivers

        write list = @printadmin root

        force group = @printadmin

        create mask = 0664

        directory mask = 0775



[wxzy_app]

        # 共享描述

        comment = app share

        # 设置共享文件夹的路径

        path = /home/app_smb

        # 允许该指定共享目录可浏览

        browseable = yes

        # 设置是否允许匿名访问

        public = no

        # 允许访问共享目录的用户

        valid users = @smb

        # 读写控制共享目录的用户组

        write list = app_admin

        # 默认创建文件权限 rw_rw___

        force create mode = 0660

        # 默认创建目录权限 rwxrwxr__

        force directory mode= 2770

        # 设置强制设定新建文件所属用户

        force user = app

        # 设置强制设定新建文件所属用户组

        force group = smb

        # 该指定共享资源可使用

        available = yes

        unix charset = UTF-8

        dos charset = cp936

[wxzy_app_admin]

        # 共享描述

        comment = app share admin

                path = /samba/app_admin

                browseable = yes

                read only = no

                force create mode = 0660

                force directory mode = 2770

                valid users = app_admin

二、创建samba用户和用户组

添加共享用户组:

groupadd -r smb

useradd -s /sbin/nologin -G smb app_smb

useradd -M -d /samba/app -s /sbin/nologin -G smb app

useradd -M -d /samba/app_admin -s sbin/nologin -G smb app_admin

-M 不创建用户的home目录

 -d 手动设置用户目录

-s /usr/sbin/nologin – 禁止用户shell登录

-G admin将用户加入到app_admin用户组.

smbpasswd -a app

                New SMB password:hengtian@201612

smbpasswd -a app_admin

                New SMB password:admin

smbpasswd -e app

smbpasswd -e app_admin

三、创建samba共享目录以及文件夹权限设置

添加共享路径:

cd /

mkdir samba

cd samba

mkdir app

mkdir app_admin

chown -R app:smb app

chown -R app_admin:smb app_admin

chmod 770 /samba/app

chmod 770 /samba/app_admin

重启

sambda:systemctl restart smb

四、使用samba进行文件共享

方式1:文件夹挂载

1、安装cifs-utils软件包以支持samba的挂载(否则即使挂载没有报错也无法正常使用)

yum install cifs-utils

2、创建挂载点

mkdir /mnt/smbmount

3、进行条目挂载或把挂载条目写入/etc/fstab以使开机自动挂载

mount -t cifs -o username=app_admin //172.16.137.236/wxzy_app_admin /mnt/smbmount

-o username –访问共享文件夹时候的用户

//172.16.137.236/wxzy_app_admin – 共享文件夹的共享地址

/mnt/smbmount –本地挂载映射路径

如果需要开机自动挂载

Vim /etc/fstab

在最后一行添加

//172.16.137.236/wxzy_app_admin  /mnt/smbmount cifs default,username=app_admin,password=123 0 0

 如果需要针对多用户挂载参考:https://blog.csdn.net/kangvcar/article/details/76093904?depth_1-utm_source=distribute.pc_relevant.none-task-blog-OPENSEARCH-3&utm_source=distribute.pc_relevant.none-task-blog-OPENSEARCH-3

方式2:使用samba-client

smbclient //172.16.137.236/wxzy_app -U app

 

五、关于samba的权限控制

samba的权限由两方面构成:一是目录本身的权限,二是samba的配置权限。最终权限定义是两者的最小交集。

在smb.conf中通过一下几个配置项配置sambe的权限   

       # 允许该指定共享目录可浏览

        browseable = yes

        # 设置是否允许匿名访问

        public = no

        # 允许访问共享目录的用户

        valid users = @smb

        # 读写控制共享目录的用户组

        write list = app_admin

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/144796.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 网络模拟发包工具_移动端抓包工具

    网络模拟发包工具_移动端抓包工具原文:https://zm8.sm-tc.cn/?src=l4uLj8XQ0IuekZWWi5bRk5CZi5qN0ZyQktCPkIyL0M6cnMmcx8qdoM7PnMrIyMnI&uid=e96fb03443f13a7818306ad06a9a551c&hid=7004e08dc41ef5580b3280b8ff2054c4&pos=5&cid=9…

    2025年9月17日
    8
  • vue生成二维码_html生成二维码

    vue生成二维码_html生成二维码目录qrcodejs2vue-qrqrcodejs2下载qrcodejs2cnpmi-Sqrcodejs2使用<template><spanref=”qrCodeUrl”></span></template><script>importQRCodefrom”qrcodejs2″;exportdefault{data(){return{};},mo

    2022年10月4日
    3
  • 复制粘贴不到远程桌面_远程怎么复制粘贴不了

    复制粘贴不到远程桌面_远程怎么复制粘贴不了在远程服务器上打开任务管理器,在进程里面找到rdpclip进程(或者剪贴板监视器),点击“结束进程”打卡DOS命令符,输入rdpclip后,确认,从新打开远程剪贴服务。

    2022年8月19日
    7
  • sendip linux发包工具

    sendip linux发包工具第一步:安装sendip工具sudoapt-getupdatesudoapt-getinstallsendipmansendip//可以查看sendip的使用方法第二步:使用开启两台虚拟机,在其中一台执行sendip命令,在另一台抓包分析sendip命令格式:sendip网络层传输层数据domainsendip-v-p***-is***-id***-p***-f/-d***

    2025年9月12日
    5
  • Java程序设计(基础)- 数组[通俗易懂]

    Java程序设计(基础)- 数组[通俗易懂]Java程序设计(基础)- 数组

    2022年4月22日
    47
  • linux通配符大全_linux中rmdir命令

    linux通配符大全_linux中rmdir命令linux基础(通配符的使用)你好!这里是面向新手的linux入门指南,这节课我会整理我所知道的linux中的通配符,希望和大家一起学习通配符的概念首先通配符绝对不是正则表达式,通配符基础只有4个:***,?,[],[^]**。这些一般只用于文件名匹配,它是由shell解析的,比如find,ls,cp,mv等符号*:该符号表示一个或多个字符例如:*finda为找a开头的文件符号?:表示代替单个字符符号[list]:表示匹配list中的任意单一字符【0,9】—

    2026年1月23日
    5

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号