問題タブ [chroot]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
2493 参照

linux - 他の arch の環境に chroot する

Linux from Scratchの本に従って、ARM 上の ARM 用のツールチェーンを構築することができました。これは本の第6章までであり、ARMボード自体では問題なくさらに進むことができました. 私の質問は、準備された環境を使用して、x86_64 Fedora 16 ラップトップで第 6 章からのソフトウェアのビルドを続行できるかどうかです。すべてのバイナリをセットアップしたら、それらをラップトップにコピーし、内部で chroot して ARM ボード上にいるように感じることができると思いましたが、本のコマンドを使用しても結果は得られません。

バイナリはそこにありますが、このシステムに属していません:

バイナリは本に従ってコンパイルされます: # readelf -l /tools/bin/env | grep interpreter [Requesting program interpreter: /tools/lib/ld-linux.so.3]

したがって、CC LD READELF に適切な環境変数を使用するなど、x86_64 ホストでこれらのツールを使用して ARM のビルドを続行する方法があるかどうか疑問に思います。

ありがとうございました。

0 投票する
1 に答える
640 参照

c - chrootjailでLinuxコマンドを実行する方法

jailedコマンドエグゼキュータをコーディングする必要があり、Linuxコマンドを実行する必要があります。/binを新しいルートにコピーしようとしましたが、system()(例:system( "ls"))が機能しません。ライブラリのコピーについて読んだことがありますが、コピーを伴わないLinuxコマンドを実行する他の方法はありますか?

さらに(そしておそらくもっと重要なことですが)、rootではないjailされたプロセスがLinuxコマンドを実行する方法はありますか?

ありがとう、どんな助けでもありがたいです

0 投票する
1 に答える
242 参照

bash - Bash スクリプト; プログラムにコマンドを与える stdin

私はbashスクリプトを初めて使用します。次のスクリプトがあります。

実際には、最後の 2 つのコマンドを chroot 環境で実行したいのですが、それを与える方法がわかりません。検索しても見つかりませんでした。また、コマンドの実行後にchrootを終了させたいのですが、現在ハングしています。これを防ぐにはどうすればよいですか?

編集:将来の訪問者のために:

0 投票する
2 に答える
6863 参照

python - Python: chroot と chjail で信頼できないスクリプト/サブプロセスを保護しますか?

機能を簡単に拡張できるように、「プラグイン」を実行できる Python ベースの Web サーバーを作成しています。

このために、いくつかのフォルダー (プラグインごとに 1 つ) と、発生する可能性のあるさまざまなイベントの定義済みの名前にちなんで名付けられた多数のシェル/Python スクリプトを用意するアプローチを検討しました。

1 つの例としてon_pdf_uploaded.py、PDF がサーバーにアップロードされたときに実行されるファイルがあります。これを行うには、Python のサブプロセスツールを使用します。

利便性とセキュリティのために、Unix 環境変数を使用して詳細情報を提供し、プロセスの作業ディレクトリ (cwd) を設定して、場所を見つけなくても適切なファイルにアクセスできるようにします。

プラグイン コードは信頼できないソースからのものであるため、できるだけ安全にしたいと考えています。私のアイデアは、サブプロセスでコードを実行することでしたが、サーバー上の他のリソースにアクセスできないように、別のユーザーで chroot 監獄に入れました。

残念ながら、これについては何も見つけることができませんでした。また、信頼できないスクリプトに依存して自分自身を刑務所に入れたくありません。

さらに、サーバーが他のリクエストに応答している間にプラグインコードが複数のプロセスで同時に実行される可能性があるため、メイン/呼び出しプロセスをchroot監獄に入れることもできません。

そこで質問があります: chroot 刑務所でサブプロセス/スクリプトを最小限の権限で実行して、サーバーの残りの部分が欠陥のある信頼できないコードによって損傷を受けるのを防ぐにはどうすればよいでしょうか?

ありがとうございました!

0 投票する
2 に答える
2481 参照

python - chroot で実行すると Python エラーが発生する

chroot でいくつかの Python プログラムを実行しようとすると、次のエラーが表示されます

ldd を使用して、Python ランタイムが依存するライブラリを見つけ、刑務所内にコピーしました。それを手伝ってくれませんか?

ありがとうございました

0 投票する
1 に答える
2622 参照

node.js - Node.jsと現在のプロセスのchroot

chrootの下でnode.jsスクリプトからコードの特定の部分のみを実行する必要があります。chrootを設定し、daemon.chrootを使用しています。chrootはうまく機能しますが、プロセスのルートを解除して、他の場所で再度chrootできるようにする必要があります。私は今(以前の言語ではプロセスをフォークし、子をchrootで実行する)、Node.jsが実行中のプロセス全体をchrootすることを理解しているため、異なる環境をchrootしようとすると、Nodeはchrootが存在しないと文句を言います。 、および前のchroot内には存在しません。

コードの一部またはNodeを使用したプロセスをchrootしてから「unchroot」するこの機能を実現するための最良の方法は何ですか?

0 投票する
2 に答える
1905 参照

ubuntu - php-fpmがubuntuで適切に機能するために、投獄された環境に必要なシステムファイルは何ですか?

ubuntu 12.04でphp5-fpmを使用しており、nginxでホストされているドメインごとに個別のプールとchrootの場所があります。ただし、一部のシステム ファイルを直接刑務所に入れる必要があることはわかっていますが、どのシステム ファイルが必要ですか?

DNS 解決が現在機能していないことは知っています。また、システム コア ファイルの一部をディレクトリにコピーする必要があるという記事をいくつか読みましたが、実際にどのファイルにコピーする必要があるかについては詳しく説明していません。そこの。

DNS、タイムゾーンに何かがあることは知っています(phpは時間/日付関連の関数でエラーになるようです)。

そして、一般的なchrootの使用について疑問に思っていました。それを使用する価値はありますか、それともドメインごとに個別のパーティションを作成したり、ドメインごとに個別の vm を作成したり (リソースのコストが高くなります) した方が安全でしょうか?

0 投票する
1 に答える
614 参照

c++ - chroot された Debian etch で clock_gettime が CLOCK_PROCESS_CPUTIME_ID で失敗する

Ubuntu 12.04 (64 ビット) で chroot された Debian Etch (32 ビット) をセットアップしました。errno は EINVAL に設定されています。これは、man ページによると、「指定された clk_id はこのシステムではサポートされていません」という意味です。

3 つのクロックはすべて、chroot された Debian の外でも、64 ビット chroot された Debian etch でも正常に動作します。

誰かが私にこれが当てはまる理由とそれを修正する方法を説明できますか?

とても有難い。

0 投票する
1 に答える
796 参照

android - Android上のchrootされたubuntu環境のvsftpd

Android GalaxyTab と myTouch 4G 電話で chroot された ubuntu 12 ディストリビューションを実行しています。LAMP スタックを実行しており、すべてが非常にスムーズですが、この単純な vsftpd をどちらのデバイスでも動作させることができません。

/etc/vsftpd.conf で変更したのは次の 2 行のみです。

クライアント側から、自分のユーザー/パスで ftp およびログインできますが、「ls」、「get」、または「put」は許可されません。これらのコマンドのいずれかを実行すると、次のエラーが発生します。

ただし、「mkdir」と「rmdir」は実行できますが、それ以外はファイルを操作できません。理由について何か考えはありますか?

助けてくれてありがとう!

0 投票する
1 に答える
378 参照

git - git log コマンドは chroot に何も出力しません

スクリプトmake_chroot_jail.shを使用してchroot監獄を作成し、/usr/bin/git*、これらのバイナリに必要なすべてのライブラリ、および/usr/share/git-coreをコピーしてgitを追加し、init、clone commit、pushなどを実行できるようになりましたしかし、私が git log と入力しても何も出力されません (誰かが私を助けてくれたり、どこを探すべきか教えてくれませんか?