samba服务

本文介绍了如何在Linux上安装、配置和使用Samba服务,以实现与Windows系统的文件和打印机共享。主要内容包括安装samba软件包,配置samba核心文件smb.conf,设置工作组、安全级别、用户映射和共享目录,以及启动、停止和管理samba服务。同时,还讨论了防火墙设置和通过smbclient进行连接的问题。

samba服务

linux使用samba程序集实现SMB协议(局域网上共享文件夹/打印机),主要功能如下:

提供windows风格的文件和打印机共享,winXX等操作系统可以利用Samba共享linux等操作系统上的资源,

从外观看起来和共享windows的资源没有区别。linux下的用户可以通过smbclient访问。

 

--------------------------------------安装samba---------------------------------------------------------------

首先检查是否已经安装好了samba

rpm -q samba

 

上图显示samba已经安装。假设没有安装并执行如下安装步骤:

放入linux第二张安装盘,挂载后并在Server下找到samba。

安装包名称:samba-3.0.23c-2.i386.rpm

 

使用如下命令安装

rpm -ivh samba-3.0.23c-2.i386.rpm

 

--------------------------------------配置samba---------------------------------------------------------------

存放在/etc/samba/目录中的smb.conf是Samba的设置核心。

~~~~~~~~~~~~~~~~~~~~~需要注意下面的内容~~~~~~~~~~~~~~~~~~~~~~~~~~~~

在进行配置工作之前,还需要查看/etc/services文件中以netbios-开头的记录是否都可以用。如果被删除或者记录前有“#”,也将使用户

无法访问linux服务器上的共享资源

 

同时还要设置防火墙,默认情况下linux的防火墙是不允许windows客户段访问samba的,因此要将相应服务开放,或关闭防火墙。

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

主配置文件由两部分组成:

  • global settings

  • share definitions

行中以分号或井号开头的都是注释

 

创建samba用户

按照提示输入密码,

虽然出现错误但是不影响使用。

 

编辑配置文件/etc/samba/smb.conf

首先看global部分

-------------设置工作组

将workgroup的值设为主机的工作组名,我的是workgroup

----------------设置简要说明字符串

samba服务器的配置文件中使用server string来方便用户识别,实际上这就是个简要说明

 

----------------设置 可以访问的主机或网段

设置可访问samba服务的主机或网段,缺省是没有指定的,即所有用户均可访问。

语法:

hosts allow = 主机名,域名,网段 except 主机名,域名,网段

举例:

hosts allow = etune-pc,www.sohu.com,172.25.8.  except 172.25.8.55    注意:网段后面别忘记“点”

 

----------------设置用户安全等级

语法:

security=user

说明:

share:访问samba资源不需要输入密码,没有安全保障

user:这是默认的安全等级,需要输入密码才可以访问资源。

server:密码的验证的工作需要在另一台samba服务器上进行,需要设置password server

domain:使用windows nt域控制器的安全防护

ads:需要指定口令服务器

 

 

---------------指定监听网卡

如果samba服务器有双网卡,则需要指定监听网卡

设置的方法有两种:

1、语法: interfaces=eth0

2、语法:interfaces=网卡ip

 

---------------启用wins服务(windows internet name service)

 

---------------启用smb用户与windows用户的映射

在smb.conf中增加一行:

 

--------------设置用户的个人主目录

在smb.conf中

comment:说明文字

browseable: 是否允许用户浏览所有人的主目录。默认是no,即不允许。

writable:是否允许写入个人主目录

 

--------------设置共享目录

例如:要为share组的用户设置/home/share目录

1、首先用groupadd share创建share组

2、然后用usermod -G share root ,将root加入share组

3、创建共享目录 mkdir /home/share

4、设定共享目录的属组 chown :share /home/share

5、设置属组的权限 chmod -c g+ wxr  /home/share

 

---------------启动和停止samba服务

启动: /etc/rc.d/init.d/smb start

停止:/etc/rc.d/init.d/smb stop

 

重启:/etc/rc.d/init.d/smb restart

 

自动启动samba服务,执行ntsysv命令

 

-----------------------利用主机名访问linux共享资源

vi /etc/samba/lmhosts

 

注意第一行绝对不要修改,否则可能导致意外的错误。

 

-----------------------检查smbclient是否安装

 

假如没有安装则执行下面的命令:

rpm -ivh /mnt/server/  samba-client-3.0.23c-2.i386.rpm

 

smbclient -L ip或主机名

但是连接失败。是什么原因呢?

 

虚机ping vista 不通。

vista ping 虚机正常。

怀疑是防火墙的问题,关闭了vista的防火墙仍然ping不通

尝试修改虚机下的防火墙,

 

执行setup命令:

将linux火墙设为disable

 

 

 

 

-----------------------单位主机+172.25.13.117 samba------------------------------------------

pc主机需要做的就是共享一个目录,注意共享列表中列出了tools共享目录,同时也列出了c$

 

 

比如要访问单位主机172.25.8.55共享目录tools

 

取文件和上传文件与ftp的用法相同

使用ls列表,cd切换路径,mget 获取文件 , mput 上传文件   ,exit 退出smb

注意:获取的文件会保存在当前用户的主目录下,如root用户 存在/root下

<think> 首先,用户查询是关于Samba服务器的相关信息,包括使用指南、配置方法、常见问题解决方案等。我需要根据系统级指令来构建回答。 系统级指令回顾: 1. 行内数学表达式使用$...$格式。 2. 独立公式使用$$...$$格式并单独成段。 3. LaTeX语法正确。 4. 使用中文回答。 5. 生成相关问题。 6. 回答中引用的段落末尾自然地添加引用标识,例如:[^1]。 另外,用户可见层指令: - 回答结构清晰,帮助用户逐步解决问题。 - 保证回答真实可靠。 从引用中: - 引用[1]讨论了Samba的安全配置与管理。 - 引用[2]提供了安装和配置Samba的步骤,包括共享/home目录、添加用户、启动服务等,以及解决iPhone写入问题。 - 引用[3]描述了全局配置参数设置。 用户查询是:“我想获取关于Samba服务器的相关信息,可能包括使用指南、配置方法、常见问题解决方案等”。这很广泛,我需要覆盖关键方面。 结构化回答: - 介绍Samba服务器(简要)。 - 分步骤提供使用指南和配置方法。 - 包括常见问题解决方案。 - 基于引用添加引用标识。 - 最后生成相关问题。 确保回答真实可靠:基于提供的引用,但可以补充一般知识,因为引用是有限的。 关键部分: 1. **安装Samba**:从引用[2]。 2. **基本配置**:共享目录设置,如/home共享。 3. **用户管理**:添加用户,使用smbpasswd。 4. **启动服务**:启动smbd和nmbd。 5. **安全配置**:从引用[1]和[3],如安全模式设置。 6. **常见问题**:如iPhone写入问题(引用[2])。 回答结构: - 引言:什么是Samba服务器(简述)。 - 步骤1:安装Samba。 - 步骤2:配置共享(示例)。 - 步骤3:用户管理。 - 步骤4:安全配置。 - 步骤5:常见问题解决。 - 生成相关问题。 使用中文回答。 添加引用:在相关段落末尾添加[^1]、[^2]、[^3]。 生成相关问题:在最后部分,列出几个相关问题。 数学表达式:用户查询没有提到数学,但如果有数学内容,才需要。这里可能不需要,除非涉及计算。保持简单。 最终输出格式: - 文本回答。 - §§相关问题§§部分。 </think>以下是关于Samba服务器的全面信息总结,包括使用指南、配置方法、常见问题解决方案等。Samba是一个开源软件套件,用于在Linux/Unix系统上实现与Windows系统的文件和打印机共享服务(基于SMB/CIFS协议)。我将根据您的查询,逐步介绍关键内容,确保回答结构清晰、真实可靠。所有信息基于可靠的技术文档和实践指南整理而成[^1][^2][^3]。 ### 1. **Samba服务器的安装与基本配置** Samba的安装通常在Linux系统(如Ubuntu)上进行。以下是基本步骤: - **安装Samba**:使用包管理工具安装Samba及相关组件。 ```bash sudo apt update sudo apt install samba smbldap-tools # 安装Samba和LDAP工具[^2] ``` - **配置共享目录**:编辑Samba配置文件(`/etc/samba/smb.conf`),添加共享部分。例如,共享`/home`目录: ```ini [global] workgroup = WORKGROUP # 工作组名称,应与Windows网络一致[^2][^3] security = user # 安全模式,推荐使用user模式(需要密码验证)[^3] [home] # 共享名称 comment = my home # 共享描述 path = /home # 共享路径 browseable = yes # 允许浏览 writable = yes # 允许写入[^2] ``` - **添加用户**:Samba用户必须是系统用户,使用`smbpasswd`命令添加(例如用户`lin`): ```bash sudo smbpasswd -a lin # 添加用户并设置Samba密码[^2] ``` 如果遇到“Failed to add entry for user”错误,需先创建系统用户: ```bash groupadd share useradd share -s /sbin/nologin -d /dev/null # 创建无登录权限的系统用户[^2] ``` - **启动服务**:重启Samba服务使配置生效。 ```bash sudo service smbd restart # 重启Samba守护进程 sudo service nmbd restart # 重启NetBIOS名称服务[^2] ``` - **验证共享**:在Windows或移动设备上,输入`\\<服务器IP>`访问共享文件夹。例如,在文件浏览器中输入`\\192.168.1.100`测试连接。 ### 2. **安全配置与管理** 安全是Samba部署的关键,以下是核心措施: - **安全模式设置**:在`smb.conf`的`[global]`部分,设置`security`参数: - `security = user`:要求用户名/密码认证(推荐)[^3]。 - `security = share`:无需密码(仅限低风险环境)[^3]。 - **访问控制**:使用`valid users`和`hosts allow`限制访问: ```ini [home] valid users = lin # 只允许特定用户访问 hosts allow = 192.168.1.0/24 # 仅允许本地网络访问[^1] ``` - **日志与监控**:启用日志记录以追踪安全事件: ```ini log file = /var/log/samba/log.%m # %m表示客户端主机名 max log size = 50 # 日志文件最大50KB[^3] ``` - **定期更新**:保持Samba软件更新,以修复漏洞[^1]。通过以上措施,可有效保护服务器免受威胁,确保服务稳定运行[^1]。 ### 3. **常见问题解决方案** 以下是用户常见问题及解决方法: - **iPhone无法写入照片**:移动设备(如iPhone)可能因协议兼容性问题无法写入。在`smb.conf`中添加VFS模块: ```ini [global] vfs objects = catia fruit streams_xattr # 启用扩展属性支持[^2] ``` 重启服务后测试。 - **访问权限问题**: - 确保共享路径的Linux权限正确:`sudo chmod -R 755 /home`。 - 如果Windows客户端无法连接,检查防火墙设置:`sudo ufw allow samba`。 - **用户认证失败**: - 确认用户已添加到系统(`sudo useradd <用户名>`)和Samba(`sudo smbpasswd -a <用户名>`)。 - 检查`smb.conf`中的`security`模式是否匹配[^3]。 - **服务启动失败**:运行`testparm`检查配置文件语法错误。 ### 4. **高级配置与优化** - **打印机共享**:默认不加载打印机;如需启用,设置`load printers = yes`并配置打印机部分[^3]。 - **域控制器集成**:对于企业环境,可配置Samba作为活动目录域控制器(需额外设置LDAP)。 - **性能优化**:调整`smb.conf`参数如`socket options = TCP_NODELAY`减少延迟。 通过以上步骤,您可以快速部署和管理Samba服务器。如果需要更多细节,请查阅官方文档或社区资源[^1][^2][^3]。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值