您的位置:首页 > 编程语言 > PHP开发

网吧Samba服务器和vsftpd服务器综合应用案例

2010-04-14 20:40 429 查看
实验背景:

某一网吧需要搭建一台Samba服务器,具体要求如下:
1、 Samba服务器充当网吧的文件服务器,里面要求有电影和游戏并提供给所有用户使用,不存在私有用户共享目录。
2、 要求所有普通用户只能查看和使用Samba服务器中的文件,不能修改、删除文件。
3、 要求Samba服务器文件的更新过程是通过一台vsftp服务器进行的。
4、 要求Samba服务器上创建的主文件夹为中文,比如说【游戏世界】、【音乐天地】等。
5、 要求通过FTP服务器传上去的文件目录,比如说【魔兽世界】、【跑跑卡丁车】显示为中文。

实验步骤:

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




编辑Samba的主配置文件smb.conf




修改security = share ,这一选项是确定Samba服务器对客户机采取何种用户认证方式,默认是user认证方式,也就是必须通过用户名和密码验证才能进入相应的目录,现在要求所有用户不需要输入用户名和密码就可以访问Samba服务器上的共享资源,因此选用参数share,既不需要输入用户名和密码就可以进入Samba服务器。




注释掉[homes]下的配置行,禁止所有用户通过Samba用户账户登录到Samba服务器。因为网吧的Samba服务器是不需要为每个用户建立共享目录的,只需要有一个公共的共享目录即可。




添加公共目录[movies]和[games],要求任何用户都可以访问公共目录,并且只具有读取的权利,
path = /home/wangba/movies 设置公共目录对应的Linux系统目录。此目录搭建vsftp服务器时创建。
public = yes 表示该共享目录对于所有Samba用户是可见的。
only guest = yes 表示所有用户在使用该目录时的用户身份都是guest,即Linux系统用户nobody。
guest ok = yes 表示允许所有匿名用户登录。
writable = no 表示该共享目录对于所有用户不可写。




二、 Vsftp服务器的配置过程
首先挂载第一张光盘并安装vsftpd服务器的RPM安装包。




修改vsftpd的主配置文件vsftpd.conf




只需要将选项anonymous_enable设置为NO,并且添加chroot_local_user= YES即可,也就是说不允许匿名用户访问FTP服务器,这样可以增加其安全性,并将所有登录用户都锁定到自己的宿主目录中。其它的默认即可。




在Vsftpd服务器上新建一个用户wangba,并设置相应的密码,用户登录FTP服务器。




在用户宿主目录wangba中添加文件夹movies和games两个目录,并且修改其属主为wangba用户。并查看其权限,只允许给所有用户的权限为读和执行权限。




设置完成之后,重启vsftpd和samba服务,使smb.conf和vsftpd.conf的修改生效。




三、 测试用户wangba是否能够访问vsftp服务器。




测试成功之后,可以在games目录中创建所需要的目录,比如说【魔兽世界】、【热血江湖】等等。




所有用户可以使用UNC路径访问Samba服务器,可是在games中显示的却是乱码,这是Samba服务器和FTP支持的编码不同造成的。




四、 解决Samba服务器和FTP中文同步问题
打开Samba服务器的主配置文件smb.conf,并且在全局目录[global]中添加dos charset = gb2312和unix charset = gb2312两条记录,然后重启启动Samba服务,即可生效。




然后再次使用UNC路径访问Samba服务器,可以看出刚才显示的中文乱码解决了。




五、 解决Samba服务器公共目录的中文问题
众所周知,在Linux的字符界面下是不能够输入中文的,输入了只会显示乱码,那么如何将[movies]和[games]这两个目录显示中文呢,这就需要将smb.conf配置文件提取到Windows环境下修改成中文,然后再覆盖先前的配置文件。
将Linux中的文件提取到Windows下的方法很多,这里可以将smb.conf复制到FTP目录下,然后在Windows环境里使用ftp下载即可。







复制到Windows环境下之后,可以使用写字板或者技术本打开文件smb.conf,并修改[movies]为[影视频道],[games]为[游戏天地]。




修改完成只会,然后再上传到FTP服务器上,在Linux下通过cp命令覆盖到默认目录下即可




可以查看smb.conf目录,可以看到所显示的为乱码。




修改完成之后,重启启动smb服务。




在windows环境下通过ftp访问共享目录显示为英文字幕。而通过UNC路径访问可以显示为中文




测试使用wangba用户登录到FTP服务器,然后创建一个文件,然后使用UNC路径访问,可以看到测试成功。



本文出自 “【小諾的網路技術課堂】” 博客,请务必保留此出处http://dreamfire.blog.51cto.com/418026/164089本文出自 51CTO.COM技术博客
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  网吧 服务器 应用