- PR -

pam認証について

1
投稿者投稿内容
サキ
常連さん
会議室デビュー日: 2005/01/15
投稿数: 32
投稿日時: 2005-03-02 00:26
こんばんは。今pam認証を使って、パスワードの
制限をかけようとしています。

設定条件としましては、「パスワード文字8文字以上」、
「パスワード文字中に数字、記号1文字以上存在」です。

上記の様な上記をみたそうと思い/etc/pam.d/passwdを下記の
様に設定しました。

変更前
--------------------------------------------------------------------
#%PAM-1.0
auth required pam_stack.so service=system-auth
auth required /lib/security/pam_tally.so onerr=fail no_magic_root
account required pam_stack.so service=system-auth
account required /lib/security/pam_tally.so deny=3 no_magic_root reset
password required pam_stack.so service=system-auth
--------------------------------------------------------------------

変更後
--------------------------------------------------------------------
#%PAM-1.0
auth required pam_stack.so service=system-auth
auth required /lib/security/pam_tally.so onerr=fail no_magic_root
account required pam_stack.so service=system-auth
account required /lib/security/pam_tally.so deny=3 no_magic_root reset
password required /lib/security/pam_cracklib.so retry=3 minlen=8 dcredit=2 ocredit=2
password required /lib/security/pam_pwdb.so md5 use_authtok
session required /lib/security/pam_pwdb.so
--------------------------------------------------------------------

設定後、一般ユーザーでパスワードの変更を行ってみたら、上
記の条件にある、「文字中に数字、記号1文字以上」という条件が満たされず、
数字、記号を入れなくてもバスワードの変更ができてしまいました。

他に何か設定しなくてはいけないのでしょうか?

ご存じの方がいらっしゃいましたら何卒ご教授の程をよろしくお願い致します。


kaz
ぬし
会議室デビュー日: 2003/11/06
投稿数: 5403
投稿日時: 2005-03-03 12:24
こんにちわ.
引用:

トーンクラスターさんの書き込み (2005-03-02 00:26) より:

上記の様な上記をみたそうと思い/etc/pam.d/passwdを下記の
様に設定しました。


/etc/pam.d/system-auth ではどうでしょう?
あるいは /etc/login.defs でも同じようなことを設定できるのでは?
サキ
常連さん
会議室デビュー日: 2005/01/15
投稿数: 32
投稿日時: 2005-03-04 00:22
kaz様

度々ご返答、ありがとうございます。またご連絡が遅くなり大変申し訳ご
ざいません。

/etc/pam.d/system-auth も下記の用にしてみて実行してみました。

変更前
--------------------------------------------------------------------
#%PAM-1.0
# This file is auto-generated.
# User changes will be destroyed the next time authconfig is run.
auth required /lib/security/$ISA/pam_env.so
auth sufficient /lib/security/$ISA/pam_unix.so likeauth nullok
auth required /lib/security/$ISA/pam_deny.so

account required /lib/security/$ISA/pam_unix.so

password required /lib/security/$ISA/pam_cracklib.so retry=3 type=
password sufficient /lib/security/$ISA/pam_unix.so nullok use_authtok md5 shadow
password required /lib/security/$ISA/pam_deny.so

session required /lib/security/$ISA/pam_limits.so
session required /lib/security/$ISA/pam_unix.so
--------------------------------------------------------------------

変更後
--------------------------------------------------------------------
#%PAM-1.0
# This file is auto-generated.
# User changes will be destroyed the next time authconfig is run.
auth required /lib/security/$ISA/pam_env.so
auth sufficient /lib/security/$ISA/pam_unix.so likeauth nullok
auth required /lib/security/$ISA/pam_deny.so

account required /lib/security/$ISA/pam_unix.so

password required /lib/security/pam_cracklib.so retry=3 minlen=8 dcredit=2 ocredit=2
password sufficient /lib/security/$ISA/pam_unix.so nullok use_authtok md5 shadow
password required /lib/security/$ISA/pam_deny.so

session required /lib/security/$ISA/pam_limits.so
session required /lib/security/$ISA/pam_unix.so
--------------------------------------------------------------------

それでも駄目だったので/etc/pam.d/passwdの
「password required /lib/security/pam_cracklib.so retry=3 minlen=8 dcredit=2 ocredit=2 」の
部分を「password required pam_stack.so service=system-auth」として再度行ってみましたが駄目でした。

また/etc/login.defsの設定は下記の様になっています。
----------------------------------------------------
〜省略〜
# Password aging controls:
#
# PASS_MAX_DAYS Maximum number of days a password may be used.
# PASS_MIN_DAYS Minimum number of days allowed between password changes.
# PASS_MIN_LEN Minimum acceptable password length.
# PASS_WARN_AGE Number of days warning given before a password expires.
#
PASS_MAX_DAYS 30
PASS_MIN_DAYS 2
PASS_MIN_LEN 8
PASS_WARN_AGE 14
〜省略〜
----------------------------------------------------
上記内容を見られるとお判りになる様に、今回問題の「文字中に数字、記号1文字以上」という条件
の設定は見当たりません。
他にオプションとうは存在するのでしょうか?
ご存知でしたらご教授の程を宜しくお願い致します。
kaz
ぬし
会議室デビュー日: 2003/11/06
投稿数: 5403
投稿日時: 2005-03-04 00:45
こんばんわ.
引用:

トーンクラスターさんの書き込み (2005-03-04 00:22) より:

また/etc/login.defsの設定は下記の様になっています。
----------------------------------------------------
〜省略〜
# Password aging controls:
#
# PASS_MAX_DAYS Maximum number of days a password may be used.
# PASS_MIN_DAYS Minimum number of days allowed between password changes.
# PASS_MIN_LEN Minimum acceptable password length.
# PASS_WARN_AGE Number of days warning given before a password expires.
#
PASS_MAX_DAYS 30
PASS_MIN_DAYS 2
PASS_MIN_LEN 8
PASS_WARN_AGE 14
〜省略〜
----------------------------------------------------
上記内容を見られるとお判りになる様に、今回問題の「文字中に数字、記号1文字以上」という条件
の設定は見当たりません。
他にオプションとうは存在するのでしょうか?


ゴメンナサイ,かなり安易でした.
http://www.linux.or.jp/JM/html/shadow/man5/login.defs.5.html
PAM を使っている場合,概ね /etc/login.defs は参照しないみたいですね.

書いていて気がついたのですが,もしかして root で検証していませんか?
root の場合は警告は出ますが,変更できてしまいます.
外していたらゴメンナサイ.
サキ
常連さん
会議室デビュー日: 2005/01/15
投稿数: 32
投稿日時: 2005-03-04 01:33
kaz様
さっそくのご返答ありがとうございました。
検証内容と致しましては新規にユーザを作成し、その際rootでそのユーザのパスワードを変更してsuで新規ユーザでスイッチしパスワードを変更しました。
ですが、その後、スイッチをしないでコンソールより
新規ユーザでログインしパスワード変更を行いましたが、やはり結果は同じでした。
cracklibも/lib/security/pam_cracklib.soに存在します。
odik
ベテラン
会議室デビュー日: 2005/02/07
投稿数: 69
投稿日時: 2005-03-29 14:10
トーンクラスター様
教えて下さい。
「パスワード8文字以上」という条件の方は満たされているのですね?
1

スキルアップ/キャリアアップ(JOB@IT)