我决定将一台旧的灰盒计算机改造成一个集 NAS/家庭媒体服务器、无头 torrent 服务器和 minecraft 服务器于一体的服务器。我将其用作实用设备,同时也是学习 Ubuntu 和 Linux 的体验。
我无法确定以安全方式设置此类服务器的“最佳实践”。我读到过,建议将服务器上的每个不同服务或任务分配给不同的用户,以保持彼此分离。这是真的吗?
我希望这台计算机提供以下服务:
- Samba 和/或 NFS(我将连接 Mac 和 Windows 客户端;我应该只使用 Samba,还是两者都使用?)
- transmission-daemon 带有监视文件夹
- 我的世界服务器
将来我可能会添加:
- Plex 媒体服务器
- 亚音速
什么是正确的用户和权限布局,以确保所有人都能访问我的所有媒体文件所在的目录,同时还能按用户帐户分隔每个服务?
先感谢您!
答案1
我读到过,建议将服务器上的每种不同服务或任务分配给不同的用户,以便将各个服务或任务区分开来。这是真的吗?
理想情况下,您会想要这样做,但这也取决于您的设置。您是否会有访客想要访问您服务器上的文件夹?如果是这样,您可以通过 samba 共享该文件夹并授予其 775 个权限,或者您可以创建一个“访客”用户并授予该文件夹 770 个权限,并让您的访客使用预设密码以“访客”身份登录。
Samba 和/或 NFS(我将连接 Mac 和 Windows 客户端;我应该只使用 Samba,还是两者都使用?)
如果您有 Windows 计算机,则必须使用 Samba,但它通常比 NFS 慢。我在 OSX 上使用 NFS 的经验并不丰富,但两者都很容易设置,但我将从 Samba 开始,因为它适用于 Windows 和 OSX。如果您不喜欢 Samba,您可以尝试使用 NFS。但是使用 NFS 时,您可能会遇到 UID 与服务器上的用户名不匹配的问题。
/etc/samba/smb.conf 是您需要编辑的文件,以便通过 samba 共享文件。
使用 NFS 时,您需要查看 /etc/exports 文件。
什么是正确的用户和权限布局,以确保所有人都能访问我的所有媒体文件所在的目录,同时还能按用户帐户分隔每个服务?
我将创建一个组(如“用户”),当您创建新用户时,如果您希望他们能够访问“媒体”文件夹之类的内容,请确保他们在“用户”组中,并确保“媒体”文件夹在“用户”组中,并且“用户”组有权访问“媒体”文件夹。
我在运行许多类似程序的服务器上执行的方式如下:
所有媒体都在 /opt/media 中,而 /opt/media 属于“用户”组。然后,我为我和我的室友建立了几个帐户,它们都属于用户组。/opt/media 的文件权限是 drwsrws---“s”表示当我的室友“bob”将文件放入 /opt/media 中时,它会自动归属于父目录所属的组(用户)。因此,现在“bob”创建的文件归“bob”所有,并且属于“用户”组。当不同的人使用共享目录时,这通常是您想要的设置。
您要做的事情有点复杂,可能会根据访问服务器的用户数量和网络设置方式而改变。不过希望以上内容能为您指明正确的方向。