SlideShare a Scribd company logo
1 of 6
Red Hat Linux 9: Red Hat Linux 定制指南 Red Hat Linux 9: Red Hat Linux 定制
指南 Red Hat Linux 9: Red Hat Linux 定制指南
后退                             17. Samba                           前进

17.2. 配置 Samba 服务器
默认的配置文件(/etc/samba/smb.conf)允许用户作为 Samba 共享来查看他们的 Red Hat Linux 主目录。
它还把为 Red Hat Linux 配置的打印机作为 Samba 共享打印机来共享。换一句话说,你可以在你的 Red Hat
Linux 系统上连接打印机,然后从网络上的 Windows 机器来打印。


17.2.1. 图形化配置
要使用图形化界面来配置 Samba,使用 Samba 服务器配置工具。要使用命令行来配置,请跳到第 17.2.2
节。

Samba 服务器配置工具 是用来管理 Samba 共享、用户、以及基本服务器设置的图形化界面。它修改
/etc/samba/ 目录中的配置文件。没有使用该程序进行的改变都会被保留。

要使用该程序,你必须在运行 X 窗口系统,具备根特权,并且安装了 redhat-config-samba RPM 软件包。要
从桌面启动 Samba 服务器配置工具,点击面板上的「主菜单」 => 「系统设置」 => 「服务器设置」
=> 「Samba 服务器」 ,或在 shell 提示(如 XTerm 或 GNOME 终端)下键入 redhat-config-samba 命
令。




图 17-1. Samba 服务器配置工具




   注记
   Samba 服务器配置工具 不显示允许用户在 Samba 服务器上查看他们自己的主目录的共
   享打印机或默认文件段。
17.2.1.1. 配置服务器设置

配置 Samba 服务器的第一步是配置服务器的基本设置和几个安全选项。启动了应用程序后,选择 「首选项」
=> 「服务器设置」。「基本」 活页标签如 图 17-2 所示。




图 17-2. 配置基本服务器设置

在「基本」 标签上,指定计算机应在的工作组以及对计算机的简短描述。它们与 smb.conf 中的 workgroup 和
server string 选项相对应。




图 17-3. 配置安全服务器设置
「安全」 标签包含以下选项:




「验证模式」 — 它和 security 选项相对应。选择以下验证模式中的一种。




「域」 — Samba 服务器依赖于 Windows NT 主要或备份域控制器来校验用户。服务器把用户名和口令传递给
控制器,然后等待它们被返回。在「验证服务器」 字段中指定主要或备份域控制器的 NetBIOS 名称。

「加密口令」选项如果被选,它必须被设置为「是」 。
「服务器」 — Samba 服务器试图通过把用户名和口令组合传递给另一个 Samba 服务器来校验它们。如果它
无法校验,服务器会试图使用用户验证模式来校验它们。在「验证服务器」 字段中指定另一个 Samba 服务器的
NetBIOS 名称。
「共享」 — Samba 用户不必为每个 Samba 服务器都输入用户名和口令组合。它们在试图连接 Samba 服务
器上的指定共享时才会被提示输入用户名和口令。
「用户」 — (默认)Samba 用户必须为每个 Samba 服务器提供一个有效的用户名和口令。如果你想让
「Windows 用户名」选项生效,选择这个选项。详情请参阅第 17.2.1.2 节。
「加密口令」 — (默认值为「是」 )如果用户从 Windows 98、带有服务包的 Windows NT 4.0、或其它最
近版本的 Microsoft Windows 中连接,该选项必须被启用。口令在服务器和客户间使用加密格式而非可被截取
的纯文本格式传输。它和 encrypted passwords 选项相对应。关于加密 Samba 口令的详情,请参阅第
17.2.3 节。
「来宾账号」 — 当用户或来宾用户要登录入 Samba 服务器时,他们必须被映射到服务器上的有效用户。选择
系统上的现存用户名之一作为来宾 Samba 账号。当用户使用来宾账号登录入 Samba 服务器,他们拥有和这个
用户相同的特权。该选项和 guest account 选项相对应。

点击了「确定」 后,所做改变会被写入配置文件,守护进程会被重新启动;因此改变会立即生效。

17.2.1.2. 管理 Samba 用户

Samba 服务器配置工具 要求在添加 Samba 用户之前,在充当 Samba 服务器的 Red Hat Linux 系统上必须
存在一个活跃的现存用户账号。Samba 用户和这个现存的 Red Hat Linux 用户账号相关联。




图 17-4. 管理 Samba 用户

要添加 Samba 用户,选择「首选项」 => 「Samba 用户」,然后点击「添加用户」 按钮。在 「创建新
Samba 用户」窗口中的本地系统上的现存用户列表中选择「Unix 用户名」 。

如果用户在 Windows 机器上有一个不同的用户名,并将从 Windows 机器上登录入 Samba 服务器,请在
「Windows 用户名」 字段中指定 Windows 用户名。「服务器设置」首选项的「安全」活页上的「验证模
式」 必须被设置为「用户」 才能是这个选项生效。

你还需要为 Samba 用户配置一个「Samba 口令」 ,并再键入一次来确认这个口令。即便你选择了为 Samba
使用加密口令,仍建议你为所有用户设置的 Samba 口令不同于他们的 Red Hat Linux 系统口令。

要编辑某个现存用户,从列表中选择它,然后点击「编辑用户」 。要删除某个现存的 Samba 用户,选择这个用
户,然后点击「删除用户」 按钮。删除 Samba 用户不会删除相关的 Red Hat Linux 用户账号。

点击了「确定」 按钮后,用户就会被立即修改。
17.2.1.3. 添加共享




图 17-5. 添加共享

要添加共享,点击「添加」按钮。「基本」 活页标签配置以下选项:




「目录」 — 通过 Samba 共享的目录。这个目录必须存在。
「描述」 — 对共享的简短描述。
「基本权限」 — 用户应该只能够读取共享目录中的文件还是应该能够读写共享目录中的文件。

在「访问」 活页标签上,选择是否要只允许指定的用户来访问共享还是允许所有 Samba 用户来访问共享。如果
你选择了要允许指定用户访问,从可用的 Samba 用户列表中选择这些用户。

点击了「确定」 按钮后,共享就会立即被添加。


 17.2.2. 命令行配置
Samba 使用 /etc/samba/smb.conf 作为它的配置文件。如果你改变了这个配置文件,这个改变直到你使用
service smb restart 命令重启 Samba 守护进程后才会生效。

要指定 Windows 工作组和对它的简短描述,编辑 smb.conf 文件中的以下几行:

workgroup = WORKGROUPNAME

server string = BRIEF COMMENT ABOUT SERVER
把 WORKGROUPNAME 换成你的机器所属的 Windows 工作组名。BRIEF COMMENT ABOUT SERVER 是可
选的,它被用作关于 Samba 系统的 Windows 注释。

要在你的 Linux 系统上创建 Samba 共享目录,在 smb.conf 文件中添加以下几行(根据你和你的系统需要修
改了该文件之后):

[sharename]

comment = Insert a comment here

path = /home/share/

valid users = tfox carole

public = no

writable = yes

printable = no

create mask = 0765
上面的例子允许用户 tfox 和 carole 从 Samba 客户中读写 Samba 服务器上的目录 /home/share。
17.2.3. 加密口令
在 Red Hat Linux 9 中,加密口令被默认启用,因为它更安全。如果加密口令没有被使用,纯文本口令就会被使
用,它能够被别人使用 网络分组嗅探器来截取。建议你使用加密口令。

Microsoft SMB 协议最初使用纯文本口令。然而,带有服务包 3 或更高的 Windows NT 4.0、Windows
98、Windows 2000、Windows ME、以及 Windows XP 要求加密的 Samba 口令。要在 Red Hat Linux 系
统和运行以上 Windows 操作系统的系统间使用 Samba,你可以编辑 Windows 注册器来使用纯文本口令过配
置你的 Linux 系统的 Samba 来使用加密口令。如果你选择要修改你的注册器,你必须为你的全部 Windows 机
器这么做 — 这很冒险,有可能导致进一步的冲突。为了更高的安全性,推荐你使用加密口令。

要在你的 Red Hat Linux 系统上配置 Samba 使用加密口令,遵循以下步骤:




为 Samba 创建一个单独的口令文件。要根据你的现存 /etc/passwd 文件来创建,在 shell 提示下键入以下命
令:

cat /etc/passwd | mksmbpasswd.sh > /etc/samba/smbpasswd
如果系统使用 NIS,键入以下命令:

ypcat passwd | mksmbpasswd.sh > /etc/samba/smbpasswd
mksmbpasswd.sh 脚本和 samba 软件包一起被安装在你的 /usr/bin 目录上。
改变 Samba 口令文件的权限许可,因此只有根用户才有读写权限:

chmod 600 /etc/samba/smbpasswd
这个脚本不会把用户口令复制到新文件,Samba 用户账号在没有设置口令之前不会被激活。为了更高的安全性,
建议你把用户的 Samba 口令设置为不同于用户的 Red Hat Linux 口令的口令。要设置每个 Samba 用户的口
令,使用以下命令(把 username 替换为每个用户的用户名):

smbpasswd username
加密口令必须在 Samba 配置文件中被启用。在 smb.conf 文件中,请确定以下行没有被注释掉:

encrypt passwords = yes

smb passwd file = /etc/samba/smbpasswd
在 shell 提示下键入 service smb restart 来确定 smb 服务被启动。
如果你想让 smb 服务被自动启动,使用 ntsysv、chkconfig、或 服务配置工具来在运行时间启用它。详情请
参阅第 14 章 。




    窍门
  阅读 /usr/share/doc/samba-<version>/docs/htmldocs/ENCRYPTION.html 来进一
  步了解有关加密口令的信息。(把 <version> 替换为你安装了的 Samba 版本号码)。
当使用了 passwd 命令后,pam_smbpass PAM 模块能够被用来同步用户的 Samba 口令和他们的系统口令。
如果用户启用了 passwd 命令,他用来登录到 Red Hat Linux 系统的口令以及他要连接 Samba 共享所必须提
供的口令就会被改变。

要启动这个功能,把以下行添加到 /etc/pam.d/system-auth 的启动 pam_cracklib.so 之下:
password required /lib/security/pam_smbpass.so nullok use_authtok
try_first_pass

 17.2.4. 启动和停止服务器
在通过 Samba 共享目录的服务器上必须运行 smb 服务。

使用以下命令来查看 Samba 守护进程的状态:

/sbin/service smb status
使用以下命令来启动守护进程:

/sbin/service smb start
使用以下命令来停止守护进程:

/sbin/service smb stop
要在引导时启动 smb 服务,使用以下命令:

/sbin/chkconfig --level 345 smb on
你还可以使用 chkconfig、ntsysv 或 服务配置工具来配置要在引导时启动的服务。详情请参阅第 14 章 。

后退                            起点                                             前进
Samba                         上级                                    连接 Samba 共享

 17.3. 连接 Samba 共享
要从 Microsoft Windows 机器上连接 Linux Samba 共享,使用 Network Neighborhood 或图形化文件
管理器。

要从 Linux 系统中连接 Samba 共享,从 shell 提示下,键入以下命令:

smbclient //hostname/sharename -U username
把 hostname 替换为你想连接的 Samba 服务器的主机名或 IP 地址,把 sharename 替换为你想浏览的共享目
录的名称,把 username 替换成系统的 Samba 用户名。输入正确的口令或按 [Enter] 键(若不要求该用户的
口令)。

如果你看到了 smb:> 提示,你就已成功地登录了。登录后,键入 help 来获得一个命令列表。如果你想浏览你
的主目录的内容,把 sharename 替换成你的用户名。如果每有使用 -U 选项,当前用户的用户名就会被传递给
Samba。

要退出 smbclient,在 smb:> 提示下键入 exit。

你还可以使用 Nautilus 来查看你的网络上的可用 Samba 共享。选择面板上的「主菜单」 => 「网络服务
器」 来查看你的网络上的 Samba 工作组的列表。你还可以在 Nautilus 的「位置:」 栏里键入 smb: 来查看
工作组。

如图 17-6 所示,在网络上每个可用 SMB 工作组旁边都会出现一个图标。




图 17-6. Nautilus 中的 SMB 工作组
双击工作组图标之一来查看哪个工作组内的计算机的列表。




图 17-7. Nautilus 中的 SMB 机器

如你在图 17-7 中所见,工作组内每个机器都有一个图标。双击某个图标来查看该机器上的 Samba 共享。如果
需要用户名和口令组合,你会被提示输入它们。

你也可以在「位置:」 栏内使用以下语法(把 user、password、servername、和 sharename 替换成相应
值)来指定用户名和口令的组合:

smb://user:password@servername/sharename/
后退                            起点                                             前进
配置 Samba 服务器



 17.4. 其它资料
对于这里没有涉及到的配置选项,请参阅以下资料。


 17.4.1. 安装了的文档
smb.conf 的说明书页(man)— 解释该如何配置 Samba 配置文件
smbd 的说明书页(man)—描述 Samba 守护进程的工作原理
/usr/share/doc/samba-<version-number>/docs/ — 包括在 samba 软件包中的 HTML 和文本帮助文件


 17.4.2. 有用的网站
http://www.samba.org — Samba 网页,包含许多关于邮件列表和 GUI 界面列表信息等的有用文档。

More Related Content

More from wensheng wei

你会柔软地想起这个校园
你会柔软地想起这个校园你会柔软地想起这个校园
你会柔软地想起这个校园
wensheng wei
 
几米语录(1)
几米语录(1)几米语录(1)
几米语录(1)
wensheng wei
 
Installation of Subversion on Ubuntu,...
Installation of Subversion on Ubuntu,...Installation of Subversion on Ubuntu,...
Installation of Subversion on Ubuntu,...
wensheng wei
 
高级PHP应用程序漏洞审核技术
高级PHP应用程序漏洞审核技术高级PHP应用程序漏洞审核技术
高级PHP应用程序漏洞审核技术
wensheng wei
 
存储过程编写经验和优化措施
存储过程编写经验和优化措施存储过程编写经验和优化措施
存储过程编写经验和优化措施
wensheng wei
 
CentOS5 apache2 mysql5 php5 Zend
CentOS5 apache2 mysql5 php5 ZendCentOS5 apache2 mysql5 php5 Zend
CentOS5 apache2 mysql5 php5 Zend
wensheng wei
 
Happiness is a Journey
Happiness is a JourneyHappiness is a Journey
Happiness is a Journey
wensheng wei
 
Java JNI 编程进阶
Java JNI 编程进阶     Java JNI 编程进阶
Java JNI 编程进阶
wensheng wei
 
Linux Shortcuts and Commands:
Linux Shortcuts and Commands:Linux Shortcuts and Commands:
Linux Shortcuts and Commands:
wensheng wei
 
Java正则表达式详解
Java正则表达式详解Java正则表达式详解
Java正则表达式详解
wensheng wei
 
Linux Security Quick Reference Guide
Linux Security Quick Reference GuideLinux Security Quick Reference Guide
Linux Security Quick Reference Guide
wensheng wei
 
Android模拟器SD Card映像文件使用方法
Android模拟器SD Card映像文件使用方法Android模拟器SD Card映像文件使用方法
Android模拟器SD Card映像文件使用方法
wensheng wei
 
如何硬盘安装ubuntu8.10
如何硬盘安装ubuntu8.10如何硬盘安装ubuntu8.10
如何硬盘安装ubuntu8.10
wensheng wei
 
数据库设计方法、规范与技巧
数据库设计方法、规范与技巧数据库设计方法、规范与技巧
数据库设计方法、规范与技巧
wensheng wei
 
揭秘全球最大网站Facebook背后的那些软件
揭秘全球最大网站Facebook背后的那些软件揭秘全球最大网站Facebook背后的那些软件
揭秘全球最大网站Facebook背后的那些软件
wensheng wei
 
mysql的字符串函数
mysql的字符串函数mysql的字符串函数
mysql的字符串函数
wensheng wei
 

More from wensheng wei (20)

你会柔软地想起这个校园
你会柔软地想起这个校园你会柔软地想起这个校园
你会柔软地想起这个校园
 
几米语录(1)
几米语录(1)几米语录(1)
几米语录(1)
 
我的简历
我的简历我的简历
我的简历
 
Installation of Subversion on Ubuntu,...
Installation of Subversion on Ubuntu,...Installation of Subversion on Ubuntu,...
Installation of Subversion on Ubuntu,...
 
高级PHP应用程序漏洞审核技术
高级PHP应用程序漏洞审核技术高级PHP应用程序漏洞审核技术
高级PHP应用程序漏洞审核技术
 
存储过程编写经验和优化措施
存储过程编写经验和优化措施存储过程编写经验和优化措施
存储过程编写经验和优化措施
 
CentOS5 apache2 mysql5 php5 Zend
CentOS5 apache2 mysql5 php5 ZendCentOS5 apache2 mysql5 php5 Zend
CentOS5 apache2 mysql5 php5 Zend
 
Happiness is a Journey
Happiness is a JourneyHappiness is a Journey
Happiness is a Journey
 
Java JNI 编程进阶
Java JNI 编程进阶     Java JNI 编程进阶
Java JNI 编程进阶
 
Linux Shortcuts and Commands:
Linux Shortcuts and Commands:Linux Shortcuts and Commands:
Linux Shortcuts and Commands:
 
Java正则表达式详解
Java正则表达式详解Java正则表达式详解
Java正则表达式详解
 
Linux Security Quick Reference Guide
Linux Security Quick Reference GuideLinux Security Quick Reference Guide
Linux Security Quick Reference Guide
 
issue35 zh-CN
issue35 zh-CNissue35 zh-CN
issue35 zh-CN
 
Android模拟器SD Card映像文件使用方法
Android模拟器SD Card映像文件使用方法Android模拟器SD Card映像文件使用方法
Android模拟器SD Card映像文件使用方法
 
Subversion FAQ
Subversion FAQSubversion FAQ
Subversion FAQ
 
如何硬盘安装ubuntu8.10
如何硬盘安装ubuntu8.10如何硬盘安装ubuntu8.10
如何硬盘安装ubuntu8.10
 
ubunturef
ubunturefubunturef
ubunturef
 
数据库设计方法、规范与技巧
数据库设计方法、规范与技巧数据库设计方法、规范与技巧
数据库设计方法、规范与技巧
 
揭秘全球最大网站Facebook背后的那些软件
揭秘全球最大网站Facebook背后的那些软件揭秘全球最大网站Facebook背后的那些软件
揭秘全球最大网站Facebook背后的那些软件
 
mysql的字符串函数
mysql的字符串函数mysql的字符串函数
mysql的字符串函数
 

Red Hat Linux 9: Red Hat Linux 定制指南

  • 1. Red Hat Linux 9: Red Hat Linux 定制指南 Red Hat Linux 9: Red Hat Linux 定制 指南 Red Hat Linux 9: Red Hat Linux 定制指南 后退 17. Samba 前进 17.2. 配置 Samba 服务器 默认的配置文件(/etc/samba/smb.conf)允许用户作为 Samba 共享来查看他们的 Red Hat Linux 主目录。 它还把为 Red Hat Linux 配置的打印机作为 Samba 共享打印机来共享。换一句话说,你可以在你的 Red Hat Linux 系统上连接打印机,然后从网络上的 Windows 机器来打印。 17.2.1. 图形化配置 要使用图形化界面来配置 Samba,使用 Samba 服务器配置工具。要使用命令行来配置,请跳到第 17.2.2 节。 Samba 服务器配置工具 是用来管理 Samba 共享、用户、以及基本服务器设置的图形化界面。它修改 /etc/samba/ 目录中的配置文件。没有使用该程序进行的改变都会被保留。 要使用该程序,你必须在运行 X 窗口系统,具备根特权,并且安装了 redhat-config-samba RPM 软件包。要 从桌面启动 Samba 服务器配置工具,点击面板上的「主菜单」 => 「系统设置」 => 「服务器设置」 => 「Samba 服务器」 ,或在 shell 提示(如 XTerm 或 GNOME 终端)下键入 redhat-config-samba 命 令。 图 17-1. Samba 服务器配置工具 注记 Samba 服务器配置工具 不显示允许用户在 Samba 服务器上查看他们自己的主目录的共 享打印机或默认文件段。 17.2.1.1. 配置服务器设置 配置 Samba 服务器的第一步是配置服务器的基本设置和几个安全选项。启动了应用程序后,选择 「首选项」 => 「服务器设置」。「基本」 活页标签如 图 17-2 所示。 图 17-2. 配置基本服务器设置 在「基本」 标签上,指定计算机应在的工作组以及对计算机的简短描述。它们与 smb.conf 中的 workgroup 和 server string 选项相对应。 图 17-3. 配置安全服务器设置
  • 2. 「安全」 标签包含以下选项: 「验证模式」 — 它和 security 选项相对应。选择以下验证模式中的一种。 「域」 — Samba 服务器依赖于 Windows NT 主要或备份域控制器来校验用户。服务器把用户名和口令传递给 控制器,然后等待它们被返回。在「验证服务器」 字段中指定主要或备份域控制器的 NetBIOS 名称。 「加密口令」选项如果被选,它必须被设置为「是」 。 「服务器」 — Samba 服务器试图通过把用户名和口令组合传递给另一个 Samba 服务器来校验它们。如果它 无法校验,服务器会试图使用用户验证模式来校验它们。在「验证服务器」 字段中指定另一个 Samba 服务器的 NetBIOS 名称。 「共享」 — Samba 用户不必为每个 Samba 服务器都输入用户名和口令组合。它们在试图连接 Samba 服务 器上的指定共享时才会被提示输入用户名和口令。 「用户」 — (默认)Samba 用户必须为每个 Samba 服务器提供一个有效的用户名和口令。如果你想让 「Windows 用户名」选项生效,选择这个选项。详情请参阅第 17.2.1.2 节。 「加密口令」 — (默认值为「是」 )如果用户从 Windows 98、带有服务包的 Windows NT 4.0、或其它最 近版本的 Microsoft Windows 中连接,该选项必须被启用。口令在服务器和客户间使用加密格式而非可被截取 的纯文本格式传输。它和 encrypted passwords 选项相对应。关于加密 Samba 口令的详情,请参阅第 17.2.3 节。 「来宾账号」 — 当用户或来宾用户要登录入 Samba 服务器时,他们必须被映射到服务器上的有效用户。选择 系统上的现存用户名之一作为来宾 Samba 账号。当用户使用来宾账号登录入 Samba 服务器,他们拥有和这个 用户相同的特权。该选项和 guest account 选项相对应。 点击了「确定」 后,所做改变会被写入配置文件,守护进程会被重新启动;因此改变会立即生效。 17.2.1.2. 管理 Samba 用户 Samba 服务器配置工具 要求在添加 Samba 用户之前,在充当 Samba 服务器的 Red Hat Linux 系统上必须 存在一个活跃的现存用户账号。Samba 用户和这个现存的 Red Hat Linux 用户账号相关联。 图 17-4. 管理 Samba 用户 要添加 Samba 用户,选择「首选项」 => 「Samba 用户」,然后点击「添加用户」 按钮。在 「创建新 Samba 用户」窗口中的本地系统上的现存用户列表中选择「Unix 用户名」 。 如果用户在 Windows 机器上有一个不同的用户名,并将从 Windows 机器上登录入 Samba 服务器,请在 「Windows 用户名」 字段中指定 Windows 用户名。「服务器设置」首选项的「安全」活页上的「验证模 式」 必须被设置为「用户」 才能是这个选项生效。 你还需要为 Samba 用户配置一个「Samba 口令」 ,并再键入一次来确认这个口令。即便你选择了为 Samba 使用加密口令,仍建议你为所有用户设置的 Samba 口令不同于他们的 Red Hat Linux 系统口令。 要编辑某个现存用户,从列表中选择它,然后点击「编辑用户」 。要删除某个现存的 Samba 用户,选择这个用 户,然后点击「删除用户」 按钮。删除 Samba 用户不会删除相关的 Red Hat Linux 用户账号。 点击了「确定」 按钮后,用户就会被立即修改。
  • 3. 17.2.1.3. 添加共享 图 17-5. 添加共享 要添加共享,点击「添加」按钮。「基本」 活页标签配置以下选项: 「目录」 — 通过 Samba 共享的目录。这个目录必须存在。 「描述」 — 对共享的简短描述。 「基本权限」 — 用户应该只能够读取共享目录中的文件还是应该能够读写共享目录中的文件。 在「访问」 活页标签上,选择是否要只允许指定的用户来访问共享还是允许所有 Samba 用户来访问共享。如果 你选择了要允许指定用户访问,从可用的 Samba 用户列表中选择这些用户。 点击了「确定」 按钮后,共享就会立即被添加。 17.2.2. 命令行配置 Samba 使用 /etc/samba/smb.conf 作为它的配置文件。如果你改变了这个配置文件,这个改变直到你使用 service smb restart 命令重启 Samba 守护进程后才会生效。 要指定 Windows 工作组和对它的简短描述,编辑 smb.conf 文件中的以下几行: workgroup = WORKGROUPNAME server string = BRIEF COMMENT ABOUT SERVER 把 WORKGROUPNAME 换成你的机器所属的 Windows 工作组名。BRIEF COMMENT ABOUT SERVER 是可 选的,它被用作关于 Samba 系统的 Windows 注释。 要在你的 Linux 系统上创建 Samba 共享目录,在 smb.conf 文件中添加以下几行(根据你和你的系统需要修 改了该文件之后): [sharename] comment = Insert a comment here path = /home/share/ valid users = tfox carole public = no writable = yes printable = no create mask = 0765 上面的例子允许用户 tfox 和 carole 从 Samba 客户中读写 Samba 服务器上的目录 /home/share。
  • 4. 17.2.3. 加密口令 在 Red Hat Linux 9 中,加密口令被默认启用,因为它更安全。如果加密口令没有被使用,纯文本口令就会被使 用,它能够被别人使用 网络分组嗅探器来截取。建议你使用加密口令。 Microsoft SMB 协议最初使用纯文本口令。然而,带有服务包 3 或更高的 Windows NT 4.0、Windows 98、Windows 2000、Windows ME、以及 Windows XP 要求加密的 Samba 口令。要在 Red Hat Linux 系 统和运行以上 Windows 操作系统的系统间使用 Samba,你可以编辑 Windows 注册器来使用纯文本口令过配 置你的 Linux 系统的 Samba 来使用加密口令。如果你选择要修改你的注册器,你必须为你的全部 Windows 机 器这么做 — 这很冒险,有可能导致进一步的冲突。为了更高的安全性,推荐你使用加密口令。 要在你的 Red Hat Linux 系统上配置 Samba 使用加密口令,遵循以下步骤: 为 Samba 创建一个单独的口令文件。要根据你的现存 /etc/passwd 文件来创建,在 shell 提示下键入以下命 令: cat /etc/passwd | mksmbpasswd.sh > /etc/samba/smbpasswd 如果系统使用 NIS,键入以下命令: ypcat passwd | mksmbpasswd.sh > /etc/samba/smbpasswd mksmbpasswd.sh 脚本和 samba 软件包一起被安装在你的 /usr/bin 目录上。 改变 Samba 口令文件的权限许可,因此只有根用户才有读写权限: chmod 600 /etc/samba/smbpasswd 这个脚本不会把用户口令复制到新文件,Samba 用户账号在没有设置口令之前不会被激活。为了更高的安全性, 建议你把用户的 Samba 口令设置为不同于用户的 Red Hat Linux 口令的口令。要设置每个 Samba 用户的口 令,使用以下命令(把 username 替换为每个用户的用户名): smbpasswd username 加密口令必须在 Samba 配置文件中被启用。在 smb.conf 文件中,请确定以下行没有被注释掉: encrypt passwords = yes smb passwd file = /etc/samba/smbpasswd 在 shell 提示下键入 service smb restart 来确定 smb 服务被启动。 如果你想让 smb 服务被自动启动,使用 ntsysv、chkconfig、或 服务配置工具来在运行时间启用它。详情请 参阅第 14 章 。 窍门 阅读 /usr/share/doc/samba-<version>/docs/htmldocs/ENCRYPTION.html 来进一 步了解有关加密口令的信息。(把 <version> 替换为你安装了的 Samba 版本号码)。 当使用了 passwd 命令后,pam_smbpass PAM 模块能够被用来同步用户的 Samba 口令和他们的系统口令。 如果用户启用了 passwd 命令,他用来登录到 Red Hat Linux 系统的口令以及他要连接 Samba 共享所必须提 供的口令就会被改变。 要启动这个功能,把以下行添加到 /etc/pam.d/system-auth 的启动 pam_cracklib.so 之下:
  • 5. password required /lib/security/pam_smbpass.so nullok use_authtok try_first_pass 17.2.4. 启动和停止服务器 在通过 Samba 共享目录的服务器上必须运行 smb 服务。 使用以下命令来查看 Samba 守护进程的状态: /sbin/service smb status 使用以下命令来启动守护进程: /sbin/service smb start 使用以下命令来停止守护进程: /sbin/service smb stop 要在引导时启动 smb 服务,使用以下命令: /sbin/chkconfig --level 345 smb on 你还可以使用 chkconfig、ntsysv 或 服务配置工具来配置要在引导时启动的服务。详情请参阅第 14 章 。 后退 起点 前进 Samba 上级 连接 Samba 共享 17.3. 连接 Samba 共享 要从 Microsoft Windows 机器上连接 Linux Samba 共享,使用 Network Neighborhood 或图形化文件 管理器。 要从 Linux 系统中连接 Samba 共享,从 shell 提示下,键入以下命令: smbclient //hostname/sharename -U username 把 hostname 替换为你想连接的 Samba 服务器的主机名或 IP 地址,把 sharename 替换为你想浏览的共享目 录的名称,把 username 替换成系统的 Samba 用户名。输入正确的口令或按 [Enter] 键(若不要求该用户的 口令)。 如果你看到了 smb:> 提示,你就已成功地登录了。登录后,键入 help 来获得一个命令列表。如果你想浏览你 的主目录的内容,把 sharename 替换成你的用户名。如果每有使用 -U 选项,当前用户的用户名就会被传递给 Samba。 要退出 smbclient,在 smb:> 提示下键入 exit。 你还可以使用 Nautilus 来查看你的网络上的可用 Samba 共享。选择面板上的「主菜单」 => 「网络服务 器」 来查看你的网络上的 Samba 工作组的列表。你还可以在 Nautilus 的「位置:」 栏里键入 smb: 来查看 工作组。 如图 17-6 所示,在网络上每个可用 SMB 工作组旁边都会出现一个图标。 图 17-6. Nautilus 中的 SMB 工作组
  • 6. 双击工作组图标之一来查看哪个工作组内的计算机的列表。 图 17-7. Nautilus 中的 SMB 机器 如你在图 17-7 中所见,工作组内每个机器都有一个图标。双击某个图标来查看该机器上的 Samba 共享。如果 需要用户名和口令组合,你会被提示输入它们。 你也可以在「位置:」 栏内使用以下语法(把 user、password、servername、和 sharename 替换成相应 值)来指定用户名和口令的组合: smb://user:password@servername/sharename/ 后退 起点 前进 配置 Samba 服务器 17.4. 其它资料 对于这里没有涉及到的配置选项,请参阅以下资料。 17.4.1. 安装了的文档 smb.conf 的说明书页(man)— 解释该如何配置 Samba 配置文件 smbd 的说明书页(man)—描述 Samba 守护进程的工作原理 /usr/share/doc/samba-<version-number>/docs/ — 包括在 samba 软件包中的 HTML 和文本帮助文件 17.4.2. 有用的网站 http://www.samba.org — Samba 网页,包含许多关于邮件列表和 GUI 界面列表信息等的有用文档。