uma mais segura sem senha sudo?

3

Ok, aqui está o meu problema - Por favor, não grite comigo por ser inseguro! :) Isso está na minha máquina host. Eu sou o único a usá-lo, então é bastante seguro, mas eu tenho uma senha muito complexa que é difícil de digitar repetidas vezes. Eu uso o console para mover arquivos e executar comandos arbitrários MUITO, e eu troco os terminais, então sudo lembrando para o console não é suficiente (E eu ainda tenho que digitar minha senha terrível pelo menos uma vez!) No passado eu usei o truque do NOPASSWD em sudoers, mas decidi ser mais seguro. Existe algum tipo de compromisso além de não permitir o acesso por senha a determinados aplicativos? (que ainda pode ser inseguro) Algo que irá parar o malware e logins remotos do sudo rm -rf / -ing me, mas nos meus terminais eu posso digitar felizmente longe? Posso ter este terminal, talvez, então apenas comandos aleatórios não conseguirão passar? Eu tentei executar as emulações de terminal como sudo, mas isso me coloca como root.

    
por V_H 22.11.2010 / 12:16

6 respostas

8

Tente adicionar isso às suas opções sudo :

Defaults timestamp_timeout=0, tty_tickets
A opção

tty_tickets (ativada por padrão) fará sudo perguntar a senha se ela não tiver sido solicitada anteriormente nesse tty em particular (incluindo os emulators ptys do terminal), e a opção timestamp_timeout=0 fará com que ela não seja solicitada novamente sessão inteira.

Então, quando você quiser fazer algumas operações administrativas, você pode abrir o terminal, sudo algo, fechá-lo e você estará seguro novamente.

    
por 22.11.2010 / 12:25
7

A solução óbvia para mim é reduzir a complexidade da sua senha. Você parece feliz em não usar nenhuma senha em vez de uma senha longa e complexa, então por que não olhar para esse meio termo como uma opção válida?

Se a sua máquina estiver conectada a uma rede, haverá risco de comprometimento. Sem senha, você se abre para uma exploração oportunista, de modo que até mesmo uma senha simples oferece segurança extra.

    
por 09.12.2010 / 00:23
4

A alternativa mais segura para usar a senha no é usar um método de autenticação alternativo via PAM. Você poderia, por exemplo, usar um leitor de cartão inteligente. Você simplesmente inseriria o cartão antes de usar 'sudo' e o removeria quando terminasse. Existe até um módulo PAM para autenticação de voz. Se você não consegue encontrar um módulo PAM de que gosta e não se sente confortável com o C, existem ligações do Python.

Confira esta lista de módulos PAM .

    
por 12.01.2011 / 20:33
1

Defina rootpw no seu /etc/sudoers :

 Defaults        rootpw

Conceda a root uma senha mais simples que a sua.

Lembre-se de proibir root em ssh , caso você tenha instalado um servidor ssh .

Se a sua senha horrível é para proteger seus arquivos, então eles são realmente protegidos apenas se eles são criptografados, caso contrário, isso é apenas "teatro de segurança". Assumindo que é por isso que você quer manter o grande, você estará seguro: quebrar a senha de root ainda não será suficiente para descriptografar seus arquivos, e qualquer tipo de malware fritará nossa CPU antes de adivinhar a senha. / p>     

por 12.01.2011 / 19:51
1

Uma abordagem diferente para /etc/sudoers e tal seria sudo -i e permanecendo root . Por exemplo, se você usar a tela GNU, você pode ter uma janela como usuário regular e uma segunda, onde você emite sudo -i e fica na raiz.

Se o seu ~/.screenrc for assim, a emissão de screen abrirá automaticamente duas "guias" de acordo:

hardstatus alwayslastline "%w"
screen -t normal
screen -t root sudo -i
    
por 12.01.2011 / 20:00
1

em / etc / sudoers (visudo) adicione uma linha como esta:

uberjim ALL = (ALL) NOPASSWD:ALL

como seu usuário, uma vez logado (com sua senha segura) você pode simplesmente digitar:

sudo /cmd/you/want/to/run

Nenhuma senha é necessária :) Divirta-se

    
por 27.03.2011 / 15:58