Raiz para o mínimo

0

Estou criando um script para automatizar e minimizar o acesso ao root. Eu vou tentar fazer isso via SSH. No momento, estou tendo um problema usando sed para substituir o shell UID e GID 0 como /sbin/nologin .

Por que estou fazendo isso? Isso desativa a raiz em login , gdm , kdm , su , ssh , scp , sftp . Eu estou tentando executar o privilégio de raiz somente via sudo . Se você conhece alguma sugestão para minimizar o acesso root, por favor sugira também.

Esta é a questão atual:

grep :0:0: /etc/passwd | sudo sed 's_/bin/bash_/sbin/nologin_' /etc/passwd

O que está fazendo atualmente é substituir todos os /bin/bash para /sbin/nologin .

    
por Public Image 29.01.2015 / 06:29

2 respostas

2

1. obtenha uma conta que seja sudoer

su -
echo '<YOU>  ALL=(ALL:ALL)  ALL'>>/etc/sudoers
exit

2. desativar a conta root

sudo usermod --expiredate 1 root

3. teste-o

$ su -
Password: <correct password>
Your account is expired.

Testado no Debian GNU / Linux

    
por 29.01.2015 / 08:56
0

o que

grep :0:0: /etc/passwd | sudo sed 's_/bin/bash_/sbin/nologin_' /etc/passwd

fazer?

  • grep :0:0: /etc/passwd procura por linha (s?) com uid / gid sendo 0, isso normalmente dá a linha com root, esta linha é alimentada para STDOUT (saída padrão)
  • | output do grep é alimentado para o sudo sed que é descartado devido a um arquivo ser especificado na linha de comando.
  • sed 's_/bin/bash_/sbin/nologin_' /etc/passwd this substitui bash por nologin de / etc / passwd para STDOUT, / etc / passwd é deixado inalterado.

você simplesmente tentou ...?

sudo sed -i '/:0:0:/s_/bin/bash_/sbin/nologin_' /etc/passwd
    
por 29.01.2015 / 09:37

Tags