Fórum Ubuntu Linux - PT

Área para Iniciantes => Iniciantes => Tópico iniciado por: rockman em 07 de Setembro de 2010, 14:37

Título: Por que usar o sudo?
Enviado por: rockman em 07 de Setembro de 2010, 14:37
Boa tarde galera!

Esse ano comecei a estudar algumas distribuições Linux. Já passei por Slackware, Debian, Fedora, OpenSUSE e agora resolvi dar uma chance ao Ubuntu. Uma coisa que vem me deixado curioso em relação a segurança é o comando SUDO. Por que usar o comando sudo para administrar o sistema é mais seguro que se logar como root? Não vejo muito sentido, já que o usuário que cadastrei na instalação do Ubuntu pode fazer a mesma coisa que o root... Abraços.
Título: Re: Por que usar o sudo?
Enviado por: linuser104 em 07 de Setembro de 2010, 15:01
Boa tarde galera!

Esse ano comecei a estudar algumas distribuições Linux. Já passei por Slackware, Debian, Fedora, OpenSUSE e agora resolvi dar uma chance ao Ubuntu. Uma coisa que vem me deixado curioso em relação a segurança é o comando SUDO. Por que usar o comando sudo para administrar o sistema é mais seguro que se logar como root? Não vejo muito sentido, já que o usuário que cadastrei na instalação do Ubuntu pode fazer a mesma coisa que o root... Abraços.

Por que usando o sudo, vc entra e sai do modo administrador rapidamente, não fica todo o tempo nele, é pontual o acesso. Já entrar como usuário root no sistema você fica permanentemente como superusuário e então qualquer invasão ao seu sistema vai dar total poder ao intruso que poderá fazer o que desejar.
Título: Re: Por que usar o sudo?
Enviado por: rockman em 07 de Setembro de 2010, 15:58
Mas se digitar exit eu faço logoff do root e ele não fica permanetemente. O que não entendo é que o usuário cadastrado no ato da instalação tem total controle da mesma forma que o root, é só digitar a senha que ele faz tudo do mesmo jeito. Qual a real vantagem do sudo?
Título: Re: Por que usar o sudo?
Enviado por: Nossile em 07 de Setembro de 2010, 16:07
É mais rápido usar o sudo em uma sessão normal do que ter de fazer logoff , depois login na conta root, dar os comandos que se deseja, fazer logoff na conta root e fazer login na conta normal de novo. A alternativa seria ficar sempre na conta root, mas aí a segurança do sistema fica ameaçada.
Título: Re: Por que usar o sudo?
Enviado por: rockman em 07 de Setembro de 2010, 16:14
Mas no caso é só digitar su, logar como root, fazer os comandos e depois exit que ele volta pra conta que eu tava usando.
Ainda não encontrei explicação do aumento de segurança com o sudo.
Título: Re: Por que usar o sudo?
Enviado por: linuser104 em 07 de Setembro de 2010, 16:14
Mas se digitar exit eu faço logoff do root e ele não fica permanetemente. O que não entendo é que o usuário cadastrado no ato da instalação tem total controle da mesma forma que o root, é só digitar a senha que ele faz tudo do mesmo jeito. Qual a real vantagem do sudo?

O primeiro usuário que você cadastra no Ubuntu é o administrativo, entretanto se você criar outros usuários para o Ubuntu, eles não podem usar o sudo, pois teriam de saber a senha do usuário administrativo.

Você pode usar o exit para sair do terminal logado constantemente como root, mas pode esquecer de sair e o sudo como é pontual ele sai automaticamente sem precisar de você digitar exit num terminal logado como root quando terminar o que estava fazendo. O sudo é uma comodidade para só usar determinado(s) comando(s) e já sair do modo root automaticamente assim que terminado a tarefa do que ficar constantemente em modo root até que você se lembre de digitar exit.

O root não é proibido usar, é desaconselhável usá-lo constantemente. Alguém na operação do sistema operacional tem que ter o privilégio de superusuário, caso não fosse assim, como é que você poderia fazer determinadas operações no sistema que só o usuário administrativo pode realizar, por isso o usuário da instalação do Ubunru é que é um usuário administrativo e a sua senha é a do root.
Título: Re: Por que usar o sudo?
Enviado por: rockman em 07 de Setembro de 2010, 16:23
É seguro usar o usuário da instalação pra usar o pc? Navegar na internet e etc? Devo fazer alguma configuração no sudo pra ele ficar mais seguro, deminuir o tempo de "logado"?
Título: Re: Por que usar o sudo?
Enviado por: linuser104 em 07 de Setembro de 2010, 16:34
É seguro usar o usuário da instalação pra usar o pc? Navegar na internet e etc? Devo fazer alguma configuração no sudo pra ele ficar mais seguro, deminuir o tempo de "logado"?

Ainda não entendi bem qual a sua preocupação com relação ao primeiro usuário que você cria no sistema ter privilégios root com o sudo, mas para saber mais sobre este assunto veja este link:

http://wiki.ubuntu-br.org/RootSudo

Cuidado com vai ler por lá por que as coisas podem ter mudado um pouco visto que este artigo é datado de 2008

Outros links:

https://help.ubuntu.com/community/RootSudoTimeout

https://help.ubuntu.com/community/RootSudo

https://help.ubuntu.com/community/RootSudoPT
Título: Re: Por que usar o sudo?
Enviado por: rockman em 08 de Setembro de 2010, 10:12
linuser104:

Procurei saber sobre o sudo e vi que ele foi criado por administradores para gerenciar as permissões de outros administradores. Por exemplo: O grupo WEB tem permissão de usar alguns comandos de restart, stop, start dos serviços WEB, etc.

Fico preocupado em relação a segurança da conta do administrador do Ubuntu (usuário criado na instalação) pois mesmo pode digitar sudo rm -rf / e acabar com o sistema da mesma forma de um usuário logado com o su ou, se por ventura eu pegue um script malicioso planejado para atacar sistemas Ubuntu e coincidentemente usei o comando sudo, o mesmo irá se beneficiar da janela de 15 minutos sem precisar digitar a senha novamente. Então pelo que entendi até agora, usar o "administrador do Ubuntu" é tão arriscado quanto usar a conta root em outras distribuições.

Estou certo ou não entendi alguma regra de segurança?

 Abraços.
Título: Re: Por que usar o sudo?
Enviado por: cesargcomp em 08 de Setembro de 2010, 10:30
Se você quer que não exista essa janela de 15 minutos faça o seguinte:

1 ) Abra o arquivo /et/sudoers como root
ALT+F2
gksu gedit /etc/sudoers

2 ) Adicione no final do arquivo a seguinte linha:
Defaults:'nome_do_usuario' timestamp_timeout=0
* Substitua 'nome_do_usuario' pelo seu usuário e defina o tempo da janela em timestam_timeout (no caso o 0'zero' para não existir a janela)

Espero ter ajudado!
Título: Re: Por que usar o sudo?
Enviado por: linuser104 em 08 de Setembro de 2010, 10:56
linuser104:

Procurei saber sobre o sudo e vi que ele foi criado por administradores para gerenciar as permissões de outros administradores. Por exemplo: O grupo WEB tem permissão de usar alguns comandos de restart, stop, start dos serviços WEB, etc.

Fico preocupado em relação a segurança da conta do administrador do Ubuntu (usuário criado na instalação) pois mesmo pode digitar sudo rm -rf / e acabar com o sistema da mesma forma de um usuário logado com o su ou, se por ventura eu pegue um script malicioso planejado para atacar sistemas Ubuntu e coincidentemente usei o comando sudo, o mesmo irá se beneficiar da janela de 15 minutos sem precisar digitar a senha novamente. Então pelo que entendi até agora, usar o "administrador do Ubuntu" é tão arriscado quanto usar a conta root em outras distribuições.

Estou certo ou não entendi alguma regra de segurança?

 Abraços.

Todo sistema operacional, que prima pela segurança, tem que ter uma conta de administrador para que mudanças importantes só possam ser efetuadas por ele. Como disse antes, no Ubuntu, o Administrador é o primeiro usuário criado no sistema, agora não significa que esse usuário vai estar logado todo tempo como superusuário (root), para ele realizar algo assim terá de usar o comando sudo (ou o su) que pede senha, do contrário ele é um simples usuário do sistema como os outros. A diferença é que ele pode usar o sudo ou su e os outros não podem.

É lógico que o usuário que vai ser o administrados deve ter uma capacidade de discernimento das coisas maior que um simples usuário e não vai ficar dando "comandos da morte" tipo o sudo rm -rf / que nem sei se hoje em dia ele ainda funciona no Ubuntu, acho que li que não, só não tenho certeza e nem vou executá-lo para comprovar, hehehe.

Se é script ele pode ser analisado e portanto o administrador saberá se ele é ou não malicioso, usuário comum não deve executar scripts que não entende e pior que isso como root.

Se o problema é o tempo que o sudo fica sem pedir senha, 15 min acho que não é isso não, pode ser diminuído ou até retirado como os link que te indiquei informam ou a dica do colega cesargcomp (que é a mesma dos links) só que isso envolve alterar algo no sudoers e mexer nele é perigoso, qualquer erro vai deixar vc sem o poder de superusuário.

PS: A dica do colega mais acima não está totalmente correta, pois não basta editar o sudoers como root, pois inicialmente a edição dele é proibida até para o root, sendo só permitido a leitura do arquivo, portanto tem-se que antes habilitar a escrita no sudoers e aí é que mora o perigo.
Título: Re: Por que usar o sudo?
Enviado por: RonaldoRG em 08 de Setembro de 2010, 19:15
Citar
PS: A dica do colega mais acima não está totalmente correta, pois não basta editar o sudoers  como root, pois inicialmente a edição dele é proibida até para o root, sendo só permitido a leitura do arquivo, portanto tem-se que antes habilitar a escrita no sudoers e aí é que mora o perigo.
É verdade mexer no sudoers é perigoso pra quem não tem conhecimento. Se você tentar usar algum programa durante a edição do sudoer (fiz isso) dá problema e você não consegue mais usar programas administrativos (aconteceu isso). Eu sempre zero o tempo do sudo, acho que ele deveria vir zerado porque em 15 minutos muita coisa pode acontecer.

Mas você fazendo de forma rápida não tem erro. Primeiro faz um backup do sudoers, depois muda a permissão para leitura e escrita, abri o sudoers e colocar no final "Defaults:'nome_do_usuario' timestamp_timeout=0", salvar e fechar o sudoers e voltar a permissão para somente leitura. Durante esse processo não abra nenhum outro programa. Se der erro volta com o backup e tenta de novo.
Abraço.
Título: Re: Por que usar o sudo?
Enviado por: irtigor em 08 de Setembro de 2010, 19:25
O arquivo /etc/sudoers não deve ser editado diretamente, deve-se usar o visudo pra isso.
Título: Re: Por que usar o sudo?
Enviado por: zeroday em 08 de Setembro de 2010, 22:31
Exatamente irtigor o sudoers nao deve/pode ser editado diretamente tem que rodar o comando sudo visudo.
Título: Re: Por que usar o sudo?
Enviado por: zeroday em 08 de Setembro de 2010, 22:33
E so pra complementar acho uma das maiores utilidades do sudo o fato de vc poder criar grupos de usuarios que tem acesso a comandos restritos do sistema , pois estes usuarios "fazem o que precisam fazer" sem saber qual eh a senha root do sistema , aumentando e muito a segurança de tal sistema.
Título: Re: Por que usar o sudo?
Enviado por: RonaldoRG em 08 de Setembro de 2010, 22:50
Citar
O arquivo /etc/sudoers não deve ser editado diretamente, deve-se usar o visudo pra isso.
De fato, pesquisei na net e o visudo torna mais segura a edição. E tem tutoriais ensinando editar o sudoers com outros editores.
Valeu pelas informações. Abraço.
Título: Re: Por que usar o sudo?
Enviado por: zeroday em 09 de Setembro de 2010, 09:51
alguem saberia me dizer se tem que dar outro comando dps que edita o sudoers? Pois estou editando o msm aqui em casa com visudo estou salvando as modificações mas não está funcionando.
Título: Re: Por que usar o sudo?
Enviado por: irtigor em 09 de Setembro de 2010, 11:01
No modo de comando use ZZ, :x ou :wq para salvar e sair. Se preferir use outro editor, ex: "sudo EDITOR=nano visudo" vai abrir com o nano, ctrl+o para salvar ou ctrl+x para sair (se tiver algo não salvo ele vai perguntar).


---
Nota, os primeiro comando são com o editor vim, me fugiu completamente que o ubuntu usa o nano.
Título: Re: Por que usar o sudo?
Enviado por: alarcon em 09 de Setembro de 2010, 11:03
Um método mais prático de usar o visudo, abra o terminal e digite:

sudo su

depois de estar logado como root digite:

export EDITOR=gedit

obs: não funciona se for sudo export EDITOR=gedit, tem que dar este comando com o terminal aberto como root (sudo su)

e logo em seguida (no terminal ainda como root):

visudo

Depois de tudo editado e salvo, saia do terminal aberto como root com o comando exit

Resumindo:

Citar
$ sudo su
sua senha
# export EDITOR=gedit
# visudo
faça as mudanças que tem de fazer, com responsabilidade. Salve e saia do arquivo
# exit (para sair do terminal como root)
$ terminal normal agora

quem não quiser usar assim use apenas o comando

sudo visudo

mas aí terá de saber usar o nano, editor via terminal.



===Editado===


A edição do sudoers utilizando o editor gráfico gedit também funciona assim, abrir o terminal e digitar:

sudo EDITOR=gedit visudo

portanto com bem menos passos. Testei aqui graças ao comando sugerido pelo irtigor com o editor de terminal nano e funcionou também. É que em versões antigas do Ubuntu  o comando funcionava assim:

export EDITOR=gedit && sudo visudo

o que não funciona mais. E nem assim sudo export EDITOR=gedit e depois sudo visudo funciona também tendo que retirar o export depois do comando sudo e unir os dois comandos num só comando.
Título: Re: Por que usar o sudo?
Enviado por: alarcon em 09 de Setembro de 2010, 11:05
No modo de comando use ZZ, :x ou :wq para salvar. Se preferir use outro editor, ex: "sudo EDITOR=nano visudo" vai abrir com o nano, ctrl+o para salvar ou ctrl+x para sair (se tiver algo não salvo ele vai perguntar).

pelo que pude constatar o nano já é usado pelo comando sudo visudo.
Título: Re: Por que usar o sudo?
Enviado por: irtigor em 09 de Setembro de 2010, 11:09
pelo que pude constatar o nano já é usado pelo comando sudo visudo.
É que eu sempre uso o vim como editor padrão, já nem me lembrava que o ubuntu usa o nano. Já acrescentei uma nota, os primeiros comando são do vim.
Título: Re: Por que usar o sudo?
Enviado por: Safetec em 09 de Setembro de 2010, 11:12
Pessoalmente eu acho o sudo mais inseguro, já que se alguém quebrar a senha do usuário automaticamente quebra a senha o root também. Prefiro usar su no terminal logar como root e em seguida deslogar.

Nesse caso uso uma senha diferente para o root e para o usuário comun.
Título: Re: Por que usar o sudo?
Enviado por: agente100gelo em 09 de Setembro de 2010, 11:18
Imagine a situação que uma falha do sistema permita o acesso remoto através de login/senha.
Em sistema com o "root", basta identificar a senha, o que pode ser feito via força bruta.
Em sistema sem o "root", faz-se necessário também a identificação dos caracteres da conta do usuário.
Aumenta-se consideravelmente a quantidade de combinações possíveis.
Título: Re: Por que usar o sudo?
Enviado por: Safetec em 09 de Setembro de 2010, 11:37
Imagine a situação que uma falha do sistema permita o acesso remoto através de login/senha.
Em sistema com o "root", basta identificar a senha, o que pode ser feito via força bruta.
Em sistema sem o "root", faz-se necessário também a identificação dos caracteres da conta do usuário.
Aumenta-se consideravelmente a quantidade de combinações possíveis.

Não entendi a diferença... Já que se conseguindo o acesso ao usuário automáticamente se é root através do sudo.

E para acesso remoto aí sim vejo que é melhor existir a conta de root, bloqueando o acesso remoto a conta de root.
Assim nesse caso deve-se logar como usuário comum e saber a senha do root.
Muito mais seguro, pois é necessário quebrar a senha do usuário e assim depois quebrar a do root.
Título: Re: Por que usar o sudo?
Enviado por: sot-legend em 09 de Setembro de 2010, 12:22
O interessante desse tópico é que gerou uma dúvida em muitos, eu mesmo nunca tinha me perguntado isso, quando li o tópico que fui entender =]
Título: Re: Por que usar o sudo?
Enviado por: zeroday em 09 de Setembro de 2010, 12:29
Minha pergunta n foi respondida plenamente =D...Pq n estou obtendo sucesso ao ajeitar o sudo?  fiz o que eh pra fazer Cmn_Alias bla bla , salvei e n deu certo. Pra usar os comandos ainda tenho que digitar a senha root.
Título: Re: Por que usar o sudo?
Enviado por: agente100gelo em 09 de Setembro de 2010, 14:46
Imagine a situação que uma falha do sistema permita o acesso remoto através de login/senha.
Em sistema com o "root", basta identificar a senha, o que pode ser feito via força bruta.
Em sistema sem o "root", faz-se necessário também a identificação dos caracteres da conta do usuário.
Aumenta-se consideravelmente a quantidade de combinações possíveis.

Não entendi a diferença... Já que se conseguindo o acesso ao usuário automáticamente se é root através do sudo.

E para acesso remoto aí sim vejo que é melhor existir a conta de root, bloqueando o acesso remoto a conta de root.
Assim nesse caso deve-se logar como usuário comum e saber a senha do root.
Muito mais seguro, pois é necessário quebrar a senha do usuário e assim depois quebrar a do root.

Falha no sistema que permita acesso remoto:

Sem conta root
login: necessário adivinhar (a, a, ab, ac, ... , zzzzzz)
senha: necessário adivinhar

Probabilidade multiplicada. Supondo que login e senha tenham apenas 6 letras.
= 26 x 26 x 26 x 26 x 26 x 26 x 26 x 26 x 26 x 26 x 26 x 26 = 95.428.956.661.682.176

Com conta root
login: "root" -> Básico, padrão.
senha: necessário adivinhar

Probabilidade apenas das combinações da senha.
= 1 x 26 x 26 x 26 x 26 x 26 x 26 = 308.915.776

Título: Re: Por que usar o sudo?
Enviado por: Safetec em 09 de Setembro de 2010, 15:20
Imagine a situação que uma falha do sistema permita o acesso remoto através de login/senha.
Em sistema com o "root", basta identificar a senha, o que pode ser feito via força bruta.
Em sistema sem o "root", faz-se necessário também a identificação dos caracteres da conta do usuário.
Aumenta-se consideravelmente a quantidade de combinações possíveis.

Não entendi a diferença... Já que se conseguindo o acesso ao usuário automáticamente se é root através do sudo.

E para acesso remoto aí sim vejo que é melhor existir a conta de root, bloqueando o acesso remoto a conta de root.
Assim nesse caso deve-se logar como usuário comum e saber a senha do root.
Muito mais seguro, pois é necessário quebrar a senha do usuário e assim depois quebrar a do root.

Falha no sistema que permita acesso remoto:

Sem conta root
login: necessário adivinhar (a, a, ab, ac, ... , zzzzzz)
senha: necessário adivinhar

Probabilidade multiplicada. Supondo que login e senha tenham apenas 6 letras.
= 26 x 26 x 26 x 26 x 26 x 26 x 26 x 26 x 26 x 26 x 26 x 26 = 95.428.956.661.682.176

Com conta root
login: "root" -> Básico, padrão.
senha: necessário adivinhar

Probabilidade apenas das combinações da senha.
= 1 x 26 x 26 x 26 x 26 x 26 x 26 = 308.915.776



Concordo... Mas levo em consideração que o login remoto para o root esteja desabilitado. "Ninguém" deixaria a conta de root habilitada para logar remotamente.
Então pegue a sua primeira situação exponencie pela segunda e terá a segurança multiplicada possuindo uma conta de root.

Certo?
Título: Re: Por que usar o sudo?
Enviado por: agente100gelo em 09 de Setembro de 2010, 15:24
Concordo... Mas levo em consideração que o login remoto para o root esteja desabilitado. "Ninguém" deixaria a conta de root habilitada para logar remotamente.
Então pegue a sua primeira situação exponencie pela segunda e terá a segurança multiplicada possuindo uma conta de root.

Certo?

Desde o início suponho que haja uma falha no sistema que possa dar acesso total sem nenhuma intenção do usuário às contas registradas.
Título: Re: Por que usar o sudo?
Enviado por: pedrotf em 09 de Setembro de 2010, 15:35
Imagine a situação que uma falha do sistema permita o acesso remoto através de login/senha.
Em sistema com o "root", basta identificar a senha, o que pode ser feito via força bruta.
Em sistema sem o "root", faz-se necessário também a identificação dos caracteres da conta do usuário.
Aumenta-se consideravelmente a quantidade de combinações possíveis.

Não entendi a diferença... Já que se conseguindo o acesso ao usuário automáticamente se é root através do sudo.

E para acesso remoto aí sim vejo que é melhor existir a conta de root, bloqueando o acesso remoto a conta de root.
Assim nesse caso deve-se logar como usuário comum e saber a senha do root.
Muito mais seguro, pois é necessário quebrar a senha do usuário e assim depois quebrar a do root.

Falha no sistema que permita acesso remoto:

Sem conta root
login: necessário adivinhar (a, a, ab, ac, ... , zzzzzz)
senha: necessário adivinhar

Probabilidade multiplicada. Supondo que login e senha tenham apenas 6 letras.
= 26 x 26 x 26 x 26 x 26 x 26 x 26 x 26 x 26 x 26 x 26 x 26 = 95.428.956.661.682.176

Com conta root
login: "root" -> Básico, padrão.
senha: necessário adivinhar

Probabilidade apenas das combinações da senha.
= 1 x 26 x 26 x 26 x 26 x 26 x 26 = 308.915.776



Você só colocou letras. Tem ainda números e caracteres especiais que pode ser utilizado como senha e login então a probabilidade aumenta.
Título: Re: Por que usar o sudo?
Enviado por: Safetec em 09 de Setembro de 2010, 16:09
Concordo... Mas levo em consideração que o login remoto para o root esteja desabilitado. "Ninguém" deixaria a conta de root habilitada para logar remotamente.
Então pegue a sua primeira situação exponencie pela segunda e terá a segurança multiplicada possuindo uma conta de root.

Certo?

Desde o início suponho que haja uma falha no sistema que possa dar acesso total sem nenhuma intenção do usuário às contas registradas.

Pode cre... Mas tipo dizer "uma falha" é algo muito vago, sem escopo, deixa margem para se pensar N coisas. Dependendo do tipo de "falha" usar o sudo, su, firewall etc... Não faz diferença alguma... Agora se considerarmos que essa "falha" seja um ataque de força bruta para acesso remoto (que é o mais comun) onde se visa a quebra de senha... Sem dúvida nenhuma que o modelo de possuir uma conta root com login remoto desabilitado e uma conta de usuário com senha diferente é um modelo muito mais seguro que usar sudo.



Edit... Ataque de força bruta não pode ser considerado falha... Neste caso a falha seria a força da senha utilizada.
Título: Re: Por que usar o sudo?
Enviado por: agente100gelo em 09 de Setembro de 2010, 17:42
Concordo... Mas levo em consideração que o login remoto para o root esteja desabilitado. "Ninguém" deixaria a conta de root habilitada para logar remotamente.
Então pegue a sua primeira situação exponencie pela segunda e terá a segurança multiplicada possuindo uma conta de root.

Certo?

Desde o início suponho que haja uma falha no sistema que possa dar acesso total sem nenhuma intenção do usuário às contas registradas.

Pode cre... Mas tipo dizer "uma falha" é algo muito vago, sem escopo, deixa margem para se pensar N coisas. Dependendo do tipo de "falha" usar o sudo, su, firewall etc... Não faz diferença alguma... Agora se considerarmos que essa "falha" seja um ataque de força bruta para acesso remoto (que é o mais comun) onde se visa a quebra de senha... Sem dúvida nenhuma que o modelo de possuir uma conta root com login remoto desabilitado e uma conta de usuário com senha diferente é um modelo muito mais seguro que usar sudo.



Edit... Ataque de força bruta não pode ser considerado falha... Neste caso a falha seria a força da senha utilizada.

Não disse isso. Repito: uma falha (no kernel, por exemplo) que permita um ataque por força bruta.
Repito novamente: a questão de acesso não autorizado pelo usuário devido a falha.

Se você acha que usar o root é mais seguro, respeito, mas não concordo.

Para exemplificar meu ponto de vista:
http://www.adobe.com/support/security/advisories/apsa10-01.html

Título: Re: Por que usar o sudo?
Enviado por: Safetec em 09 de Setembro de 2010, 17:56
Concordo... Mas levo em consideração que o login remoto para o root esteja desabilitado. "Ninguém" deixaria a conta de root habilitada para logar remotamente.
Então pegue a sua primeira situação exponencie pela segunda e terá a segurança multiplicada possuindo uma conta de root.

Certo?

Desde o início suponho que haja uma falha no sistema que possa dar acesso total sem nenhuma intenção do usuário às contas registradas.

Pode cre... Mas tipo dizer "uma falha" é algo muito vago, sem escopo, deixa margem para se pensar N coisas. Dependendo do tipo de "falha" usar o sudo, su, firewall etc... Não faz diferença alguma... Agora se considerarmos que essa "falha" seja um ataque de força bruta para acesso remoto (que é o mais comun) onde se visa a quebra de senha... Sem dúvida nenhuma que o modelo de possuir uma conta root com login remoto desabilitado e uma conta de usuário com senha diferente é um modelo muito mais seguro que usar sudo.



Edit... Ataque de força bruta não pode ser considerado falha... Neste caso a falha seria a força da senha utilizada.

Não disse isso. Repito: uma falha (no kernel, por exemplo) que permita um ataque por força bruta.
Repito novamente: a questão de acesso não autorizado pelo usuário devido a falha.

Se você acha que usar o root é mais seguro, respeito, mas não concordo.

Para exemplificar meu ponto de vista:
http://www.adobe.com/support/security/advisories/apsa10-01.html




Ok, estamos aqui para debater e quem sabe aumentar o conhecimento para ambas as partes. Talvez eu esteja sendo ignorante, mas ignorante seria aquele que continua com dúvida e não pergunta.

Vamos definir Falha no Kernel.... Como se caracterizaria este ataque? Usando um exploit o invasor consegue acesso privilegiado é isso ? Mas onde entra o sudo nessa história?  Poderia explanar um pouco mais? Se não for incômodo seu? Gostaria de captar exatamente a sua opnião....
Título: Re: Por que usar o sudo?
Enviado por: musinet em 09 de Setembro de 2010, 19:16
Mas no caso é só digitar su, logar como root, fazer os comandos e depois exit que ele volta pra conta que eu tava usando.
Ainda não encontrei explicação do aumento de segurança com o sudo.

rockman,

Quando você executa um processo via sudo, somente aquele processo roda com privilégios de super-usuário. Mas se você abre uma sessão como root, todos os processos dessa sessão rodarão com "super privilégios". E isso pode ser uma ameaça à segurança do seu ambiente.

Quando possível, prefira sempre o sudo.

Abs.
Cassiano
Título: Re: Por que usar o sudo?
Enviado por: zeroday em 09 de Setembro de 2010, 20:29

rockman,

Quando você executa um processo via sudo, somente aquele processo roda com privilégios de super-usuário. Mas se você abre uma sessão como root, todos os processos dessa sessão rodarão com "super privilégios". E isso pode ser uma ameaça à segurança do seu ambiente.

Quando possível, prefira sempre o sudo.

Abs.
Cassiano
[/quote]
Alem disso vc pode atraves do sudo especificar quais açoes um grupo de usuarios especificos irão utilizar.
Título: Re: Por que usar o sudo?
Enviado por: rockman em 10 de Setembro de 2010, 14:59
Concordo com o Safetec em relação da "insegurança" do sudo. Usar o usuário administrativo, mesmo com sudo, pra mim é a mesma coisa que usar o root diretamente. Pelo que entendi, o propósito do sudo não é liberar acesso full, como a filosofia do Ubuntu, e sim partes de programas admiistrativos. A idéia de não usar o usuário root como administrador é interessante, já que aumenta a segurança na hora de quebrar a senha por força bruta. Mas usar ele no dia-a-dia acho uma grande furada. Não sei vocês, mas acho que poderíamos mesclar a idéia e fazer um administrador híbrido, usando o "primeiro usuário" para configuração do sistema já que ele vem com TODAS as permissões de admin, e a criar um segundo para uso no dia-a-dia, com poucas ou nenhuma permissão. O que vocês acham dessa idéia?

[]'s
Título: Re: Por que usar o sudo?
Enviado por: agente100gelo em 10 de Setembro de 2010, 15:05
Concordo com o Safetec em relação da "insegurança" do sudo. Usar o usuário administrativo, mesmo com sudo, pra mim é a mesma coisa que usar o root diretamente. Pelo que entendi, o propósito do sudo não é liberar acesso full, como a filosofia do Ubuntu, e sim partes de programas admiistrativos. A idéia de não usar o usuário root como administrador é interessante, já que aumenta a segurança na hora de quebrar a senha por força bruta. Mas usar ele no dia-a-dia acho uma grande furada. Não sei vocês, mas acho que poderíamos mesclar a idéia e fazer um administrador híbrido, usando o "primeiro usuário" para configuração do sistema já que ele vem com TODAS as permissões de admin, e a criar um segundo para uso no dia-a-dia, com poucas ou nenhuma permissão. O que vocês acham dessa idéia?

[]'s

Talvez seja uma solução mais "neurótica" em segurança mas dificultaria em muito o uso do sistema por usuários leigos, o foco do Ubuntu.
Título: Re: Por que usar o sudo?
Enviado por: linuser104 em 10 de Setembro de 2010, 16:44

Talvez seja uma solução mais "neurótica" em segurança mas dificultaria em muito o uso do sistema por usuários leigos, o foco do Ubuntu.


Sinceramente não consigo ver o problema de segurança ao se usar sudo ao invés de se ter uma conta exclusiva root habilitada.

Não sei se entendi direito, mas fiquei com a impressão que muitos acham que o primeiro usuário criado pelo Ubuntu usa o sistema todo o tempo como root e isso não é verdade, ele só é usado em modo superusuário quando usa-se o comando sudo, sudo su ou gksu e para isso é necessário a digitação de uma senha.

Quer aumentar a segurança por ser muito "neurótico" com isso, use senha forte para esse seu usuário administrativo, altere no sudoers para zerar o tempo de memorização da senha do sudo ou então, após usar o comando sudo, use o comando sudo -k que ele zera a memória da senha. Crie usuários comuns para o sistema e só entre por eles para usar a internet etc. Mantenha seu sistema atualizado e com serviço desnecessários ou que podem abrir portas, fechados. Não utilizem repositórios de terceiros ou de procedências duvidosas.

O uso do sudo da forma como o Ubuntu idealizou foi uma boa ideia, pois visando o usuário comum ele é um meio termo entre segurança e usabilidade do sistema e vejam que mesmo assim tem usuários reclamando de toda hora ter que digitar sua senha para poder usar certas coisas no sistema, imagine se esse pedido fosse a toda hora ou que para usar de forma superusuário tivesse que entrar no GDM como root. Lembro-me das distribuições linux que procediam assim e até o ambiente gráfico entrando no sistema como root, via kdm ou gdm ou outro equivalente, era asqueroso no visual de propósito para que o usuário ficasse o menor espaço de tempo possível neste modo.

Para mim é muito mais perigoso usar o sistema totalmente como root do que pontualmente com o sudo num usuário normal, ou melhor, num usuário administrativo.

Descobrir senhas fortes não é fácil, principalmente sem acesso físico ao sistema. Primeiro tem-se que enxergar o pc na rede, o firewall ajuda nisso, depois tem de explorar falhas no sistema, o linux é forte nisso, depois tem que quebrar a senha ou ter a sorte de que o usuário administrativo tenha usado o sudo recentemente e a senha ainda estar memorizada... Sei lá, não sou muito entendido em segurança de sistemas operacionais, mas do jeito que ficam falando aqui parece que é algo trivial de fazer e não é.
Título: Re: Por que usar o sudo?
Enviado por: rockman em 13 de Setembro de 2010, 10:10
agente100gelo e linuser104:

Concordo que o Ubuntu é focado para usuários leigos, mas quem quer mais segurança em contrapartida da facilidade, deve tomar esses cuidados. A dúvida surgiu porque pretendo usar o FreeNX e acessar minha máquina com Ubuntu remotamente pela internet. Se eu usar o "usuário administrativo" pra conexão remota, pra mim, seria como um tiro no pé, já que se eu falhasse e deixasse o terminal aberto ou algo do gênero, meu sistema estaria totalmente exposto. Ainda não sei como posso deixar esse acesso remoto mais seguro, alguma sugestão?

Obrigado.
Título: Re: Por que usar o sudo?
Enviado por: pyfuji em 14 de Setembro de 2010, 18:46
Caros colegas,

Vou aproveitar o tópico sobre sudo.
Eu tenho o Ubuntu 10.04

Quando preciso atualizar uso o sudo su e senha
O somente comando "su" não funciona.
Nem somente o "sudo".
Tem que ser "sudo su".
Ao final da atualização, (apt-get update => apt-get dist-upgrade), dou "exit".
Volta ao terminal do usuario comum.
Entretando ao dar novamente o "sudo su" acabo entrando como root no terminal sem pedir senha.
Como faço para sair realmente do usuario "root"? De modo que peça sempre a senha ao solicitar o usuário root?

Grato pela atenção

Paulo
Título: Re: Por que usar o sudo?
Enviado por: zeroday em 14 de Setembro de 2010, 18:49
pyfuji realmente vc nunca esta entrando na conta root , pois a sua conta root ainda não está ativada.
Apesar de recomendar que não a ative , a titulo de conhecimento para ativar : sudo passwd root

Quando vc dá sudo su pela primeira vez a sua senha fica memorizada por algum tempo (acho que 5 minutos).
Logo dps quando vc da sudo su de novo como a senha está memorizada ele nem pergunta de novo.
Espero ter ajudado.
Título: Re: Por que usar o sudo?
Enviado por: pyfuji em 15 de Setembro de 2010, 19:00
Agradeço a manifestação,

Bom, se eu digitar "sudo su"  e depois a senha no terminal então estarei como root para, por exemplo, atualizar o Ubuntu.
Depois eu saio com um "exit". E volto a ser usuário normal no terminal.

Em tese se passar 5 minutos depois do "exit" e der um "sudo su" entao seria requisitado novamente a senha.
Vou fazer o teste.

Valeu pela dica.

Paulo



pyfuji realmente vc nunca esta entrando na conta root , pois a sua conta root ainda não está ativada.
Apesar de recomendar que não a ative , a titulo de conhecimento para ativar : sudo passwd root

Quando vc dá sudo su pela primeira vez a sua senha fica memorizada por algum tempo (acho que 5 minutos).
Logo dps quando vc da sudo su de novo como a senha está memorizada ele nem pergunta de novo.
Espero ter ajudado.
Título: Re: Por que usar o sudo?
Enviado por: zeroday em 15 de Setembro de 2010, 19:05
Agradeço a manifestação,

Bom, se eu digitar "sudo su"  e depois a senha no terminal então estarei como root para, por exemplo, atualizar o Ubuntu.
Depois eu saio com um "exit". E volto a ser usuário normal no terminal.

Em tese se passar 5 minutos depois do "exit" e der um "sudo su" entao seria requisitado novamente a senha.
Vou fazer o teste.
Exatamente só não sei se o tempo padrão é 5 minutos.

Ate mais;
Título: Re: Por que usar o sudo?
Enviado por: linuser104 em 16 de Setembro de 2010, 09:26
Agradeço a manifestação,

Bom, se eu digitar "sudo su"  e depois a senha no terminal então estarei como root para, por exemplo, atualizar o Ubuntu.
Depois eu saio com um "exit". E volto a ser usuário normal no terminal.

Em tese se passar 5 minutos depois do "exit" e der um "sudo su" entao seria requisitado novamente a senha.
Vou fazer o teste.

Valeu pela dica.

Paulo


O equivalente ao comando su (de outras distribuições linux) no Ubuntu é o comando sudo su ou o comando sudo -s

Se após utilizar o comando sudo não quiser que a senha fique memorizada por determinado tempo, basta, de uma forma mais simples, digitar logo em seguida ao comando usado como root, o seguinte comando sudo -k e a execução do comando sudo feita logo em seguida a um uso seu, voltará a pedir senha.
Título: Re: Por que usar o sudo?
Enviado por: pyfuji em 20 de Setembro de 2010, 10:38


O equivalente ao comando su (de outras distribuições linux) no Ubuntu é o comando sudo su ou o comando sudo -s

Se após utilizar o comando sudo não quiser que a senha fique memorizada por determinado tempo, basta, de uma forma mais simples, digitar logo em seguida ao comando usado como root, o seguinte comando sudo -k e a execução do comando sudo feita logo em seguida a um uso seu, voltará a pedir senha.
[/quote]


Agradeço a manifestação

Com o uso do "sudo -k" dá para ter absoluta certeza que saiu  do root.

Obrigado a todos

Paulo
Título: Re: Por que usar o sudo?
Enviado por: alarcon em 20 de Setembro de 2010, 11:24

Agradeço a manifestação

Com o uso do "sudo -k" dá para ter absoluta certeza que saiu  do root.

Obrigado a todos

Paulo

Acho que você não entendeu o que o linuser104 falou, o comando sudo -k é apenas para tirar da memória a senha do sudo memorizada por um uso imediatamente anterior e não para sair do root, para fazer isso no terminal, se vc acessou com o comando sudo su ou sudo -s, seria apenas digitar exit no terminal. O comando sudo não fica permanentemente logado como root, ele faz o que tem de fazer e sai imediatamente deste modo. Com o gksu, o modo root sai quando vc fecha o aplicativo aberto com este comando.