@
Dukewill 可以加密传输,登录的话可以加密也可以免密(任何人都可以登录)。给你参考下我 Fedora 29 上的一个配置吧:
$ cat /etc/samba/smb.conf
[global]
workgroup = WORKGROUP
security = user
map to guest = Bad User
passdb backend = tdbsam
printing = cups
printcap name = cups
load printers = yes
cups options = raw
[homes]
comment = Home Directories
valid users = %S, %D%w%S
browseable = Yes
read only = No
inherit acls = Yes
[public-share]
browseable = Yes
read only = Yes
path = /home/smbshare
guest ok = yes
总结一下用途就是:
1 、用密码登录的用户,可以进入自己的主目录,即 /home/$user,进行任何操作。当然前提是这个用户存在且配置了 samba 密码
2 、任何人都可以免密码进入 /home/smbshare 目录,可以读和浏览。(有的系统可能会弹出登录框要求你输入用户名密码,这时候可以直接确认、或者选择匿名登录、或者随便乱输一个用户名然后确认。视情况而定)
配置完后 windows 资源管理器(或者 mac, linux 都行)地址栏直接输入 \\$servername_or_ip 就行
废话两句:
1 、samba [配置过程] 简单,但不熟悉的话,实际配置起来坑不少。而且可配置选项非常多,同一个需求可能有多种配置方法来实现;
2 、你说的网上的中文教程很多可能是针对旧版 samba,有的配置有变化。比如上面 map to guest = Bad User 是新版里允许免密码登录的配置(方法之一),在旧一些的 samba 里不是这么写的;
3 、samba 里的权限 ok 了,但还要注意 linux 目录和文件本身的权限是否 ok ( chmod )
4 、一些企业级 Linux 可能默认开启了 selinux,会导致一些奇奇怪怪的问题。比如 selinux 默认是不允许通过 samba 访问用户的主目录的,所以你还得在 selinux 里配置成允许 samba 访问 home 。或者若是对安全性没有要求的话,直接执行 sudo setenforce 0 关闭 selinux (我的那个配置如果用默认 selinux 设置的话,是无法实现上面列的用途 1 的)
建议搜索引擎里搜,参考 Red Hat 官方的文档,比较系统全面,比网上大多只言片语的文章好得多。
samba site:
redhat.com