Como usar minha senha de login para fazer duas coisas

3

Eu tenho uma unidade CIFS que eu montei regularmente e requer uma senha para ela. Como é irritante digitar minha senha toda vez, escrevi um script que define a variável de ambiente PASSWD, monta a unidade e depois a limpo (o CIFS verifica a variável de ambiente PASSWD antes de perguntar).

Funciona, e o script com minha senha está em uma partição criptografada, mas eu não gosto disso.

O que eu gostaria de fazer é que, como minha caixa e a unidade remota têm a mesma senha em texto simples, o gerenciador de login usa a senha que eu digito para tentar montar a unidade também. Dessa forma, minha senha não está escrita em texto simples no meu computador, mas evito ter que responder ainda outra senha.

Outras sugestões para melhorar o login da montagem do CIFS são bem-vindas, tendo em mente que não tenho acesso raiz ao servidor que hospeda a unidade.

EDITAR:

Eu tenho que esclarecer algumas coisas:

  • Eu tenho acesso root ao cliente (minha caixa), simplesmente não tenho acesso ao servidor. Portanto, todas as soluções devem ser do lado do cliente.

  • Minha preocupação é ter uma cópia em texto simples da minha senha para qualquer pessoa que tenha acesso físico ao meu laptop. Atualmente, minha partição / home é criptografada, então meu script é bastante seguro quando o laptop está desligado.

É por isso que eu gostaria de uma solução, se possível, que use o fato de que estou digitando essas credenciais exatas para fazer login na minha conta de usuário.

    
por Lenz 18.06.2014 / 15:47

1 resposta

1

Geralmente, uso o serviço automount para compartilhamentos como este que periodicamente quero montar e usar. Configurar isso, depois de entender como, é bastante trivial.

Etapa 1 - montagem automática

Você precisará garantir que os pacotes estejam instalados. No CentOS 6, isso seria autofs . Muito provavelmente outras distros usarão um nome similar. Você precisará criar os seguintes arquivos:

# /etc/auto.master
/mymountpt          /etc/auto.mymountpt --timeout=600 --ghost

# /etc/auto.mymountpt
someshare                  -fstype=cifs,rw,noperm,netbiosname=${HOST},credentials=/etc/credentials.txt ://cifsserver/sharename

# /etc/credentials.txt
username=mydom\myuser
password=somepassword

Você precisará fazer as permissões neste último arquivo da seguinte forma:

$ sudo chmod 600 /etc/credentials.txt

Você também precisará se certificar de que o NSS (Name Service Switch) está ciente dessa configuração:

# /etc/nsswitch.conf
automount:  files nisplus

Com esses arquivos no lugar, você agora deve ser capaz de iniciar o serviço autofs .

$ sudo service autofs start

Etapa 2 - testando-a

Após o serviço ser iniciado, você poderá acessar este caminho quando desejar:

$ cd /mymountpt/someshare

A montagem desse compartilhamento agora é governada por autofs , que vigiará 600 segundos de inatividade, quando desmontará a ação.

Essa abordagem pode parecer um pouco pesada, mas ao fazer as coisas dessa maneira, você aliviou o sistema de ter que depender de um determinado compartilhamento CIFS como estando disponível na inicialização. Você moveu-o para que agora esteja sob demanda quando realmente está sendo usado.

O que fazer se você não tiver login root?

Se você achar que não tem esses pacotes instalados e não conseguir instalá-los, suas opções se tornarão muito menores.

Eu daria uma olhada no artigo do Samba no ArchLinux Wiki , ele também aborda outros métodos. Você também pode usar o FUSE para montar uma variedade de tipos de mídia como diretórios locais, incluindo SMB / CIFS. Isso é abordado no artigo do FUSESmb no Wiki do Ubuntu .

Referências

por 18.06.2014 / 16:56