1 .安装和配置主配置文件
Samba服务现在已经成为在Linux系统与Windows系统之间共享文件的最佳选择之一。通过软件仓库来安装Samba服务程序及用于测试共享目录的客户端程序samba-client。
[root@dsrw ~]# dnf install samba samba-client
Updating Subscription Management repositories.
Unable to read consumer identity
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
上次元数据过期检查:23:18:03 前,执行于 2022年12月19日 星期一 23时07分22秒。
依赖关系解决。
================================================================================
软件包 架构 版本 仓库 大小
================================================================================
Installing:
samba x86_64 4.9.1-8.el8 BaseOS 708 k
samba-client x86_64 4.9.1-8.el8 BaseOS 636 k
安装依赖关系:
samba-common-tools x86_64 4.9.1-8.el8 BaseOS 461 k
samba-libs x86_64 4.9.1-8.el8 BaseOS 177 k
事务概要
================================================================================
安装 4 软件包
总计:1.9 M
安装大小:5.6 M
确定吗?[y/N]: y
下载软件包:
运行事务检查
事务检查成功。
运行事务测试
事务测试成功。
运行事务
准备中 : 1/1
Installing : samba-libs-4.9.1-8.el8.x86_64 1/4
运行脚本 : samba-libs-4.9.1-8.el8.x86_64 1/4
Installing : samba-common-tools-4.9.1-8.el8.x86_64 2/4
Installing : samba-4.9.1-8.el8.x86_64 3/4
运行脚本 : samba-4.9.1-8.el8.x86_64 3/4
Installing : samba-client-4.9.1-8.el8.x86_64 4/4
运行脚本 : samba-client-4.9.1-8.el8.x86_64 4/4
验证 : samba-4.9.1-8.el8.x86_64 1/4
验证 : samba-client-4.9.1-8.el8.x86_64 2/4
验证 : samba-common-tools-4.9.1-8.el8.x86_64 3/4
验证 : samba-libs-4.9.1-8.el8.x86_64 4/4
Installed products updated.
已安装:
samba-4.9.1-8.el8.x86_64 samba-client-4.9.1-8.el8.x86_64
samba-common-tools-4.9.1-8.el8.x86_64 samba-libs-4.9.1-8.el8.x86_64
完毕!
2.配置Samba服务程序的主配置文件,重启smb服务,并加入启动项
[root@dsrw ~]# vim /etc/samba/smb.conf
[global]
workgroup = SAMBA
security = user
passdb backend = tdbsam
[database]
comment = Do not arbitrarily modify the database file
path = /home/database
public = no
writable = yes
[root@dsrw ~]# systemctl restart smb
[root@dsrw ~]# systemctl enable smb
Created symlink /etc/systemd/system/multi-user.target.wants/smb.service → /usr/lib/systemd/system/smb.service.
3.安全验证的方式
share: 代表主机无须验证密码 。 这相当于 vsftpd 服务的匿名公开访 问模式,比较方便,但安全性很差 。
user: 代表登录 Samba 服务时需要使用账号密码进行验证,通过后才能获取到文件 。这是默认的验证方式,最为常用 。
domain :代表通过域控制器进行身份验证,用来限制用户的来源域 。
server: 代表使用独立主机验证来访用户提供的 密码。 这相当于集中管理账号,并不常用。
4.创建用于访问共享资源的账户信息。
pdbedit命令用于管理Samba服务程序的账户信息数据库,格式为“pdbedit [选项]账户”。在第一次把账户信息写入到数据库时需要使用-a参数。
pdbedit命令的参数以及作用
-a 用户名 :建立Samba 用户
-x 用户名 :删除Samba 用户
-L:列出用户列表
-Lv:列出用户详细信息的列表
[root@dsrw ~]# id dsrw
uid=1000(dsrw) gid=1000(dsrw) 组=1000(dsrw)
[root@dsrw ~]# pdbedit -a -u dsrw
new password:
retype new password:
Unix username: dsrw
NT username:
Account Flags: [U ]
User SID: S-1-5-21-3714332392-812522642-1121984970-1000
Primary Group SID: S-1-5-21-3714332392-812522642-1121984970-513
Full Name: dsrw
Home Directory: \\dsrw\dsrw
HomeDir Drive:
Logon Script:
Profile Path: \\dsrw\dsrw\profile
Domain: DSRW
Account desc:
Workstations:
Munged dial:
Logon time: 0
Logoff time: 三, 06 2月 2036 23:06:39 CST
Kickoff time: 三, 06 2月 2036 23:06:39 CST
Password last set: 二, 20 12月 2022 23:02:20 CST
Password can change: 二, 20 12月 2022 23:02:20 CST
Password must change: never
Last bad password : 0
Bad password count : 0
Logon hours : FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
5.创建用于共享资源的文件目录,设置权限、SELinux安全上下文、SELinux域策略。
[root@dsrw ~]# mkdir /home/database
[root@dsrw ~]# chown -Rf dsrw:dsrw /home/database
[root@dsrw ~]# semanage fcontext -a -t samba_share_t /home/database
[root@dsrw ~]# restorecon -Rv /home/database
Relabeled /home/database from unconfined_u:object_r:user_home_dir_t:s0 to unconfined_u:object_r:samba_share_t:s0
[root@dsrw ~]# setsebool -P samba_enable_home_dirs on
[root@dsrw ~]# getsebool -a|grep samba
samba_create_home_dirs --> off
samba_domain_controller --> off
samba_enable_home_dirs --> on
samba_export_all_ro --> off
samba_export_all_rw --> off
samba_load_libgfapi --> off
samba_portmapper --> off
samba_run_unconfined --> off
samba_share_fusefs --> off
samba_share_nfs --> off
sanlock_use_samba --> off
tmpreaper_use_samba --> off
use_samba_home_dirs --> off
virt_use_samba --> off
6.清空iptables防火墙,把Samba服务添加到firewalld防火墙中。
[root@dsrw ~]# iptables -F
[root@dsrw ~]# iptables-save
# Generated by xtables-save v1.8.2 on Tue Dec 20 23:17:05 2022
*filter
:INPUT ACCEPT [133:13875]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [70:7328]
COMMIT
# Completed on Tue Dec 20 23:17:05 2022
# Generated by xtables-save v1.8.2 on Tue Dec 20 23:17:05 2022
*security
:INPUT ACCEPT [5:206]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [70:7328]
COMMIT
# Completed on Tue Dec 20 23:17:05 2022
# Generated by xtables-save v1.8.2 on Tue Dec 20 23:17:05 2022
*raw
:PREROUTING ACCEPT [245:25278]
:OUTPUT ACCEPT [70:7328]
COMMIT
# Completed on Tue Dec 20 23:17:05 2022
# Generated by xtables-save v1.8.2 on Tue Dec 20 23:17:05 2022
*mangle
:PREROUTING ACCEPT [245:25278]
:INPUT ACCEPT [133:13875]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [70:7328]
:POSTROUTING ACCEPT [104:12354]
-A POSTROUTING -o virbr0 -p udp -m udp --dport 68 -j CHECKSUM --checksum-fill
COMMIT
# Completed on Tue Dec 20 23:17:05 2022
# Generated by xtables-save v1.8.2 on Tue Dec 20 23:17:05 2022
*nat
:PREROUTING ACCEPT [191:17424]
:INPUT ACCEPT [3:138]
:POSTROUTING ACCEPT [25:2702]
:OUTPUT ACCEPT [25:2702]
-A POSTROUTING -s 192.168.122.0/24 -d 224.0.0.0/24 -j RETURN
-A POSTROUTING -s 192.168.122.0/24 -d 255.255.255.255/32 -j RETURN
-A POSTROUTING -s 192.168.122.0/24 ! -d 192.168.122.0/24 -p tcp -j MASQUERADE --to-ports 1024-65535
-A POSTROUTING -s 192.168.122.0/24 ! -d 192.168.122.0/24 -p udp -j MASQUERADE --to-ports 1024-65535
-A POSTROUTING -s 192.168.122.0/24 ! -d 192.168.122.0/24 -j MASQUERADE
COMMIT
# Completed on Tue Dec 20 23:17:05 2022
# Table `firewalld' is incompatible, use 'nft' tool.
[root@dsrw ~]# firewall-cmd --zone=public --permanent --add-service=samba
success
[root@dsrw ~]# firewall-cmd --reload
success
7.查看服务器是否启动了Samba服务
[root@dsrw ~]# systemctl status smb
● smb.service - Samba SMB Daemon
Loaded: loaded (/usr/lib/systemd/system/smb.service; enabled; vendor preset: disabled)
Active: active (running) since Tue 2022-12-20 23:11:55 CST; 8min ago
8.在samba服务器的/etc/hosts文件中添加本机解析,查看Samba服务都共享了哪些目录。
[root@dsrw ~]# vim /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.10.2 dsrw.com
[root@dsrw ~]# smbclient -U dsrw -L 192.168.10.2
Enter SAMBA\dsrw's password:
Sharename Type Comment
--------- ---- -------
database Disk Do not arbitrarily modify the database file
IPC$ IPC IPC Service (Samba 4.9.1)
Reconnecting with SMB1 for workgroup listing.
Server Comment
--------- -------
Workgroup Master
--------- -------
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END
请登录后查看评论内容