samba

samba:是一个软件
 
FTP:应用层协议也就是第七层
    TCP/IP:应用层    TCP/IP协议在这只是负责将数据报文安全的传达到目的地即可
 
NFS 只工作在linux主机和unix主机上 
samba能够基于不同主机上实现文件共享
 
 
CIFS/SMB 在windows上实现时依赖于NETBIOS协议
 
CIFS:通用互联网文件系统 Common Internet File System
 
SMB:服务信息块儿 Service Message Block  
 
windows之间共享文件时是基于那些端口实现:
137/udp ,138/udp  提供netbios
139/tcp 提供netbios
445/tcp  共享文件
用iptables开放本机的samba服务时,要记得开放这几个端口
 
samba事先也是SElinux控制的,事先应关掉SElinux
 
系统用户,samba密码
samba是有安全级别概念的;其默认级别是:user
UNC路径:
\\IP\software      也就是\\主机地址\共享名
 
在linux上,启动samba服务之后,会启动两个进程:nmbd,smbd
samba的进程:
nmbd:提供NetBIOS
smbd:提供文件共享
 
安装配置samba:
一般来说,我们在安装完系统后,samba客户端都是会安装的;
1、安装:
 

宏:变量

在/etc/smaba/目录下有一堆的配置文件,主配置文件是:smb.conf

 

共享目录一般格式:

[shared_name]:共享名称

comment =       给一个注释

path =         目录路径

browseable=      是否可浏览

public =         是否能够被所有用户读的

ready only =      是否只读

writeable =      是否可写

write list =  user1,user2      定义可写用户列表;不加用户时,表示都可写

              @geoup,+group:表示这个组内的用户都可写

valid users =  表示共享只有哪些用户可以访问    也就是白名单    invalid users =   表示共享哪些用户不可以访问    也就是黑名单

白名单和黑名单一般不能同时使用,同时使用时,白名单生效。 

 

 

例子:

我们把share目录下test目录共享出去,共享名为tools

先建一个目录:

# mkdir /share/test -pv

然后编辑smb.conf

在smb.conf里面编辑:

[tools]

       comment = Share Testing

  path = /share/test

  public = yes

  writable = yes

 

然后保存退出

然后启动smb:

service smb start

然后查看服务是否开启

# netstat -tunlp

 

然后添加一个用户gentoo,使其插入到smb,给密码

# smbpasswd -a gentoo

 

最后即可访问

 

 

smbclient 

       -L  NetBIOS_name  也可以直接跟IP地址     指定主机名   表示要访问哪个主机           -U  username   直接指定用户名

chmod og=--- 加文件路径     使文件没有任何权限,也就是任何人都不能访问,属主,属组都是都是管理员 

 

在windows上共享文件时,在linux上去访问这个共享的例子:

# smbclient -L  指定IP地址

# smdclient -L  指定地址 -U wuser