Eu tenho uma unidade CIFS que monto regularmente e requer uma senha para isso. Como é chato 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 não gosto disso.
O que eu gostaria de fazer é que, como minha caixa e a unidade remota têm a mesma senha de texto simples, o gerenciador de login usa a senha digitada para tentar montar a unidade também. Dessa forma, minha senha não fica escrita em texto simples no meu computador, mas evito ter que responder mais uma senha.
Outras sugestões para melhorar o login de montagem CIFS são bem-vindas, tendo em mente que não tenho acesso root ao servidor que hospeda a unidade.
EDITAR:
Tenho que esclarecer algumas coisas:
Tenho acesso root ao cliente (minha box), só não tenho acesso ao servidor. Portanto, todas as soluções devem estar 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 está criptografada, então meu script é bastante seguro quando o laptop está desligado.
É por isso que gostaria de uma solução, se possível, que usasse o fato de que estou digitando essas credenciais exatas para fazer login na minha conta de usuário.
Responder1
Geralmente uso o automount
serviço para compartilhamentos como esse que desejo montar e usar periodicamente. Configurar isso, depois de entender como, é bastante trivial.
Passo #1 - configurar montagem automática
Você precisará ter certeza de que os pacotes estão instalados. No CentOS 6 isso seria autofs
. Provavelmente outras distros usarão um nome semelhante. Em seguida, 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á conceder as permissões neste último arquivo da seguinte forma:
$ sudo chmod 600 /etc/credentials.txt
Você também precisará certificar-se de que o NSS (Name Service Switch) esteja ciente desta configuração:
# /etc/nsswitch.conf
automount: files nisplus
Com esses arquivos instalados, agora você poderá iniciar o autofs
serviço.
$ sudo service autofs start
Passo #2 – testando
Depois que o serviço for iniciado, você poderá acessar este caminho à vontade:
$ cd /mymountpt/someshare
A montagem deste compartilhamento agora é regida pelo autofs
qual observará 600 segundos de inatividade, momento em que desmontará o compartilhamento.
Essa abordagem pode parecer um pouco pesada, mas ao fazer as coisas dessa maneira, você evitou que seu sistema dependesse de um compartilhamento CIFS específico como estando disponível na inicialização. Você o moveu para que agora esteja sob demanda quando estiver realmente sendo usado.
O que fazer se você não tiver login root?
Se você descobrir que não tem esses pacotes instalados e não consegue instalá-los, suas opções serão muito menores.
eu daria uma olhada noArtigo do Samba no Wiki do ArchLinux, ele também abrange outros métodos. Você também pode usar o FUSE para montar vários tipos de mídia como diretórios locais, incluindo SMB/CIFS. Isto é abordado noArtigo FUSESmb no Ubuntu Wiki.