当前位置:首页 > CN2资讯 > 正文内容

samba 服务器状态 samba服务器工作原理

9小时前CN2资讯

samba原理

Samba服务功能强大,这与其通信基于SMB协议有关。SMB不仅提供目录和打印机共享,还支持认证、权限设置。在早期,SMB运行于NBT协议(NetBIOS over TCP/IP)上,使用UDP协议的137、138及TCP协议的139端口;后期SMB经过开发,可以直接运行于TCP/IP协议上,没有额外的NBT层,使用TCP协议的445端口。

(1)samba的工作流程
当客户端访问服务器时,信息通过SMB协议进行传输,其工作过程可以分成四个步骤:

步骤1:协议协商
客户端在访问Samba服务器时,发送negprot指令数据包,告知目标计算机其支持的SMB类型。Samba服务器根据客户端的情况,选择最优的SMB类型,并做出回应;

步骤2:建立连接
当SMB类型确认后,客户端会发送session setup指令数据包,提交帐号和密码,请求与Samba服务器建立连接,如果客户端通过身份验证,Samba服务器会对session setup报文作出回应,并为用户分配唯一的UID,在客户端与其通信时使用;

步骤3:访问共享资源
客户端访问Samba共享资源时,发送tree connect指令数据包,通知服务器需要访问的共享资源名,如果设置允许,Samba服务器会为每个客户端与共享资源连接分配TID,客户端即可访问需要的共享资源;

步骤4:断开连接
共享使用完毕,客户端向服务器发送tree disconnect报文关闭共享,与服务器断开连接。

(2)samba相关进程
Samba服务是由两个进程组成,分别是nmbd和smbd。
nmbd:其功能是进行NetBIOS名解析,并提供浏览服务显示网络上的共享资源列表。
smbd:其主要功能就是用来管理Samba服务器上的共享目录、打印机等,主要是针对网络上的共享资源进行管理的服务。当要访问服务器时,要查找共享文件,这时我们就要依靠smbd这个进程来管理数据传输

samba搭建

一、安装和启动samba
(1)使用命令rpm -qa | grep samba可以检查是否安装了samba服务,没有安装下载安装一个即可;
(2)关闭防火墙:可使用service iptables stop命令关闭防火墙,也可以对防火墙进行修改,放行某些端口(如445);
(3)samba服务操作:service smb start | stop | restart;如果想让samba服务开机自动加载,可使用ntsysv命令打开开机自动加载的服务,并勾选smb后按Tab键确认退出,即可实现开机加载samba服务;

二、配置samba服务

(1)samba服务的配置文件是 /etc/samba/smb.conf,smb.conf文件中包括4中结构,[Global]、[Homes]、[printers]、[Userdefined_shareName],其中Globa用于定义全局参数和缺省值;Homes用于用户的home目录共享;Printers用于定义打印机共享;Userdefined_ShareName用于自定义共享(可有多个)。(说明:文件中开头带有"#"为说明文件,不执行, 开头带有";"为举例文件,不执行(若想让其执行,去掉";"));

(2)配置全局参数[global]

1) 基本全局参数

workgroup 设置samba要加入的工作组;server string 指定浏览列表里的机器描述;netbios name 设置samba的NetBIOS名字 (需要自己添加);client code page 设置客户字符编码也 936为简体中文(需要自己添加);display charset、unix charset、dos charset是设置字符集(主要目的是支持中文,通过locale命令获取LANG的值,这里为zh_CN.GBK,可在相应的.bash_profile里添加export LANG=zh_CN.GBK后source即可); 

2) 日志全局参数

log file 指定日志文件的名称;max log size 指定日志文件的最大尺寸(KB)。

3) 安全全局参数

security 定义samba的安装等级:share:用户不需要用户名和密码即可登陆samba服务器;user:由提供samba服务的samba服务器负责检查帐户及口令;server:检查帐户及口令的工作指定由另一台WindowsNT/2000或samba服务器负责;domain:指定windowsNT/2000域控制器来验证用户帐户、密码;

encrypt passwords = yes

smb passwd file = /etc/samba/smbpasswd

这两行用于设定是否对samba密码进行加密,并指定加密文件存放路径。

hosts allow 定义允许访问此服务器的IP地址,如192.168.1. 意思为只有192.168.1.0这个网段的IP才能访问该服务器

(3)配置home共享[home]

由于在home共享默认将用户的宿主目录进行了共享,这是十分危险的。所以我们必须删除home共享,方法很简单,将所有的指令前加";"或"#",让这条指令不执行,也就不对用户的宿主目录共享了 

(4)配置自定义共享

自定义共享,只需在文件最后加入[$name],$name任意起,其参数意义为:comment 描述该共享的名称;path 定义该共享的目录;browseable 指定共享的目录是否可浏览;writable 指定共享的目录是否有写入权限;read only 指定共享的目录为只读权限;public 指定是否可以允许Guest帐户访问;guest ok 通public相同,yes为允许guest访问;only guest 指定只有guest用户可以访问;calid users 指定访问该共享的用户。 

(5)其他
1) 访问服务器需用户名和密码验证:命令行下输入smbpasswd -a test,使test用户同时成为samba用户(前提Global中设置security=user);smbpasswd -d test 禁用test用户作为samba用户、smbpasswd -e test 启用test用户作为samba用户、smbpasswd -x test 删除test用户作为samba用户;
2) 客户端只能通过用户访:在相应[Userdefined_shareName]中添加valid users = test,即可只允许该用户登录;
3) 上面实例中给出的是一个针对guest用户仅read功能的情况,那其中的东西该如何维护,可以新建一用户,其宿主目录设为/home/seqa_photo,仅该用户维护即可。

完成以上配置后重启samba服务,在文件窗口打开"\\\10.20.146.13"即可看到存放在linux上的内容。 

    你可能想看:

    扫描二维码推送至手机访问。

    版权声明:本文由皇冠云发布,如需转载请注明出处。

    本文链接:https://www.idchg.com/info/31977.html

    分享给朋友:

    “samba 服务器状态 samba服务器工作原理” 的相关文章

    腾讯云国际站:助力企业全球化发展的云计算服务平台

    腾讯云国际站是腾讯云为全球用户打造的云计算服务平台,其目的是为企业和开发者提供强大的技术支持。这一平台的核心特点在于其全球化的服务网络与数据中心布局,让每位用户都能感受到来自不同地区的高效服务。 全球服务与数据中心特点 我对腾讯云国际站的全球服务网络感到非常惊艳。它在全球开通了21个地理区域,涵盖了...

    选择Lisahost VPS服务,提升您海外电商、游戏和流媒体体验

    Lisahost 是一家于 2020 年 1 月成立的 VPS(虚拟专用服务器)提供商,专注于为全球用户提供高质量的云服务。我发现它的目标市场覆盖了包括香港、台湾、韩国、日本、新加坡、美国和英国等多个地区。作为一家新兴企业,lisahost 用创新的服务模式和多样化的产品,为需要高效网络及流畅访问的...

    选择最佳印度尼西亚 VPS 服务商的终极指南

    在了解印度尼西亚的虚拟专用服务器(VPS)之前,我们先来讲讲VPS的基本概念。简单来说,VPS是一种将一台物理服务器划分为多个虚拟服务器的技术。每个虚拟服务器都有独立的操作系统、资源和配置,让用户可以像使用独立服务器一样,获得更高的灵活性和控制权。这种方式不但能满足各种规模的业务需求,还能显著降低成...

    腾讯云轻量云:简单易用的云服务器解决方案

    当我回顾腾讯云轻量应用服务器(简称轻量云)时,我觉得它真的是一款设计出色的产品。作为腾讯云推出的一项云服务,轻量云专注于轻量应用场景,强调的是“开箱即用”和“简单易用”。无论是初学者还是开发者,都能轻松上手,快速构建所需的网站或应用。 轻量云的规格多样,具有多种CPU和内存的组合选项,如2核2GB和...

    解决Linode被封的问题与账户恢复策略分享

    Linode作为一款备受欢迎的美国VPS,其灵活性和服务质量吸引了众多用户。然而,基于我的经验,国内用户在使用Linode时常常面临被封的困扰。这不仅影响了使用体验,也对业务的持续性造成了影响。我想深入分析一下Linode被封的原因。 首先,Linode的全球网络状况在近年来遭遇了严峻挑战。随着越来...

    阿里云国际站:轻松注册与支付方式全解析

    什么是阿里云国际站? 在这个科技迅速发展的时代,云计算已经成为许多企业和个人开展业务的重要基础设施。阿里云国际站便是一处全球化的云计算服务平台,旨在为世界各地的用户提供高效、灵活和安全的云计算服务。它不仅支持多种功能,还具备强大的全球基础设施,能够满足不同用户的需求。 阿里云国际站被设定为一个面向全...