web-dev-qa-db-ja.com

パスワードなしのログインでAutofsホームディレクトリ

ログイン時にユーザーのホームディレクトリがマウントされるセットアップが必要です(autofs)。これは、パスワードベースの認証で機能しています。ただし、公開鍵を生成して、パスワードなしの認証が必要です。

パスワードなしの認証は、ユーザーのホームディレクトリがローカルに保存されている場合(autofsなし)にうまく機能します。

私の場合、キーはリモートサーバー上にあり、ホームディレクトリはアクセスされたときにのみマウントされ、サーバーは公開キーを持っていない限りユーザーを確認できません。

これも可能ですか?

(両方のサーバーがVirtualBox上でSolaris 10 x86を実行しています。)

2
mzs_47

AuthorizedKeysFileをホームディレクトリの外にあるもの、たとえば/etc/ssh/keys/%u/authorized_keysに変更できます。そうすると、/home/%uがマウントされる前にキーが使用可能になります。

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''.
1
Patrick

SELinuxを有効にしている場合は、次の方法でNFSマウントされたホームディレクトリを有効にする必要があります。

setsebool -P use_nfs_home_dirs=true

RHELでこの問題が発生し、/ var/log/messagesで解決策を見つけました。

SELinuxは、/ usr/sbin/sshdがauthorized_keysファイルへの読み取りアクセスを阻止しています。#012#012 *****プラグインcatchall_boolean(89.3信頼度)は*****************を示唆しています*#012#012 nfs home dirsの使用を許可する場合#012次に、「use_nfs_home_dirs」ブール値を有効にして、SELinuxにこれを通知する必要があります。#012詳細については、「なし」のマニュアルページを参照してください。 1#012#012 *****

1
Dan Pratt

これは、autofsがマウントしているものによって異なります。それはNFSですか?どのようなセキュリティモデルですか? AUTH_SYS(IPベース)セキュリティの場合、これは機能するはずです。ただし、krb5の場合、ホスト上のSSHサーバーには、ディレクトリをマウントするためのKerberosチケットがありません。

0
BowlOfRed