Login automático por dispositivo seguido por login pelo usuário?

1

Pergunta: Alguém sabe de algum método para realizar um "segundo" login sem usar su, ou um meio de usar o su que requer que o usuário insira seu nome de usuário após o comando su ser emitido?

Situação: Temos vários tipos de dispositivos que fazem login em um servidor Linux. Os usuários podem escolher entre as opções em um menu para executar. Os dispositivos fazem o login automático no sistema com uma conta diferente para cada dispositivo. A razão pela qual fazemos isso é limitar o número de contas de configuração a serem mantidas nos dispositivos para um por dispositivo. Os clientes ssh que podemos usar todos podem vincular um nome de login automático à conta do dispositivo em uso (veja o Juice ssh no android para um exemplo). Manter mais de 40 contas por dispositivo em cada aplicativo é muita sobrecarga para nós.

Meta: Após o login do dispositivo (login principal), forneça um login secundário para o usuário, permitindo que ele insira seu ID de usuário e senha.

Minha primeira inclinação teria sido 'su', mas 'su' precisa de um nome de usuário fornecido com o comando ou o padrão é a conta root. Para manter as coisas simples, estou tentando evitar escrever mais código shell para solicitar o nome de usuário antes de emitir um comando como 'su - $ username' para fazer isso.

Naturalmente, qualquer aplicativo com o qual ele faça login já solicita nome de usuário e senha, mas o drop para o shell e outras funções construídas em casa dependem do login para fornecer autenticação.

    
por Bill Linder 01.06.2015 / 15:16

1 resposta

0

O que importa apenas fazer com que os usuários digitem su - username no shell, caso precisem digitar seu nome de usuário e senha de alguma forma? Apenas 5 caracteres extras digitando:).

Se não for aceitável pelos usuários e você estiver com tanta preguiça de não querer mais escrever um script, basta instalar telnet e telnetd no servidor e colocar o seguinte alias em /etc/bash.bashrc .

alias x='telnet localhost'

Atualizado: Não se esqueça de restringir os acessos remotos à porta telnetd (tcp / 23). Você pode configurar o firewall ( iptables ) ou o wrapper TCP tradicional ( /etc/hosts.allow , /etc/hosts.deny - consulte o manual do host_access (5)).

    
por 02.06.2015 / 03:30