1、配置匿名访问samba共享文件。

2、配置用户以身份验证的方式访问samba共享文件。

3、在samba的主配置文件中设置访问地址限制。

4、配置linux为samba客户端访问别人的共享文件。

首先介绍一下实验环境:开启两台虚拟机,linux-1作为samba共享服务器使用,win 7-1作为客户机使用来访问服务器上的共享文件,并且要有写入权限。

linux系统samba修改端口 linux中的samba配置步骤_配置文件

首先是挂载光盘文件,然后使用rpm命令安装作为samba服务器端的安装包。

linux系统samba修改端口 linux中的samba配置步骤_配置文件_02

此时可以先关闭IPtables防火墙服务,以及SElinux策略。

linux系统samba修改端口 linux中的samba配置步骤_操作系统_03

安装完成之后可以使用rpm -qc samba查看samba服务的安装目录。切换到配置文件/etc/samba/目录下,mv先修改其中的主配置文件名称,然后在过滤掉以#开头的注释行,并重定向为配置文件,然后就可以编辑主配置文件了,这样就算是编辑错了,也有个备份文件。

linux系统samba修改端口 linux中的samba配置步骤_操作系统_04

进入samba主配置文件,首先修改security为share表示可以匿名访问。

linux系统samba修改端口 linux中的samba配置步骤_配置文件_05

然后按“G”跳转到行未,添加下列配置文件参数。Benet为共享文件名称。

linux系统samba修改端口 linux中的samba配置步骤_运维_06

配置文件设置完成之后,在上面指定的共享路径中创建共享目录。并且设置目录权限。设置完成之后就可以开启samba共享服务了。

linux系统samba修改端口 linux中的samba配置步骤_运维_07

此时打开win7虚拟机,配置网卡确保两台虚拟机能够互联互通,然后在运行里面输入samba服务器的IP地址进行访问。

linux系统samba修改端口 linux中的samba配置步骤_配置文件_08

因为前面设置了可以写入的权限,所以任何用户在此目录下都可以写入文件。

linux系统samba修改端口 linux中的samba配置步骤_配置文件_09

回到linux上面使用“ls -l 文件目录”可以看到刚才创建的文件的权限,以及属主和属组为nobody,查看ID号为99。

linux系统samba修改端口 linux中的samba配置步骤_操作系统_10

下面开始做用户身份验证,同样要先配置security参数配置为user。

linux系统samba修改端口 linux中的samba配置步骤_运维_11

然后到行未配置共享文件的参数,共享名称为accp,在这里需要指定valid users能够允许访问的用户。

linux系统samba修改端口 linux中的samba配置步骤_linux系统samba修改端口_12

配置文件配置完成之后,首先要创建用户,如果只是为了共享建议不要设置用户密码,可以直接使用“smbpasswd -a 加用户名”设置用户的samba服务密码,然后是创建共享目录并设置权限。

linux系统samba修改端口 linux中的samba配置步骤_运维_13

配置完成此时需要重新启动samba服务,注意是重启。

linux系统samba修改端口 linux中的samba配置步骤_linux系统samba修改端口_14

win 7上面同样需要清空刚才访问的数据,以防有缓存作怪。

linux系统samba修改端口 linux中的samba配置步骤_操作系统_15

此时再使用同样的IP地址进行访问,提示你输入用户名和密码,输入刚才创建的用户名zhangsan以及samba密码进行访问。

linux系统samba修改端口 linux中的samba配置步骤_配置文件_16

此时不仅可以看到共享文件目录,还可以看到自己的家目录,而且accp目录是可以写入的(在accp里面创建了一个文件222.txt)。

linux系统samba修改端口 linux中的samba配置步骤_linux系统samba修改端口_17

回到samba服务器的主配置文件中,删除writable代表所有用户都可以写入的参数,在下面添加一条只允许lisi进行写入的条目。

linux系统samba修改端口 linux中的samba配置步骤_linux系统samba修改端口_18

(重启linux的samba服务,清空win 7的缓存之后再进行登陆)此时再使用刚才登陆的zhangsan用户,在accp目录下创建文件表示已经没有权限了。

linux系统samba修改端口 linux中的samba配置步骤_共享文件_19

(重启samba服务,清空缓存之后再进行登陆)然而使用lisi用户登陆依然可以有写入权限。

linux系统samba修改端口 linux中的samba配置步骤_共享文件_20

下面编辑/etc/samba/smbusers文件,做samba用户的别名机制。

linux系统samba修改端口 linux中的samba配置步骤_配置文件_21

直接在下面添加“用户名别名”就OK了。

linux系统samba修改端口 linux中的samba配置步骤_操作系统_22

再编辑samba的主配置文件,在全局配置中添加“username map =别名路径”应用别名机制。

linux系统samba修改端口 linux中的samba配置步骤_配置文件_23

又要重启samba服务,清空缓存之后再进行登陆。

linux系统samba修改端口 linux中的samba配置步骤_操作系统_24

此时使用别名进行登陆,跟直接使用lisi用户登陆是一个效果。

linux系统samba修改端口 linux中的samba配置步骤_linux系统samba修改端口_25

同样可以创建文件,而且创建出来的文件的属主和属组都是lisi。

linux系统samba修改端口 linux中的samba配置步骤_配置文件_26

另外还可以在samba服务的主配置文件中做地址限制,有点像ACL,其中“hosts deny”表示拒绝,“hosts allow”表示允许。

linux系统samba修改端口 linux中的samba配置步骤_共享文件_27

此时在win7上无论是用什么用户都不能够访问samba服务,但是可以ping通。

linux系统samba修改端口 linux中的samba配置步骤_linux系统samba修改端口_28

下面是在linux上安装samba的客户端软件,安装完成之后使用“smbclient -L 加对方IP”就可以访问win 7上面的共享文件了。

linux系统samba修改端口 linux中的samba配置步骤_配置文件_29

经验总结:安装samba服务的软件包时注意不要错了。Samba主配置文件中的各种配置参数需要清楚,匿名访问和身份验证访问的参数别搞混了。还有就是权限问题,有时不能写入就要检查权限设置了。谢谢大家!

linux系统samba修改端口 linux中的samba配置步骤_配置文件_30

真的很辛苦的,支持一下了。



转载于:https://blog.51cto.com/zhang2015/1660691