在centos7上搭建samba文件服务器

第一步:安装samba服务

(题外话:centos7可能不能使用ifconfig命令,我们可以:yum -y install net-tools)

yum -y install samba samba-client

第二步:认识配置文件/etc/samba/smb.conf

#======================= Global Settings =====================================
 [global]
 # ----------------------- Network-Related Options -------------------------
 #
 workgroup = MYGROUP #设定 Samba Server 所要加入的工作组或者域
 server string = Samba Server Version %v

 ;       netbios name = MYSERVER #这是在windows中显示出来的电脑名字,不要与workgroup设成相同了

 ;       interfaces = lo eth0 192.168.12.2/24 192.168.13.2/24 #设置Samba Server监听哪些网卡,可以写网卡名,也可以写该网卡的IP地址。
 ;       hosts allow = 127. 192.168.12. 192.168.13. #设置允许连接samba的客户端地址,多个用空格分开。hosts deny 与hosts allow 刚好相反,表示拒绝那些地址连接

 ;       max protocol = SMB2

 # --------------------------- Logging Options -----------------------------
 #
 # log files split per-machine:
 log file = /var/log/samba/log.%m #日志文件存储位置以及日志文件名称。加宏%m(主机名),表示对每台访问Samba的机器都单独记录一个日志文件。如果pc1、pc2访问过Samba,就在日志目录下留下log.pc1和log.pc2两个日志文件。 
 # maximum size of 50KB per log file, then rotate:
 max log size = 50 #单位 kb 为0则不限制

 # ----------------------- Standalone Server Options ------------------------
 #
 security = user #用户访问Samba Server的验证方式,可以是share(不要用户名和口令),user,server,domain(域验证)
 passdb backend = smbpasswd #验证用户的后台,可以是smbpasswd、tdbsam和ldapsam。

 # ----------------------- Browser Control Options ----------------------------
 ;       local master = no
 ;       os level = 33
 ;       preferred master = yes
 # --------------------------- Printing Options -----------------------------
 load printers = yes
 cups options = raw

 ;       printcap name = /etc/printcap
 # obtain a list of printers automatically on UNIX System V systems:
 ;       printcap name = lpstat
 ;       printing = cups
 # --------------------------- File System Options ---------------------------
 ;       map archive = no
 ;       map hidden = no
 ;       map read only = no
 ;       map system = no
 ;       store dos attributes = yes

 #============================ Share Definitions ==============================

 [homes]  #这是一个很特殊的共享名(默认是不允许打开,就算配置可浏览呀,什么的都不顶用)
 comment = Home Directories 
 browseable = no 
 writable = yes
 ;       valid users = %S
 ;       valid users = MYDOMAIN\%S

 [printers] #这也很特殊是打印机的东东,暂时搞不清楚,为什么用这个名儿,就不显示出来
        comment = All Printers
        path = /var/spool/samba
        browseable = no
        guest ok = no
        writable = no
        printable = yes #这项设为yes,windows端则会显示打印机图标
#-------------------------------------------------------------------------
 [jishubu] #共享名
 comment = All Printers  #只是个描述,随便
 path = /var/doc/computer #共享的目录
 browseable = no         #指定该共享是否可以浏览
 guest ok = no           #不允许来宾guest访问
 writable = no           #指定该共享是否可写
 ; printable = yes
 ; admin users = latiao , laoma     #指定该共享的管理者,多个时用,隔开
 ; valid users = latiao , @jishubu  #允许访问该共享的用户或组
 ; invalid users = latiao           #禁止访问该共享的用户(用法同上)
 ; write list = latiao              #允许写入该共享的用户(同上)
#-------------------------------------------------------------------------

检查配置文件有无愈发错误命令:testparm

启动smb:systemctl start smb

开机自起:chking smb on

关闭防火墙:setenforce 0 #这个一定要注意呀,我做的时候,没意识到这个折腾老半天了

案列一:小团队内共享文档 (来宾用户都可以随便操作)

编辑配置文件(只给出关键处)

#======================= Global Settings =====================================
[global]
        security = user
        map to guest = bad user

#============================ Share Definitions ==============================
[wendang]
        comment = good good study day day up
        path = /home/latiao/gongzuowendang
        browseable = yes
        guest ok = yes
        writable = yes

在windows pc上输入\192.168.10.103,直接就可以看见说共享的目录

案列二:只允许用账户密码的查看共享文档(即需要验证用户合法性)

#======================= Global Settings =====================================
[global]
# ------------------------------------------- Standalone Server Options --------------------------------------------------
 security = user
 passdb backend = smbpasswd   #user的验证方式
 encrypt passwords = yes            #对密码进行加密
 smb passwd file =/etc/samba/smbpasswd  #这是存放smb账户及密码的文件,默认没有,需手动创建

#============================ Share Definitions ==============================
 [homes]
 comment = Home Directories
 browseable = no
 writable = yes
 ;       valid users = %S
 ;       valid users = MYDOMAIN\%S

[doc]
 comment = All Printers
 path = /var/spool/samba
 browseable = yes
 guest ok = no
 writable = yes

创建一个系统用户,smb的用户必须是已经存在的系统用户,当然,你可以设置特有的口令

uesradd latiao  #这里为了安全,我不给用户创建系统密码
smbpasswd -a latiao

linux下检查smb服务器可用共享目录:smbclient -L smb_server_ip -U smb_ueser

linux下挂载smb服务器的共享目录:smbclient //smb_server_ip/mulu -U smb_user

若是无验证的共享,则:smbclient //smb_server_ip/mulu

声明:本文为原创,作者为 辣条①号,转载时请保留本声明及附带文章链接:https://boke.wsfnk.com/archives/140.html
谢谢你请我吃辣条谢谢你请我吃辣条

如果文章对你有帮助,欢迎点击上方按钮打赏作者

最后编辑于:2022/12/9作者: 辣条①号

现在在做什么? 接下来打算做什么? 你的目标什么? 期限还有多少? 进度如何? 不负遇见,不谈亏欠!

暂无评论

发表回复

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

arrow grin ! ? cool roll eek evil razz mrgreen smile oops lol mad twisted wink idea cry shock neutral sad ???

文章目录