前言:
Samba
服务器可以说是
windows
和
Linux
共享的一座桥梁,通过
samba
服务器可以轻松的再
windows
下访问
Linux
服务器上所共享出来的资源,这里就不再多说废话了,可以找一些资料了解一下。
<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
1.
查看一下系统是否安装了
samba
功能组件,如下图:
![](https://i-blog.csdnimg.cn/blog_migrate/4823f27ee8caaacb3b886eb9aa5a74b7.jpeg)
2.
从上面的图中可以看出还缺少一些功能组件,下面我们来安装组件:
![](https://i-blog.csdnimg.cn/blog_migrate/84d8763e61f8d20a847403961278a29a.jpeg)
3.
配置
smb.conf
文件,该文件的位置是在
/etc/samba/
目录下。打开
smb.conf
文件进行编辑,截图只截一些关键图,因为
smb.conf
文件太长,无法全部接下来,如下:(先看截图,截图下面有说明。)
![](https://i-blog.csdnimg.cn/blog_migrate/5cca1a68fbc1f2ca52cbc745f2f6e082.jpeg)
“Global Settings”
中,主要设置“
workgroup
”字段其所在的工作组,该工作做应该跟
windows
主机是同在一个工作组,该实验中是采用了“
WODRKGROUP
”这个工作组;第二个红色的方框是对共享服务器的一个描述信息;第三个红色框可以定义允许访问该共享主机上的资源而
IP
网段。
![](https://i-blog.csdnimg.cn/blog_migrate/649beb84795e99e375d4954aa6e4f5cd.jpeg)
第一、二个红色的框框定义了
samba
日志的存放位置和日志的命名方式,第三个框框定义了最大日志的大小,第四个框框是最为主要的,该框框定义了
samba
的四种安全级别,分别是
share
、
user
、
server
、
domain
四种。
Share
:没有安全性的级别,任何用户都可以不要用户名和口令访问服务器上的资源。
User
:
samba
的默认配置,要求用户在访问共享资源之前资源必须先提供用户名和密码进行验证。
Server
:和
user
安全级别类似,但用户名和密码是递交到另外一个服务器去验证,比如递交给一台
NT
服务器。如果递交失败,就退到
user
安全级
Domain
:这个安全级别要求网络上存在一台
Windows
的主域控制器,
samba
把用户名和密码递交给它去验证。
本次实验选择安全级别最低的来配置实验。
第五个框框也是挺重要的,因为
user
安全级别的
samba
用户密码就是存放在
/etc/samba/smbpasswd
这个文件中,注意一下:
user
级别的安全模式是有
samba
用户的,
samba
用户是基于计算机用户的存在而建立的,要建立
samba
用户,那么在该服务器上必须已经存在了这么一个计算机用户,这样才能创建成功。
![](https://i-blog.csdnimg.cn/blog_migrate/8ed4906cb25d1fc13dd1557f3b49a57f.jpeg)
第一个红色框框就是定义共享的标题,在下面的内容中可以定义共享的文件、位置、权限等等。
第二个红色框框就是定义
homes
目录下是否可见(
browseable
)
,
是否允许写入(
write
)操作。
![](https://i-blog.csdnimg.cn/blog_migrate/49e8db461f2d7ed2499db6ff4c60ca21.jpeg)
红色框框就是我们这次所定义的一个共享文件,【
yangzexin
】这个字段是用户访问的时候所能看到的,【
comment
】这个字段是对共享文件的一个描述。【
Path
】就是路径了,这个路径一定要写正确,而且在该路径下要有相应的文件夹,不然会找不到共享的路径的。【
writeable
】是指用户对
jesse
文件夹有没有写入的权限,有的话那就可以在该文件夹创建文件和修改文件;【
public
】就是定义匿名用户是否可以访问,当然是
yes
了。
4.
用
testParm
测试
smb.conf
配置文件是否有错:
![](https://i-blog.csdnimg.cn/blog_migrate/e2edf89fa095b716b2c4e563bdb23d84.jpeg)
从图中可以看出配置是没有错误的,加载文件是成功的。
5.
启动
samba
服务器,截图如下:
![](https://i-blog.csdnimg.cn/blog_migrate/706c2004ce438693628ddd2fcddb6acf.jpeg)
6.
在
windows
下访问
Linux
主机上的共享文件夹,截图如下:
![](https://i-blog.csdnimg.cn/blog_migrate/e3879da06c3f03ccc321d53c241b2e6e.jpeg)
![](https://i-blog.csdnimg.cn/blog_migrate/c032e958d21546b1b38d1262db56f398.jpeg)
![](https://i-blog.csdnimg.cn/blog_migrate/1f025e04194ea2fc6164f0a8635d8bce.jpeg)
7.
在另一台
Linux
主机下访问共享文件夹,截图如下:
![](https://i-blog.csdnimg.cn/blog_migrate/3a98637429e389f148733d6149812a12.jpeg)
出现
password
字段时,由于允许匿名访问,所以不用输入密码
![](https://i-blog.csdnimg.cn/blog_migrate/c3f033ea76d6eb675e680f52206975e5.jpeg)
第二个红色的框框表明已经进入了
yangzexin
文件夹下了。
![](https://i-blog.csdnimg.cn/blog_migrate/e2c00c9acc2a74d4b5d92d27fefd20f7.jpeg)
看到的文件。注意:其实你在
yangzexin
文件夹下看到的文件其实是存放在
/share/jesse
目录下的文件
,
实验成功
.
二.
实验过程所遇到的问题
1.
用
windows
主机访问共享文件夹后,将里面的内容删除掉了,可是一刷新就有出现了
,
这个现象让人费解。
答:截图如下:
![](https://i-blog.csdnimg.cn/blog_migrate/43f1efaacd258b2f585e25d290ddff94.jpeg)
![](https://i-blog.csdnimg.cn/blog_migrate/0ed245d8e64c01718ef869eff3a07ed6.jpeg)
此时我一刷新就有出现
123.doc
这个文件了,如下图所示:
![](https://i-blog.csdnimg.cn/blog_migrate/8954a6bf8e08fcf87a710f88e17e4e16.jpeg)
其实出现这种情况是由于对文件夹没有写入的权限,所以要让用户有权限删除掉这些文件,那么就应该赋予写入的权限了。其实匿名用户访问文件夹或者文件,在
Linux
中是以其他用户身份登录的,所以就要为该文件的
other
赋予写入权限。而且我们在该实验中的目标文件应该是
jesse
这个文件夹,所以应该修改
jesse
这个文件夹的权限,修改其他用户和组权限。对于访问文件夹的权限的几种组合如下:用户想要访问共享文件夹的话,那么最为基本的就要有读和执行的权限,两者缺一不可,如果少了读的权限或者少了执行的权限,那是访问不了共享文件夹的,有了这两项权限的话,就可以访问文件夹,但是不可以写入任何内容,但如果一旦赋予了写入的权限,用户就可以修改文件夹和删除文件夹里面的内容了。
![](https://i-blog.csdnimg.cn/blog_migrate/aef9164e67f9d9fc0a38a7b90219f916.jpeg)
这样子用户就可以删除掉文件了。注意前提是:
writeable=yes,
如果
writeable=NO
的话,对文件赋予读、写、执行的操作也是不能删除文件的。
2.
出现以上的情况还有可能跟防火墙和
selinux
有关系,所以一般就要关闭掉防火墙,同时还要修改
/etc/selinux/config
这个文件,将
seliunx
这个字段修改我
disabled
,然后重新启动计算机就可以了,如若不想重启的话,可以执行
setenforce 0
就可以了。
3.
在
root
用户下创建共享目录,结果访问不了,为什么?
答:由于
root
用户是超级用户,所以在权限方面是不允许其他用户随便访问的,所以一般创建共享目录都放在根目录下或者其他目录下。
转载于:https://blog.51cto.com/yangzexin07/227886