web-dev-qa-db-ja.com

PAMとは何ですか?また、AWSがデフォルトでそれを有効にしているのはなぜですか?

SSHを使用してEC2インスタンスに接続したいだけですが、sshd_configにはUsePAM yesがあります。これは何ですか。noに設定すると、インスタンスからロックアウトされますか?

また、cronjobを設定して、ZNCバウンサーが起動しており、/var/log/auth.logがこれらでいっぱいかどうかを確認します。

CRON [5216]:pam_unix(cron:session):ユーザーznc-adminのセッションが閉じられました

ご覧のとおり、最初の質問に関連するpam_unixがあります。

2
modkooc

Pamはプラグ可能な認証モジュールです。

これは認証用のバックエンドであり、システム上のアプリケーションの認証を処理します。名前が示すように、プラグイン可能です。複数のplugsを使用して、さまざまなソースから認証を提供できます。一般的なソースは、/ etc/passwdと/ etc/shadowの組み合わせです。その他には、LDAP、Kerberos、NIS、または指紋リーダーがあります。

要するに、loginやsshなどのアプリケーションに対して認証するための一貫したインターフェースを提供します。

次の4つの部分で構成されます。

  1. アカウント-ユーザー名を追跡します。
  2. 認証-パスワード(または指紋..または...)の確認
  3. セッション管理-アカウンティングなど、セッションの開始および終了時に実行されるアクション。
  4. Passordの更新-パスワードの更新、およびパスワード標準の実施。

man sshd_configを見ると、次のことがわかります。

UsePAM
Pluggable Authentication Moduleインターフェイスを有効にします。 「yes」に設定すると、すべての認証タイプのPAMアカウントおよびセッションモジュール処理に加えて、ChallengeResponseAuthenticationおよびPasswordAuthenticationを使用したPAM認証が有効になります。

PAMチャレンジ/レスポンス認証は通常、パスワード認証と同等の役割を果たすため、PasswordAuthenticationまたはChallengeResponseAuthenticationを無効にする必要があります。

UsePAMが有効になっている場合、非rootユーザーとしてsshd(8)を実行できません。デフォルトは「no」です。

PAMを使用しない場合は、noに設定できます。単一のスタンディングインスタンスでは、PAMを使用する理由はありませんbig-通常、とにかく認証ソースは1つしかありません(/ etc/passwd// etc/shadow) 。一方、この環境でも変更する大きな理由はありません。

ログに表示される内容はセッションモジュールの一部です。認証されたユーザーをログに記録します-この場合、このユーザーとしてスクリプトが実行されたためです。これは正常なことであり、心配することも、気にすることもありません。

編集:ユーザーが気付いたように-do not公開キー認証が機能するか、他のパスワード認証スキームを有効にしない限り、noに設定します。 sshでは、設定を変更し、sshを再起動し、ログインを試みることもできますbefore現在のシェルからログアウトします。この方法で、あなたがロケットアウトしている場合、元に戻すことができます。

4
vidarlo