Chinaunix首页 | 论坛 | 博客
  • 博客访问: 374904
  • 博文数量: 73
  • 博客积分: 2970
  • 博客等级: 少校
  • 技术积分: 1775
  • 用 户 组: 普通用户
  • 注册时间: 2009-12-15 09:34
文章分类

全部博文(73)

文章存档

2011年(69)

2010年(4)

我的朋友

分类: LINUX

2011-04-01 11:59:55

某一网吧需要搭建一台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配置文件提取到 环境下修改成中文,然后再覆盖先前的配置文件。
将Linux中的文件提取到 下的方法很多,这里可以将smb.conf复制到FTP目录下,然后在Windows环境里使用ftp 即可。


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

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

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

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

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

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

阅读(1245) | 评论(0) | 转发(1) |
给主人留下些什么吧!~~