samba服务

本文介绍如何在Linux环境下搭建Samba服务,实现匿名和用户认证两种模式下的文件共享。包括安装配置Samba服务、创建共享目录及权限设置等步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.samba简介

  • Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成。SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种通信协议,它为局域网内的不同计算机之间提供文件及打印机等资源的共享服务。SMB协议是客户机/服务器型协议,客户机通过该协议可以访问服务器上的共享文件系统、打印机及其他资源。通过设置“NetBIOS over TCP/IP”使得Samba不但能与局域网络主机分享资源,还能与全世界的电脑分享资源。
实验
环境要求:同样需要两台主机来模拟实验,一台做为客户端,一台做为服务端。这里我的客户端为192.168.226.128,服务端为190.168.226.129。
1.搭建匿名用户共享服务器
  • 第一步首先在客户端和服务端都装上samba服务,并开启。顺便把客户端和服务端的防火墙都关掉。
    客户端
[root@Hongxiande ~]# yum install -y samba-*
[root@Hongxiande ~]# systemctl start smb
[root@Hongxiande ~]# systemctl stop firewalld
[root@Hongxiande ~]# ss -antl  //查看139和445端口是否都开启
  服务端
[root@localhost ~]# yum install -y samba-*
[root@localhost ~]# systemctl start smb
[root@localhost ~]# systemctl stop firewalld
[root@localhost ~]# ss -antl

第二步配置服务端,修改samb配置文件

[root@localhost ~]# vim /etc/samba/smb.conf
[global]
        workgroup = SAMBA
        security = user
        map to guest = Bad User  //添加
        passdb backend = tdbsam

        printing = cups
        printcap name = cups
        load printers = yes
        cups options = raw
//创建一个共享目录
[root@localhost ~]# mkdir -p /samba/dubai
[root@localhost ~]# chmod 777 /samba/dubai/
[root@localhost ~]# ll /samba/
总用量 0
drwxrwxrwx 2 root root 6 911 16:41 dubai
//再次修改配置文件
[root@localhost ~]# vim /etc/samba/smb.conf
[dubai]
        comment = dubai
        path = /samba/dubai
        browseable = yes
        guest ok = yes
        writable = yes
        public = yes
[root@localhost ~]# systemctl restart smb  //重新启动下服务
  • 到客户机查看效果
[root@Hongxiande ~]# smbclient -L 192.168.226.129 -U 'Bad User'
Enter SAMBA\Bad User's password: 
OS=[Windows 6.1] Server=[Samba 4.6.2]

    Sharename       Type      Comment
    ---------       ----      -------
    print$          Disk      Printer Drivers
    dubai           Disk      dubai
    IPC$            IPC       IPC Service (Samba 4.6.2)
OS=[Windows 6.1] Server=[Samba 4.6.2]

    Server               Comment
    ---------            -------

    Workgroup            Master
    ---------            -------

//再尝试将samba服务器的共享资源挂载到客户机本地

[root@Hongxiande ~]# mkdir -p /samba/dubai
[root@Hongxiande ~]# chmod 777 /samba/dubai/
[root@Hongxiande ~]#  mount -t cifs //192.168.226.129/dubai /samba/dubai -o username='Bad User'
[root@Hongxiande ~]# df -h |grep //
//192.168.226.129/dubai       18G  1.1G   17G    7% /samba/dubai
[root@Hongxiande ~]# cd /samba/dubai/
[root@Hongxiande dubai]# ls
[root@Hongxiande dubai]# mkdir xixi
[root@Hongxiande dubai]# touch haha
[root@Hongxiande dubai]# ls
haha  xixi

再回到服务端验证

[root@localhost ~]# cd /samba/dubai/
[root@localhost dubai]# ls
haha  xixi
[root@localhost dubai]# 
2.搭建用户认证共享服务器

创建用户dubai,并为此用户创建smb共享密码

[root@localhost ~]# useradd -M dubai
[root@localhost ~]# smbpasswd -a dubai
New SMB password:
Retype new SMB password:
Added user dubai.

映射dubai用户为hxd用户,修改配置文件

[root@localhost ~]# vim /etc/samba/smbusers

dubai = hxd
~                                                                                       
~ 

再修改全局配置,修改配置文件

[root@localhost ~]# vim /etc/samba/smb.conf
[global]
        workgroup = SAMBA
        security = user
        username map = /etc/samba/smbusers

        passdb backend = tdbsam

创建一个共享目录dubai1

[root@localhost ~]# mkdir -p /samba/dubai1
[root@localhost ~]# chown -R dubai.dubai /samba/dubai1

修改配置文件

[root@localhost ~]# vim /etc/samba/smb.conf
[dubai1]
        comment = dubai1
        path = /samba/dubai1
        browseable = yes
        guest ok = yes
        writable = yes
        write list = dubai
        public = yes

重启smb服务

[root@localhost ~]# systemctl start smb

在客户端查看

[root@Hongxiande ~]# smbclient -L 192.168.226.129 -U hxd
Enter SAMBA\hxd's password: 
Domain=[LOCALHOST] OS=[Windows 6.1] Server=[Samba 4.6.2]

    Sharename       Type      Comment
    ---------       ----      -------
    print$          Disk      Printer Drivers
    dubai           Disk      dubai
    IPC$            IPC       IPC Service (Samba 4.6.2)
    dubai1          Disk      dubai1
Domain=[LOCALHOST] OS=[Windows 6.1] Server=[Samba 4.6.2]

    Server               Comment
    ---------            -------

    Workgroup            Master
    ---------            -------

将服务器的共享资源挂载到客户机本地

[root@Hongxiande ~]# mount -t cifs //192.168.226.129/dubai1 /samba/dubai/ -o username=hxd,password=//smb设置的密码
[root@Hongxiande ~]# df -h |grep //
//192.168.226.129/dubai1   18G  1.1G   17G    7% /samba/dubai

//在客户机进入共享目录创建文件

[root@Hongxiande ~]# cd /samba/dubai/
[root@Hongxiande dubai]# ls
[root@Hongxiande dubai]# mkdir aa
[root@Hongxiande dubai]# touch bb
[root@Hongxiande dubai]# ls
aa  bb

在服务器上验证

[root@localhost ~]# cd /samba/dubai1
[root@localhost dubai1]# ls
aa  bb
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值