假定:
系统:Fedora 7并开启强制的SeLinux,系统处于局域网中,IP地址是192.168.1.100,服务器IP192.168.1.1,需要让同一网内的令一台 Windows机器192.168.1.102访问Fedora中的资源。这里只为共享,不涉及使用Samba做域控制器的内容。
现在开始配置我们的Samba服务器:
1)安装Samba,本文使用Samba的版本文Fedora 7资源库上的Samba version 3.0.25b-2.fc7
2)Samba的配置文件在/etc/samba/smb.conf,建议先备份该文件:
sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.bak
使用vim编辑/etc/samba/smb.conf文件或者新建一smb.conf配置文件,内容如下
全局设置
网络相关选项
#这是工作组名,最好设置为和需要共享数据的机器一样的工作组
workgroup = WORKGROUP
#服务器描述,写下你觉得最合适的描述,不必和这个一样的...这里的%v变量表示Samba版本号,见上。
server string = Samba Server Version %v
#netbios名,这个将在网上邻居中被显示为远程服务器的名称
netbios name = KIMIA_SAMBA
#interfaces的值中的网卡将为Samba所用
interfaces = 192.168.1.100
#你允许哪台机子访问你的Samba,就将他们的地址放在这里
hosts allow = 127. 192.168.1.
日志相关选项
#登录进此服务器的每台机器都会有一个日志文件
log file = /var/log/samba/log.%m
#日志文件的大小为50MB
max log size = 50
独立服务器选项
#这里允许使用user或者share或者server,
#其中user:要求每个用户都在GNU/Linux服务器上拥有一个账号,
#share:让所有人是用同样的共享资源,
#server:使用远程smb服务器进行身份验证(依赖:password server) ,
#后两者是官方不推荐使用的,所以这里我们使用user
security = user
passdb backend = tdbsam
打印选项
load printers = yes
cups options = raw
共享定义
#以下是用户$HOME目录的共享设置,如果需要你可以自己将前面的分号注释去掉
;
; comment = Home Directories
; browseable = yes
; writable = no
; valid users = user_name
; valid users = MYDOMAIN\%S
# 一个共享目录,但是除了在wheel组中的用户之外它是只读的
comment = Public Stuff
path = /home/kimia/Samba
browseable = yes
public = yes
guest ok = yes
writable = no
printable = no
write list = +wheel
3)添加Samba用户,使用命令
sudo smbpasswd -a user_name
然后根据系统提示输入密码。
4)在防火墙中开启samba端口
sudo system-config-securitylevel
5)在SeLinux中为你的共享作相应配置,如以上我共享了/home/kimia/Samba目录,在sudo system-config-selinux中找到Samba,并将“Allow Samba to write files in directories labeled public_content_rw_t”选中。(如果需要在/home以外的地方共享目录则还需将"Allow Samba to share and file/directory read only"和/或"Allow Samba to share and file/directory read/write"选中,这些就看需要了。)然后为你需要共享并开放写权限的目录更改标签
程序代码:
sudo chcon -R -t public_content_rw_t /home/kimia/Samba
总结一下:
FC5和F7d在samba配置上面有些微小的区别,但是整体上面还是一样的。