1.安装软件包
rpm -q samba samba-common samba-client cifs-utils
yum -y install samba samba-common samba-client cifs-utils

smbd 管理Samba主机共享的目录,文件与打印机等。使用TCP 139 445进行可靠的数据传递
nmbd 管理工作组、NetBIOS Name等解析,使用UDP 137 138来负责名称解析的任务
2.修改主配置文件

security
share 不需要密码可以访问
user 需要密码(默认)
smbclient -L 服务器ip
smbclient -U 账户名 //服务器ip/共享名

useradd nick
useradd hunter
smbpasswd -a nick 等于 pdbedit -a nick 设置密码
cd /etc/samba/
[root@test01 samba]# cp smb.conf smb.conf.bak
[root@test01 samba]# vim smb.conf
workgroup = Tarena 工作组
server string = Windows Server 2008 链接时的提示(建议改掉默认)
[tools]
path = /usr/src //指定共享路径
public = no //不对所有人开放
read only = yes //默认的权限为只读
valid users = nick,hunter //指定合法用户
write list = hunter //用户hunter可读可写
3.启动服务
[root@test01 samba]# testparm 检测配置命令
[root@test01 samba]# service smb,nmb restart; chkconfig nmb,smb on
[root@test01 samba]# netstat -tulnp | grep smb
tcp 0 0 0.0.0.0:139 0.0.0.0:* LISTEN 1489/smbd
tcp 0 0 0.0.0.0:445 0.0.0.0:* LISTEN 1489/smbd
tcp 0 0 :::139 :::* LISTEN 1489/smbd
tcp 0 0 :::445 :::* LISTEN 1489/smbd

4.设置权限
[root@test01 ~]# setfacl -m u:hunter:rwx /usr/src/
[root@test01 ~]# getfacl /usr/src/
5.测试
Windows:
UNC路径 \\192.168.10.10
Linux:
[root@test02 ~]# yum -y install samba-client
[root@test02 ~]# smbclient -L 192.168.10.10
[root@test02 ~]# smbclient -U nick //192.168.10.10/tools
smb: \> !ls
anaconda-ks.cfg anon.txt install.log.syslog local.tgz
anon.tgz install.log lisi.txt
smb: \> put install.log
smb: \> quit
[root@test02 ~]# smbclient -U hunter //192.168.10.10/tools
smb: \> ls
smb: \> put install.log
smb: \> ls
smb: \> quit
[root@test02 ~]# mkdir /mnt/smbdir
[root@test02 ~]# mount -o username=nick,password=redhat //192.168.10.10/tools /mnt/smbdir/ 7不支持-o密码的设置了,只能手动
6.设置开机自动挂载
[root@test02 ~]# grep smbdir /etc/fstab
//192.168.10.10/tools /mnt/smbdir cifs defaults,username=nick,password=redhat 0 0 还可以调用文件credentials=文件 文件权限600
[root@test02 ~]# mount -a
[root@test02 ~]# df -hT

试验二:Samba账户别名与访问地址控制

1.修改Samba用户别名文件
[root@test01 ~]# vim /etc/samba/smbusers
# Unix_name = SMB_name1 SMB_name2 ...
root = administrator admin
nobody = guest pcguest smbguest
hunter = hijack
2.修改主配置文件
[root@localhost ~]# vim /etc/samba/smb.conf
 username map = /etc/samba/smbusers                                                别名

 [tools]
 path = /usr/src
 public = no
 valid users = nick,hunter                                                                 有效用户
 write list = hunter                                                                           可写用户
 hosts allow = 192.168.10.20                                                            访问控制
3.客户端测试
[root@test02 ~]# smbclient -U hijack //192.168.10.10/tools
Enter hijack's password:
Domain=[TARENA] OS=[Unix] Server=[Samba 3.6.9-164.el6]
smb: \> ls

针对RHEL7

设置防火墙等
Firewall-cmd --permanent --add-service=samba; firewall-cmd --reload
semanage fcontext -a -t samba_share_t '/smb1(/.*)?' (chcon -R -t samba_share_t /smb1)               smb1为共享目录
restorecon -RFvv /smb1/

semanage fcontext -l | grep smb1                                                                                               查看内核默认上下文

//ip/smb1 /mnt/smb1 cifs defaults,credentials=/root/smb1.passwd 0 0
Chmod 600 /root/smb1.passwd

//ip/smb2 /mnt/smb2 cifs defaults,credentials=/root/smb2.passwd,multiuser,sec=ntlmssp 0 0
/root/smb2.passwd 写任意一个能访问的 chmod 600 /root/smb2.passwd
基于多用户安全
su - 用户
cifscreds add server0(服务器) 分层管理,,(针对多用户,有的可读,有的可写)

例子
多用户挂载
读写 setfacl -m u:ldapuser5:rwx /smb2
Vim /etc/samba/smb.conf
[smb2]
Path = /smb2
Valid users = user1, user2, @hr
Write list = user2
Systemctl enable nmb smb;systemctl restart nmb smb
semanage fcontext -a -t samba_share_t '/smb2(/.*)?' (chcon -R -t samba_share_t /smb1)
restorecon -RFvv /smb2/
客户端
Vim /etc/fstab

//ip/smb2 /mnt/smb2 cifs defaults,credentials=/root/smb2.passwd,multiuser,sec=ntlmssp 0 0
/root/smb2.passwd 写任意一个能访问的 chmod 600 /root/smb2.passwd

cifscreds add server0

samba安装与配置的更多相关文章

  1. centos7 samba安装与配置

    1.关闭防火墙. CentOS 7 是自带的firewall,CentOS 6 好像是iptables.关闭防火墙命令如下: 第一种方法是关闭防火墙: systemctl disable firewa ...

  2. Samba安装及配置

    samba 可以实现Windows对Windows . Windows对Linux.Linux对Linux的文件传输 在centos7安装samba yum install samba 启动samba ...

  3. Ubuntu samba 安装与配置 实现windows和虚拟机中的Ubuntu共享文件

    2.    安装sumba服务 sudo apt-get install samba samba-common 这里出现了小问题, Ubuntu上安装samba不能安装的问题,“下列的软件包有不能满足 ...

  4. samba安装和配置

    windows和windows系统之间要实现文件共享是通过网络邻居实现linux和windows之间通过什么来实现文件共享呢?一.通过文件挂载(首先要制作ISO镜像文件,然后在用挂载命令)二.通过sa ...

  5. Ubantu 16.4 samba安装配置

    本文总结了Ubantu 16.04 环境下的samba安装.配置及使用.本文为原创,也是我的第一篇博客,以后会经常写博客,记录自己的学习.总结及研究,让博客见证着我成长的轨迹. 下文中的所有命令均使用 ...

  6. CentOS 7下Samba服务安装与配置详解

    1. Samba简介 Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成.SMB(Server Messages Block,信息服务块)是一种在局域网上共 ...

  7. 【samba】samba 用户权限配置(转)

    首先要保证你的samba安装并配置好,关于安装和配置samba请参考此文章 http://blog.csdn.net/linglongwunv/archive/2010/01/19/5212875.a ...

  8. CentOS 6.3下Samba服务器的安装与配置方法(图文详解)

    这篇文章主要介绍了CentOS 6.3下Samba服务器的安装与配置方法(图文详解),需要的朋友可以参考下   一.简介  Samba是一个能让Linux系统应用Microsoft网络通讯协议的软件, ...

  9. CentOS 6.3下Samba服务器的安装与配置

    一.简介 Samba是一个能让Linux系统应用Microsoft网络通讯协议的软件,而SMB是Server Message Block的缩写,即为服务器消息块 ,SMB主要是作为Microsoft的 ...

随机推荐

  1. Appium基于安卓的各种FindElement的控件定位方法实践和建议

    AppiumDriver的各种findElement方法的尝试,尝试的目标应用是SDK自带的Notepad应用. 1. findElementByName 1.1 示例 el = driver.fin ...

  2. AngulaJS实战

    AngulaJS实战总结, 带你进入AngularJS世界(待续)   使用AngularJS  进行Hybrid App 开发已经有一年多时间了,这里做一个总结. 一.AngularJS 初始化加载 ...

  3. php——SoapClient访问webservice

    原文:php--SoapClient访问webservice 通过SoapClient调用天气预报 <?phpheader ( "Content-Type: text/html; ch ...

  4. 【麦子学院】OpenCV教程函数总结

    个自带样例. parter 1: No1. adaptiveskindetector.cpp 利用HSV空间的色调信息的皮肤检測,背景不能有太多与肤色相似的颜色.效果不是特别好. No2. bagof ...

  5. Nginx搭建反向代理服务器

    [大型网站技术实践]初级篇:借助Nginx搭建反向代理服务器   一.反向代理:Web服务器的“经纪人” 1.1 反向代理初印象 反向代理(Reverse Proxy)方式是指以代理服务器来接受int ...

  6. php soap调用asp.net webservice

    原文:php soap调用asp.net webservice 首先做一下准备工作,找到安装环境里的php.ini把;extension=php_soap.dll去掉前面的;.我这里使用的是wamp, ...

  7. Android多媒体-MediaRecorder 录制音视频

    不多说,直接上代码,有具体凝视 MyAudioRecord.java import java.io.File; import java.io.IOException; import android.a ...

  8. IntelliJ IDEA 发布13版本——创造java奇迹

    IntelliJ IDEA被公认为业界最好的Java开发平台.此次发布的了13版本,更是集合了与Java EE.Android.Spring.Scala和Gradle最新合作与支持. Java EE  ...

  9. solr的配置文件及其含义

    solr与.net系列课程(二)solr的配置文件及其含义    solr与.net系列课程(二)solr的配置文件及其含义  本节内容还是不会涉及到.net与数据库的内容,但是不要着急,这都是学时s ...

  10. ThoughtWorks 面试

    ThoughtWorks 面试备忘录   ThoughtWorks 面试备忘录 前言 前段时间 ThoughtWorks 在网上和拉勾网合作搞了一次网络招聘,名为抛弃简历!让代码说话!可谓赚足了眼球, ...