web-dev-qa-db-ja.com

sshd [5589]:エラー:PAM:pam_open_session():指定されたセッションのエントリを作成/削除できません

CentOS7の最小インストールで作業しています。 pam_radiusをpam_scriptで構成し、pubkeyauthを使用してサーバーに常にsshすることができました。これは意図的なものでした。しかし、 STIGガイド (包括的なウォークスルーは ここにあります )に従ってサーバーを強化した後、システムにSSHで接続できなくなりました。またはもっと正確に、私はログインしてすぐに追い出されます。/var/log/secureファイルのエラーは次のように述べています。

sshd [5589]:エラー:PAM:pam_open_session():指定されたセッションのエントリを作成/削除できません

コースの標準であるように、selinuxを無効にすると、問題が解決しました。しかし、明らかにそれは許容できる解決策ではありません。

1
Octavian

一部の人々は明らかにselinuxを無効にするか、それを許容に設定することを答えとして受け入れます。しかし、その後、「selinuxの無効化をやめろ!」という言葉でチャイムを鳴らす卑劣なLinuxの達人が常に数人います。しかし、それはISすべての人が言うでしょう!あなたも彼らに解決策を言わない限り、「selinuxの無効化をやめる」ように人々に言うのをやめてください!

さて、これに対する解決策を見つけました。インターネット上のどこにも簡単に見つけることができなかったので、ここに投稿します。私はRedHatガイドに従いました ここにあります

私はほとんどの人がツールaudit2allowに気付いていないことを賭けます。それは命の恩人です。これを使用してロード可能なselinuxモジュールを簡単に作成し、問題を解決したので、selinuxを無効にする必要はありませんでした。基本的に、audit2allowツールの実行中にSSH経由で接続する手順を実行したところ、モジュールが自動的に作成されました。次に、モジュールをロードして再起動しましたが、すべて問題ありません。

audit2allow -a -M mycertwatch

******************** IMPORTANT ***********************
To make this policy package active, execute:

semodule -i mycertwatch.pp
2
Octavian