web-dev-qa-db-ja.com

NFSサーバーでのディレクトリ作成を自動化する方法は?

3つの仮想マシンのテスト環境を作成して構成しました。

  1. Krb5認証を提供するFreeIPAサーバー
  2. サーバー1を使用して自身を保護するNFSサーバー
  3. Nfsサーバーからホームディレクトリを自動マウントするクライアント

問題は、Kerberosドメインにユーザーを追加するときに(この場合はFreeIPA Webインターフェイスを使用して)、ユーザーのホームディレクトリを作成するためにファイルサーバーに接続する必要があることです。確かにこれは単純なプロセスですが、ユーザー作成のプロセスが複雑になり、ファイルサーバーへのアクセスを許可する必要があるため、技術者以外の人にタスクを委任することができなくなります。

私の最初のアイデアは、ユーザーリストを取得して不足している家を作成するcronジョブを作成することでした。問題は、作成後にアカウントが機能しない時間枠が残り、問題が発生することです。

TL; DR:スタンドアロンのNFSサーバー上にユーザー固有のディレクトリ(ホーム)を自動的に作成するためのベストプラクティスは何ですか?

3
Richard

これを行ういくつかの方法がありますが、「ベストプラクティス」という用語を使用することは避けたいと思います。

  1. cronジョブこれは機能します-以前に実行しました。なぜそれが機能しないのですか?営業時間中に定期的に実行し、X分後にアカウントを使用できるようになることを新しいユーザーに警告します。
  2. アカウント管理を適切に一元化する GUIを介して手動で行うのではなく、IPAコマンドを使用し、ホームディレクトリなど(メールボックスなど)を安全な管理サーバーに追加するスクリプト/インターフェイスを作成します。これは、リソースがある場合に提案するオプションです。
  3. 「最初のログイン」端末を使用 jordanmの設定を使用してホームディレクトリを自動的に作成し、ユーザーが初めてログインするための専用の安全なワークステーション(ユーザーがすべて近接している場合)またはサーバーを作成します。
2
Andy

この問題の解決策の1つは、pam_mkhomedirを使用して、システムへの最初のログイン時にホームディレクトリを作成することです。マンページの説明:

   The pam_mkhomedir PAM module will create a users home directory if it 
   does not exist when the session begins. This allows users to be 
   present in central database (such as NIS, kerberos or LDAP) without 
   using a distributed file system or pre-creating a large number 
   of directories. The skeleton directory (usually /etc/skel/) is used 
   to copy default files and also sets a umask for the creation.

マンページからの例:

  A sample /etc/pam.d/login file:

         auth       requisite   pam_securetty.so
         auth       sufficient  pam_ldap.so
         auth       required    pam_unix.so
         auth       required    pam_nologin.so
         account    sufficient  pam_ldap.so
         account    required    pam_unix.so
         password   required    pam_unix.so
         session    required    pam_mkhomedir.so skel=/etc/skel/ umask=0022
         session    required    pam_unix.so
         session    optional    pam_lastlog.so
         session    optional    pam_mail.so standard
3
jordanm