「Pam usb」の版間の差分
(ページの作成:「Category:セキュリティ en:Pam usb pam_usb は通常の USB フラッシュドライブを利用した Linux のハードウェア認証を提供します。...」) |
細 (カテゴリ変更) |
||
(同じ利用者による、間の2版が非表示) | |||
1行目: | 1行目: | ||
+ | {{DISPLAYTITLE:pam_usb}} |
||
− | [[Category:セキュリティ]] |
||
+ | [[Category:認証]] |
||
[[en:Pam usb]] |
[[en:Pam usb]] |
||
+ | {{Related articles start}} |
||
− | pam_usb は通常の USB フラッシュドライブを利用した Linux のハードウェア認証を提供します。 |
||
+ | {{Related|セキュリティ}} |
||
+ | {{Related|pam_mount}} |
||
+ | {{Related|pam_abl}} |
||
+ | {{Related|pam_oath}} |
||
+ | {{Related articles end}} |
||
+ | [https://github.com/aluzzardi/pam_usb pam_usb] は通常の USB フラッシュドライブを利用した Linux のハードウェア認証を提供します。 |
||
− | [[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 を使用するアプリケーションでも追加が必要になる場合があります。