Confuso sobre grupos e adduser

2

Eu escrevi um script para adicionar usuários sFTP com chroot.

O comando useradd é:

sudo useradd -Ng sftponly -ms /bin/false "$USER"

Funcionou?

groups $USER
$USER : sftponly

Sim, sim. Ótimo!

Então eu dou uma olhada em / etc / group e não há USUÁRIO $ $ por exemplo. Eu tento entrar e sair (não preciso fazer - não sou $ USER) e nada muda. (para $ USER == yoko):

ftp:x:114:
sftponly:x:1003:george,john,paul,ringo
incron:x:115:

Por que estou vendo $ USER no grupo correto ao usar grupos, mas não em / etc / group?

    
por datakid 08.07.2013 / 02:08

2 respostas

3

Você não deve usar useradd , mas use adduser . No entanto, se você insistir em usar useradd , veja o que você deve fazer:

sudo useradd -Ng sftponly -G sftponly -ms /bin/false "$USER"

A opção -g apenas altera o arquivo /etc/passwd , tornando "sftponly" o ID do grupo principal (login) do usuário. A opção -G modifica /etc/groups .

    
por January 08.07.2013 / 13:01
2

Do useradd página de manual :

-g, --gid GROUP
    The group name or number of the user's initial login group.

O grupo de login inicial do usuário é aquele no quarto campo em uma linha do arquivo /etc/passwd . Se você procurar por "yoko" em /etc/passwd , encontrará algo como:

yoko:x:<yoko's UID>:1003::<yoko's home>:/bin/false

em que 1003 é o GID de sftponly group.

    
por Eric Carvalho 08.07.2013 / 12:57