web-dev-qa-db-ja.com

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

すでに終了しているユーザー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のログイン画面に戻り、コマンドの下で実行したところ、問題なく動作しました。そのため、パスワードを要求せずにdavidユーザーとしてmachineBにログインすることができました。

david@machineA:~$ ssh david@machineB

質問:

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

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からmachineBauthorized_keysファイル/home/golden/.ssh/authorized_keys。そして私がsshしようとすると、それは私に与えます:

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

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

machineBauth.logファイル、以下はmachineAからこのコマンドを実行したときに表示されるものです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
10
user5447339

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

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

+:golden:ALL

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

13
VenkatC

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

編集/etc/ssh/sshd_configと設定

UsePAM no

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

8
The Godfather