Quick HOWTO : Ch12 : Samba Security and Troubleshooting/zh
介绍
为你的办公室或家里配置Samba 协议会带来很多的好处.通过鼓励用户把文件存储在一个文件服务器上,在某些情况下会 使你的数据备份,软件安装和维护工作变得轻松起来.
令人遗憾的是,Samba的初始配置有些棘手.要按照正确的顺序执行许多短小的操作,如果有一个地方出了错,都会带来严重的错误.本章讲的是帮助你从那些你不能避免的错误中恢复.
测试 smb.conf文件
Samba 有一个叫testparm的测试工具,它会对smb.conf文件中的错误进行警告.如果你用SWAT去编辑这个文件,通常你会成功通过测试,
如下所示:
[root@bigboy tmp]# testparm -s Load smb config files from /etc/samba/smb.conf Processing section "[homes]" Processing section "[printers]" Loaded services file OK. ... ... [root@bigboy tmp]#
测试成功只是意味着Samba会加载这个配置文件.Samba还有可能在别的地方出问题.
注意: 你也可以用testparm命令来测试别的文件(默认是default /etc/samba/smb.conf).只要简单的把文件名作为第一个参数,格式如下:
[root@bigboy tmp]# testparm -s filename
Samba 和防火墙软件
你的安了Windows系统的个人电脑和Samba 服务器上的防火墙软件都会是Samba失效.以下为这两种比较流行的防火墙数据包iptables 和ZoneAlarm提供解决这个问题的方案.
Linux iptables(ip表)
Fedora在安装过程中默认配置了ip表防火墙数据包.你有两个选择.你要在保证网络安全的前提下选择它被禁用,或者,你作如下配置:允许微软的NetBIOS协议(UDP 端口137 和138 TCP端口 139)还有不使用NetBIOS协议时通过TCP 445端口实现SMB文件共享.以下是一段脚本的摘要:
#!/bin/bash SAMBA_SERVER="192.168.1.100 " NETWORK="192.168.1.0/24" # Local area network BROADCAST="192.168.255.255" # Local area network Broadcast Address iptables -A INPUT -i lo -j ACCEPT iptables -A OUTPUT -o lo -j ACCEPT iptables -A INPUT -p udp -s $NETWORK -d $SAMBA_SERVER \ -m multiport --dports 137,138 -j ACCEPT iptables -A INPUT -p tcp -s $NETWORK -d $SAMBA_SERVER -m multiport \ --dports 139,445 -j ACCEPT iptables -A INPUT -p udp -s $NETWORK -d $BROADCAST --dport 137 \ -j ACCEPT iptables -A INPUT -p udp -d $SAMBA_SERVER -m multiport \ --dports 137,138 -j DROP iptables -A INPUT -p tcp -d $SAMBA_SERVER -m multiport \ --dports 139,445 -j DROP iptables -A OUTPUT -s $SAMBA_SERVER -d $NETWORK -m state --state \ ESTABLISHED,RELATED -j ACCEPT
要了解更多的信息,请参考14章,"使用iptable的防火墙"
基于Windows 的ZoneAlarm
默认安装情况下时ZoneAlarm假定你的电脑直接连接到互联网.这意味着这个软件会将所以尝试连接你的PC的内网连接拒绝.而Samba使用的通讯线路正是NetBIOS所使用的,因此会有冲突.
最简单的解决方法是把ZoneAlarm配置一下,让它认为你的内网是也一个可靠的网络.要在防火墙中对你的内网的设置作些改动;通常可以这样修改IP192.168.x.x/255.255.255.0 .将这个网络设置为可信网络,而不是一个外网,这样ZoneAlarm就不会干扰Samba的工作了.
Windows XP 自带的防火墙
你需要将一些防火墙的功能禁用.按照以下的步骤:
1.打开控制面板.
2.双击网络连接.
3.右键点击你的LAN连接(局域网)图表,然后选择属性.
4.点击高级标签然后点击Windows防火墙设置按钮.
5.点击checkbox 关闭互联网连接防火墙.你也许还开着防火墙,但是允许windows文件共享.这个功能可以通过点击windows防火墙的其他标签,然后选择共享打印机和文件选项.
当你把Samba配置好后,你也许想要同时打开防火墙来优化你的安全,时刻记得怎样合理的将它配置好,让Samba服务器能够正常的工作.