ここでの質問は、ログインしているユーザーが ssh セッションからログアウトするときに、システムが特定のスクリプトまたはコマンドを実行する必要があるということです。つまり、ユーザーが ssh セッションからログアウトしたときに目的のアクションを実行するポスト スクリプトまたはトリガーを構成するようなものです。
これは、CentOS/RHEL システムの pam モジュールを使用して簡単に実行できます。以下に概説する手順に従って、pam モジュールを構成します。
1. 以下のエントリを pam 構成ファイル /etc/pam.d/sshd に追加します。 :
# vi /etc/pam.d/sshd session optional pam_exec.so quiet /var/tmp/post_session.sh
ここでは、
/var/tmp/post_session.sh ユーザーがログアウトしたときに実行されるスクリプトです。
/etc/pam.d/sshd 構成ファイルは次のようになります:
# cat /etc/pam.d/sshd #%PAM-1.0 auth required pam_sepermit.so auth substack password-auth auth include postlogin # Used with polkit to reauthorize users in remote sessions -auth optional pam_reauthorize.so prepare account required pam_nologin.so account required pam_access.so account include password-auth password include password-auth # pam_selinux.so close should be the first session rule session required pam_selinux.so close session required pam_loginuid.so # pam_selinux.so open should only be followed by sessions to be executed in the user context session required pam_selinux.so open env_params session required pam_namespace.so ####Trigger with user logout ##### session optional pam_exec.so quiet /var/tmp/post_session.sh #### session optional pam_keyinit.so force revoke session include password-auth session include postlogin # Used with polkit to reauthorize users in remote sessions -session optional pam_reauthorize.so prepare
2. これで、必要に応じてポスト トリガー スクリプトを構成できます。この投稿のために、ユーザーのログアウト時刻をファイルに追加します。例:
# cat /var/tmp/post_session.sh #!/bin/bash if [ "$PAM_TYPE" = "close_session" ]; then date >> /var/tmp/user_logout.out ## This is the action to be performed when user logs out. fi
3. /var/tmp/post_session.sh スクリプトに実行権限を付与します。
# chmod ugo+x /var/tmp/post_session.sh
4. ログインとログアウトを複数回行って確認すると、すべてのログアウトの時間がファイル /var/tmp/user_logout.out に追加されます。 .
CentOS/RHEL 7 および 8 でネットワーク インターフェイス チーミングを構成する方法
passwd:gkr-pam:ログイン キーリング パスワードを更新できませんでした:古いパスワードが入力されていません