搭建Samba服务器攻略

这篇具有很好参考价值的文章主要介绍了搭建Samba服务器攻略。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Top

目录
  • 安装
  • 端口与服务管理
  • 其他常用命令
  • 配置
    • 全局配置
    • 共享库配置
    • 用户名密码认证库配置
    • Samba 登录用户配置
    • 防火墙配置
      • 设定安全的上下文关系
      • 本地系统设置访问读写权限
    • Pdbedit 用法
    • Smbpasswd 用法
    • 其他
  • Windows 下相关转发
    • 查看网络连接 -- 可删除缓存,用于切换登录用户
    • Windows 设置 Smb 端口转发
  • 访问 Samba 服务器
    • 服务器 --- Linux
    • 服务器 --- Windows
    • Apple --- Mac
  • Linux 挂载 samba 地址
  • 参考网址
  • 自动化配置脚本

安装

 # 安装samba服务器
yum install -y samba
# samba 服务器地址 
smb://user@192.168.0.10
# 查看安装包 
rpm -qa |grep samba

端口与服务管理

# 启动samba进程
systemctl start smb
# 查看运行状态
systemctl status smb  
# 查看端口
netstat -antulp |grep smb
# 设置开机自启动
systemctl enable smb
chkconfig smb on
# samba的主要配置文件
/etc/samba/smb.conf    

# Samba服务使用的端口和协议:
1 端口137 (UDP) - NetBIOS名称服务; 美国全国广播公司
2 端口138 (UDP) - NetBIOS数据报服务
3 端口139 (TCP) - 共享文件和打印;它基于smbd(SMB) servermessageblock协议,主要用于局域网,文件共享协议) 。
4 端口389 (TCP) - LDAP (活动目录模式)
5 端口445 (TCP) - NetBIOS服务在windos 2000或更高版本上使用此端口。 (CIFS、公共互联网文件系统,它将SMB协议扩展到internet,然后实现internet文件共享。
6 端口901 (TCP) SWAT,用于web管理Samba
windows系统之间的文件共享协议: netbiosextenduserinterface (netbeui )协议和IPX/SPX协议
NetBEUI协议是一种短而精悍、通信效率高的广播型协议,安装后无需设置,特别适用于“网络邻居”中的数据传输。

其他常用命令

# 查看 samba 服务状态及其客户端访问情况
smbstatus
/usr/bin/smbclient          # 客户端功能 

点我回顶部

配置

全局配置


[global]
        workgroup = SAMBA
        security = user
        passdb backend = tdbsam        
        config file = /etc/samba/%U.smb.conf  # 使得不同的登录用户只加载其自身的配置,%U 代表用户名
        printing = cups 
        printcap name = cups
        load printers = yes
        cups options = raw
        interfaces = ens9f3 192.168.0.200/24    # 访问接口 和 IP  
        hosts allow = 192.168.0.                # 客户端 白名单   
        log file = /var/log/samba/log.%m        # 日志文件配置 
        max log size = 50000                    
		smb ports = 1234                        # 自定义服务端口
		
# 
#[homes]
#       comment = Home Directories
#       valid users = %S, %D%w%S
#       browseable = No
#       read only = No
#       inherit acls = Yes

[printers]
        comment = All Printers
        path = /var/tmp
        printable = Yes
        create mask = 0600
        browseable = No

[print$]
        comment = Printer Drivers
        path = /var/lib/samba/drivers
        write list = @printadmin root
        force group = @printadmin
        create mask = 0664
        directory mask = 0775


共享库配置

[d200_temp]
       comment = please do not modify it all will
       path= /data/shared/d200_d
       writable = yes 
       public = yes
点我回顶部

用户名密码认证库配置

[d200_temp]
       comment = please do not modify it all will
       path= /data/shared/d200_d
       public = no
       valid users = sit,@ydd
       printable = no
       write list = sit,@ydd

Samba 登录用户配置

sit_home_Dir="/raid/shared/d200_d/temp"
sit_pwd="h3c@123"
userdel -r sit &> /dev/null
groupdel ydd &> /dev/null
groupadd ydd
useradd sit -d /raid/shared/d200_d/temp -s /sbin/nologin -p ${sit_pwd}
pdbedit -x sit
echo "sit pwd : ${sit_pwd}"
pdbedit -a -u sit
usermod -a -G ydd  sit


# 添加用户
smbpasswd -a <用户名>
	# 或
	pdbedit -a -u <用户名>
# 重置密码
smbpasswd <用户名>
# 删除用户 
pdbedit -x <用户名>

点我回顶部

防火墙配置

# 开启防火墙
systemctl start firewalld.service  
# 放行 samba  
firewall-cmd --add-service samba --permanent 
firewall-cmd --reload                    # 重新加载防火墙配置 
firewall-cmd --list-all | grep samba -q  # 查询防火墙信息 

# iptables 规则配置 
iptables -I RH-Firewall-1-INPUT 5 -m state --state NEW -m tcp -p tcp --dport 139 -j ACCEPT
iptables -I RH-Firewall-1-INPUT 5 -m state --state NEW -m tcp -p tcp --dport 445 -j ACCEPT
iptables -I RH-Firewall-1-INPUT 5 -p udp -m udp --dport 137 -j ACCEPT
iptables -I RH-Firewall-1-INPUT 5 -p udp -m udp --dport 138-j ACCEPT
iptables-save
service iptables  restart

设定安全的上下文关系

# 将 samba 目录共享给其他用户,
chcon -t samba_share_t  <共享目录>  # 修改对象的安全上下文 
# 第二种方法, 
semanage fcontext -a -t samba_share_t <共享目录>
restorecon -FRv /home/kevin  # 刷新上下文,使其立即生效 
#如果samba服务器共享目录给多个域,则需要:
setsebool -P allow_smbd_anon_write=1
//If you are setting up this machine as a Samba server and wish to share the home directories
samba服务器要共享家目录时:
setsebool -P samba_enable_home_dirs 1
//If you want to use a remote Samba server for the home directories on this machine
如果你需在本机上使用远程samba服务器的家目录
setsebool -P use_samba_home_dirs 1
//You can disable SELinux protection for the samba daemon by executing

setsebool -P samba_domain_controller 1 
# 可读可写
setsebool -P samba_export_all_rw 1
# 只读
setsebool -P samba_export_all_ro 1



# 关闭selinux关于samba的进程守护的保护
setsebool -P smbd_disable_trans 1    # 0是关闭 1是开启
# 查询SElinux策略内各项 samba 规则的布尔值 
[root@localhost ~]# getsebool -a   | grep smb  
smbd_anon_write --> off
[root@localhost ~]# getsebool -a   | grep samba 
samba_create_home_dirs --> off
samba_domain_controller --> off
samba_enable_home_dirs --> off
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

点我回顶部

本地系统设置访问读写权限

# 设置文件访问权限 
setfacl -R -m g:sit:rwx  <目录>   # 设置用户组权限 
setfacl -R -m u:sit:rwx  <目录>   # 设置用户权限 
# 获取文件权限信息 
getfacl  <文件>

Pdbedit 用法

# 命令用于管理Samba服务的帐户信息数据库
pdbedit -a username    # 新建Samba账户
pdbedit -x username    # 删除Samba账户
pdbedit -r -u user     # 修改samba用户信息
pdbedit -L             # 列出Samba用户列表,读取passdb.tdb数据库文件。
pdbedit -Lv            # 列出Samba用户列表详细信息。
pdbedit -c “[D]” -u username    # 暂停该Samba用户账号。
pdbedit -c “[]” -u username     # 恢复该Samba用户账号。

Smbpasswd 用法

smbpasswd -a user   # 添加一个samba用户
smbpasswd -d user   # 禁用一个samba用户
smbpasswd -e user   # 恢复一个samba用户
smbpasswd -x user   # 删除一个samba用户
点我回顶部

其他

# 重新加载配置
smbcontrol all reload-config
# 允许用户执行共享上的所有文件, 
acl allow execute always = yes
# 添加网络映射到指定驱动器号
net use H: \\server\users\demo\ /persistent:yes


# 用户管理
https://wiki.samba.org/index.php/User_and_Group_management

Windows 下相关转发

查看网络连接 -- 可删除缓存,用于切换登录用户

# 显示当前网络连接列表
net use 
# 删除一个网络连接配置 
net use 远程连接名称 /del
# 一次性全部删除
net use * /del
# 若以上方法不管用,可进入控制台删除网络凭证

Windows 设置 Smb 端口转发

# 使用管理员权限
# 查看端口转发
netsh interface portproxy show all
# 配置端口转发
netsh interface portproxy add v4tov4 listenport=445 listenaddress=127.0.0.1 connectport=samba服务器地址 connectaddress=samba端口
# 清除所有端口转发规则
netsh interface portproxy reset
点我回顶部

访问 Samba 服务器

服务器 --- Linux

1、安装samba client
	sudo apt-get install smbclient
	yum install samba-client
2、获取指定 Samba 服务器的共享列表
	smbclient -L 192.168.1.1 -U <username>
	smbclient -L 192.168.1.1 -U <username> --workgroup=SAMBA
3、连接共享目录 -- 交互式
	smbclient 192.168.1.1/<共享目录名> -U username
4、连接共享目录 --- 一次性连接共享目录进行指定操作后退出 
	smbclient -U sit -c 'ls'  //172.16.89.129/<共享目录名>

服务器 --- Windows

# 1、快捷键 `Win + E` 打开文件资源管理器
# 2、在地址栏中输入 `\\<Samba 服务器地址>`
	若需要验证则再输入用户名和密码登录

Apple --- Mac

# 1、打开访达
# 2、快捷键 `Cmd + K` 连接文件服务器 
	输入samba 服务器 IP ,
	若需要验证则再输入用户名和密码登录

mac如何访问windows共享文件夹--- samba 服务器

点我回顶部

Linux 挂载 samba 地址

# 1、安装 
	apt install cifs-utils
	# or 
	yum install cifs-utils
# 2、在本地创建一个挂载点目录
	sudo mkdir /home/user/shareFiles
# 3、挂载 
	sudo mount -t cifs -o username=xxx,password=xxx //<目标IP地址或主机名>/<共享目录名>  <挂载点目录>
	mount -t cifs //192.168.1.65/linuxsamba /database -o username=smbuser,password=123456,rw,file_mode=0777,dir_mode=0777,setuid=509,setgid=101
	# 或者
mount -t cifs //192.168.1.65/linuxsamba /database -o username=smbuser,password=123456,rw

参考网址

Linux下安装部署Samba共享盘的操作手册

腾讯云---Linux/centos上如何配置管理samba服务器

Linux/centos上如何配置管理samba服务器?

Samba服务器的配置与管理

samba客户端的使用与服务端的搭建

Linux系统工程师3.5网络文件系统

smb协议详解和samba服务的配置

使用POSIX ACL设置共享

将Samba设置为独立服务器

smb.conf--- man手册

Samba命令帮助文档

帮助文档-----002文章来源地址https://www.toymoban.com/news/detail-747079.html

点我回顶部

自动化配置脚本

# 


到了这里,关于搭建Samba服务器攻略的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 在windows系统中映射网络驱动器时,如何通过非455端口远程访问Linux服务器的Samba服务

    通常情况下,在windows中通过Linux服务器的Samba服务去映射网络驱动器时候,一般默认就是直接填入内网Linux服务器ip即可,它会默认445端口。 若是我的windows并不和Linux服务器在一个网段时,该如何操作呢? 是 pid 为 4 的进程进行监听。 右键 电脑–管理–服务和应用程序–服务

    2024年02月11日
    浏览(19)
  • 【Linux入门指北】samba服务器搭建篇

    Linux之samba服务器 首先介绍一下samba的由来,Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成。 原本SMB协议是windows和windows(网上邻居)之间分享资源的一种协议。Linux找到微软,也想把该协议用在window和Linux的文件共享上,可微软没有同意,于

    2024年02月04日
    浏览(20)
  • 安装samba服务器

    1.实验目的 (1)了解SMB和NETBIOS的基本原理 (2)掌握Windows和Linux之间,Linux系统之间文件共享的基本方法。 2.实验内容 (1)安装samba服务器。 (2)配置samba服务器的安全级别为用户级。 (3)配置用户的共享。 (4)测试Windows和Linux之间的文件共享。 (5)测试Linux用户之间的

    2024年02月08日
    浏览(21)
  • Linux系统安装Samba服务器

    在实际开发中,我们经常会有跨系统之间文件传递的需求,Samba 便是能够在 Windows 和 Linux 之间传递文件的服务,功能也是非常强大和好用,本篇文章将介绍如何在 Linux 系统上安装 Samba 服务,以 CentOS7 系统为例。 首先,我们通过 yum 包管理工具在 CentOS7 系统上安装 Samba 服务。

    2024年01月22日
    浏览(22)
  • Ubuntu 安装配置Samba服务器

    一、描述 Samba文件服务器可以在网络上实现不同操作系统的文件共享。它可以让你从笔记本电脑访问你的桌面文件,并与Windows和macOS用户共享文件。 Samba是通过Network (LAN)局域网来实现的。 二、安装 要安装Samba,我们运行: 我们可以通过运行以下命令来检查安装是否成功: 输出

    2024年02月07日
    浏览(22)
  • linux centos系统搭建samba文件服务器 NetBIOS解析 (超详细)

    作者主页: 点击! Linux专栏:点击! 前言———— Samba 是一个开源软件套件,可为 SMB/CIFS 客户端(包括 Windows)提供文件和打印服务。通过设置 Samba 文件服务器,您可以在网络上共享文件和资源,从而实现不同操作系统之间的无缝协作。 在CentOS上搭建Samba文件服务器的过程

    2024年03月11日
    浏览(27)
  • 在Ubuntu上安装samba服务器

    在Ubuntu上安装samba服务器 Samba服务器是一个工作Linux上的程序,允许共享文件目录在不同的操作系统上。 为什么要使用Samba 在工作中,我们的工作环境一般都是Window操作系统,但是编译环境一般的Linux系统,这个时候我们需要查看并修改代码,先把Linux上的代码拷贝到Window上修

    2024年02月12日
    浏览(21)
  • Samba 服务器的安装和简单配置

    ​ Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成。SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种通信协议,它为局域网内的不同计算机之间提供文件及打印机等资源的共享服务。SMB协议是客户机/服务器型协

    2024年03月13日
    浏览(38)
  • 基于Ubuntu22.04的Samba服务器搭建教程(新手保姆级教程)

    Samba 是在 Linux 和 UNIX 系统上实现SMB 协议的一个免费软件,由服务器及客户端程序构成。SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种通信协议,它为局域网内的不同计算机之间提供文件及打印机等资源的共享服务。SMB协议是客户机/服务器型

    2024年04月08日
    浏览(17)
  • 麒麟V10服务器 安装samba 软件,并且实现远程连接,安装samba服务共享文件夹(压缩包形式)

    百度网盘 以下是在Linux系统中使用压缩包方式安装Samba服务的步骤: 首先,您需要下载Samba软件包。您可以从Samba官方网站(https://www.samba.org/)下载最新版本的Samba软件包。 1 上传 压缩包到服务器 以上就已经安装完成samba 软件,并且已经启动,那么如何使用 比如现在有两个服

    2024年02月01日
    浏览(43)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包