Yayi和大家一起学习Fedora系列教程–第八课

第八课了,这次我们来讲讲samba。
先来看看其作用吧。

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也能够用于共享打印机。Samba能够为选定的Unix目录(包括所有子目录)建立网络共享。该功能使得Windows用户可以像访问普通Windows下的文件夹那样来通过网络访问这些Unix目录。(摘选自维基百科)

软件包:

samba-common
samba
system-config-samba
samba-client

主配置文件:

/etc/samba/smb.conf

配置文件内容:

View Code SHELL
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
[global]
 
#Samba服务器的全局设置,配置项的内容对整个 Samba服务器有效
 
workgroup = MYGROUP
 
#设置Samba服务器所在的工作组名称,默认设置为 MYGROUP
 
server string = Samba Server
 
#设置Samba服务器的说明文字,用于描述Samba主机
 
security = user
 
#设置Samba服务器的默认安全级别为user,设置项的值可以有以下4种:
 
#share:用户不需要帐户及密码即可登入Samba服务器
 
#user:由提供服务的Samba服务器负责检查帐户及密码,是Samba默认的安全等级
 
#server:检查帐户及密码的工作指定由另一台 Windows服务器或Samba服务器负责
 
#domain:指定Windows域控制服务器来验证用户的帐户及密码
 
;   hosts allow = 192.168.1. 192.168.2. 127.
 
#默然情况下的配置不使用,它可以用来设置局域网中容许访问 Samba服务器的主机、子网或者是网段
 
load printers = yes
 
#是否允许打印机中的所有打印机,在开机时自动加载浏览列表,以支持客户端的浏览功能
 
;   printcap name = /etc/printcap
 
#设置开机时自动加载的打印机配置文件名称和路径
 
;   printcap name = lpstat
 
#设置打印机名称
 
;   printing = cups
 
#设置指定打印系统的类型
 
cups options = raw
 
#设置以’raw’的方式打印,可选项
 
;  guest account = pcguest
 
#设置Guest帐号名,默认不使用
 
log file = /var/log/samba/%m.log
 
#所有连接到SAMBA服务器的计算机建立个别的记录日志
 
max log size = 50
 
#设置每个记录日志大小的上限,单位是KB
 
#  password server =*
 
;   password server = 
 
#默认的配置下不使用,只有选项设置为 “security=server”时才生效,它是用来指定密码服务的名称,所以要使用NETBIOS名称,也可以使用“password server=*”的方式来自动寻找可用的域控制器
 
;   realm = MY_REALM
 
;   passdb backend = tdbsam
 
;   include = /usr/local/samba/lib/smb.conf.%m
 
#容许Samba服务器使用其他的配置文件
 
;   interfaces = 192.168.12.2/24 192.168.13.2/24
 
#使Samba服务器监视多个往来接口,如果服务器上有多张网卡应该配置此项
 
#在配置时可以写成:
 
interfaces =eth0
 
interfaces =172.17.4.150
 
;   local master = no
 
#Samba服务器是否可以成为本地主浏览器
 
;   os level = 33
 
#Samba服务器的管理等级
 
;   domain master = yes
 
#该服务器是否可以成为域浏览器
 
;   preferred master = yes
 
#该服务器是否可以成为工作组中的首要主浏览器
 
;   domain logons = yes
 
;   logon script = %m.bat
 
;   logon script = %U.bat
 
;   logon path = \\%L\Profiles\%U
 
;   wins support = yes
 
;   wins server = w.x.y.z
 
#设定samba server 是否要使用别台主机提供的WINS服务.通常无特殊原因设为no.除非所处网络上有一台主机提供WINS服务才要设yes
 
;   wins server = 192.168.0.1
 
#表示samba server要使用192.168.0.1提供的WINS服务
 
;   wins proxy = yes
 
dns proxy = no
 
;  add user script = /usr/sbin/useradd %u
 
;  add group script = /usr/sbin/groupadd %g
 
;  add machine script = /usr/sbin/adduser -n -g machines -c Machine -d /dev/null -s /bin/false %u
 
;  delete user script = /usr/sbin/userdel %u
 
;  delete user from group script = /usr/sbin/deluser %u %g
 
;  delete group script = /usr/sbin/groupdel %g
 
#============================ Share Definitions ==============================
 
[homes]
 
#用户的主目录设置内容
 
comment = Home Directories
 
#设置共享的说明信息
 
browseable = no
 
#设置所有Samba用户的宿主目录是否能被看见
 
writable = yes
 
#设置用户是否可以对该共享目录写入
 
; [netlogon]
 
#登陆网域时的“netlogon”目录设置内容
 
;   comment = Network Logon Service
 
#主目录注释
 
;   path = /usr/local/samba/lib/netlogon
 
#实际访问资源的本机路径
 
;   guest ok = yes
 
#连接时是否需要密码
 
;   writable = no
 
#是否允许写入此目录
 
;   share modes = no
 
#是否容许目录中的文件在不同的用户之间共享
 
;[Profiles]
 
#用户配置文件目录设置内容
 
;    path = /usr/local/samba/profiles
 
#设置实际访问资源的本机路径
 
;    browseable = no
 
#设置是否允许浏览此主目录
 
;    guest ok = yes
 
#设置连接时是否需要密码
 
[printers] strong>
 
#设置打印机环境内容
 
comment = All Printers
 
#设置打印机注解
 
path = /usr/spool/samba
 
#设置打印队列路径
 
browseable = no
 
#设置是否允许浏览打印机内的暂时存盘内容
 
# Set public = yes to allow user ‘guest account’ to print
 
guest ok = no
 
#设置连接时是否不需要密码
 
writable = no
 
#设置是否允许写入此目录
 
printable = yes
 
#设置是否允许使用打印机
 
# This one is useful for people to share files
 
;[tmp]
 
;   comment = Temporary file space
 
#注释说明
 
;   path = /tmp
 
#分享资源的完整路径名称,除了路径要正确外,目录的权限也要设对
 
;   read only = no
 
#是否以只读方式共享当与writable 发生冲突时也writable为准
 
;   public = yes
 
#是yes/否no公开共享,若为否则进行身份验证(只有当security = share
 
;[public]
 
;   comment = Public Stuff
 
;   path = /home/samba
 
;   public = yes
 
;   writable = yes
 
;   printable = no
 
;   write list = @staff
 
#若设定为只读时,则只有此设定的名单内的成员才可作写入动作(用户名/@组名)
 
;[fredsprn]
 
;   comment = Fred’s Printer
 
;   valid users = fred
 
;   path = /homes/fred
 
;   printer = freds_printer
 
;   public = no
 
;   writable = no
 
;   printable = yes
 
;[fredsdir]
 
;   comment = Fred’s Service
 
;   path = /usr/somewhere/private
 
;   valid users = fred
 
;   public = no
 
;   writable = yes
 
;   printable = no
 
;[pchome]
 
;  comment = PC Directories
 
;  path = /usr/pc/%m
 
;  public = no
 
;  writable = yes
 
;[public]
 
;   path = /usr/somewhere/else/public
 
;   public = yes
 
;   only guest = yes
 
;   writable = yes
 
;   printable = no
 
;[myshare]
 
tyle=”color: #ff6600″>;   comment = Mary’s and Fred’s stuff
 
#设置共享的说明信息
 
;   path = /usr/somewhere/shared
 
#共享的目录
 
;   valid users = mary fred
 
#设定只有此名单内的用户才能访问共享资源 (拒绝优先)(用户名/@组名)
 
;   public = no
 
#是否公开共享,若为否则进行身份验证(只有当security = share 时此项才起作用)
 
;   writable = yes
 
#是否不以只读方式共享当与read only发生冲突时,无视read only
 
;   printable = no
 
#是yes/否no允许打印
 
;   create mask = 0765
 
#建立文件时所给的权限

客户端使用简单的说下吧。

配置samba本地用户密码
smbpasswd -a USER

显示当前服务器连接的状态
smbstatus

查看服务器共享的服务
smbclient -L //192.168.1.20 -U administrator

连接服务器共享
smbclient //192.168.1.20/share -U administrator

挂载samba服务器共享文件夹
mount -t cifs -o username=USER //192.168.1.20/USER /mnt -o username=username,passwd=’password’

这一课也结束了。这次并不是做主要的讲,是因为希望大家动动脑筋,多点经验解决自己第一次使用与安装的软件,

找出窍门,不要凡事没动过脑筋与思考马上就GOOGLE与问别人。先要相信自己的能力。

发表评论

电子邮件地址不会被公开。 必填项已用*标注