练习实践-基础设施-文件共享-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 user1new password:retype new password:Unix username: user1NT username: Account Flags: [U ]User SID: S-1-5-21-1466725758-3623168241-107824347-1000Primary Group SID: S-1-5-21-1466725758-3623168241-107824347-513Full Name: Home Directory: \\\\centos7\\user1HomeDir Drive: Logon Script: Profile Path: \\\\centos7\\user1\\profileDomain: CENTOS7Account desc: Workstations: Munged dial: Logon time: 0Logoff time: 三, 06 2月 2036 23:06:39 CSTKickoff time: 三, 06 2月 2036 23:06:39 CSTPassword last set: 四, 15 8月 2024 14:48:58 CSTPassword can change: 四, 15 8月 2024 14:48:58 CSTPassword must change: neverLast bad password : 0Bad password count : 0Logon hours : FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF[root@centos7 database]# pdbedit -Luser1:1000:
配置共享资源
[root@centos7 share]# cat -n /etc/samba/smb.conf 1# See smb.conf.example for a more detailed config file or 2# read the smb.conf manpage. 3# Run \'testparm\' to verify the config is correct after 4# you modified it. 5 6[global] 7workgroup = SAMBA 8security = user 9 10passdb backend = tdbsam 11 12[database] 13 comment = Do not arbitrarily modify the database file 14 path = /home/database 15 public = no 16 writable = yes
[root@centos7 home]# ls -l /home/database/总用量 8-rwxr--r--. 1 user1 user1 22 4月 2 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.1Enter 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-utilsroot@debian:/home/a# dpkg -l | grep cifsii cifs-utils 2:6.11-3.1+deb11u2 amd64 Common Internet File System utilitiesroot@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/smbshareroot@debian:/home/a#
开机自动挂载
通过配置文件/etc/fstab实现开机自动挂载,添加在配置文件的最后一行,亲测有效
root@debian:/home/a# cat -n auth.smb 1username=user1 2password=0 3domain=CENTOS7root@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 a 4# device; this may be used with UUID= as a more robust way to name devices 5# 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# 11# / was on /dev/sda1 during installation 12UUID=36799ae3-a97a-448f-9c4c-4c7f4df59d36 / ext4 errors=remount-ro 0 1 13# swap was on /dev/sda5 during installation 14UUID=15db51e5-3ba6-4c4b-b7e9-020ed10d7d45 none swap sw 0 0 15/dev/sr0 /media/cdrom0 udf,iso9660 user,noauto 0 0 16//192.168.255.129/database/opt/smbshare cifs credentials=/home/a/auth.smb 0 0
–END提示–