共计 4060 个字符,预计需要花费 11 分钟才能阅读完成。
Samba,是用 UNIX 系列的作系微 Windows 作系的 SMB/CIFS(Server Message Block/Common Internet File System)路定做的自由。第三版不可存取及分享 SMB 的料及印表,本身可以整合入 Windows Server 的域,扮演域控制站(Domain Controller)以及加入 Active Directory 成。而言之,此在 WindowsUNIX 系列 OS 之搭起一座,者的源可互通有。
Samba 是多服以及的,其包括 TCP/IP 上的 NetBIOS(NBT)、SMB、CIFS(SMB 的增版本)、DCE/RPC 或者更具 MSRPC(居套件)、一 WINS 服器(也被作 NetBIOS Name Server(NBNS))、NT 域套件(包括 NT Domain Logons、Secure Accounts Manager(SAM)、Local Security Authority(LSA)服、NT-style 打印服(SPOOLSS)、NTLM 以及近出的包括一改的 Kerberos 改的型目(LDAP)在的 Active Directory Logon 服)。以上些服以及常被地 NetBIOS 或者 SMB。Samba 也能用於共享打印。
这里稍微解释一下 CIFS,它工作在 137/UDP,138/UDP,139/TCP,445/TCP,大家可能觉得它怎么工作在这么多端口上,这其实和它使用 NBT(NetBIOS over TCP/IP)和 TCP 协议工作有关。
NBT 使用 137, 138 (UDP) and 139 (TCP)来实现基于 TCP/IP 的 NETBIOS 网际互联。在 Windows NT 中 SMB 基于 NBT 实现。而在 Windows2000 中,SMB 除了基于 NBT 的实现,还有直接通过 445 端口实现。当 Win2000(允许 NBT)作为 client 来连接 SMB 服务器时,它会同时尝试连接 139 和 445 端口,如果 445 端口有响应,那么就发送 RST 包给 139 端口断开连接,以 455 端口通讯来继续. 当 445 端口无响应时,才使用 139 端口。当 Win2000(禁止 NBT)作为 client 来连接 SMB 服务器时,那么它只会尝试连接 445 端口,如果无响应,那么连接失败。(注意可能对方是 NT4.0 服务器。)如果 win2000 服务器允许 NBT, 那么 UDP 端口 137, 138, TCP 端口 139, 445 将开放。如果 NBT 被禁止, 那么只有 445 端口开放。
当然大家了解一下就好了,其实就是 Windows 的网上邻居罢了。
在 CentOS6.6 上默认安装了 smbclient,它有两种使用方式:
[root@localhost ~]# smbclient -L 192.168.1.103 -U test#test 是 Windows 上的一个用户
[root@localhost ~]# smbclient //192.168.1.103/test -U test
挂载为文件系统的访问方法:
[root@localhost ~]# mount -t cifs //192.168.1.103/test /mnt -o username=test[,password=]
Samba 的服务端直接使用 yum 安装就好了:
[root@linuxidc ~]# yum install samba
/etc/logrotate.d/samba
/etc/openldap/schema
/etc/openldap/schema/samba.schema
/etc/pam.d/samba
/etc/rc.d/init.d/nmb# 服务脚本
/etc/rc.d/init.d/smb# 服务脚本
/etc/samba/smb.conf# 主配置文件
/etc/samba/smbusers
/usr/bin/eventlogadm
/usr/bin/mksmbpasswd.sh
/usr/bin/smbstatus
/usr/sbin/nmbd
/usr/sbin/smbd
Samba 用户:
账号:都是系统用户,/etc/passwd
密码:Samba 服务自己的密码文件
将系统用户转换为 Samba 的命令 smbpasswd
[root@linuxidc ~]# vim /etc/samba/smb.conf
4 workgroup = WORKGROUP# 因为 Windows 中的是 workgroup 所以这里需要改
[root@linuxidc ~]# useradd smbuser1
[root@linuxidc ~]# smbpasswd -a smbuser1
-d:禁用账号
-e:启用账号
-x: 删除账号
其共享目录默认为用户的家目录
设置好之后再 Windows 的网上邻居中就可以看到了:
其共享目录为用户的家目录。
配置文件:smb.conf
全局设定
特定共享目录设定
私有家目录
打印机共享
自定义共享
255 [samba]
256 comment = My Samba Testing.# 注释信息
257 path = /shared/samba# 共享目录
258 browseable = yes# 是否允许非属主用户浏览
259 guest ok = yes# 是否运行来宾账户访问
260 writable = no# 是否可写
public = yes
readonly = yes
write list = +staff #staff 组内的用户都可写
[root@linuxidc ~]# testparm #测试配置文件是否正确,并显示最终生效内容
[root@linuxidc ~]# setfacl -m u:smbuser1:rwx /shared/samba/ #对目录的权限取决于 Samba 权限和文件系统权限的交集
此时 smbuser1 对 samba 目录是不可写的:
我们讲 write list = +smbuser1 加入配置文件中的 [samba] 配置段就可以创建文档了:
OK,Samba 就是这么简单,接下来我们来说一下 Samba 的网页版 GUI 界面,它是一个叫做 samba-swat 的包,在 CentOS 的扩展光盘上。
[root@samba ~]# yum install -y samba-swat
[root@samba ~]# rpm -ql samba-swat
/etc/xinetd.d/swat #它是放在 xinetd 进程里的
[root@samba ~]# vim /etc/xinetd.d/swat
1 # default: off
2 # description: SWAT is the Samba Web Admin Tool. Use swat \
3 # to configure your Samba server. To use SWAT, \
4 # connect to port 901 with your favorite web browser.
5 service swat
6 {
7 port = 901
8 socket_type = stream
9 wait = no
10 only_from = 192.168.1.0/24
11 user = root
12 server = /usr/sbin/swat
13 log_on_failure += USERID
14 disable = no
15 }
[root@samba ~]# service xinetd restart
[root@samba ~]# ss -tnl | grep :901
LISTEN 0 64 :::901 :::*
这样就可以使用浏览器访问了
这里有好多使用文档,非常详细大家有兴趣可以自己看一下。
在 SHARES 中有我们共享的信息,这里的 Advanced 模式中有众多的选项可以自行选择,而且这里如果一点击 Commit Changes 将会覆盖掉 /etc/samba/smb.conf 中所以的内容。
STATUS 中有我们 Samba 服务器的状态信息以及服务控制按钮。
好了到此我们的 Samba 就告一段落了,如有错误敬请指正。
———————————— 分割线 ————————————
如何在 Ubuntu 14.04 中使用 Samba 共享文件 http://www.linuxidc.com/Linux/2014-07/104894.htm
VMWare 虚拟机 Ubuntu 双网卡 访问 samba 速度 翻倍 http://www.linuxidc.com/Linux/2013-06/85445.htm
Samba 文件共享服务器加入 Windows Server 2003 域 http://www.linuxidc.com/Linux/2013-06/86391.htm
Samba 安装配置 http://www.linuxidc.com/Linux/2013-06/86101.htm
CentOS 6.2 下 Samba 服务的配置 http://www.linuxidc.com/Linux/2013-01/78390.htm
Samba 服务器安装和配置 http://www.linuxidc.com/Linux/2014-12/110459.htm
Win7+VMware+Fedora18 Samba 服务器的搭建图解 http://www.linuxidc.com/Linux/2013-01/78234.htm
———————————— 分割线 ————————————
Samba 的详细介绍:请点这里
Samba 的下载地址:请点这里
更多 CentOS 相关信息见CentOS 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=14
本文永久更新链接地址:http://www.linuxidc.com/Linux/2015-08/121030.htm