問題タブ [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 投票する
2 に答える
440 参照

python - スクリプトを終了するbashプロンプトを開くPythonスクリプト

Pythonでchrootラッパーを書きたいです。スクリプトはいくつかのファイルをコピーし、他のものをセットアップしてからchrootを実行し、chrootシェルに到達するはずです。

トリッキーな部分は、chrootに入った後にPythonプロセスを実行したくないということです。

言い換えれば、Pythonはセットアップ作業を行い、chrootを呼び出してそれ自体を終了し、chrootシェルのままにしておく必要があります。chrootを終了すると、Pythonスクリプトを呼び出したときのディレクトリにいるはずです。

これは可能ですか?

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

ssh - www フォルダへの chroot アクセス


sshd_configのセットアップは次のとおりです。

フォルダに問題なく接続します

ただし、定義されたchrootdirectoryの範囲外にあるため、Webサイトの開発者フォルダーにアクセスできません

このディレクトリにアクセスするにはどうすればよいですか? sshd_config でアクセスを定義することはできますか?

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

security - rsyncを介してエンドユーザーからファイルを安全に受信する方法

Webアプリケーションのユーザーがrsyncを介してディレクトリのコンテンツをアップロードできるようにしたいと思います。これらはオンラインでサインアップしたユーザーにすぎないため、永続的なUNIXアカウントを作成したくありません。また、アップロードしたファイルがすべて、自分のアカウントに固有のディレクトリの下でのみサーバーに保存されるようにします。理想的には、フローは次のようになります。

  1. ユーザーが認証されたWebUIを介して「rsyncでファイルを更新したい」と言った
  2. サーバーは「OK、実行してください:rsync / path / to / yourfiles uploaduser123abc @ myserver:/」と表示します
  3. クライアントはそれを実行し、サーバー上で変更されたファイルを更新します
    • アップロード場所がchrootされているか何か-クライアントがサーバー上の指定されたディレクトリの下にあるファイルにのみ書き込むようにしたい
    • 理想的には、クライアントはパスワードを入力する必要はありません-ユーザー名の123abcは、この1つのrsyncトランザクションを安全に保つのに十分な秘密のトークンであり、トランザクション後にこのトークンは破棄されます-新しいステップ1が発生するまでrsyncは行われません。
  4. サーバーには、更新されたユーザーファイルのセットがあります。

Google AppEngineを使用したことがある場合、目的の動作は「更新」コマンドと同様です。つまり、変更されたファイルのみをappengineに送信してホスティングします。

このようなものを実装するための最良のアプローチは何ですか?1回限りのユーザーを作成し、それらのアカウントのchroot jailでrsyncデーモンを実行するのでしょうか?このようなことをする可能性のあるライブラリ(できればPython)またはスクリプトはありますか?

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

linux - 特定のプロセスの特定のファイルへのアクセスを制限できますか?

Linux でプロセスを開始し、特定のファイル/ディレクトリへのアクセスを制限することはできますか? 例えば:

some-script.shの外では何もできません./sandbox

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

python - distutils を使用して chroot 環境にインストールする

chroot された Linux イメージを維持しており、その chroot されたイメージにインストールしたいパッケージがあります。

両方のパッケージが両方の場所にインストールされることになります。何が起こっているのか、それを修正する方法がわかりません。

私の setup.py:

私がやろうとしていることを達成するための最良の方法は何ですか?

0 投票する
0 に答える
4029 参照

chroot - ビジーボックスを使ってchrootする

ビジーボックスを使用してchrootを実行する際に問題に直面しています。説明: 1GB のスパース ファイルを作成し、ext3 ファイルシステムにフォーマットします。次に、そのディレクトリをループ バック デバイスとして /mnt/busybox にマウントし、bin ディレクトリを作成して bin の下に busybox をコピーし、/mnt/busybox の下で ln -s bin/busybox bin/ls を実行しました。それから私が走ってみたとき

chroot /mnt/busybox bin/busybox ls chroot: コマンド `bin/busybox' を実行できません: 許可が拒否されました

ルートにいるにもかかわらず、スタック トレースを確認したところ、chroot("/mnt/busybox") が 0 を返したことがわかりましたが、execve("bin/busybox", ["bin/busybox", "ls"], [/* 24 変数 */]) = -1 EACCES (許可が拒否されました) が失敗しました。何が問題で、どのように解決するのですか?

ありがとう

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

linux - ubuntuのChroot内からサーバーを実行している

アプリケーションの特殊な性質のため、chroot環境内からApacheやTomcatなどのサーバーを実行することを考えています。schrootとdebootstrapを使用して、chrootディレクトリ内に10.04 ubuntu(最小ubuntu)のクローンを作成できます。chroot内にtomcatとapacheをインストールしました。しかし、どうすればこれら2つのサーバーにアクセスできますか?

  1. 親サーバーにインストールされている通常のapache/Tomcatのようにそれらにアクセスできますか?
  2. 親OSはchrootosのapache/tomcatにアクセスできますか?

まず、これらのオプションのどれが可能です。次に、これらの各オプションで処理する必要のある警告。

こんなもの欲しい

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

python - chroot 環境へのファイルの書き込み

chroot 環境でファイルにデータを書き込もうとしています。私は非 root ユーザーなので、chroot と通信できる唯一の方法は schroot コマンドを使用することです。

現在、次のトリックを使用してデータを書き込んでいます。

しかし、テキストに特殊文字や引用符などが含まれている場合、これは私に多くの悲しみを与えると確信しています。ほとんどの場合、Python スクリプトを介して上記のコマンドを使用します。もっと簡単な方法はありますか?

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

mysql - chroot での mysql の実行

10.04 ubuntu ボックスで chroot 環境が動作しています。この chroot 環境内で mysql を実行しようとしていますが、このエラーが発生します。

基本的に、chroot を作成するために schroot と一緒に debootstrap を使用しました。次に、この chroot 環境内に「ubuntu-minimal」と mysql-server をインストールしました。興味がある場合は、私が従ったすべての手順https://help.ubuntu.com/community/DebootstrapChrootをご覧ください。しかし、mysql は chroot 内では機能しません。/var/log/mysql.log および /var/log/mysql.err ファイルが空で、mysqld サーバーが実行されている。ポインタはありますか?

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

mysql - mysqldを実行するための通常の権限

chroot環境内でmysqldを実行しようとしています。状況はここにあります。

mysqldをrootとして実行すると、データベースに接続できます。しかし、init.dスクリプト(通常の権限)を使用してmysqlを実行すると、mysqlはエラーを表示します。

だから、私はいくつかのファイルのファイルパーミッションを変更する必要があると思います。しかし、どれですか?ああ、あなたが疑問に思っている場合は、「/ var / run / mysqld/mysqld.sock」は「mysql」ユーザーによって所有されています。