ルート認証情報を使用してuseradd
コマンドを使用して新しいユーザーを作成しようとしていますが、適切に作成されていますが、PuTTYコンソールを使用して認証情報を使用して新しく作成したユーザーでログインすると、ユーザー名を入力できますが、パスワードを入力すると、 PuTTYウィンドウのセッションタイムアウトが発生してウィンドウが閉じられるまで、長時間ハングします。しかし、ルート資格情報を使用すると、すぐにセッションに入ります。
ファイル/etc/ssh/sshd_config
のAllowUsers
を確認しようとしましたが、一致するエントリが見つからなかったため、AllowUsers temipuser
を手動で追加してみました。ここで、temipuser
は作成したユーザー名です。別のPuTTYコンソールからこの変更を行った後、このユーザー名をもう一度入力しようとしましたが、同じです。なぜこれが起こっているのか、私には全く無知です。
別のことは、sshd_config
ファイルのtemipuser
エントリにユーザーを追加する場合、たとえばAllowUsers
だけを追加しても、rootユーザーは引き続きアクセスできるのですか、それともアクセスできないのですか?ここで物事を台無しにしたくない。 AllowUsers
が指定したユーザーのみを許可し、他のユーザーを拒否することを理解しています。
/var/log/secure
または/var/log/auth.log
で関連するエントリを探します。また、そのユーザーのサーバーにアクセスする可能性がある/etc/security/access.conf
の下にカスタムルールが追加されていないことを確認してください。
これらのログには、失敗したログインに関する情報が含まれ、何が問題であったかを明確に示す場合があります。
/etc/security/access.conf
ファイルは、ログインが許可または拒否される(ユーザー/グループ、ホスト)、(ユーザー/グループ、ネットワーク/ネットマスク)、または(ユーザー/グループ、tty)の組み合わせを指定します。
Linuxマシンにユーザーを追加するのに加えて、そのユーザーのキー(プロトコルタイプ2、できればRSA)も生成する必要があります。 PuTTYのキージェネレータ here を使用して、その手順を見つけることができます。
PuTTYのキージェネレーターの[authorized_keysファイルに貼り付けるための公開キー]ボックスのテキストをすべて選択し、テキストエディターに貼り付けて、authorized_keys
という名前で保存します。
Linuxマシンの新しいユーザーのホームディレクトリに、.ssh
ディレクトリが存在しない場合は作成します。このディレクトリはユーザーが所有する必要があり、そのユーザーのみがアクセスできます(chmod 700 .ssh
)authorized_keys
ファイルをこのディレクトリにコピーします。そのファイルの権限をchmod 0600
で変更し、所有権をユーザーに変更する必要があります。
これで、ユーザーはログインできるはずです。
/ etc/ssh/sshd_configファイルを確認します。 「PasswordAuthentication」行が「no」に設定されているかどうかを確認します。これを「はい」に変更して、ファイルを保存します。 Sudoとしてこれを行う必要があります。ファイルが保存されたら、コマンド「Sudo service ssh restart」を使用して再起動します
私にとって、SSHはログイン(ポートの問題ではない)とパスワード(つまりPasswordAuthentication
が要求される)を要求するため、問題は許可の問題に関連している可能性があります。 yesに設定します。これがデフォルトです)。
確かに、sshd
がデフォルトで機能する方法は、パスワードを要求する前にSSH公開鍵beforeの読み取りを試み、~/.ssh/authorized_keys
には不正な権限があります。マニュアルには、sshd
ではログインできないと記載されています(以下を参照)。
sshd
構成に関する他の情報がない(AuthorizedKeysFile
はまだコメントされています。実際にSSHキーを使用していますかなど)ので、sshd
マニュアルを読んで推測した:
~/.ssh/authorized_keys Lists the public keys (DSA/ECDSA/RSA) that can be used for logging in as this user. The format of this file is described above. The content of the file is not highly sensitive, but the recommended permissions are read/write for the user, and not accessible by others. If this file, the ~/.ssh directory, or the user's home directory are writable by other users, then the file could be modified or replaced by unauthorized users. In this case, sshd will not allow it to be used unless the StrictModes option has been set to “no”.
そう。あなたはできる ls -l ~/.ssh/autorized_keys
とuserだけがそのファイルを読み取れることを再確認しますか?
ユーザーだけがこのディレクトリを読み取ることができることを確認するには、これを使用します:chmod -v a-w,u+w ~/.ssh/authorized_keys
。オプション-v
はchmod
が行った変更(ある場合)を通知するためのものですa-w,u+w
は、すべての書き込み権限を削除してから、ユーザーに書き込み権限を付与します。
テストしましたかadduser temipuser
の代わりに useradd temipuser
???
sshd_confのLinuxマニュアルはこう言っています:
AllowUsers
This keyword can be followed by a list of user name patterns, separated by
spaces. If specified, login is allowed only for user names that match one of the
patterns. Only user names are valid; a numerical user ID is not recognized. **By
default, login is allowed for all users.** If the pattern takes the form USER@Host
then USER and Host are separately checked, restricting logins to particular users
from particular hosts. The allow/deny directives are processed in the following
order: DenyUsers, AllowUsers, DenyGroups, and finally AllowGroups.
したがって、AllowUsersを追加する必要はありません。このオプションを追加した場合、有効にした場合にリモートルートログインを防止できないと思いますPermitRootLogin