Vinculando scripts bash

2

Estou procurando uma maneira de vincular alguns scripts bash. Meio como você inclui php. Eu quero ter minha senha.sh pedir passe > Iniciar utilitário > O utilitário verifica se está correto > se assim for, passará para o próximo passo > .. Algo parecido.  Eu suponho que eu teria top usar um arquivo para armazenar minha senha codificada msd5 (im certeza de encontrar uma maneira de bloquear isso).

Então, isso é uma tarefa possível? se assim fosse eu deveria começar a ler? se agora o que seria um idioma melhor para usar para essa função. mas ainda usando meu bash como backend?

    
por d4rkh4nd 28.12.2012 / 19:44

2 respostas

0

Você pode inserir algum script python dentro do seu script bash para verificar senhas no seu chaveiro.

1) Abra o cavalo marinho e copie o nome da sua senha (exemplo "Ubuntu One").

2)Dentrodoseuscript,éassimquevocêpodeobterasenha(altere"Ubuntu One" para o nome da sua senha).

#!/bin/bash
password='
python << END
import gnomekeyring as gk

keyring = gk.get_default_keyring_sync()
keyItems = gk.list_item_ids_sync(keyring)

if not gk.get_info_sync(keyring).get_is_locked():
    for i in keyItems:
        key = gk.item_get_info_sync(keyring, i)
        if  key.get_display_name() == 'Ubuntu One':
            print key.get_secret()
END' 

echo "This is the password in your keyring which name is \"Ubuntu One\": $password "
exit 0
    
por desgua 09.03.2014 / 02:15
0

Parece que você precisa manter algum segredo em seu roteiro e não parece ser um lugar certo para isso.

Pense nisso: o script precisa ser legível pelo usuário para ser interpretado pelo bash, como você impediria que o usuário copiasse o script, removendo quaisquer verificações dele e executando esta versão modificada?

É melhor você usar algum utilitário externo para verificação de senha, por exemplo, usar chaveiro do gnome como sugerido por @desgua

Além disso, se você quiser que o usuário insira sua própria senha, você pode tentar um truque com o sudo, digamos que você vai fazer isso para tester nome de usuário:

  1. altere o proprietário de um script para outro usuário (eu chamarei admin neste exemplo): chown admin /path/to/script.sh
  2. torna o script acessível apenas por este usuário chmod 700 /path/to/script.sh
  3. dê aos usuários que devem executar este script sudo para executar este script (você pode limitar seus direitos sudo a SOMENTE este script), para isso adicione algo assim ao arquivo /etc/sudoers (use o visudo para editar este Arquivo): tester ALL = (admin) /path/to/script.sh

  4. agora o usuário tester pode executar sudo -u admin /path/to/script.sh e será solicitado a SUA PRÓPRIA senha pelo sudo. Ele não poderá executar outros comandos com o nome admin ou ler o conteúdo do script.

por F2nd 30.03.2014 / 00:22