Tarefas com Usuários e Grupos no FreeBSD – Comando PW

Para criar usuários e grupos utilizamos o comando “pw”, cuja função básica é trabalhar nos arquivos /etc/passwd, /etc/master.passwd e /etc/group, criando, removendo, modificando ou exibindo usuários e grupos do sistema. Segue abaixo uma explanação geral de como utilizar tal comando, mas é importante lembrar que muitas opções foram omitidas devido a grande quantidade, sendo por isso importante a leitura do manual, através de “man pw”.
Qualquer operação efetuada através do comando pw será registrada em um arquivo de log, localizado em /var/log/userlog.

Publicidade

Para trabalhar com grupos, utilizamos o comando “pw group”, seguido de “add”, “del”, “mod”, “show” ou “next”. Segue uma explicação sobre essas opções:

add -> adicionar um novo grupo
del -> remover um grupo
mod -> modificar algum dado do grupo
show -> exibir os dados de um grupo
next -> mostra o próximo GID livre

O comando “pw group add” permite ainda outros parâmetros, listaremos os mais importantes:

-n “nome”-> nome do grupo (o -n pode ser omitido)
-g 2000 -> GID (Group ID) do grupo

O comando “pw group mod” permite além dos já citados, o seguinte parâmetro:

-l “nome”-> novo nome do grupo, caso queiramos alterar o nome

Parâmetros do “pw group show”:

-P -> saída em formato mais legível
-a -> lista todos os grupos

Exemplos:

Simplesmente adicionar o grupo1:

# pw group add grupo1

Adicionar o grupo2, com gid=1500:

# pw group add -n “grupo2” -g 1500

Exibir os dados do grupo2:

# pw group show grupo2 -P

Remover o grupo1:

# pw group del grupo1

Para trabalhar no contexto de usuários, utilizamos “pw user”, seguido de “add”, “del”, “mod”, “show”, “next”, “lock” ou “unlock”, e seguido de outros parâmetros, quando for necessário.

add -> adicionar um novo usuário
del -> remover um usuário
mod -> modificar algum dado do usuário
show -> exibir os dados de um usuário
next -> mostra os próximos UID e GID livres
lock -> bloquear a conta do usuário
unlock -> desbloquear a conta do usuário

Os comandos “pw user add” (para adicionar um usuário) e “pw user mod” (para modificar os dados de um usuário) permitem os seguintes parâmetros (estão listados apenas os essenciais):

-n “username” -> nome (username) do usuário (o -n pode ser omitido)
-c “comentário” -> comentário, que tradicionalmente contém quatro campos separados por vírgulas: nome completo, localização, fone comercial e fone residencial. Essa sintaxe não precisa ser desta forma, sendo a seu critério.
-u 1500 -> UID (User ID) do usuário
-g “grupo” -> grupo ao qual o usuário irá pertencer, pode ser especificado o nome do grupo ou o GID.
-d “/home/fulano” -> diretório home do usuário
-m -> cria o diretório home do usuário automaticamente
-s “/usr/local/bin/bash” -> define o shell do usuário

Os parâmetros do comando “pw user del” são:

-n “username”-> nome (username) do usuário (o -n pode ser omitido)
-u 1500 -> UID do usuário
-r -> Remove também o diretório home do usuário e o seu conteúdo

Os principais parâmetros adicionais do “pw user show” são:

-P -> saída em formato mais legível
-a -> lista todos os usuários

O comando “pw user lock” funciona adicionando a string *LOCKED* na frente da senha do usuário, no arquivo master.passwd. Desta forma, o usuário não conseguirá autenticar-se e nem efetuar qualquer operação. Para desbloquear, basta usar o comando “pw user unlock”, especificando o username ou o UID do usuário.

Exemplos:

Simplesmente adicionar um usuário com username fulano1:

# pw user add fulano1

Adicionar um usuário com username fulano2, comentário “Fulano 2”, UID 1500, GID 2000, diretório home “/home/fulano2” e shell “/bin/sh”:

# pw user add -n “fulano2” -c “Fulano 2” -u 1500 -g 2000 -d “/home/fulano2”-m -s “/bin/sh”

Modificar o shell do usuário fulano2 para “/usr/local/bin/bash”:

# pw user mod fulano2 -s “/usr/local/bin/bash”

Exibir uma listagem de todos os usuários:

# pw user show -P -a

Bloquear a conta do usuário fulano2:

# pw user lock fulano2

Remover o usuário fulano1, juntamente com seu diretório home:

# pw user del fulano1 -r

Para efetuar a troca de senha de qualquer usuário, via linha de comando, deve ser utilizado o comando passwd. O usuário root pode trocar a senha de qualquer usuário, já os usuários comuns podem apenas trocar a própria senha. A sintaxe do comando é “passwd fulano”.

Fonte: http://www.paim.pro.br