【赛迪网-IT技术报道】服务 信息块SMB(Server Message Block)协议是一个高层协议,提供了在网络上的不同计算机之间共享文件、打印机和不同通信资料的手段。SMB使用NetBIOS API实现面向连接的协议,该协议为Windows客户程序和服务提供了一个通过虚电路方式进行通信的机制,是SAMBA的核心。安装了SAMBA后,就 可以直接方便地在Unix和Windows之间共享资源,免去了从前必须使用FTP的麻烦。
SAMBA的核心是两个守护进程smbd和nmbd程序,服务器启动到停止期间持续运行。smbd监听139TCP端口;nmbd监听137和138UDP端口。
不可忽视的安全配置
尽管SAMBA使我们在Windows和Unix的局域网内可以共享文件,使 Unix系统就像一台网络PC或者Windows PC,抑或LAN内别的Windows计算机一样“温顺”好用,提供的服务功能强,操作简单;并且使Unix系统存取Windows硬盘,直接mount Windows目录的使用更容易,就像使用本地文件一样方便。但是,如果我们对SAMBA的配置不合理、不科学的话,那么系统的安全就无从谈起,黑客如入 无人境地。
1.SAMBA的安全等级
SAMBA有四种安全等级,可以使用security参数进行指定。分别是:
share:用户不要账号及密码即可登入SAMBA服务器。
user:由提供服务的SAMBA服务器负责检查账户及密码(是SAMBA默认的安全等级)。
server:检查账户及密码的工作指定由另一台Windows NT/2000或SAMBA服务器负责。
domain:指定Windows NT/2000域控制服务器来验证用户的账户及密码。
2.安全全局参数
SAMBA的安全在操作系统高度安全的保障下,其自身的安全一般情况下主要依赖于smb.conf文件的正确配置与否。表1为smb.conf文件中常用的安全全局参数。
表 1
3.SAMBA的权限和文件属主
SAMBA权限设置和文件属性的正确设置是保障安全的前提。为了安全起见,设置 SAMBA密码文件和目录权限为root,去掉smbpasswd文件中一些无shell的账号,SAMBA属性应设为500,smbpasswd属性应 设为600。我们可以进行如下操作,查看文件和进行相关的设定:
(1)检查权限和文件属性
//检查SAMBA文件
[root@ora9 root]# ll -d /etc/samba
drwxr—xr—x 2 root root 4096 Sep 16 2004 /etc/samba
//检查MSBPASSWD文件
[root@ora9 root]# ll /etc/samba/smbpasswd
—rw——- 1 root root 105 Sep 16 2004 /etc/samba/smbpasswd
(2)检查配置文件的正确性
输入如下命令将显示用户的配置和所有的默认配置:
[root@ora9 root]# testparm |