「Pam usb」の版間の差分
ページの作成:「Category:セキュリティ en:Pam usb pam_usb は通常の USB フラッシュドライブを利用した Linux のハードウェア認証を提供します。...」 |
細 カテゴリ変更 |
||
| (同じ利用者による、間の2版が非表示) | |||
| 1行目: | 1行目: | ||
{{DISPLAYTITLE:pam_usb}} |
|||
| ⚫ | |||
[[Category:認証]] |
|||
[[en:Pam usb]] |
[[en:Pam usb]] |
||
{{Related articles start}} |
|||
| ⚫ | |||
| ⚫ | |||
{{Related|pam_mount}} |
|||
{{Related|pam_abl}} |
|||
{{Related|pam_oath}} |
|||
{{Related articles end}} |
|||
| ⚫ | |||
[[su]] や |
[[su]] や[[ディスプレイマネージャ]]など、[[PAM]] をサポートしている全てのアプリケーションで動作します。 |
||
== インストール == |
== インストール == |
||
| 18行目: | 25行目: | ||
USB デバイスをコンピュータに接続して、pamusb-conf を使ってデバイスを設定ファイルに追加してください: |
USB デバイスをコンピュータに接続して、pamusb-conf を使ってデバイスを設定ファイルに追加してください: |
||
{{hc|# pamusb-conf --add-device MyDevice| |
|||
Please select the device you wish to add. |
|||
* Using "SanDisk Corp. Cruzer Titanium (SNDKXXXXXXXXXXXXXXXX)" (only option) |
|||
Which volume would you like to use for storing data ? |
|||
* Using "/dev/sda1 (UUID: <6F6B-42FC>)" (only option) |
|||
Name : MyDevice |
|||
Vendor : SanDisk Corp. |
|||
Model : Cruzer Titanium |
|||
Serial : SNDKXXXXXXXXXXXXXXXX |
|||
Volume UUID : 6F6B-42FC (/dev/sda1) |
|||
Save to /etc/pamusb.conf ? |
|||
[Y/n] y |
|||
Done.}} |
|||
{{ic|MyDevice}} は自由に名前を付けることができます。また、デバイスは好きな数だけ追加できます。 |
{{ic|MyDevice}} は自由に名前を付けることができます。また、デバイスは好きな数だけ追加できます。 |
||
次に、pam_usb で認証したいユーザーを設定してください: |
次に、pam_usb で認証したいユーザーを設定してください: |
||
{{hc|# pamusb-conf --add-user root| |
|||
Which device would you like to use for authentication ? |
|||
* Using "MyDevice" (only option) |
|||
User : root |
|||
Device : MyDevice |
|||
Save to /etc/pamusb.conf ? |
|||
[Y/n] y |
|||
Done.}} |
|||
=== 設定の確認 === |
=== 設定の確認 === |
||
{{ic|pamusb-check}} を実行することで設定が問題ないか確認することができます。このツールは認証リクエストをシミュレートします (デバイスの接続が必要です): |
{{ic|pamusb-check}} を実行することで設定が問題ないか確認することができます。このツールは認証リクエストをシミュレートします (デバイスの接続が必要です): |
||
{{hc|# pamusb-check root| |
|||
* Authentication request for user "root" (pamusb-check) |
|||
* Device "MyDevice" is connected (good). |
|||
* Performing one time pad verification... |
|||
* Verification match, updating one time pads... |
|||
* Access granted.}} |
|||
=== PAM モジュールの設定 === |
=== PAM モジュールの設定 === |
||
| 69行目: | 76行目: | ||
上記を設定したら、USB デバイスを接続して認証ができるはずです: |
上記を設定したら、USB デバイスを接続して認証ができるはずです: |
||
{{hc|$ su| |
|||
* pam_usb v.SVN |
|||
* Authentication request for user "root" (su) |
|||
* Device "MyDevice" is connected (good). |
|||
* Performing one time pad verification... |
|||
* Verification match, updating one time pads... |
|||
* Access granted.}} |
|||
==トラブルシューティング== |
|||
===su で pam_usb を使えない=== |
|||
以下のように設定して {{ic|su}} がパスワードを要求して、pam_usb を使わない場合: |
|||
{{hc|/etc/pam.d/system-auth| |
|||
auth sufficient pam_usb.so}} |
|||
{{ic|/etc/pam.d/su}} の冒頭にも同じ行を追加してください。他の pam を使用するアプリケーションでも追加が必要になる場合があります。 |
|||
== 参照 == |
== 参照 == |
||
* [https://github.com/aluzzardi/pam_usb Github リポジトリ] |
* [https://github.com/aluzzardi/pam_usb Github リポジトリ] |
||
* [https://github.com/ |
* [https://github.com/aluzzardi/pam_usb/wiki Github wiki] |
||
2019年3月1日 (金) 00:56時点における最新版
pam_usb は通常の USB フラッシュドライブを利用した Linux のハードウェア認証を提供します。
su やディスプレイマネージャなど、PAM をサポートしている全てのアプリケーションで動作します。
インストール
pam_usbAUR パッケージをインストールしてください。
設定
pam_usb をインストールしたら以下のように設定する必要があります:
- デバイスとユーザーを設定
- システム認証の PAM を設定
デバイスとユーザーを設定
USB デバイスをコンピュータに接続して、pamusb-conf を使ってデバイスを設定ファイルに追加してください:
# pamusb-conf --add-device MyDevice
Please select the device you wish to add. * Using "SanDisk Corp. Cruzer Titanium (SNDKXXXXXXXXXXXXXXXX)" (only option) Which volume would you like to use for storing data ? * Using "/dev/sda1 (UUID: <6F6B-42FC>)" (only option) Name : MyDevice Vendor : SanDisk Corp. Model : Cruzer Titanium Serial : SNDKXXXXXXXXXXXXXXXX Volume UUID : 6F6B-42FC (/dev/sda1) Save to /etc/pamusb.conf ? [Y/n] y Done.
MyDevice は自由に名前を付けることができます。また、デバイスは好きな数だけ追加できます。
次に、pam_usb で認証したいユーザーを設定してください:
# pamusb-conf --add-user root
Which device would you like to use for authentication ? * Using "MyDevice" (only option) User : root Device : MyDevice Save to /etc/pamusb.conf ? [Y/n] y Done.
設定の確認
pamusb-check を実行することで設定が問題ないか確認することができます。このツールは認証リクエストをシミュレートします (デバイスの接続が必要です):
# pamusb-check root
* Authentication request for user "root" (pamusb-check) * Device "MyDevice" is connected (good). * Performing one time pad verification... * Verification match, updating one time pads... * Access granted.
PAM モジュールの設定
pam_usb をシステムの認証プロセスに追加するために、/etc/pam.d/system-auth を編集する必要があります。
デフォルトの PAM 設定ファイルには以下の行が含まれています:
auth required pam_unix.so nullok_secure
以下のように変更してください:
auth sufficient pam_usb.so auth required pam_unix.so nullok_secure
sufficient キーワードを指定することで、pam_usb が認証を許可した場合、パスワードは要求されません。認証が失敗した場合、フォールバックとしてデフォルトのパスワードによる認証が使われます。
required キーワードに変更すると、システムにアクセスするには USB フラッシュドライブとパスワードの両方とも認証しなくてはならなくなります。
上記を設定したら、USB デバイスを接続して認証ができるはずです:
$ su
* pam_usb v.SVN * Authentication request for user "root" (su) * Device "MyDevice" is connected (good). * Performing one time pad verification... * Verification match, updating one time pads... * Access granted.
トラブルシューティング
su で pam_usb を使えない
以下のように設定して su がパスワードを要求して、pam_usb を使わない場合:
/etc/pam.d/system-auth
auth sufficient pam_usb.so
/etc/pam.d/su の冒頭にも同じ行を追加してください。他の pam を使用するアプリケーションでも追加が必要になる場合があります。