您的位置:首页 > 运维架构 > Linux

Samba服务器安装与应用

2009-08-11 18:58 113 查看
准备环境:两台linux系统(一台用于做Samba服务器,一台用于客户机),一台XP系统(用做客户机)

Samba服务器安装:
RHEL4系统中默认已经安装了Samba服务器和客户机的所有软件包,在使用前请确认这些软件包已经在系统中存在。Smaba服务器和客户机的RPM安装包都保存在RHEL4的2张安装光盘中,如果需要可以使用rpm命令进行安装或重新安装。



还有一个必要的软件包并没有安装(其实一般情况默认是安装了的哦)



Samba各软件包程序介绍:
Samba-common软件包中提供了Samba服务器和客户机中都必须使用的公共文件,因此该软件包必须在Samba服务器和客户机软件包之前安装。
Samba软件包中包括了Samba服务器程序的所有文件
Samba-client软件包中提供了Samba客户机的所有文件
除了以上3个Samba项目中包括的软件包以外,RHEL4中还提供了中为system-config-samba的软件包,该软件包中提供了Red Hat公司专门为Samba服务器管理编写的图形界面的管理程序,该程序是Red Hat系统管理工具中的一部分。
Samba服务器的主配置文件是smb.conf,保存在目录/etc/samba中



以上文件中包含了大量的注释和样例
文件中的注释行以“#”开始,是对配置内容的文字说明
文件中的样例行以“;”开始,是对配置内容的举例,用户可以参考样例进行文件的设置
smb.conf文件中的注释行和样例行对于Samba服务器配置是无效的,这些行的功能为管理者提供帮助。
smb.conf配置文件的详细配置说明可以使用man命令查阅该文件的手册页。
示 man smb.conf
在对smb.conf文件进行查阅时,可以使用grep命令去除注释行和样例行的内容,这样可以更加清晰的查看配置文件的内容,以下为去除“#”、“;”开头的内容进行查阅:
示grep –v “^#” /etc/samba/smb.conf |grep –v “^;”

建立Samba用户帐号:
Samba服务器不使用Linux系统的用户帐号进行用户认证,而是维护自己的用户帐号文件。Samba服务器的用户帐号文件保存在/etc/samba/目录中,文件名是smbpasswd,初始状态smbpasswd文件不存在,在第一次使用smbpasswd命令创建Samba用户时自动建立。





示smbpasswd –h显示smbpasswd的命令格式帮助
示smbpasswd –a添加指定用户帐号
示smbpasswd –d禁用指定的用户帐号
示smbpasswd –e启用指定的用户帐号
示smbpasswd –x删除指定的用户帐号
不使用任何命令选项时将更改用户口令smbpasswd +用户
注:
在创建Samba用户帐号前请保证已经创建了同名的本地系统帐号,否则即使创建了Samba帐号也是不可用的,因为Samba用户是使用同名的系统帐号身份访问Linux系统资源(文件和目录)的
Samba用户帐号使用独立的smbpasswd文件保存用户的帐号和加密口令信息
Samba用户帐号的口令和同名系统用户的口令是独立的,可以相同也可以不同,需要分别进行维护和更改
当Samba用户不需要登录Linux系统时,同名的系统帐户可不设置口令(若不设置口令则不能登录到Linux系统)

添加公共目录设置
在Samba服务器默认设置中没有公共目录的设置,需要手动进行添加
注:对于公共目录有如下要求
任何Samba的用户都可以访问公共目录并对目录具有读写权限
任何用户在公共目录中都以Linux中nobody 系统用户的身份出现,即在公共目录中任何用户建立的文件都属于nobody系统用户
在对smb.conf进行设置之前要先建立公共目录在 Linux系统中对应的目录/home/public,并设置该的属主和属组为nobody。



在smb.conf文件中添加名为[public]的共享资源,并设置如下内容:



在[public]共享目录中,各设置项的含义如下:
Path用于设置共享目录对应的Linux系统目录,当前的设置为/home/public{即我之前创建的}
Public设置为yes表示该共享目录对于所有Samba用户是可见的
Only guest设置为yes表示所有用户在使用该共享目录时的用户身份都是guest,即Linux系统用户nobody
Writeable设置为no表示该共享目录对于用户不可写

对smb.conf文件配置的测试:
在对smb.conf文件完成所有的配置以后,可以使用testparm命令对该配置文件进行测试,testparm命令是Samba服务器软件包中提供的配置文件测试工具,可以对smb.conf配置文件的语法进行检测,并显示当前配置的清单。



系统提示你按enter键显示相关



启动Samba服务器
Samba服务器的启动脚本位于目录/etc/init.d/目录中,脚本文件名称是 smb,并启动smb服务



在客户端进行查看共享:



使用test001用户登录到Samba服务器指定共享目录中:



将smb文件上载至文件服务器:



注:请保证你所要上传的文件是在你登录至服务器前的当前目录,否则上载将不成功。
同样可以在Windows系统中登录samba服务器:







在服务器上查看当前连接状态:



在linux客户端使用smbmount和mount进行共享目录的挂载:





目标:Samba SEB工具管理(SWAT)
环境介绍:基于以上的环境,呵呵!
Swat软件包位于REHL4系统的第4安装光盘中,系统默认没安装,需要使用rpm命令手动进行安装:



Swat是受xinetd超级服务器管理的服务程序,在安装的默认状态下是禁用的,因此需要使用chkconfig命令启用swat服务,并重启xinetd服务程序:



使用swat配置samba服务:
注:swat默认使用901端口号
Samba服务器主机中swat的配置:
Swat服务的配置文件位于/etc/xinetd.d/目录中,文件名为swat在该配置文件中默认设置了only_from的值为127.0.0.1,即只有samba服务器主机中可以访问该配置界面:



用户如果需要在其他主机中访问swat服务,需要将only_from设置为允许访问主机的IP地址
注:我这里允许访问的主机IP为:172.16.108.252
示:vi /etc/xinetd.d/swat



修改完/etc/xinetd.d/swat配置文件后需重启xinetd服务后才生效:



在客户端测试:





创建共享目录:





配置共享目录所在路径:



在这里创建的共享目录无需重启服务便可生效,可在samba服务器进行查看:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息