背景:
設定側のPAMとLDAP認証の詳細については、あまり詳しくありません。私はPAMを使用するシステムを使用しましたが、システム自体ではなく、アプリケーションのみに取り組みました。
質問:
pamを使用してLDAP経由の認証を制御することは、システムにホームディレクトリが作成されないことを意味しますか?
そうでない場合は、サーバー上にユーザーを作成するか、LDAPソースからユーザーをシステムにプッシュしますか?
背景:
設定側のPAMとLDAP認証の詳細については、あまり詳しくありません。私はPAMを使用するシステムを使用しましたが、システム自体ではなく、アプリケーションのみに取り組みました。
質問:
pamを使用してLDAP経由の認証を制御することは、システムにホームディレクトリが作成されないことを意味しますか?
そうでない場合は、サーバー上にユーザーを作成するか、LDAPソースからユーザーをシステムにプッシュしますか?
回答:
これはまさにのpam_mkhomedir
ために作られたものです。そのディレクトリが存在しない場合、モジュールは、ログイン時にユーザのホームディレクトリを作成することができます。pam_mkhomedir
インストール方法はディストリビューションによって異なります。しかし、それをの1つ以上のファイルに配置する必要があります/etc/pam.d
。
たとえば、私のシステム/etc/pam.d/system-login
では、ログインを実行する他のすべてのサービス(ssh、gdmなど)に含まれています。
私は入れてしまうでしょうpam_mkhomedir.so
にsession
ように、スタック:
session optional pam_loginuid.so
session required pam_env.so
session optional pam_lastlog.so
session include system-auth
session optional pam_mkhomedir.so # <<< right here
session optional pam_ck_connector.so nox11
session optional pam_gnome_keyring.so auto_start
session optional pam_motd.so motd=/etc/motd
どこに置くかは、スタック内の他の要素に完全に依存します。ただし、ホームディレクトリを必要とする可能性のある他のものより前に置く必要があります。
man 8 pam_mkhomedir
サポートされているオプションについては、を参照してください。
auth
代わりにスタックに置く必要がある場合がありますsession
)。アプリがPAMスタックを使用しない場合は、アプリケーション自体に何かを組み込む必要があります。
Ubuntu 14.04にsystem-login
は存在しませんが、asという名前の別のファイルcommon-session
が存在します。
私はそこに行って入れました:
root@GW:~# vim /etc/pam.d/common-session
#
session optional pam_systemd.so skel=/etc/skel/ umask=0077
これにより、存在しない場合にホームディレクトリが作成され、アクセス許可も設定されます 700
umask=0022
です。私はあなたの機能がすべての機能を削除すると信じています。read
これには、マルチユーザーシステムやその他のケースで、キーベースの認証/信頼メカニズムが機能しなくなる可能性があるものも含まれます。
oddjob-mkhomedirを使用することをお勧めします:
Centos 7の場合、これは機能します。
yum install oddjob-mkhomedir
追加これまで/etc/pam.d/system-auth
と/etc/pam.d/password-auth
:
session optional pam_oddjob_mkhomedir.so skel=/etc/skel
そして最後に:
systemctl enable oddjob; systemctl start oddjob
これはもともとここに投稿されました:https : //www.centos.org/forums/viewtopic.php?t=48631
注:/home
パーティションをマウントしたばかりの場合は、忘れずに実行してください。restorecon /home