![SSH クライアントを有効にする小さな起動可能なパッケージですか?](https://rvso.com/image/1416373/SSH%20%E3%82%AF%E3%83%A9%E3%82%A4%E3%82%A2%E3%83%B3%E3%83%88%E3%82%92%E6%9C%89%E5%8A%B9%E3%81%AB%E3%81%99%E3%82%8B%E5%B0%8F%E3%81%95%E3%81%AA%E8%B5%B7%E5%8B%95%E5%8F%AF%E8%83%BD%E3%81%AA%E3%83%91%E3%83%83%E3%82%B1%E3%83%BC%E3%82%B8%E3%81%A7%E3%81%99%E3%81%8B%3F.png)
私は、有線ネットワークに接続されたコンピュータで SSH クライアントを使用できるようにするために、CD/サムドライブに入れることができるできるだけ小さなパッケージを探していました。私が言っているのは、本当に必要最低限のもの、つまり、複雑なシェルや無駄なカーネル モジュールのない、SSH CLI だけです。
どうやら、起動可能な SSH クライアントを作ろうとする人は誰もいないようです (Google で思いつく限りのあらゆる単語の組み合わせによると)。そのため、私が思いついた最高の方法は、gcc-libs、openssl、openssh を initrd にパッケージ化した TinyCore のリマスター版です。TinyCore の tcz パッケージを使用すれば、おそらくサイズはわずかに小さくなるでしょうが、それは起動時に余分な作業が発生するだけです。私はサイズと起動時間の両方が小さいものを探しています。ISO は 11MB をわずかに超える程度になります。
削除すべきものを探してファイルシステムをいろいろと調べてみましたが、明らかなことは何も見つかりませんでした。ドライバー、カーネル モジュール、さらにはカーネル コード、ライブラリ、ユーティリティを削除することはできますが、何を削除できるか、また ssh を起動して実行するために何が必要かを十分に理解していません。openssh に簡単な変更を加えるだけで、デフォルトのユーザー シェルとして使用できるようになるため、別のシェルや (うまくいけば) busybox は不要になります。
つまり、私の質問は 2 つに分かれると思います。
カーネル上で、SSH クライアントに入るには何が必要ですか?
私の TinyCore リマスターよりも小さくて高速な SSH クライアントに入る方法をご存知ですか?
答え1
私は、非常に簡略化されたバージョンはビジーボックス(基本的なシェルと、ネットワークの設定に必要ないくつかのネットワーク構成ツールのみ)、SSH クライアント (静的にリンク) として dropbear を追加すると、おっしゃる 11 MB よりはるかに小さくなります。1 ~ 2 MB 程度あれば十分だと思いますが、さらに削減することもできます。さらに、最小限のカーネルを追加します。
もちろん、アーキテクチャなどによって多少異なります (つまり、私が持っている MIPS システム用に静的にリンクされた dropbear は約 200 KB ですが、基本的な busybox は 500 KB 程度に簡単に収まるでしょう)。