1、安装samaba服务程序

yum install -y samba

2、查看smaba文件,由于注释空行较多,选择过滤

egrep -v "#|;|^$" /etc/samba/smb.conf
#使用扩展的正则表达式,过滤多个条件,^$ 表示的就是空行

3、安全验证的四种方式:

  (1)share  来访主机无需验证口令;比较方便,但是安全性较差。

  (2)user    需验证来访主机提供的口令后才可以访问;提升了安全性。

  (3)server    使用独立的远程主机验证来访主机提供的口令(集中管理账户)

  (4)domain     使用域控制器进行身份验证。

4、samba用户后台的三种类型:

  (1)smbpasswd  使用smbpasswd命令为系统用户设置Samba服务程序的密码

  (2)tdbsam    创建数据库文件并使用pdbedit命令建立Samba服务程序的用户

  (3)ldapsam        基于LDAP服务进行账户验证

5、Samba服务程序的主配置文件包括全局配置参数和区域配置参数,全局配置参数用于设置整体的资源共享环境,对里面得每一个独立的共享资源都有效。区域配置参数则用于设置单独的共享资源,且仅对该资源有效。

6、在samba的配置文件中添加如下文件。

vim /etc/samba/smb.conf 
[database]             #共享名称为database
comment=Do not arbitrarily modify the database file #警告不要随意修改数据库
path=/home/database #共享目录为/home/database
public=no #关闭“所有人可见”
writable=yes #允许写入操作

7、创建用于访问共享资源的账户信息,Samba服务程序默认使用的是用户口令认证模式(user)。这种认证模式可以确保仅让有密码且受信任的用户访问共享资源。只有在建立账户信息数据库之后,才能使用用户口令认证模式,另外Samba服务程序的数据库要求账户必须在当前系统中存在。

8、使用pdbedit命令管理SMB服务程序的账户信息数据库

格式:pdbedit [选项] 账户

  第一次把账户信息写入到数据库时需要使用 -a 参数,以后在执行修改密码、删除账户等操作时就不再需要该参数了。

pdbedit 的命令参数以及作用:

  -a  用户名  建立 Samba 账户

  -x 用户名   删除 Samba 账户

  -L       列出账户列表

  -Lv     列出账户详细信息的列表

useradd test
pdbedit -a -u test #创建Samba用户

  注意:-u 后的用户必须已经存在系统中,不存在用户使用pdbedit是无效的。

9、/home是普通用户的家目录,读写可能有限制,修改所属组并生效。

chown -Rf test.test /home/database  #修改所属组
restorecon -Rv /home/database     #将修改生效

10、重启 smb 服务(Samba 服务程序为 smb),清空防火墙

systemctl restart smb    #打开smb服务
sysytemctl enable smb #开机自启动
iptables -F       #清空防火墙

11、在Windows的运行上输入 \\ip地址

  输入Samba的用户名和密码后:

  在linux系统中创建文件:abc.txt

  在windows中查看文件是否共享:

  创建一个test文件并上传:

  在linux系统查看:

  是乱码的现象,但是说明文件已经成功上传。

最新文章

  1. GDI画图,判断鼠标点击点在某一画好的多边形、矩形、图形里
  2. Android UI 之实现多级列表TreeView
  3. 抄书 Copying Books UVa 714
  4. "编写高质量代码"一书笔记
  5. Magento PHP Extension "curl" must be loaded解决方法
  6. 基于 libpcap库的sniffer程序
  7. ASP.NET 3.5路由总结篇
  8. bzoj2006
  9. ZOJ 3490 String Successor 字符串处理
  10. 程序设计实践C++ 程序代写(QQ 928900200)
  11. 定制openwrt的根文件
  12. 《CLR Via C#》读书笔记,持续更新...
  13. Ubuntu14.04下CUDA7.5安装与配置
  14. iOS开发实战-上架AppStore 通过内购和广告获得收益
  15. RAC(ReactiveCocoa)使用方法(二)
  16. [Swift]LeetCode524. 通过删除字母匹配到字典里最长单词 | Longest Word in Dictionary through Deleting
  17. jQuery应用一之验证插件validate的使用
  18. Flask web开发之路三
  19. 【转】eclipse运行 Ant报错Could not find the main class: org.eclipse.ant.internal.launching.remote.InternalAntRunner. Program
  20. Django---Xss过滤以及单例模式

热门文章

  1. IO、IO序列化
  2. Winform中使用DevExpress时给控件添加子控件的方法
  3. JSP官方文档(JavaServer Pages Specification)下载
  4. OPC-System.Runtime.InteropServices.COMException:“Error HRESULT E_FAIL has been returned from a call to a COM component.”
  5. 一文读懂NodeJS全栈开发利器:CabloyJS(万字长文)
  6. asp.net 导出excel带图片
  7. sql server 建表,主键与外键约束
  8. 生物医学命名实体识别(BioNER)研究进展
  9. 品Spring:注解之王@Configuration和它的一众“小弟们”
  10. Spring Boot2 系列教程(九)Spring Boot 整合 Thymeleaf