“ssh”组的目的是什么?

“ssh”组的目的是什么?

我的系统上有一个名为 的系统用户sshd,以及一个名为 的组ssh

$ cat /etc/passwd | grep ssh
sshd:x:120:65534::/var/run/sshd:/usr/sbin/nologin
$ cat /etc/group | grep ssh
ssh:x:117:

我的猜测是用户sshd允许 OpenSSH 使用 port 22,并且/etc/ssh无需以 root 身份运行即可访问。

我假设该ssh组也是由 OpenSSH 创建的,但我找不到任何提及它的内容在文档中

这个新用户的目的是什么?

答案1

只有 root 用户才能在特权端口(例如端口 < 1024)中创建套接字。

openSSH 中用户ssh/组的使用是权限分离的。

该守护进程正在以 user 身份运行进程root,并且当接收连接时,chroot以非特权用户身份在环境中运行sshd

或者换句话说,它运行需要权限的部分操作root,以及他们可以作为非特权用户隔离的部分。

我将在此处留下该项目的链接,其中还有有关该主题的论文的链接。

http://www.citi.umich.edu/u/provos/ssh/privsep.html

论文:

http://www.citi.umich.edu/u/provos/papers/privsep.pdf

答案2

用户ssh是由 openssh-client 创建的。它被设置为 ssh-agent 二进制文件的组,该组已设置 setgid。最近该组已重命名为_ssh,表示它仅供内部使用。

来源:openssh-client postinst 脚本

相关内容