配置Samba服务器实现文件共享

本文详细介绍Samba服务的安装步骤,包括关闭防火墙和SELinux,设置匿名访问及通过用户名密码访问的方法,如何配置共享目录,设置读写权限,以及特定用户和组的访问控制。同时,提供了测试连接和权限的指导。

一.安装samba服务

udp 137 138

tcp  139 445

前提:关闭防火墙和selinux

systemctl stop firewalld

sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config

安装samba:

[root@lewis63 ~]# yum -y install samba

[root@lewis63 ~]# systemctl start smb

查看端口:

[root@lewis63 ~]# netstat -anput | grep smb

tcp        0      0 0.0.0.0:139             0.0.0.0:*               LISTEN      8590/smbd          

tcp        0      0 0.0.0.0:445             0.0.0.0:*               LISTEN      8590/smbd          

tcp        0      0 192.168.1.63:445        192.168.1.10:58783      ESTABLISHED 8596/smbd          

tcp6       0      0 :::139                  :::*                    LISTEN      8590/smbd          

tcp6       0      0 :::445                  :::*                    LISTEN      8590/smbd

二.匿名访问

[root@lewis63 ~]# vim /etc/samba/smb.conf

[global]

        workgroup = SAMBA

        security = user

        map to guest = Bad User            #加入这句,允许匿名访问

#设置一个共享目录

[share]

        comment = share software

        path = /share         #该目录必须存在

        public = yes

 

[root@lewis63 ~]# mkdir /share

重启服务:

[root@lewis63 ~]# systemctl restart smb

Windows测试:

\\192.168.1.63\share

 

 三.通过用户名密码访问

[root@lewis63 ~]# vim /etc/samba/smb.conf

[global]

        workgroup = SAMBA

        security = user

        map to guest = Bad User

        passdb backend = smbpasswd

        smb passwd file = /etc/samba/smbpasswd

添加销售部组和成员

[root@lewis63 ~]# groupadd sales

[root@lewis63 ~]# useradd -g sales user01

[root@lewis63 ~]# useradd -g sales user02

为销售部成员添加samba账号设置密码

smbpasswd -a    添加用户

[root@lewis63 ~]# smbpasswd -a user01

New SMB password:

Retype new SMB password:

startsmbfilepwent_internal: file /etc/samba/smbpasswd did not exist. File successfully created.

Added user user01.

[root@lewis63 ~]# smbpasswd -a user02

设置用户或组访问

[root@lewis63 ~]# vim /etc/samba/smb.conf

加入

[sales]

        comment = sales data

        path = /sales

        valid users = @sales

[root@lewis63 ~]# mkdir /sales         #创建共享目录

[root@lewis63 ~]# systemctl restart smb

测试

扩展参数:

hosts allow = 192.168.1.63 允许访问的客户端

hosts deny = 192.168.4 禁止访问的客户端(禁止192.168.4.0/24网段的IP访问)

hosts allow 优先级高

四.设置samba可写权限

设置可写权限

服务权限:

[root@lewis63 ~]# vim /etc/samba/smb.conf

[sales]

        comment = sales data

        path = /sales

        valid users = @sales

        writable = yes

目录权限

[root@lewis63 ~]# chmod 777 /sales

测试:

可以创建 删除 改名文件

五.Boss用户和sales组都可以读写

[root@lewis63 ~]# useradd boss1

[root@lewis63 ~]# smbpasswd -a boss1

[root@lewis63 ~]# vim /etc/samba/smb.conf

[sales]

        comment = sales data

        path = /sales

        write list = boss1,@sales

注销window连接Samba服务的账号信息

cmd下执行net use * /del,按y回车

 

<think>好的,用户问如何在Linux系统中配置Samba服务器实现文件共享。首先,我需要确认用户的基本需求。他们可能想要在Linux和Windows之间共享文件,或者Linux和Linux之间,但更常见的是跨平台的情况。用户可能有一定的Linux基础,但可能对具体步骤不太熟悉。 接下来,我应该分步骤来回答。安装Samba是第一步,不同发行版的安装命令可能不同,比如Debian系用apt,Red Hat系用yum。需要提醒用户检查自己的系统类型。 然后是配置文件。smb.conf是核心配置文件,用户可能需要了解基本的配置参数,比如workgroup、security等。这里需要给出示例配置,并解释每个参数的作用。 创建共享目录和用户权限管理也很重要。用户可能需要知道如何设置目录权限,以及如何添加Samba用户,特别是smbpasswd命令的使用。 防火墙和SELinux/iptables的设置容易被忽视,需要提醒用户关闭或配置这些安全措施,否则可能导致连接问题。 最后是测试和连接,包括如何重启服务,从Windows或Linux客户端访问共享目录的方法。可能需要提到使用IP地址或主机名访问,以及挂载的方法。 还要考虑用户可能遇到的问题,比如权限错误,这时候需要检查配置文件的语法,用户是否已添加,防火墙是否关闭等。相关问题应该围绕这些步骤展开,比如安装问题、配置参数、权限解决、替代方案等。 需要确保回答清晰,步骤明确,用户能一步步跟着操作。同时,避免使用过于专业的术语,保持解释的易懂性。可能需要检查是否有遗漏的步骤,比如创建实际目录,或者测试配置文件的命令,比如testparm。 最后,按照用户之前的要求,提供相关问题,帮助用户深入理解或解决后续问题。比如如何解决权限拒绝,替代方案,基本配置参数等。</think>以下是配置Samba服务器实现文件共享的完整步骤: 1. **安装Samba** ```bash # Debian/Ubuntu系统 sudo apt update && sudo apt install samba # CentOS/RHEL系统 sudo yum install samba samba-client ``` 2. **备份并编辑配置文件** ```bash sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.bak sudo nano /etc/samba/smb.conf ``` 添加基础配置: ```ini [global] workgroup = WORKGROUP server string = Samba Server %v netbios name = ubuntu-samba security = user map to guest = bad user dns proxy = no # 新建共享目录配置 [Shared] path = /srv/samba/shared browsable = yes writable = yes guest ok = no read only = no create mask = 0644 directory mask = 0755 valid users = @sambashare ``` 3. **创建共享目录和用户组** ```bash sudo mkdir -p /srv/samba/shared sudo groupadd sambashare sudo chown -R root:sambashare /srv/samba/shared sudo chmod -R 0775 /srv/samba/shared ``` 4. **添加Samba用户** ```bash sudo useradd -M -d /srv/samba/shared -s /usr/sbin/nologin sambauser sudo smbpasswd -a sambauser sudo usermod -aG sambashare sambauser ``` 5. **配置防火墙** ```bash # Ubuntu/Debian sudo ufw allow 'Samba' # CentOS/RHEL sudo firewall-cmd --permanent --add-service=samba sudo firewall-cmd --reload ``` 6. **启动并启用服务** ```bash sudo systemctl enable smbd nmbd sudo systemctl start smbd nmbd ``` 7. **客户端访问** - Windows:文件资源管理器输入 `\\服务器IP\Shared` - Linux:安装cifs-utils后使用挂载命令 ```bash sudo mount -t cifs -o user=sambauser //服务器IP/Shared /mnt ``` **验证配置** ```bash testparm # 检查配置文件语法 smbclient -L \\localhost -U% # 查看共享列表 ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值