LDAPを使用したホームディレクトリとpam.d


10

背景:
設定側のPAMとLDAP認証の詳細については、あまり詳しくありません。私はPAMを使用するシステムを使用しましたが、システム自体ではなく、アプリケーションのみに取り組みました。

質問:
pamを使用してLDAP経由の認証を制御することは、システムにホームディレクトリが作成されないことを意味しますか?

そうでない場合は、サーバー上にユーザーを作成するか、LDAPソースからユーザーをシステムにプッシュしますか?


1
この質問は関連するかもしれない:unix.stackexchange.com/q/106391/34796
DRS

回答:


13

これはまさにのpam_mkhomedirために作られたものです。そのディレクトリが存在しない場合、モジュールは、ログイン時にユーザのホームディレクトリを作成することができます。
pam_mkhomedir

インストール方法はディストリビューションによって異なります。しかし、それをの1つ以上のファイルに配置する必要があります/etc/pam.d
たとえば、私のシステム/etc/pam.d/system-loginでは、ログインを実行する他のすべてのサービス(ssh、gdmなど)に含まれています。
私は入れてしまうでしょうpam_mkhomedir.sosessionように、スタック:

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サポートされているオプションについては、を参照してください。


驚くばかり。答えてくれてありがとう。ユーザーは現在システムにログインしていません。システムでホストされているWebアプリケーションにログインしています。Webアプリの初回ログイン時にホームディレクトリを作成できるトリガーはありますか?
ニコラスアンダーソン、

1
WebアプリケーションがPAMスタックを使用する場合、それは機能します(ただし、のauth代わりにスタックに置く必要がある場合がありますsession)。アプリがPAMスタックを使用しない場合は、アプリケーション自体に何かを組み込む必要があります。
Patrick、

セッションモジュールのみが提供されているようですが、実際に試したところ、pam_mkhomedirはauthモジュールで動作していません。ニコラスアンダーソンと同じ問題があります。ウェブアプリケーションがあります。authモジュールでこの問題を解決する方法はありますか?
Fabiano Tarlao

6

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


help.ubuntu.com/community/LDAPClientAuthenticationによって提案されたumask は umask=0022です。私はあなたの機能がすべての機能を削除すると信じています。readこれには、マルチユーザーシステムやその他のケースで、キーベースの認証/信頼メカニズムが機能しなくなる可能性があるものも含まれます。
dragon788

0

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

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.