3

だから私はしばらくの間これに取り組んできました。より良い方法があるかどうか、または私が正しい軌道に乗っているかどうかを知りたいです。

基本的に、一部のユーザーが SSH 経由でサーバーにログインし、その SSH 接続経由でイカ トンネルを使用できるようにしたいと考えています。

ただし、注意が必要なのは、これらのユーザーにコマンドを実行させたくないということです。私はまったく何も意味しません。

したがって、この段階で、ジェイルキット経由でジェイルをセットアップしました。次に、特定のユーザーが刑務所に入れられ、シェルとして bash シェルが与えられます。

次のステップは、/jail/bin/ ディレクトリなどのすべてのコマンドを削除して、コマンドを実行できないようにすることです。

私はここで正しい道を進んでいますか?何を提案しますか?

また...多くのコマンドが見つからないというエラーが発生することがわかりました...これらを削除するにはどうすればよいですか。

彼らに何もさせない、彼らに与えることを検討できる他のシェルはありますか?

4

1 に答える 1

2

シェルを /bin/true などに設定するか、情報メッセージを出力する単純なスクリプトを設定し、ssh -N (ssh のマニュアル ページを参照) を使用してログオンさせることができます。システムに実際のシェルがなくても、ポート転送を使用できるようになると思います。

編集:

PuTTY の ssh -N に相当するのは、SSH 構成タブ ([接続] -> [SSH]) で [シェルまたはコマンドをまったく開始しない] チェックボックスをオンにすることです。

EDIT2:

これに代わる方法として、無限のスリープ ループに入るスクリプトを使用できます。Ctrl-C を使用して中断されるまで、接続は存続します。私はちょうどこれを試しました:

#!/bin/sh

echo "DNSH: Do-Nothing Shell"

while sleep 3600; do :; done

これをシェルとして使用する場合 (できれば、より役立つメッセージを使用して)、ユーザーは実際のシェルがなくても、ssh -N や友人について知らなくても、ポート転送を使用できます。

于 2010-11-25T08:34:42.527 に答える