Diretórios iniciais do Autofs com logins sem senha

2

Eu quero uma configuração em que um diretório base do usuário seja montado no login ( autofs ). Isso está trabalhando com autenticação baseada em senha. No entanto, eu quero autenticação sem senha, gerando chaves públicas.

A autenticação sem senha funciona bem se o diretório pessoal do usuário estiver armazenado localmente (sem autofs ).

No meu caso, as chaves estão no servidor remoto e o diretório pessoal é montado somente quando acessado e o servidor não pode verificar você a menos que tenha a chave pública.

Isso é possível?

(Ambos os servidores estão executando o Solaris 10 x86 no VirtualBox.)

    
por mzs_47 23.02.2014 / 12:00

3 respostas

1

Você pode alterar AuthorizedKeysFile para algo fora do diretório inicial, por exemplo, /etc/ssh/keys/%u/authorized_keys . Então as chaves estarão disponíveis antes de /home/%u ser montado.

Na página do manual de sshd_config :

AuthorizedKeysFile
         Specifies the file that contains the public keys that can be used
         for user authentication.  The format is described in the AUTHO-
         RIZED_KEYS FILE FORMAT section of sshd(8).  AuthorizedKeysFile
         may contain tokens of the form %T which are substituted during
         connection setup.  The following tokens are defined: %% is
         replaced by a literal '%', %h is replaced by the home directory
         of the user being authenticated, and %u is replaced by the user-
         name of that user.  After expansion, AuthorizedKeysFile is taken
         to be an absolute path or one relative to the user's home direc-
         tory.  Multiple files may be listed, separated by whitespace.
         The default is ''.ssh/authorized_keys .ssh/authorized_keys2''.
    
por 14.08.2015 / 06:06
1

Se você tiver o SELinux ativado, talvez seja necessário habilitar os diretórios iniciais montados pelo NFS via:

setsebool -P use_nfs_home_dirs=true

Eu tive esse problema no RHEL e encontrei a solução em / var / log / messages:

SELinux is preventing /usr/sbin/sshd from read access on the file authorized_keys.#012#012***** Plugin catchall_boolean (89.3 confidence) suggests ******************#012#012If you want to allow use to nfs home dirs#012Then you must tell SELinux about this by enabling the 'use_nfs_home_dirs' boolean.#012You can read 'None' man page for more details.#012Do#012setsebool -P use_nfs_home_dirs 1#012#012*****

    
por 27.09.2016 / 23:37
0

Isso depende do que o autofs está montando. É o NFS? Qual modelo de segurança? Se for segurança AUTH_SYS (baseada em IP), isso deve funcionar. Mas se for krb5, o servidor SSH no host não terá um ticket do kerberos para montar o diretório.

    
por 14.08.2015 / 07:34