Gerenciando usuários enquanto compartilha diretórios iniciais entre servidores

Gerenciando usuários enquanto compartilha diretórios iniciais entre servidores

Eu tenho dois servidores Ubuntu que compartilham diretórios pessoais. O diretório /home do server1 é montado como o diretório /home no server2. Tenho um problema ao tentar conceder acesso a ambos os servidores a uma nova pessoa. Eu uso o comando adduser em cada servidor com o mesmo nome de usuário. Porém o UID não corresponde quando faço isso, portanto o usuário acaba não tendo permissão para arquivos em seu diretório inicial quando ele é acessado com a conta do server2.

No servidor 1 onde o usuário foi criado junto com seu diretório inicial. (As coisas parecem bem)

selah@server1:~$ tail -n 2 /etc/passwd
dfulgon:x:1083:1087:,,,:/home/dfulgon:/bin/bash
swartp:x:1085:1089:,,,:/home/swartp:/bin/bash

selah@server1:~$ ll -a /home/dfulgon | tail -n 3
-rw-rw----  1 dfulgon dfulgon   25 Jun  2 13:41 .my.cnf~
-rw-r--r--  1 dfulgon dfulgon  675 Jun  2 13:35 .profile
drwxrwxr-x  2 dfulgon dfulgon 4096 Jun  2 14:27 .ssh/

No servidor 2 onde uma conta de usuário com o mesmo nome foi criada, mas o diretório inicial do outro servidor é usado: (As permissões estão confusas, apontando para o usuário errado)

selah@server2:~$ tail -n 2 /etc/passwd
bslf:x:1083:1087:,,,:/home/bslf:/bin/bash
dfulgon:x:1087:1091:,,,:/home/dfulgon:/bin/bash

selah@server2:~$ ll -a /home/dfulgon | tail -n 3
-rw-rw----  1 bslf bslf   25 Jun  2 13:41 .my.cnf~
-rw-r--r--  1 bslf bslf  675 Jun  2 13:35 .profile
drwxrwxr-x  2 bslf bslf 4096 Jun  2 14:27 .ssh/

Existe uma boa maneira de superar esse problema e, ao mesmo tempo, manter a conveniência dos diretórios pessoais compartilhados?

Responder1

A coisa mais fácil a fazer é criar suas contas em algum banco de dados central. Hoje em dia, quase todo mundo tem algum tipo de banco de dados ldap para isso. Mas se você quiser seguir o método inseguro da velha escola, também pode dar uma olhada no NIS. (não).

Outra opção é usar uma ferramenta de gerenciamento de configuração para criar suas contas e manter os UIDs sincronizados. Assim, você pode criar suas contas com o puppet e definir o UID/GID específico que deseja.

Você pode fazer algumas coisas com o mapeador de ID NFS para traduzir IDs entre sistemas, mas isso pode se tornar um pesadelo de gerenciamento.

Responder2

A solução que vamos usar:

Verifique os arquivos /etc/passwd e escolha o próximo GID e UID apropriados. Em seguida, especificando-os durante o processo de criação do usuário desta forma.

addgroup -g $GID $username
adduser -g $GID -u $UID $username 

informação relacionada