Samba 服务器搭建

这里采用 Ubuntuapt 源安装方式, 所以直接采用最简单部署即可.

直接最快安装:

1
2
# 安装 samba 服务
sudo apt install samba

常规来说内网 samba 服务都是基于局域网, 所以内网的话只需要进行公网直接开放即可.

这里还需要准备个系统账号(smb)负责进行服务管理:

1
2
3
4
5
6
# 创建不允许登录的账户
sudo useradd smb -s /sbin/nologin

# 设置 smb 管理账户密码进行最高管理
# 实际上内网全部人都有可以读写删除等, 没什么其他意义
sudo smbpasswd -a smb

账号信息配置之后就是设置硬盘空间来放置文件, 这里本人服务器挂载了 /storage 新硬盘, 所以文件都是放置于此:

1
2
3
sudo mkdir /storage/smb # 创建目录放置
sudo chown -R smb:smb /storage/smb # 目录权限
sudo chmod -R 777 /storage/smb # 读写权限

配置修改

最后就是完成配置修改: /etc/samba/smb.conf

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
#======================= 全局配置 =======================
[global]

#### Browsing/Identification ####

# 设置为与Windows一样的workgroup, 实际上默认即可
workgroup = WORKGROUP

# 服务器连接时候输出给客户端标题内容
server string = %h server (Samba, Ubuntu)

# 注意配置以下字符串, 设置window采用 cp932(gbk)/linux采用 utf8
dos charset = cp932
unix charset = UTF8
display charset = UTF8


#### Networking ####
# 网络绑定端口设置实际上不需要修改


#### Debugging/Accounting ####

# 日志文件
log file = /var/log/samba/log.%m

# 日志最大长度
max log size = 65535

# 日志写入方式
logging = file

#### Authentication ####
# 默认的权限不需要怎么处理


#==================== Share Definitions ====================

# 追加新的可访问配置
[share]

# 描述内容
comment = Public Samba By %h

# 保存的本地目录
path = /storage/smb

# 允许远程管理的账号
valid users = smb

# 设置允许浏览
browseable = yes

# 设置允许写入
writable = yes

# 设置文件生成初始权限(内网直接暴露全部)
create mask = 0777

# 设置目录生成初始权限(内网直接暴露全部)
directory mask = 0777

# 设置不允许被直接无权限访问
public = no
guest ok = no

# 设置共享资源可用
available = yes

重启系统服务挂载:

1
2
sudo systemctl restart smbd.service # 重启服务
sudo systemctl enable smbd.service # 开机启动

访问配置

Window 直接 Win + R 运行窗口输入 \\内网服务器\share 输入共享 smb 账号密码测试创建文件.

之后再其他设备访问查看就能知道是否成功.