当前位置: 首页 > news >正文

练习实践-基础设施-文件共享-windows和linux之间的文件共享-smb服务搭建

参考来源:
在线书籍-linux就该这么学-第12章

安装软件包

配置文件/etc/samba/smb.conf

运维对待配置文件的态度,非必要不增加

安装完毕后打开Samba服务程序的主配置文件,好在参数并不多,只有37行。其中第17~22行代表共享每位登录用户的家目录内容。虽然在某些情况下这可以更方便地共享文件,但这个默认操作着实有些危险,建议不要共享,将其删除掉。第24~29行是用SMB协议共享本地的打印机设备,方便局域网内的用户远程使用打印机设备。当前我们没有打印机设备,因此建议也将其删除掉,不共享。最后的第31~37行依然为共享打印机设备的参数,同样建议予以删除。

删除掉不需要的代码是常规操作。通过关闭非必要的功能,可以让服务程序“轻装前进”,让服务程序把硬件资源都用到刀刃上,使其具有更好的性能。而且,还能让运维人员更快地找到所需的代码。与100行代码相比,从10行代码中找到一个参数要容易很多。所以只要对参数有正确的认识,那么就大胆地操作吧!

用户登录Samba服务时采用的验证方式。总共有4种可用参数

share:代表主机无须验证密码。这相当于vsftpd服务的匿名公开访问模式,比较方便,但安全性很差。
user:代表登录Samba服务时需要使用账号密码进行验证,通过后才能获取到文件。这是默认的验证方式,最为常用。
domain:代表通过域控制器进行身份验证,用来限制用户的来源域。
server:代表使用独立主机验证来访用户提供的密码。这相当于集中管理账号,并不常用

创建用于访问共享资源的账户信息-pdbedit命令使用

在这里插入图片描述

[root@centos7 database]# pdbedit -a -u user1
new password:
retype new password:
Unix username:        user1
NT username:          
Account Flags:        [U          ]
User SID:             S-1-5-21-1466725758-3623168241-107824347-1000
Primary Group SID:    S-1-5-21-1466725758-3623168241-107824347-513
Full Name:            
Home Directory:       \\centos7\user1
HomeDir Drive:        
Logon Script:         
Profile Path:         \\centos7\user1\profile
Domain:               CENTOS7
Account desc:         
Workstations:         
Munged dial:          
Logon time:           0
Logoff time:          三, 06 22036 23:06:39 CST
Kickoff time:         三, 06 22036 23:06:39 CST
Password last set:    四, 15 82024 14:48:58 CST
Password can change:  四, 15 82024 14:48:58 CST
Password must change: never
Last bad password   : 0
Bad password count  : 0
Logon hours         : FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
[root@centos7 database]# pdbedit -L
user1:1000:

配置共享资源

在这里插入图片描述

[root@centos7 share]# cat -n /etc/samba/smb.conf1	# See smb.conf.example for a more detailed config file or2	# read the smb.conf manpage.3	# Run 'testparm' to verify the config is correct after4	# you modified it.5	6	[global]7		workgroup = SAMBA8		security = user9	10		passdb backend = tdbsam11	12	[database]13	        comment = Do not arbitrarily modify the database file14	        path = /home/database15	        public = no16	        writable = yes
[root@centos7 home]# ls -l /home/database/
总用量 8
-rwxr--r--. 1 user1 user1 22 42 20:59 Memo.txt

检查安全策略和防火墙

pass

重启服务使配置生效,并保持开机自启

[root@centos7 database]# systemctl restart smb
[root@centos7 database]# systemctl enable smb

检查smb状态和共享目录信息

查看Samba服务都共享了哪些目录,则可以使用smbclient命令来查看共享详情;-U参数指定了用户名称(用哪位用户挂载了Samba服务,就用哪位用户的身份进行查看);-L参数列出了共享清单。

[root@centos7 database]# smbclient -U user1 -L 127.0.0.1
Enter SAMBA\user1's password: Sharename       Type      Comment---------       ----      -------database        Disk      Do not arbitrarily modify the database fileIPC$            IPC       IPC Service (Samba 4.10.16)
Reconnecting with SMB1 for workgroup listing.Server               Comment---------            -------Workgroup            Master---------            -------
[root@centos7 database]# 

验证共享文件效果

windowns下验证共享文件效果

在这里插入图片描述

linux下共享文件效果验证

手动挂载

Samba服务程序所在主机(即Samba共享服务器)和Linux客户端使用的IP地址,然后在客户端安装支持文件共享服务的软件包(cifs-utils)

root@debian:/home/a# apt-get install cifs-utils
root@debian:/home/a# dpkg -l | grep cifs
ii  cifs-utils                            2:6.11-3.1+deb11u2               amd64        Common Internet File System utilities
root@debian:/home/a# mkdir /opt/smbshare

TIPS,挂载的时候,远端地址后面跟的是共享目录名称(在smb服务器通过smbclient可以看到sharename),而不是具体的共享目录路径

root@debian:/home/a# mount -t cifs -o username=user1  '//192.168.255.129/database/'  '/opt/smbshare'
Password for user1@//192.168.255.129/database/: 
root@debian:/home/a# df -h /opt/smbshare/
文件系统                     容量  已用  可用 已用% 挂载点
//192.168.255.129/database/   35G  6.3G   29G   19% /opt/smbshare
root@debian:/home/a# 
开机自动挂载

通过配置文件/etc/fstab实现开机自动挂载,添加在配置文件的最后一行,亲测有效

root@debian:/home/a# cat -n auth.smb 1	username=user12	password=03	domain=CENTOS7
root@debian:/home/a# vim /etc/fstab 
root@debian:/home/a# cat -n /etc/fstab 1	# /etc/fstab: static file system information.2	#3	# Use 'blkid' to print the universally unique identifier for a4	# device; this may be used with UUID= as a more robust way to name devices5	# that works even if disks are added and removed. See fstab(5).6	#7	# systemd generates mount units based on this file, see systemd.mount(5).8	# Please run 'systemctl daemon-reload' after making changes here.9	#10	# <file system> <mount point>   <type>  <options>       <dump>  <pass>11	# / was on /dev/sda1 during installation12	UUID=36799ae3-a97a-448f-9c4c-4c7f4df59d36 /               ext4    errors=remount-ro 0       113	# swap was on /dev/sda5 during installation14	UUID=15db51e5-3ba6-4c4b-b7e9-020ed10d7d45 none            swap    sw              0       015	/dev/sr0        /media/cdrom0   udf,iso9660 user,noauto     0       016	//192.168.255.129/database	/opt/smbshare cifs credentials=/home/a/auth.smb  0 0

–END提示–

http://www.lryc.cn/news/599934.html

相关文章:

  • 解决angular与jetty websocket 每30s自动断连的问题
  • 从kHz到GHz:晶振频率范围如何决定其应用场景
  • streamyfin(世博会)android 编译
  • 告别虚函数性能焦虑:深入剖析C++多态的现代设计模式
  • 萤石云替代产品摄像头方案萤石云不支持TCP本地连接-东方仙盟
  • 蓝光中的愧疚
  • Nacos-服务注册,服务发现(一)
  • 中级统计师-经济学基础知识-第七章 失业与通货膨胀理论
  • 怎么放大单片机输出电流
  • linux C — udp,tcp通信
  • 【硬件】LT3763中文手册
  • 51 单片机单文件多文件结构工程模板的创建教程
  • Nginx 安全加固:如何阻止 IP 直接访问,只允许域名访问
  • Linux网络配置全攻略:IP、路由与双机通信
  • freqtrade关于获取k线数量,以及显示时间的问题
  • JAVA知识点(六):性能调优与线上问题排查
  • Day 3: 机器学习进阶算法与集成学习
  • 【13】C# 窗体应用WinForm——.NET Framework、WinForm、工程创建、工具箱简介、窗体属性及创建
  • [ComfyUI] -入门2- 小白零基础搭建ComfyUI图像生成环境教程
  • 语义分割-FCN-听课记录
  • vue使用xlsx库导出excel
  • 零基础-动手学深度学习-6.1 从全连接层到卷积
  • 【高等数学】第五章 定积分——第四节 反常积分
  • DuoPlus云手机再上新:统一配置品牌型号、代理分组与便捷搜索功能全面提升!
  • zabbix服务自动发现、自动注册及配置钉钉告警(小白的“升级打怪”成长之路)
  • 2025年第四届创新杯(原钉钉杯)赛题浅析-助攻快速选题
  • Keepalived 原理及配置(高可用)
  • 构建跨平台远程医疗系统中的视频通路技术方案探究
  • 关于PGCE专家技术认证解决方案
  • Colab中如何临时使用udocker(以MinIO为例)