Ubuntu Samba服务器配置与匿名访问教程

需积分: 5 1 下载量 22 浏览量 更新于2024-09-10 收藏 443KB PDF 举报
"ubuntu samba服务器建立教程" 在Ubuntu操作系统中设置Samba服务器是一个常见的任务,尤其是在需要在Linux和Windows之间共享文件和打印机时。Samba是一个开源软件,它实现了Server Message Block (SMB) 协议,使得Unix/Linux系统能够与Windows系统无缝协作。这个教程适用于Ubuntu 10.04及更高版本,尽管最初描述是基于10.04 LTS(长期支持)版本,但同样的步骤在Ubuntu 12.04上也被验证可行。 首先,安装Samba服务器是必要的。在Ubuntu 10.04中,系统可能仅预装了smbclient客户端,而没有Samba服务器。要安装服务器,需要执行以下命令: 1. 移除已有的Samba相关组件: ``` sudo apt-get remove samba-common sudo apt-get remove smbclient ``` 2. 安装Samba服务器及其客户端: ``` sudo apt-get install samba sudo apt-get install smbclient ``` 安装完成后,smbd和nmbd这两个Samba守护进程会自动启动。它们分别负责文件和打印服务以及名称解析和网络浏览服务。在/etc/init.d目录下,你会发现这两个服务的启动脚本,系统重启时也会自动启动它们。 接下来,配置Samba服务器是关键步骤。Samba的主要配置文件位于`/etc/samba/smb.conf`。通过编辑这个文件,你可以定义哪些目录应该被共享,以及如何访问这些共享。 这里介绍两种配置方案: **方案一:匿名访问Linux共享目录** 这种配置允许局域网内的任何计算机无需账号密码就能访问Linux的共享目录。虽然方便,但安全性较低。要实现匿名访问,你需要: 1. **创建共享目录**:在Linux系统中创建一个新目录,比如`/home/shared`,并确保拥有适当的权限,以便所有用户都可以读写。 2. **编辑smb.conf**:打开配置文件,找到`[global]`部分,添加或修改以下行: ``` workgroup = WORKGROUP # 与Windows系统相同的工作组名 netbios name = LinuxServer # 你的Linux主机名 guest ok = yes # 允许匿名访问 browseable = yes # 允许浏览共享 public = yes # 设为公共共享 [shared] # 共享名 path = /home/shared # 共享目录路径 read only = no # 允许写入 guest ok = yes # 同样允许匿名访问此共享 ``` 3. **应用更改**:保存配置文件并重启Samba服务: ``` sudo service smbd restart sudo service nmbd restart ``` 现在,Windows用户应该可以在“网络”中看到这个名为“shared”的共享,并可以无密码访问。 **方案二:授权访问** 对于更安全的设置,你可以要求用户提供账户凭据。在smb.conf文件中,取消`guest ok = yes`,并指定一个或多个用户可以访问共享。例如: 1. 在`[shared]`部分下方添加: ``` valid users = user1, user2 # 只允许user1和user2访问 ``` 2. 确保这些用户在Linux系统中存在,并且他们有访问共享目录的权限。 3. 重启Samba服务以应用更改。 在完成配置后,你可以通过运行`smbclient -L localhost -U%`在Linux上检查Samba服务器的共享列表,或者在Windows上通过“网络”或“运行”窗口输入`\\LinuxServer`来访问共享资源。 Samba服务器的配置灵活性很高,可以根据实际需求进行定制。记住,安全始终是首要考虑,因此在开放共享时应谨慎处理权限和认证设置。