現在、FOOユーザーにsshを実行してから、BARユーザーにsudoを実行する必要があります。
公開鍵を使用してsshを実行したいのですが、リモートシステムにはユーザーFOOのホームディレクトリがないため、明らかに.ssh/authorized_keysはありません。公開鍵をどこに入れることができますか?
/homeディレクトリが空であるため、ユーザー用のホームディレクトリが作成されていないように見え、システムに対するroot権限がありません。
ありがとうございます。
答え1
あなたのユーザー名は次のとおりですtestssh
。
/etc/ssh/authorized_keys_testssh
キーを生成し、そこに置きます。- 以下を追加してください
/etc/ssh/sshd_config
。
Match User testssh
AuthorizedKeysFile /etc/ssh/authorized_keys_%u
そしてsshdを再起動してください。ユーザーは自分の秘密鍵を使用してSSH経由で接続できます。
答え2
短い答え
そうではないかもしれません。システム管理者に連絡してください。
より長い答え
まず、/home
ディレクトリが空であっても(存在しなくても)、必ずしもユーザーにホームディレクトリがないという意味ではありません。環境変数の値を表示できますHOME
。
$ echo $HOME
/path/to/nonstandard/homedirectory
または、getent
次のコマンドを使用します。
$ getent passwd username
username:*:1001:1001:User Name:/path/to/nonstandard/homedirectory:/bin/bash
ユーザーが実際にホームディレクトリを持っていないことが判明した場合authorized_keys
でも、サーバー管理者がファイルの非標準の場所を設定した場合は、公開鍵を使用できます。
使用していると仮定SSHを開く、ファイルの場所はauthorized_keys
設定ファイルAuthorizedKeysFile
のキーワードで指定できますsshd_config
。詳しくはマニュアルをご覧ください。
デフォルト値はです~/.ssh/authorized_keys
。/etc/ssh/sshd_config
デフォルト値が上書きされたことを確認するには、設定を確認する必要があります。 root アクセス権がないため、変更したい場合は、システム管理者に助けを求める必要があります。
ホームディレクトリがなく、システム管理者がファイル内の他の場所を構成しておらず、authorized_keys
コンピュータに対する管理権限がないことが判明した場合、キーを使用できない可能性があります。ベース認証 - システム管理者に連絡してください。