专栏首页祥的专栏[Linux]搭建Samba服务器(ubuntu16.04)

[Linux]搭建Samba服务器(ubuntu16.04)

原创文章

文章目录
  • @[toc]

  • 1. Samba软件的安装与卸载
    • 1.1.安装
    • 1.2.卸载
    • 1.3.检查Samb版本
    • 1.4.检查和启动Samba服务
  • 2.配置前准备
    • 2.1. 建立Samba访问目录
    • 2.2. 创建用户账户
    • 2.3. 给samba服务添加用户(刚刚创建的那个用户)
  • 3.编辑配置文件
  • 4.重启服务
  • 5.Windows访问samba
  • 6. 添加多个用户或组

2018.12.17 Add: 新增:[Linux]Samba服务器支持访问软连接文件和目录: https://blog.csdn.net/humanking7/article/details/85058471

1. Samba软件的安装与卸载

1.1.安装

apt-get install samba samba-common
# 或者
aptitude install -y samba

1.2.卸载

apt-get autoremove samba

1.3.检查Samb版本

方法1:

root@HP-xw4600:~# smbd --version
Version 4.3.11-Ubuntu

方法2:

root@HP-xw4600:~# smbstatus
Samba version 4.3.11-Ubuntu
PID     Username      Group         Machine            Protocol Version       
------------------------------------------------------------------------------

Service      pid     machine       Connected at
-------------------------------------------------------

No locked files

1.4.检查和启动Samba服务

检查Samba服务是否正在运行

systemctl status smbd
systemctl status nmbd

要启动这两个服务

systemctl start smbd
systemctl start nmbd

开始运行后,smbd将在139445端口上侦听。

2.配置前准备

2.1. 建立Samba访问目录

建立samba访问目录,并且增加目录的权限

mkdir /srv/qfxFtp/HDD_sdb1/qfxSamba_share
chmod 777 /srv/qfxFtp/HDD_sdb1/qfxSamba_share

我把硬盘挂载到HDD_sdb1目录下,而整个qfxFtp目录是FTP服务器的目录,只是权限为只读。

2.2. 创建用户账户

默认情况下,Samba将用户设置为安全模式,这意味着客户端必须输入共享文件夹的用户名密码

简单的来讲:添加的Samba用户首先必须是Linux用户,所以先得创建一个新的Linux用户,你也可以用你原来的用户,只要你不怕泄露账户信息。

要在Ubuntu上添加用户,请运行以下命令(我在添加用户的时候,为了安全让该用户无法登陆)。 用你所需的用户名替换用户名,我这里命名为qfxsamba(原来个名字起名qfxSamba,其中S是大写,怎么添加名字都不对,最后仔细看提示,才知道命名有问题,但是命名到底错哪了?)

adduser -s /sbin/nologin qfxsamba

2.3. 给samba服务添加用户(刚刚创建的那个用户)

smbpasswd  -a   qfxsamba  #[输入访问Samba的密码,不是qfxsamba用户密码]

PS: smbpasswd命令的常用方法:

smbpasswd -a 增加用户(要增加的用户必须以是系统用户)
smbpasswd -d 冻结用户,就是这个用户不能在登录了
smbpasswd -e 恢复用户,解冻用户,让冻结的用户可以在使用
smbpasswd -n 把用户的密码设置成空.
             要在global中写入 null passwords -true
smbpasswd -x  删除用户

3.编辑配置文件

只有一个配置文件需要处理:/etc/samba/smb.conf

首先养成备份的好习惯,然后用Vim编辑:

cp /etc/samba/smb.conf /etc/samba/smb.conf.bak
vim /etc/samba/smb.conf

以下是要修改的部分

[global]
# 确保工作组的值与Windows计算机的工作组设置相同
 workgroup = WORKGROUP


# =====================================
#            add by Qfx
# =====================================
# "Qfx Share Dir"是将在Windows网络上显示的文件夹名称
# 该注释是共享文件夹的描述
# 可以访问/srv/qfxFtp/HDD_sdb1/qfxSamba_share/目录
# 可以写
# 指定有效用户
[Qfx Share Dir]
comment = Qfx share Folder
path = /srv/qfxFtp/HDD_sdb1/qfxSamba_share
writable = yes 
valid users = qfxsamba

4.重启服务

systemctl restart smbd

5.Windows访问samba

假设我的LinuxIP地址10.12.55.69

在Windows的文件浏览器中输入:

\\10.12.55.69

然后会跳出来登陆对话框,输入用户名和密码就可以登陆了(密码是通过smbpasswd -a qfxsamba设置的那个密码)

有可能出现的问题

Samba只支持NTLM认证,而WIN7VISTA则采用NTLMv2认证,因此必须经过一些设置才行,具体设置如下:

开始 -> 
运行 -> 
secpol.msc->
本地策略->
安全选项->
网络安全:LAN管理器身份验证级别->
发送 LM 和 NTLMv2 ,如果已协商,则使用NTLMv2 (会话安全 &)->
完成设置

6. 添加多个用户或组

现在能登录samba服务器的用户只有qfxsamba

以下方法还未检测:

如果多个帐户更适合访问共享文件夹,请在/etc/samba/smb.conf文件中更改如下所示的有效用户。

valid users = user1, user2, user3

还可以使用smbpasswd为每个用户设置Samba密码。

smbpasswd -a user1  #[输入访问Samba的密码,不是 user1 用户密码]
# 设置
smbpasswd -a user2  #[输入访问Samba的密码,不是 user2 用户密码]
# 设置
smbpasswd -a user3  #[输入访问Samba的密码,不是 user3 用户密码]
# 设置

要允许一组用户访问共享文件夹,请在/etc/samba/smb.conf中使用以下配置。

valid users = @sambashare

创建组

groupadd sambashare

然后将用户添加到此组

gpasswd -a qfxsamba  sambashare
gpasswd -a user1     sambashare
gpasswd -a user2     sambashare
gpasswd -a user3     sambashare

该组需要对共享文件夹具有写入权限,可以通过以下两个命令实现。

sambashare设置为共享文件夹的组所有者:

chgrp sambashare /path/to/shared/folder -R

授予组的写入权限:

chmod g+w /path/to/shared/folder/ -R

OK! 以上,Enjoy~

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • UCD:以用户为中心的设计

    UE 英文User Experience,缩写为UE, 或者UX。 • 指用户访问一个网站或者使用一个产品时的全部体验。他们的印象和感觉,是否成 功,是否...

    葆宁
  • 动画:面试必刷之二叉树中和为某一值的路径

    输入一棵二叉树和一个整数,打印出二叉树中节点值的和为输出整数的所有路径。从树的根节点开始往下一直到叶子节点所经过的节点形成一条路径。

    乔戈里
  • Balluga智能床来了,再不怕失眠!

    镁客网
  • Day24:二叉树中和为某一值的路径

    背景知识介绍   做本题时需要用到深度优先遍历,因此我们首先在维基百科了解深度优先遍历的相关知识。深度优先搜索算法(英语:Depth-First-Search...

    stefan666
  • 单模型可完成6项NLP任务,哈工大SCIR LTP再度升级,4.0版本面世

    LTP 的全称为「Language Technology Platform」,是哈工大社会计算与信息检索研究中心(HIT-SCIR)历时多年研发的一整套高效、高...

    机器之心
  • 获取目标的时间是目标距离和大小的函数。

    1954年,心理学家保罗费茨检验人体运动系统,发现移动到目标所需的时间取决于距离,但与其大小成反比。根据他的法律,由于速度精度的折衷,快速移动和小目标会导致更高...

    用户1080154
  • wordpress常用函数-随机文章获取和相关文章获取

    1、wordpress随机获取文章10篇文章,轻松实现wordpress文章的随机调用;

    wordpress建站吧

扫码关注云+社区

领取腾讯云代金券