REAL user NAME [RESOLVIDO]

1. REAL user NAME [RESOLVIDO]

WGuedes
wguedes

(usa Ubuntu)

Enviado em 12/10/2012 - 22:07h

Povo Livre

Ao instalar o Debian (nunca tinha experimentado), logo no início é pedido o "real name" e, na linha seguinte, o "user name".

Informei os dois (diferentes um do outro, claro), mas não consigo nem logar com o nome real, só com o nome de usuário.

Alguém saberia dizer porque a diferenciação e o que causa a recusa de logon com o nome real?

Grato,
WGuedes


  


2. MELHOR RESPOSTA

Elder Marco
eldermarco

(usa Fedora)

Enviado em 15/10/2012 - 09:56h

Sem problemas! Vamos lá!

A melhor forma de descobrir qual é o grupo associado ao sudo é ler o próprio arquivo /etc/sudoers. Como root, abra esse arquivo:


# less /etc/sudoers


Você deverá encontrar uma referência a esse grupo em algum lugar do arquivo. Por exemplo, no fedora existe um comentário assim:


## Allows people in group wheel to run all commands
%wheel ALL=(ALL) ALL

## Same thing without a password
# %wheel ALL=(ALL) NOPASSWD: ALL


No primeiro, ele diz que a linha abaixo permite que os usuários do grupo wheel (o nome do grupo) de executar qualquer comando através do sudo, mas a senha do usuário será solicitada. No segundo é a mesma coisa, mas a senha do usuário não será solicitada. Bastará colocar um sudo na frente do comando e ele será executado. Eu acho isso perigoso. Note que eu descomentei a linha


%wheel ALL=(ALL) ALL


E mantive a outra comentada, indicando que a primeira é que se aplica. Depois disso, adicionei meu usuário ao grupo wheel:


# usermod -a -G wheel elder


E foi o suficiente para eu ter privilégios de administrador. No seu sistema, esse grupo pode ter um nome diferente (ou não). Dê uma olhada nesse arquivo, procurando por algo semelhante e tu irá descobrir qual é o nome do arquivo.


Quanto ao sudoers, encontrei-o(s) assim:

whereis sudoers
sudoers: /etc/sudoers.d /etc/sudoers /usr/share/man/man5/sudoers.5.gz

São três? Porque os ".d" e ".5"?



São coisas diferentes. O seu sistema simplesmente retornou tudo o que encontrou que tem sudoers no nome O primeiro é um diretório onde podem ser colocadas as regras do sudo em arquivos separados ao invés de colocar tudo no arquivo /etc/sudoers. Existem outros comandos no sistema que também seguem esse lógica. O segundo é o próprio arquivo /etc/sudoers e o terceiro é a man page dele que pode ser acessada através do comando:


$ man sudoers


O man separa as páginas de manuais em seções/categorias que são especificadas por números no final. Por exemplo, o número 3 está associado a documentação de funções disponibilizadas através de bibliotecas no sistema e é utilizado por programadores. O número 1 está associado a programas executáveios do sistema e comandos do shell e o número 5 a documentação de arquivos no sistema (em geral, eles estão no diretório /etc).


Sob o comando groups encontrei:

groups
gedse dialout cdrom floppy audio video plugdev netdev powerdev

Entendi isto como sendo:
gedse = o meu usuário
dialout = não sei do que se trata
cdrom = dispensa comentários
floppy = num passado não muito distante, seria o compartimento do disquete. Hoje só Deus sabe. Não tenho o tal compartimento
audio = dispensa comentários
video = idem
plugdev = sei lá
netdev = rede dev... dev o que?
powerdev = power também dev? Caramba, quanto será? Sei lá o que são os dois últimos também.


Algumas distros requerem que você adicione seu usuário a determinados grupos para que você possa ter acesso a determinados recursos no sistema. Esse é o caso, mas não saberia te dizer para que serve alguns desse grupos, visto que no fedora não existe essas políticas. Mas a documentação da sua distro deve detalhar cada um deles.



# groups
root adm

Esse adm é o tal gue não aparece quando estou vulnerável e sem aquela maldita capa vermelha?

Notei, agora, que sob #, "whereis adm" devolve "adm:" e "whereis admin" devolve "admin:".
Qualquer coisa que eu digite depois de whereis é repetida com dois pontos... Será que o sistema está tirando um sarro com a minha cara, repetindo o que eu digo, me remedando? Acho que vou dar-lhe um shutdown...


Se você executou o comando groups como root, talvez o grupo no qual o seu usuário devesse fazer parte é o adm, mas para ter certeza, leia o arquivo /etc/sudoers ou, alternativamente, procure por pela documentação do sudo na sua distro. Eu acho mais fácil ler o arquivo. =)

Para procurar por um grupo em particular, leia o arquivo /etc/group. Por exemplo, se eu quisesse saber se u grupo wheel existe no meu sistema, eu poderia fazer:


$ grep '^wheel:' /etc/group


E ele me daria:


wheel:x:10:elder


Indicando que o grupo existe (já que foi listada uma linha no qual ele está no primeiro campo) e que o usuário elder faz parte dele (último campo). Se nada for listado é porque o grupo não existe ou você digitou o nome dele errado. O '^' no antes de 'wheel:' no comando grep é uma expressão regular que diz ao comando grep para procurar por 'wheel:' somente no começo de cada linha do arquivo /etc/group.

3. Comandos

Perfil removido
removido

(usa Nenhuma)

Enviado em 12/10/2012 - 22:16h

Existe dois comando no linux para adicionar o novo usuário ao sistema o useradd e adduser. O DEBIAN usa o useradd esse adiciona o usuário e pede outros dados como nome completo, endereço, senha ... já o adduser apenas adiciona o usuario.


4. Re: REAL user NAME [RESOLVIDO]

Elder Marco
eldermarco

(usa Fedora)

Enviado em 12/10/2012 - 22:27h

O username é o nome que você utiliza para se conectar ao seu sistema. Poderia ser um apelido ou coisa assim. É o primeiro campo no arquivo /etc/passwd. Geralmente, o diretório criado para o seu usuário em /home tem o mesmo nome dele. Já o Real Name é simplesmente o seu nome, utilizado por alguns sistemas para personalizar mensagens ou outras coisas. O GNOME, por exemplo, mostra ele no painel superior. É o quinto campo no arquivo /etc/passwd. Este nome não serve para fazer login.




5. Sudoers

WGuedes
wguedes

(usa Ubuntu)

Enviado em 13/10/2012 - 02:15h

[quote]eldermarco escreveu:
"Já o Real Name (...) não serve para fazer login."

Incrível, mas incontestavelmente lógico: instalo o sistema, configuro tudo (mesmo que amadoristicamente) e não tenho privilégios de root, a menos que faça constar do grupo sudoers o meu usuário.

Isto sugere, na vedrade confirma, que quem instala é um mero técnico (não é o meu caso, embora eu gostaria muito que fosse). Os poderes de Grayskull ficam reservados para o proprietário da máquina ou àquele a quem ele delegar.

Segui orientação dada a um outro amador sobre como incluir o usuário no grupo sudoers e, depois disso (acho), ao acessar o Gparted, começou a surgir a mensagem:

"Permissões concedidas sem pedir senha:

O programa "/ usr / sbin / gparted 'foi iniciado com os privilégios do usuário root sem a necessidade de pedir uma senha, devido ao seu sistema de configuração do mecanismo de autenticação.

É possível que esteja sendo permitida a execução de programas específicos como usuário root sem a necessidade de senha, ou que a senha esteja sendo armazenada em cache.

Este não é um relatório de problema, é simplesmente uma notificação para que você esteja ciente disso."

Voltei lá e desfiz a alteração, mas a mensagem continua aparecendo. Fiquei sem saber como fazer meu usuários constar daquele grupo sem pôr em risco a segurança.

Parece que é necessário definir (de modo específico) o que o usuário poderá fazer, ao invés de entregar as chaves do castelo ao ferreiro.

Mas... pra que duas senhas se uma é de root e o usuário root não vai para o sudoers? Ah, tá; deve ser pra o proprietário ou o "delegado" não precisar pensar numa senha. Caramba, nem nisso esse cara pode pensar? Como vai administrar tão mal acostumado?

Por favor, confirme: tenho que criar um outro usuário para mim e inclui-lo no sudoers para que esse usuário, usando a senha de root possa agir ampla, geral e irrestritamente?

Muito obrigado. Está sendo uma grande ajuda.

WGuedes




6. Re: REAL user NAME [RESOLVIDO]

Elder Marco
eldermarco

(usa Fedora)

Enviado em 13/10/2012 - 10:50h

O usuário root, também chamado de superusuário, é um usuário especial no sistema. Ele existe em qualquer sistema Linux e é um usuário que tem privilégios para administrar o mesmo, sendo que as alterações que este faz no sistema reflete em todos os outros usuários. Até o diretório HOME dele é separado, ficando em /root. Quando você instala uma distribuição Linux, ele te pergunta pela senha do root (cujo username é root mesmo), para que você mais tarde possa administrar o sistema e também solicita para que você crie um usuário comum, sem privilégios administrativos e que serve exatamente para utilizar o sistema. Os poderes deste último é se restringe somente ao seu espaço, onde ele pode editar arquivos e fazer modificações que afetem somente ele.

Em geral, não é bom dar privilégios de administração para usuários assim. Quando você precisar instalar alguma coisa ou alterar, abra um terminal e se conecte como root através do comando


$ su -


Daí faça as alterações que deve fazer ou instale o pacote que quer instalar ou remova o pacote que quer remover e então saia da conta do root e continue na conta de usuário comum. Não dê poderes demais para que não precisa deles, isso pode ser catastrófico.

Mas se mesmo assim você acha que deve dar privilégios administrativos a um usuário do sistema, te dou uma dica de nem mexer no sudoers, mas adicionar o usuário a um grupo especial, no qual os seu membros tem poderes administrativos sobre o sistema. O nome desse grupo varia de uma distro para outra, de forma que você terá de ver qual é o nome dele aí no Debian. No fedora, esse grupo se chama wheel e criei uma dica de como proceder com isso aqui: http://www.vivaolinux.com.br/dica/Configurando-o-sudo-no-Fedora/

Eu acho que no Debian esse grupo se chama admin, mas eu não tenho certeza. Para isso, dê uma lida no arquivo /etc/sudoers que ele deverá fazer uma referência a esse grupo. Se sim, adicione seu usuário a ele conforme o link que te passei.




7. Como assim?

WGuedes
wguedes

(usa Ubuntu)

Enviado em 14/10/2012 - 19:37h

Elder

A dica que me recomendou tem um trecho que não ficou muito claro pra mim. Diz o seguinte:

"A maneira conhecida
Essa forma parece ser a mais difundida pela Internet. Abra um terminal e logue-se como root (sim, seu usuário ainda não possui privilégios de root). Após isso, execute o comando abaixo substituindo "seu_username" pelo seu nome de usuário.

# echo 'seu_username ALL=(ALL) ALL' >> /etc/sudoers

ATENÇÃO: Execute esse comando somente uma vez e exatamente como se encontra acima, exceto pelo seu nome de usuário. Qualquer coisa diferente poderá lhe trazer mais problemas do que soluções. O /etc/sudoers é um arquivo de configuração no sistema, que contém informações sobre quem pode executar comandos com privilégios de root.

Feito isto, você já poderá utilizar o comando sudo com seu usuário normalmente."

A dúvida é: se não tenho poderes de root, como posso inclui a mim próprio no grupo dos superpoderosos? Entendo que, assim, qualquer usuário, por mais comum que seja, pode tornar-se um root por seus próprios e insignificantes poderes.
Essa inclusão naõ deveria ser permitida somente ao Root? Isto não vulnerabiliza a segurança?

Valeu,
WGuedes


8. Re: REAL user NAME [RESOLVIDO]

Elder Marco
eldermarco

(usa Fedora)

Enviado em 14/10/2012 - 19:52h

Sim, mas logo no começo do que você citou, está escrito "Abra um terminal e logue-se como root (...)". Ou seja, você precisa se conectar como root para fazer isso. Só o root ou um usuário que já tenha privilégios administrativos pode dar esse tipo de privilégio para um usuário comum.

Mas lembre-se também que eu te dei a sugestão de se adicionar no grupo correspondente ao invés de realizar esse procedimento descrito no texto que você citou. Veja que na dica eu falo dessa outra maneira também. E cuidado com a barberagem aí ou isso poderá lhe render uma boa dor de cabeça.. =)


9. Re: REAL user NAME [RESOLVIDO]

Guilherme Moreira de Oliveira
coelhoposa

(usa Arch Linux)

Enviado em 14/10/2012 - 20:06h

wguedes escreveu:

Povo Livre

Ao instalar o Debian (nunca tinha experimentado), logo no início é pedido o "real name" e, na linha seguinte, o "user name".

Informei os dois (diferentes um do outro, claro), mas não consigo nem logar com o nome real, só com o nome de usuário.

Alguém saberia dizer porque a diferenciação e o que causa a recusa de logon com o nome real?

Grato,
WGuedes


na verdade o que faz você logar é o nome de usuário. Em alguns gerenciadores de login (LXDM, GDM, KDM (Com alguns skins) e Lightdm) exibem o nome real. Exemplo o nome real seria assim: Fulano da Silva. O usuário poderia ser rocky, milesmaverick, fulano...


10. Re: REAL user NAME [RESOLVIDO]

Ricardo Libanio
riesdra

(usa Debian)

Enviado em 14/10/2012 - 20:36h

Wguedes;

este é um exemplo simples de arquivo sudo

# /etc/sudoers
#
# See the man page for details on how to write a sudoers file.
#

# Defaults
Defaults !lecture, tty_tickets, !fqdn, rootpw, insults, env_reset, timestamp_timeout=0

# User privilege specification
root ALL=(ALL) ALL
seu-login ALL=PASSWD: ALL


altere seu-login, pelo nome de seu usuário, toda vez que executar o o comando sudo ou gksu que é ele em modo gráfico no gnome, será pedido a senha do root, sem ela o comando não será executado.

isto dá um pouco mais de segurança, pois não basta usar sudo, tem que saber a senha do usuário root também para fazer algo.






11. Sta. ignorância...

WGuedes
wguedes

(usa Ubuntu)

Enviado em 14/10/2012 - 22:44h

Obrigado a Miles e Riesdra, valeram as dicas.

Grande Elder

Beleza! Agora clareou; só posso me incluir como root se tiver a senha root.
Sim, não esqueci do alerta muito bem colocado na sua dica. A pergunta foi porque fiquei achando que qualquer usuário poderia se incluir no superpoderoso grupo, já que a dica diz "(sim, seu usuário ainda não possui privilégios de root)."

Mas agora está tudo bem.
Também estou dando uma olhada em http://www.sudo.ws/sudoers.man.html.
O problema é que o meu Inglês só fala (e mal) o Português. Então, juntando o meu PortEnglish com o do Bússola Escolar, o segundo tópico "Autenticação e log" ficou assim em Português:

A senha não é necessária se o usuário (que) invocar o comando é raiz, (entendi isto como "se o usuário que invocar o comando tiver a senha de root).
se o utilizador alvo é o mesmo que o utilizador invocando, (se o usuário a ser autenticado for o mesmo que invoca o comando)
ou se a política desativou a autenticação do usuário ou de comando. (se o usuário ou o comando tiver sido liberado na política de privilégios.
(...).

As reticências entre parênteses representam a parte que eu não me atreveria a traduzir, nem com a ajuda do Bússola. Se o que traduzi estiver errado, não se reprima e corrija-me, por favor.

Bem, quanto ao grupo admin ou adm, não os encontrei aqui (no AV Linux6.0). Procurei-os utilizando o comando whereis. Não sei se é o comando adequado.
Whitch adm ou Whitch admin não responderam absolutamente nada; só retornaram o prompt.

Quanto ao sudoers, encontrei-o(s) assim:

whereis sudoers
sudoers: /etc/sudoers.d /etc/sudoers /usr/share/man/man5/sudoers.5.gz

São três? Porque os ".d" e ".5"?

Pelo gerenciador de arquivos encontrei só dois, ambos ".d", sendo um do /media/sda1/etc e o outro do /etc que, no terminal, sob whereis não tem o ".d". Porque essas diferenças entre terminal e gerenciador?

Sob o comando groups encontrei:

groups
gedse dialout cdrom floppy audio video plugdev netdev powerdev

Entendi isto como sendo:
gedse = o meu usuário
dialout = não sei do que se trata
cdrom = dispensa comentários
floppy = num passado não muito distante, seria o compartimento do disquete. Hoje só Deus sabe. Não tenho o tal compartimento
audio = dispensa comentários
video = idem
plugdev = sei lá
netdev = rede dev... dev o que?
powerdev = power também dev? Caramba, quanto será? Sei lá o que são os dois últimos também.

Uma coisa eu sei: não pertenço a nenhum dos grupos sudoers. Mas, um dia, hei de pertencer. Espero que seja hoje.

Curiosidade:
O comando groups, acima, foi dado como usuário comum. Sob os poderes de "su", o mesmo comando groups resultou em:

# groups
root adm

Esse adm é o tal gue não aparece quando estou vulnerável e sem aquela maldita capa vermelha?

Notei, agora, que sob #, "whereis adm" devolve "adm:" e "whereis admin" devolve "admin:".
Qualquer coisa que eu digite depois de whereis é repetida com dois pontos... Será que o sistema está tirando um sarro com a minha cara, repetindo o que eu digo, me remedando? Acho que vou dar-lhe um shutdown...

Elder, desculpe-me se estou abusando da sua boa-vontade e também pelos cacos. Estes últimos são, apenas, para dara um toque bem humorado a toda essa minha ignorância.

Muito grato, mais uma vez,
WGuedes



12. Re: REAL user NAME [RESOLVIDO]

WGuedes
wguedes

(usa Ubuntu)

Enviado em 15/10/2012 - 21:02h

É... meu camarada,

Isto foi uma verdadeira aula sobre superpoderes, mas tá feia a coisa por aqui:

Sob o comando “Su” entrei no modo root e comandei:

# less /etc/sudoers e o reseultado foi:

# /etc/sudoers
#
# This file MUST be edited with the 'visudo' command as root.
#
# See the man page for details on how to write a sudoers file.
#
Defaults env_reset

# Host alias specification

# User alias specification

# Cmnd alias specification

# User privilege specification
root ALL=(ALL) ALL
# Uncomment to allow members of group sudo to not need a password...........(Não tenho mais dúvida: o grupo é sudo)
# (Note that later entries override this, so you might need to move
# it further down)
# %sudo ALL=NOPASSWD: ALL...................................................(sudo na mesma situação em que o wheel)
~
(END)

Daí, já que não havia o que descomentar, passei para o usermod:

root@gedse:/home/gedse# usermod -a -G sudo gedse

Fui verificar se já participava do grupo sudo e...

root@gedse:/home/gedse# groups
root adm

...nada. Fui, então, verificar se o arquivo sudoers havia sido alterado e...

# /etc/sudoers
#
# This file MUST be edited with the 'visudo' command as root.
#
# See the man page for details on how to write a sudoers file.
#

Defaults env_reset

# Host alias specification

# User alias specification

# Cmnd alias specification

# User privilege specification
root ALL=(ALL) ALL
# Uncomment to allow members of group sudo to not need a password
# (Note that later entries override this, so you might need to move
# it further down)
# %sudo ALL=NOPASSWD: ALL

... também não. Então, saí do modo root:

root@gedse:/home/gedse# exit

No modo usuário comandei groups e...

gedse@gedse:~$ groups
gedse dialout cdrom floppy audio video plugdev netdev powerdev
gedse@gedse:~$

...nada. Reiniciei, tentei novamente e lá esta o grupo sudo

gedse@gedse:~$ groups
gedse dialout cdrom floppy sudo audio video plugdev netdev powerdev

Entretanto... o resultado do comando sudo su é...

gedse@gedse:~$ sudo su
[sudo] password for gedse:
gedse is not in the sudoers file. This incident will be reported.

Como assim, não estou no arquivo sudoers?

gedse@gedse:~$ su
Password:
root@gedse:/home/gedse#


# /etc/sudoers
#
# This file MUST be edited with the 'visudo' command as root.
#
# See the man page for details on how to write a sudoers file.
#

Defaults env_reset

# Host alias specification

# User alias specification

# Cmnd alias specification

# User privilege specification
root ALL=(ALL) ALL
# Uncomment to allow members of group sudo to not need a password
# (Note that later entries override this, so you might need to move
# it further down)
# %sudo ALL=NOPASSWD: ALL

Onde foi que eu errei? Não encontrei um "# %sudo ALL=(ALL) ALL" para descomentar.
Encontrei um "root ALL=(ALL) ALL" que não estava comentado.

Devo ter pisado numa bola redondinha, não? Foi mal... Tem jeito?

Grato,
WGuedes