当前位置:   article > 正文

samba 服务搭建_samba搭建

samba搭建

目录

引言:

一、samba 简介

二、samba 服务的特点

三、samba的主要应用

四、常见文件服务器软件的比较

五、samba服务搭建 

         5.1 安装Samba服务

5.2 启动服务

5.3 创建用户

5.4 pdbebit 参数说明

5.5 修改配置文件 

5.6 创建共享文件夹

5.7 设置samba用户登陆密码 

六、windows客户端验证 

七、总结 

引言:

Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成。原本SMB协议是windows和windows(网上邻居)之间分享资源的一种协议。Linux找到微软,也想把该协议用在window和Linux的文件共享上,可微软没有同意,于是Linux通过逆向方法实现了SMB协议,为了与SMB区分并将其取名为SAMBA协议。

一、samba 简介

Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成。SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种通信协议,它为局域网内的不同计算机之间提供文件及打印机等资源的共享服务。SMB协议是客户机/服务器型协议,客户机通过该协议可以访问服务器上的共享文件系统、打印机及其他资源。通过设置“NetBIOS over TCP/IP”使得Samba不但能与局域网络主机分享资源,还能与全世界的电脑分享资。

二、samba 服务的特点

smaba最大的特点就是可以用于linux和windows之间进行文件共享和打印机共享samba不仅仅可以用于linux和windows之间。
samba还可以用于两台linux之间共享。
由于linux平台诞生了一个更好的工具,nfs网络文件共享系统,专门用于linux之间文件数据共享●因此samba更多是使用linux和windows之间。

三、samba的主要应用

  1. 文件共享(最主要作用)
  2. 打印服务器
  3. samba登陆时身份验证
  4. 由于samba基于Netbios,所以可以进行 windows的主机名解析

四、常见文件服务器软件的比较

服务名称使用范围服务器端客户端局限性
FTP局域网和公网

Windows

Linux

Windows

Linux

无法直接在服务器端修改数据
Samba内网

Windows

Linux

Windows

Linux

只能在内网使用
NFS内网和公网LinuxLinux只能在Linux之间使用

五、samba服务搭建 

实验目的

在linux虚拟机上(centos7环境)搭建一个samba服务并且在windows客户端访问

5.1 安装Samba服务

  1. yum install -y samba //安装samba 服务
  2. yum list samba //列出软件包的信息
  3. yum remove samba //卸载软件包
  4. yum check-update samba //检查是否有可更新的软件包
  5. yum update samba //更新samba软件包

5.2 启动服务

  1. systemctl start smb.service
  2. systemctl enable smb.service
  3. systemctl stop firewalld
  4. setenforce 0

5.3 创建用户

  1. groupadd test
  2. useradd -M lichen -s /sbin/nologin/ -g test
  3. useradd -M zhangbin -s /sbin/nologin/ -g test
  4. id lichen
  5. id zhangbin

5.4 pdbebit 参数说明

  1. -a, --create 新建samba用户
  2. -r, --modify 修改samba用户
  3. -x, --delete 删除samba用户
  4. -L, --list 列出全部samba用户,读取passdb.tdb数据库文件
  5. -v, --verbose 显示详细信息
  6. -c, --account-control=STRING 账户控制值
  7. -w, --smbpasswd-style 以smbpasswd格式输出
  8. -u, --user=USER 使用的用户
  9. -N, --account-desc=STRING 设置账户描述
  10. -f, --fullname=STRING 设置全名
  11. -h, --homedir=STRING 设置家目录
  12. -D, --drive=STRING 设置家设备
  13. -S, --script=STRING 设置登陆脚本
  14. -p, --profile=STRING 设置配置文件路径
  15. -I, --domain=STRING 设置用户域名
  16. -U, --user SID=STRING 设置用户SID或RID
  17. -M, --machine SID=STRING 设置设备SID或RID
  18. -m, --machine 账户是一个设备账户
  19. -b, --backend=STRING 使用不同的passdb作为默认后端
  20. -i, --import=STRING 指定后段导入用户账户
  21. -e, --export=STRING 导出用户账户到指定后端
  22. --policies-reset 恢复默认策略
  23. -P, --account-policy=STRING 帐户策略的值(如最大密码有效期)
  24. -C, --value=LONG 设置账号策略值
  25. --force-initialized-passwords 强制初始化passdb后端
  26. -z, --bad-password-count-reset 重置错误密码
  27. -Z, --logon-hours-reset 重置登陆时间
  28. --time-format=STRING 时间参数的格式
  29. -t, --password-from-stdin 从标准输入获取密码
  30. -K, --kickoff-time=STRING 设置开始时间
  31. --set-nt-hash=STRING 从nt-hash设置密码
  32. -d, --debuglevel=DEBUGLEVEL 设置debug级别
  33. -s, --configfile=CONFIGFILE 使用备用配置文件
  34. -l, --log-basename=LOGFILEBASE 设置日志文件的基本名称
  35. -V, --version 输出版本号
  36. --option=name=value 从命令行设置smb.conf选项
  37. -?, --help 显示帮助信息
  38. --usage 显示简要的使用信息

5.5 修改配置文件 

编辑配置文件,添加一个以test作为网络共享文件名的共享目录。

  1. vim /etc/samba/sbm.conf
  2. [test] #共享文件名称(也就是客户端访问时可以看到的那个名字)
  3. comment = this is test #共享文件夹的描述
  4. path = /home/ceshi #共享文件夹路径
  5. public = yes #是否允许guest账户访问
  6. writable =yes #是否有写权限
  7. directory mask = 0777 #默认创建目录权限
  8. create mask = 0777 #默认创建文件权限
  9. valid users = @test,root #设置允许访问共享目录的用户@后跟组名,不写此行就对所有用户开放
  10. write list = @test,root #设置有写权限的用户@后面跟的是组名
  11. browseable = yes #该指定共享目录可浏览
  12. available = yes #该指定共享资源可使用

  testparm可以用来检测配置文件中是否有语法错误

5.6 创建共享文件夹

  1. mkdir ceshi
  2. cd ceshi/
  3. echo "hello" > 1.txt
  4. mkdir yy
  5. chmod 777 ceshi/

  1. systemctl restart smb.service 启动服务
  2. systemctl reload smb.service 加载配置文件

5.7 设置samba用户登陆密码 

  1. smbpasswd -a lichen # 将本地用户跟samba用户进行映射
  2. smbpasswd -a zhangbin
  3. pdbedit -a -u lichen
  4. pdbedit -a -u zhangbin
  5. pdbedit -L #查看加入samba服务的用户

六、windows客户端验证 

win+R \\192.168.223.11

在客户端上创建文件测试

测试成功

七、总结 

session 2 两个端口的使用情况
可以在“网络连接/属性/TCPIP协议/属性/高级/WINS中设置启用或者禁用NBT(NetBIOS over TCP/IP)。
当计算机同时支持NTB和TCP/IP两种协议的时候,就面临着选择139或者445端口了。下面的情况确定会话使用的端口:
1、如果客户端启用了NBT,那么连接的时候将同时访问139和445端口,如果从445端口得到回应,那么客户端将发送RST到139端口,终止这个端口的连接,接着就从445端口进行SMB的会话了;如果没有从445端口而是从139得到回应,那么就从139端口进行会话;如果没有得到任何回应,那么SMB会话失败。

2、如果客户端禁用了NBT,他就将只从445端口进行连接。

3、如果服务器端启用NBT,那么就同时监听UDP 137、138端口和TCP139,445端口。如果禁用NBT,那么就只监听445端口了。

Samba是根据SMB协议实现的,主要用于Windows和Linux之间共享资源。139端口是在NBT协议基础上的,关闭NBT协议139就废了。而445端口是在TCP/IP协议基础上,现在网络中应该很少有不使用TCP/IP协议的了。最后如果主机两种协议同时支持的话(比如windowsxp以后的操作系统)那么共享访问时候的端口使用优先级为:445>139,所以现在UNC路径访问ip地址都是使用445端口,而访问主机名形式是使用139端口(现在基本不用了)。
关闭139端口的方法:“网络连接/属性/TCPIP协议/属性/高级/WINS中设置启用或者禁用NBT(NetBIOS over TCP/IP)
关闭445端口的方法:防火墙阻塞445端口或者禁用server服务都可以。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家自动化/article/detail/265808
推荐阅读
相关标签
  

闽ICP备14008679号