pam_mount

提供: ArchWiki
移動先: 案内検索

pam_mount を使うことで (LUKSeCryptfs などで) 暗号化したホームパーティションをログイン時に自動的にマウントすることができます。ログインマネージャを使ったりコンソールでログインしたときに /home をマウントします (マウントポイントは自由に指定できます)。ドライブを暗号化するパスフレーズは Linux ユーザーのパスフレーズと同一である必要があります。同一ならばログインに使うパスフレーズと別のパスフレーズを入力する必要がありません。

警告: Pam_mount はセッションの終了時にパーティションをアンマウントすることもできますが、pam で使われている pam_systemd.so が原因で今のところ機能しません。

セットアップ

  1. 公式リポジトリから pam_mount をインストールしてください。
  2. 以下のように /etc/security/pam_mount.conf.xml を編集してください:

ファイルの末尾、</pam_mount> というタグの前に新しい行を3行追加します:

  • USERNAME はあなたの linux ユーザー名に置き換えて下さい。
  • /dev/sdaX は適当なファイルやコンテナファイルに置き換えて下さい。
  • fstype="auto"/usr/bin/mount.<type> の <type> に変えられます。大抵の場合は "auto" で問題ありません。fstype="crypt" を使うとログアウト時にループデバイスが閉じられます。
  • 必要なら、マウントオプションを追加してください。
/etc/security/pam_mount.conf.xml
<volume user="USERNAME" fstype="auto" path="/dev/sdaX" mountpoint="/home" options="fsck,noatime" />
<mkmountpoint enable="1" remove="true" />

</pam_mount>

ログインマネージャの設定

通常、/etc/pam.d の設定ファイルを編集してログイン時に pam_mount が実行されるようにする必要があります。それぞれのファイルのエントリの順番は重要です。以下に書かれているように /etc/pam.d/system-auth を編集してください。ディスプレイマネージャを使用している場合 (例: Slim や GDM)、ディスプレイマネージャのファイルも編集してください。以下の設定例では、追加する行を太字で示しています。

/etc/pam.d/system-auth
#%PAM-1.0

auth      required  pam_env.so
auth      required  pam_unix.so     try_first_pass nullok
auth      optional  pam_mount.so
auth      optional  pam_permit.so

account   required  pam_unix.so
account   optional  pam_permit.so
account   required  pam_time.so

password  optional  pam_mount.so
password  required  pam_unix.so     try_first_pass nullok sha512 shadow
password  optional  pam_permit.so

session   optional  pam_mount.so
session   required  pam_limits.so
session   required  pam_env.so
session   required  pam_unix.so
session   optional  pam_permit.so

SLiM

SLiM の場合:

/etc/pam.d/slim
auth            requisite       pam_nologin.so
auth            required        pam_env.so
auth            required        pam_unix.so
auth            optional        pam_mount.so
account         required        pam_unix.so
password        required        pam_unix.so
password        optional        pam_mount.so
session         required        pam_limits.so
session         required        pam_unix.so
session         optional        pam_mount.so
session         optional        pam_loginuid.so
session         optional        pam_ck_connector.so

GDM

GDM の場合:

ノート: GDM バージョン 3.2 から設定ファイルは (/etc/pam.d/gdm から) /etc/pam.d/gdm-password に変更されています。
/etc/pam.d/gdm-password
#%PAM-1.0
auth            requisite       pam_nologin.so
auth            required        pam_env.so

auth            requisite       pam_unix.so nullok
auth	        optional        pam_mount.so
auth            optional        pam_gnome_keyring.so

auth            sufficient      pam_succeed_if.so uid >= 1000 quiet
auth            required        pam_deny.so

account         required        pam_unix.so

password        required        pam_unix.so
password        optional        pam_mount.so

session         required        pam_loginuid.so
-session        optional        pam_systemd.so
session         optional        pam_keyinit.so force revoke
session         required        pam_limits.so
session         required        pam_unix.so
session         optional        pam_mount.so
session         optional        pam_gnome_keyring.so auto_start