PAMアカウント構成によって特定のユーザーのアクセスが拒否されました


10

から既に終了machineAmachineBているユーザーに対して、からパスワードなしのログインをセットアップしようとしdavidています。これは私が認証キーを生成するためにしたことです:

david@machineA:~$ ssh-keygen -t rsa
........

david@machineB:~$ ssh-keygen -t rsa
........

その後、id_rsa.pub (/home/david/.ssh/id_rsa.pub)キーmachineAmachineB authorized_keysファイル(/home/david/.ssh/authorized_keys)キーにコピーしました。

その後、machineAのログイン画面に戻り、コマンドの下で実行したところ、問題なく動作しました。したがってmachineB、パスワードを要求せずにdavidユーザーとしてログインすることができました。

david@machineA:~$ ssh david@machineB

質問:

次に、このコマンドのみを実行してmachineA、とのmachineB両方に新しいユーザーを作成しましたuseradd golden。そして今、私はこのからのSSHパスワードなしにしたいgoldenに、ユーザmachineBからmachineA。上記とまったく同じ手順を実行しましたが、機能しません。

david@machineA:~$ sudo su - golden
golden@machineA:~$ ssh-keygen -t rsa
........

david@machineB:~$ sudo su - golden
golden@machineB:~$ ssh-keygen -t rsa
........

次に、ゴールデンユーザーのid_rsa.pubキーをファイル/home/golden/.ssh/id_rsa.pubからにコピーしmachineAました。そして私がsshしようとすると、それは私に与えます:machineB authorized_keys/home/golden/.ssh/authorized_keys

golden@machineA:~$ ssh golden@machineB
Connection closed by 23.14.23.10

なにが問題ですか?このコマンドで手動で作成したゴールデンユーザーに対してのみ機能しませんuseradd。Ubuntu 14.04を実行しています。作成したこの手動ユーザーに対して有効にする必要がある設定はありますか?

machineB auth.log、ファイルは、以下の私はマシンAからこのコマンドを実行すると、私は見ていますものですssh -vvv golden@machineBログインに

Jan  3 17:56:59 machineB sshd[25664]: error: Could not load host key: /etc/ssh/ssh_host_ed25519_key
Jan  3 17:56:59 machineB sshd[25664]: pam_access(sshd:account): access denied for user `golden' from `machineA'
Jan  3 17:56:59 machineB sshd[25664]: pam_sss(sshd:account): Access denied for user golden: 10 (User not known to the underlying authentication module)
Jan  3 17:56:59 machineB sshd[25664]: fatal: Access denied for user golden by PAM account configuration [preauth]

不足しているものはありますか?以下は私のディレクトリ構造がどのように見えるかです:

golden@machineA:~$ pwd
/home/golden
golden@machineA:~$ ls -lrtha
total 60K
-rw------- 1 golden golden  675 Nov 22 12:26 .profile
-rw------- 1 golden golden 3.6K Nov 22 12:26 .bashrc
-rw------- 1 golden golden  220 Nov 22 12:26 .bash_logout
drwxrwxr-x 2 golden golden 4.0K Nov 22 12:26 .parallel
drwxr-xr-x 2 golden golden 4.0K Nov 22 12:34 .vim
drwxr-xr-x 7 root     root     4.0K Dec 22 11:56 ..
-rw------- 1 golden golden  17K Jan  5 12:51 .viminfo
drwx------ 2 golden golden 4.0K Jan  5 12:51 .ssh
drwx------ 5 golden golden 4.0K Jan  5 12:51 .
-rw------- 1 golden golden 5.0K Jan  5 13:14 .bash_history


golden@machineB:~$ pwd
/home/golden
golden@machineB:~$ ls -lrtha
total 56K
-rw------- 1 golden golden  675 Dec 22 15:10 .profile
-rw------- 1 golden golden 3.6K Dec 22 15:10 .bashrc
-rw------- 1 golden golden  220 Dec 22 15:10 .bash_logout
drwxr-xr-x 7 root     root     4.0K Jan  4 16:43 ..
drwx------ 2 golden golden 4.0K Jan  5 12:51 .ssh
-rw------- 1 golden golden 9.9K Jan  5 12:59 .viminfo
drwx------ 6 golden golden 4.0K Jan  5 12:59 .
-rw------- 1 golden golden 4.6K Jan  5 13:10 .bash_history

更新:

machineA

cat /etc/passwd | grep golden
golden:x:1001:1001::/home/golden:/bin/bash

machineB

cat /etc/passwd | grep golden
golden:x:1001:1001::/home/golden:/bin/bash

/etc/passwdユーザーのエントリを表示できますか?
pbm 2017年

詳細で質問を更新しました。1つは、最初にパスワードなしでユーザーを作成し、しばらくしてからこのゴールデンユーザーのパスワードを作成したことです。
user5447339 2017年

Pam_sssはユーザーに不明を与えています。システムでsssdがどのように構成されているかを確認する必要があります。場合によっては、sssdが資格情報をキャッシュするように構成されているため、sssdのキャッシュ/再起動を無効にする必要がある場合があります
VenkatC

@VenkatCシステムでsssdを再起動するにはどうすればよいですか?これらはすべてVMなので、他のチームからこのシステムを入手したため、どのように構成されたかはわかりません。
user5447339 2017年

sysyemctl restart sssd-systemdベースのサーバーで動作するはずです
VenkatC 2017年

回答:


13

問題はPAMスタック構成にあります。ホストはで構成されてpam_accessおり、デフォルトの構成ではgolden、キーが正しく設定されていても、新しいユーザーに外部/ SSHアクセスを許可していません。

以下のようにgoldenユーザーを追加すると/etc/security/access.conf、問題が修正されました。

+:golden:ALL

詳細についてman access.confは、このファイルの各フィールドの説明を参照してください。例のセクションを見て、LOCAL、ALLなどの順序と意味を理解してください


私の場合、アクセス許可access.confが付与されたグループに追加する必要がありました。
ヴォルフガング・

8

私は同じ問題を抱えており、提案されたオプションはどれも機能しませんでした。しかし、私はフォーラム(https://ubuntuforums.org/showthread.php?t=1960510)の1つで、完全に機能する「回避策」を見つけました。

編集/etc/ssh/sshd_configして設定

UsePAM no

それはおそらく本当の解決策ではありませんが、何かが私のマシンに間違いなく間違っているため(昨日はうまくいきました!)、これは少なくともうまくいきます。


-3

に以下を追加してください/etc/security/access.conf

-:ALL:EXCEPT root

3
Unix.SEへようこそ!あなたは可能性が編集し、それが既存の回答よりはましだ方法を説明するためにあなたの答えを?
Stephen Kitt

@StephenKitt上記の両方の答えを試しましたが、うまくいきませんでした。-:ALL:EXCEPT rootin を追加すると/etc/security/access.conf、機能し始めました。
IRSHAD AHMED MOHAMMED

winbinddとoddjobdを再起動してみてください。それがお役に立てば幸いです。ありがとう、
IRSHAD AHMED MOHAMMED

1
@IRSHADAHMEDMOHAMMED なぜそれが機能したのか、またこれが他のどのようなセキュリティ関連の影響をもたらすのかを説明できますか?
Kusalananda
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.