オンライン課題:リモートSSHサーバーが/ bin / false:ファイルが見つからないと応答した場合はどうすればよいですか?

オンライン課題:リモートSSHサーバーが/ bin / false:ファイルが見つからないと応答した場合はどうすればよいですか?

オンライン問題を解決しようとしています。サーバーアドレスとRSA秘密鍵があり、どちらもPuttyに提供します(私はWindowsを使用しており、サーバーはUbuntuでOpenSSHを実行しています)。私が見つけたパスワードと推測したユーザー名を使用して正常に接続しました。ただし、Puttyにユーザー名とRSAパスワードを指定すると、サーバーは次のように応答します。

/bin/false: File not found

すぐに接続を閉じます。

異なるホームディレクトリを持つ別のユーザー名で同じ秘密鍵を使用できますか?

接続ネゴシエーション中にデフォルトのホームディレクトリを変更する方法はありますか?

さらに、同じIPアドレスから提供されたFTPサーバーへの読み取り専用アクセス権がありますが、SSH構成ファイルが見つかりません(またはその権限がありません)。 FTPサーバーは個人ファイルを探す場所です。 RSAキー)

とにかく、どんな提案でも当然感謝します。私はこれを把握しようとして、最後の2日間、壁に頭をぶつけた。

答え1

はい、任意の数のユーザーが同じキーを使用できます。

いいえ、私が知っている限り、接続ネゴシエーション中にデフォルトのホームディレクトリを変更することはできません。

推測されたユーザー名のシェルはで指定されていますbin/false。 Unixユーザーアカウントのログインを無効にする1つの方法は、そのシェルをに設定して、/bin/falseすべてのログイン試行がシェルの代わりに/ bin / falseを実行することです。 /bin/falseは、何らかの方法で対話せずにエラーコードのみを返す非常に単純なプログラムなので、セッションはすぐに終了します。

システムの他のサービスがどのように構成されているかに応じて、FTPまたはSFTP接続、IMAP / POP電子メールアクセスなど、シェルを必要としない他のタスクにアカウントを引き続き使用できます。

あなたの場合、初期スラッシュが欠けているようです。その場合、システムは<current directory>/bin/falseこれを効果的に検索しますが、見つからないため、結果のエラーメッセージが表示されます。

ヒント1:

そのディレクトリが何であるかを調べ、アクセス可能であることを確認したい場合があります。

ヒント2:

たぶんそのパスに対して実行可能なものを提供できますか?

答え2

/etc/passwd ファイルには次のような内容があるようです。

user:x:1000:1000:,,,:/home/user:/bin/false

したがって、ログインシェルは/ bin / falseなので、これをバイパスする必要があります。

望むより:https://serverfault.com/questions/162018/force-ssh-to-use-a-specific-shell

関連情報