周末在折腾群晖时遇到这么一个需求,想要在网上邻居中对于无权限的用户把根目录的共享文件夹隐藏掉,在研究了半天后终于把这个问题完美解决了,下面和大家分享下解决这个问题的几个方法。
1、 方法一
第一种是一种迂回的方法,在控制面板->指定共享文件夹->编辑->常规选项卡中勾选下图这个选项,同时把需要控制权限的内容复制到该共享文件夹下的一个子目录中,然后在file station中对这个子目录设置用户的权限即可。
这么设置可以达到控制权限的目的,但是并不能对根目录的共享文件夹进行隐藏。
2、 方法二
第二种仍然是在刚才提到的共享文件夹的常规选项卡中设置,在上面那个设置的上面一行有下图这个选项,勾选这个后虽然可以正确的在网上邻居中隐藏共享文件夹,但是它的问题是对所有用户都隐藏了共享文件夹!即使你登录的是管理员用户,拥有所有共享文件夹的权限,在对指定共享文件夹设置了这个选项后,进入网上邻居时也会看不到那个共享文件夹了。不过如果在windows的文件夹地址栏中写全了共享文件夹的路径时(例如: \\xx.xx.xx.xx\your_sharefolder_name),有权限的用户还是可以进入这个共享文件夹目录的,但是相比于下面一种完美解决的方法的话还是有一些不方便的。
3、 方法三
第三种是一种完美解决的办法,由于网上邻居实质上是使用了samba服务,因此只需要在设置好用户的权限后按照下面的步骤修改下samba的配置文件即可。
- 首先需要登录DSM,进入控制面板->用户账号界面,选择需要设置权限的用户点击菜单中的编辑,弹出的界面中点击权限选项卡,之后的界面中对共享文件夹的权限进行设置,将需要隐藏的共享文件夹设置为禁止访问。
- ssh进入群晖,具体如何操作就不在这里赘述了,百度下就能找到相应的操作步骤
- 获得root权限
sudo -i
- 修改samba的配置文件:
vim /etc/samba/smb.conf
- 在文件中添加如下两行:
map to guest=never
access based share enum=yes
其中第一行是对进入samba的用户进行了严格控制,没有权限的用户是无法看到群晖里的内容的,第二行就是对根目录的共享文件夹进行权限控制,当前用户只能看到自己有权限的共享文件夹。
- 添加完成后保存重启smb服务(/sbin/restart smbd)或者重启群晖,再次进入网上邻居时就可以看到对于共享文件夹权限的控制生效了。
版权声明:本文为原创文章,版权归 nicolaszf 所有,转载请注明出处!
群辉DSM内核是Linux,读写文件方式和Linux一样。vim打开文件后,按i编辑,编辑完后,按esc输入:wq保存
do not modify 下面好多#还有几行英文命令。
map to guest=never
access based share enum=yes
这两行代码在什么位置添加?添加完成之后是否需要按回车?是否和word一样是按ctrl+s保存?
以上的操作是针对mac的么, 我使用windows操作的是不是不行。
windows支持的,前面那个提示应该是提示没权限,vim编辑前需要先sudo -i切换到root用户下再执行
输入vim /etc/samba/smb.conf 后提示 do not modify 怎么办啊
请问,白群晖,按方法3设置完以后,再从网络邻居进入文件夹的时候,怎么输密码都显示密码错误了,修改smb.conf把那两条删除的话,再从网上邻居进,也还是密码错误,这大概是为什么呢?
我是黑群,DS3615xs,版本是 DSM 5.2-5644 Update 5 。我按照文章中的第三种方法,直接修改smb.conf,保存不了,切换不到root,sudo -i提示 -sh: sudo: not found。
有什么解决办法吗?
查了下应该是和版本有关系,你试试直接使用root账户ssh登录或者使用原有账户ssh登录后使用su - root切换到root账户,root的密码和admin账号的密码一致。参照官网的说明(https://www.synology.com/zh-cn/knowledgebase/DSM/tutorial/Management/What_is_the_username_and_default_password_for_accessing_my_Synology_Product_via_Telnet_SSH)
我是黑群,DS3617xs,版本是DSM Ver6.2.2 。我按照文章中的第三种方法,修改了smb.conf,然后也存盘了。重启群晖后,smb.conf文件的内容,没有变化,还是修改前的样子。知道是什么原因吗?是群晖有文件防修改机制吗?有什么办法吗?
修改后使用/sbin/restart smbd命令重启下smb服务试试,这样是可以立即生效的,之后再重启群晖后进ssh看看配置是不是还会丢失。不过我这里白裙DS218+最新的系统直接重启看着也是可以成功保存配置的。
按照你说的方法,smb.conf文件修改成功了。但是,还有个问题,群晖默认的3个文件夹(home、homes、photo),还是不需要密码就可以在win10上用smb协议访问啊,这个有什么办法吗?我想让这3个文件夹,被访问时也需要输入账号和密码,有办法吗?
你说的情况我没太搞懂,之前其他文件夹也是可以无密码访问的吗?照理使用的账户在群晖的用户账号下设置了密码后,进入网上邻居时都是需要输入密码才能访问的呀,你是在用户账号的设置界面下开启了guest访问吗? 针对你说的三个文件夹,其中home&homes是群晖的家目录(概念上类似linux系统中/home目录下的用户目录),而home又是homes的子集,是群晖中每一个用户自己的目录,因此各个用户的home目录是独立的,而homes目录是拥有管理员权限的用户能看到所有用户home目录中的内容。如果本身没有多用户使用群晖的需求可以直接在"控制面板"->"用户账号"->"高级设置"界面中的下方关闭"启动家目录服务"的功能,这样也就不会存在这两个文件夹了。如果有多用户使用的需求且开启了家目录功能的,对于homes文件夹,可以在"控制面板"->"用户账号"界面中对指定账号编辑权限,在权限设置界面中选择禁止访问homes目录即可; 对于home文件夹,由于各个用户里面的内容是独立互不干扰的,因此也没有必要额外进行隐藏。对于PHOTO文件夹,群晖中对于这个文件夹的权限是需要在photo station套件中进行权限设置的,进入photo station界面后,点击"设置"->"用户账号",之后的界面中选中需要设置权限的账号,点击编辑->指定权限,之后的界面中取消所有勾选即可。如果刷新网上邻居没有生效的话可以再试下使用/sbin/restart smbd命令重启下smb服务。
1、在按照你这篇文章中的方法三设置之前,群晖里的其它共享文件夹,也都是可以无密码访问。
2、按照方法三设置后,在Win10的SMB里面看,其它文件夹都看不到了,只有home、homes、photo,这三个文件夹可以看到,并且可以无密码访问。
3、我需要使用Photo Station和Monents这两个套件,在安装&设置这两个套件时,记得系统提示需要home&homes这两个目录,所以才开启的这两个目录。
4、我现在群晖账号里,只有一个管理员账号admin,包括guest在内的其它账号都已经停用了。
5、photo station 套件里,设置的是使用和DSM相同的账号系统,并且没有单独设置新账号。使用的就是DSM的admin账号。
6、"对于 PHOTO 文件夹,群晖中对于这个文件夹的权限是需要在 photo station 套件中进行权限设置的,进入 photo station 界面后,点击 "设置"->"用户账号",之后的界面中选中需要设置权限的账号,点击编辑 -> 指定权限,之后的界面中取消所有勾选即可。"
→如第5点所述,现在群晖系统里只有一个admin账号,是使用中的。这个admin账号,在photo station的"设置"->"用户账号"里,无法进行权限设置。用户名列表里,没有admin。
7、我在win10侧,访问群晖共享文件夹时,没记得输入过账号和密码。我也看了下win10的控制面板-用户账户-管理你的凭据-Windows凭据,里面没有保存群晖的账号和密码。我也试了下家里另一台笔记本电脑,也是无密码就能直接方法群晖的共享文件夹。
评论区,每次只能写不超过200个字符的内容,我就不得不拆成多条写的,请见谅。(你为啥一次你能写那么多字符啊,哦,你是博客的主人,管理员嘛,O(∩_∩)O哈哈~)
用的评论插件默认是限制了200字符,我之前写的时候给提高了下 ,现在给扩大了,应该够用了。
1、你的admin账号登录DSM界面的时候需要输入密码吗?如果也是不需要密码的话可能是不是因为这个原因导致的win10访问共享文件夹不需要密码。不过出于安全考虑的话还是建议另外新建一个账号然后把默认的admin账户禁用掉使用比较好一些(尤其是如果有外网访问DSM需求的话)。
2、如果admin账号是有密码的话,能贴下smb.conf配置文件中的内容吗? 或者可以检查下里面是否有这两下配置:security = user; map to guest = Bad User。如果有的话把map to guest改成map to guest = never后重启下smb服务。然后再win10访问下群晖看看是否会要求密码登录了。
3、其实我没太懂你的需求,看你的描述的话像是想在网络邻居中隐藏群晖的共享文件夹(包括自己也不需要访问)。如果是这样的话可以直接关闭群晖中的smb服务即可,或者说如果你的群晖只有你一个人使用的话,也没必要设置我这个隐藏的操作,只要确保访问网络邻居中的群晖时必须要输入账号密码的话,外人其实就也看不到你群晖里面的内容了。我当初设置这个隐藏的需求是因为想给其他人开一个账号,然后想这个账号进入网上邻居后不要直接看到我群晖中所有的共享文件夹,即使他点击没有权限的共享文件夹时也会弹出没权限的弹窗。