PAM アカウント設定は、特定のユーザーへのアクセスを拒否します。

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ログイン画面に戻り、以下のコマンドを実行しましたが、問題なくうまく機能しました。したがって、machineBパスワードを要求せずにdavidユーザーとしてログインできます。

david@machineA:~$ ssh david@machineB

質問:

これでmachineA、このコマンドを実行して新しいユーザーを作成しました。今、パスワードなしでそのユーザーからSSH経由でアクセスしたいと思います。上記と同じ手順を実行しましたが、動作しません。machineBuseradd goldengoldenmachineBmachineA

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ゴールドユーザーのキーをファイルからファイルにコピーしました。 SSHを試してみると、次のようになります。/home/golden/.ssh/id_rsa.pubmachineAmachineB 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.logmachineAでこのコマンドを実行して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

ベストアンサー1

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

次のようにgoldenユーザーを追加すると/etc/security/access.conf問題が解決しました。

+:golden:ALL

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

おすすめ記事