开发者社区> 科技小先锋> 正文

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

简介:
+关注继续查看
网吧Samba服务器和vsftpd服务器综合应用案例
 
实验背景:
 
某一网吧需要搭建一台Samba服务器,具体要求如下:
1、 Samba服务器充当网吧的文件服务器,里面要求有电影和游戏并提供给所有用户使用,不存在私有用户共享目录。
2、 要求所有普通用户只能查看和使用Samba服务器中的文件,不能修改、删除文件。
3、 要求Samba服务器文件的更新过程是通过一台vsftp服务器进行的。
4、 要求Samba服务器上创建的主文件夹为中文,比如说【游戏世界】、【音乐天地】等。
5、 要求通过FTP服务器传上去的文件目录,比如说【魔兽世界】、【跑跑卡丁车】显示为中文。
 
实验步骤:
 
一、 Samba服务器的安装与配置过程
RHEL4系统默认安装了Samba服务器和客户机的所有软件包,在使用之前请确认这些软件包已经在系统中存在。Samba服务器和客户机的RPM安装包都保持在RHEL4的第2张安装光盘中,如果需要可以使用rpm命令进行安装或重新安装。
clip_image002
 
编辑Samba的主配置文件smb.conf
clip_image004
 
修改security = share ,这一选项是确定Samba服务器对客户机采取何种用户认证方式,默认是user认证方式,也就是必须通过用户名和密码验证才能进入相应的目录,现在要求所有用户不需要输入用户名和密码就可以访问Samba服务器上的共享资源,因此选用参数share,既不需要输入用户名和密码就可以进入Samba服务器。
clip_image006
 
注释掉[homes]下的配置行,禁止所有用户通过Samba用户账户登录到Samba服务器。因为网吧的Samba服务器是不需要为每个用户建立共享目录的,只需要有一个公共的共享目录即可。
clip_image008
 
添加公共目录[movies]和[games],要求任何用户都可以访问公共目录,并且只具有读取的权利,
path = /home/wangba/movies 设置公共目录对应的Linux系统目录。此目录搭建vsftp服务器时创建。
public = yes 表示该共享目录对于所有Samba用户是可见的。
only guest = yes 表示所有用户在使用该目录时的用户身份都是guest,即Linux系统用户nobody。
guest ok = yes 表示允许所有匿名用户登录。
writable = no 表示该共享目录对于所有用户可写。
clip_image010
 
二、 Vsftp服务器的配置过程
首先挂载第一张光盘并安装vsftpd服务器的RPM安装包。
clip_image012
 
修改vsftpd的主配置文件vsftpd.conf
clip_image014
 
只需要将选项anonymous_enable设置为NO,并且添加chroot_local_user= YES即可,也就是说不允许匿名用户访问FTP服务器,这样可以增加其安全性,并将所有登录用户都锁定到自己的宿主目录中。其它的默认即可。
clip_image016
 
在Vsftpd服务器上新建一个用户wangba,并设置相应的密码,用户登录FTP服务器。
clip_image018
 
在用户宿主目录wangba中添加文件夹movies和games两个目录,并且修改其属主为wangba用户。并查看其权限,只允许给所有用户的权限为读和执行权限。
clip_image020
 
设置完成之后,重启vsftpd和samba服务,使smb.conf和vsftpd.conf的修改生效。
clip_image022
 
三、 测试用户wangba是否能够访问vsftp服务器。
clip_image024
 
测试成功之后,可以在games目录中创建所需要的目录,比如说【魔兽世界】、【热血江湖】等等。
clip_image026
 
所有用户可以使用UNC路径访问Samba服务器,可是在games中显示的却是乱码,这是Samba服务器和FTP支持的编码不同造成的。
clip_image028
 
四、 解决Samba服务器和FTP中文同步问题
打开Samba服务器的主配置文件smb.conf,并且在全局目录[global]中添加dos charset = gb2312和unix charset = gb2312两条记录,然后重启启动Samba服务,即可生效。
clip_image030
 
然后再次使用UNC路径访问Samba服务器,可以看出刚才显示的中文乱码解决了。
clip_image032
 
五、 解决Samba服务器公共目录的中文问题
众所周知,在Linux的字符界面下是不能够输入中文的,输入了只会显示乱码,那么如何将[movies]和[games]这两个目录显示中文呢,这就需要将smb.conf配置文件提取到Windows环境下修改成中文,然后再覆盖先前的配置文件。
将Linux中的文件提取到Windows下的方法很多,这里可以将smb.conf复制到FTP目录下,然后在Windows环境里使用ftp下载即可。
clip_image034
clip_image036
 
复制到Windows环境下之后,可以使用写字板或者技术本打开文件smb.conf,并修改[movies]为[影视频道],[games]为[游戏天地]。
clip_image038
 
修改完成只会,然后再上传到FTP服务器上,在Linux下通过cp命令覆盖到默认目录下即可
clip_image040
 
可以查看smb.conf目录,可以看到所显示的为乱码。
clip_image042
 
修改完成之后,重启启动smb服务。
clip_image044
 
在windows环境下通过ftp访问共享目录显示为英文字幕。而通过UNC路径访问可以显示为中文
clip_image046
 
测试使用wangba用户登录到FTP服务器,然后创建一个文件,然后使用UNC路径访问,可以看到测试成功。
clip_image048


本文转自凌激冰51CTO博客,原文链接:http://blog.51cto.com/dreamfire/164089,如需转载请自行联系原作者

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
zookeeper入门到精通08——服务器节点动态上下线案例实战
zookeeper入门到精通08——服务器节点动态上下线案例实战
9 0
「首席架构师看无服务器」openwhisk 经典使用案例
「首席架构师看无服务器」openwhisk 经典使用案例
14 0
jira学习案例89-react-query处理服务器缓存
jira学习案例89-react-query处理服务器缓存
25 0
ZooKeeper学习:服务器动态上下线案例分析
ZooKeeper学习:服务器动态上下线案例分析
44 0
【Node.js练习】web服务器案例
【Node.js练习】web服务器案例
37 0
案例之创建资源服务器准备工作|学习笔记
快速学习案例之创建资源服务器准备工作
53 0
企业Web服务器现场抓鸡案例分享| 学习笔记
快速学习企业Web服务器现场抓鸡案例分享。
58 0
企业Web服务器现场抓鸡案例分享
一、apache 一些优化思路和技巧 二 、抓鸡
102 0
案例分享:Qt西门子PLC调试模拟工具(包含PLC上位机通讯,PLC服务器,读写Byte、Int、DInt、Real)(持续更新,当前v1.5.0)
案例分享:Qt西门子PLC调试模拟工具(包含PLC上位机通讯,PLC服务器,读写Byte、Int、DInt、Real)(持续更新,当前v1.5.0)
366 0
案例分享:Qt的80路显示超大屏幕拼接(十台服务器,每台八路摄像头)方案和Demo
案例分享:Qt的80路显示超大屏幕拼接(十台服务器,每台八路摄像头)方案和Demo
149 0
+关注
科技小先锋
文章
问答
视频
文章排行榜
最热
最新
相关电子书
更多
函数计算事件驱动的无服务器计算服务
立即下载
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载