Chroot を使用して PHP の運用セキュリティ問題を解決する

Chroot を使用して PHP の運用セキュリティ問題を解決する

最近、Xiao Jiang のブログ投稿が多くのホスティング プロバイダーの注目を集めています。その理由は、Xiao Jiang氏が運営するChuangzhiホストの脆弱性がWuyun.comに報告されたためです。この記事で、Xiao Jiang氏は、機能を無効にする方法を使用してサーバー環境のセキュリティを確保するという解決策を示しました。

しかし、機能を無効にすることが本当に最善の選択肢なのでしょうか?いいえ!

AMH パネルの開発者である Amysql は、より良い選択肢は Chroot だと言っています。

AMH パネルは LNMP パネルです。バージョンアップに便利な一方で、パネルは 1 人の開発者によって開発されています。そのため、AMH は kangle、WDCP、LUM、webmin などのプラットフォーム環境を実装するためにバイナリ ファイルを使用しません。代わりに、AMP ベースの PHP プログラムを使用してプラットフォームを制御します。このように、PHP のセキュリティ問題を考慮する必要があります。プログラムは PHP で記述されているため、パネルとシステム間の情報交換を実装するには、exec と shell_exec の 2 つの関数を多用する必要があります。明らかに、Xiao Jiang によって示された機能制限の方法は、AMH のようなパネルには適していません。では、Amysql は PHP の運用上のセキュリティ問題をどのように解決するのでしょうか?

Amysql はこのアプローチを使用します。 AMH の仮想ホストでは、セキュリティを確保するために Chroot が常に有効になっていますが、コンソール PHP はパネルの正常な動作を確保するために chroot をオフにします。

ここまで述べてきましたが、Chroot とは何でしょうか?

Wikipedia のエントリによると、Chroot はもともと Unix のコマンドでしたが、この機能は PHP-FPM でも導入されました。

Wikipedia エントリ: chroot は、現在のプログラムとその子プロセスの実際のディスク ルート ディレクトリを変更するために使用される Unix システムの操作です。

Chroot はどのように機能しますか?

LNMP 環境では、PHP-FPM と Nginx 間の通信は CGI 経由でのみ実現できるため、FPM 設定でファイルのルート ディレクトリを変更すると、PHP プログラムはこの指定されたルート ディレクトリを通過できなくなります。パネルが配置されている仮想ホストでは Chroot が有効になっていないため、使用されるルートディレクトリは依然としてシステムルートディレクトリです。

詳しく説明していただけますか?

AMH パネルのコンソールと私が使用する通常の仮想ホストを例に挙げます。コンソール ファイルは /home/Wwwroot/Index/Web フォルダーに配置され、通常のホストのファイルは /home/wwwroot/Domain/web フォルダーに配置されます。コンソール プログラムの場合、Chroot が有効になっていないため、PHP ファイルの実際の場所は実行場所と同じ /home/wwwroot/Index/web/ であり、ルート ディレクトリは / です。通常の仮想ホストの場合、Chroot が有効になっていると、実行ファイルの場所は /home/wwwroot/domain/web/index.php ですが、Chroot によって誘導された後、PHP プログラム内の実際のファイル アドレスは /web/index.php になります。同時に、/home/wwwroot/domain/ では、侵入者がルート システムに入ったと思わせるために、PHP プログラム用のサンドボックスを作成するのと同じように、Unix フォルダーの命名規則に従って etc、usr、tmp、lib などのフォルダーが作成されます。したがって、Chroot を使用するユーザーは、Chinese Sabre を恐れる必要はありません。これはサンドボックス内でのみ機能し、メイン システムに影響を与えて経済的損失を引き起こすことはないからです。

サンドボックス (英: sandbox) は、信頼できないソースからのプログラム、破壊力を持つプログラム、または意図を判断できないプログラムをテストするための環境です。ただし、サンドボックスで行われたすべての変更によってオペレーティング システムに損失が発生することはありません。一般的に、この技術はコンピュータ技術者、特にコンピュータウイルス対策ソフトウェア業界で広く使用されています。サンドボックスは、コンピュータウイルスを観察するための重要な環境です。

ご存知のとおり、Unix 系システムでは、すべてのプログラム、さらにはデバイスもファイルで表されます。使用する ls コマンドと wget コマンドは、実際には特定の実行可能ファイルに対応しています。ただし、Chroot を使用した後、/home/wwwwroot/domain/usr 下に対応するファイルがないため、対応するコマンドは実行できません。これにより、システム情報のセキュリティが確保されます。

機能を無効にすることに比べて chroot を使用する利点は何ですか?

無効化された関数は PHP プログラム全体に適用されます。PHP プログラムで解析する必要があるすべてのファイルは、無効化された関数の設定の影響を受けます。異なる Web サイト プログラムでは異なる機能が必要になる場合があり、異なる仮想ホストを個別に設定することはできません。 Chroot はさまざまな仮想ホストに応じてカスタマイズできます。特別な機能を使用する必要があるプログラムの場合、Chroot をオフにして、Web サイト プログラムの正常な動作を確保できます。プログラムが特別なプログラムを呼び出す必要がない場合は、Chroot モードをオンにできます。特定のプログラムを 1 つまたは 2 つだけ有効にする場合は、次のプロセスを模倣して機能を追加できます。たとえば、Chroot を有効にすると、PHP プログラムは sendmail() 関数を使用してメールを送信できなくなります。送信の問題を解決するには、sendmail の代わりに mini_sendmail を使用します。

cd /home/wwwroot/www.ixiqin.com/

元のタイトル: Chroot を使用して PHP の運用セキュリティ問題を解決する

キーワード: PHP

<<:  Google検索ランキングアルゴリズムの更新を追跡および予測するための無料プラットフォームがいくつかある

>>:  ペットウェブサイトの運営は、ユーザーを結びつける重要なポイントを合理的に把握する必要があります

推薦する

大型模型で古い香港映画を復元:Volcano EngineとTikTokが共同で「クラシック香港映画復元プロジェクト」を開始

8月16日、TikTok、中国電影資料館、Volcano Engineは北京で「継続する時間-香港ク...

最新のネットワーク境界管理: VPN から SDP に移行する 4 つの理由

ネットワーク境界を効果的に保護することは、企業にとって常に重要な課題でしたが、近年、非常に困難な問題...

長江の真ん中にある「インターネット島」:人口2万人以上の町に400のオンラインストアがオープン

長い長江が静かに流れています。江蘇省の下流域には、川を挟んで向かい合う二つの都市、南は鎮江市、北は揚...

マーケティングのアイデアをお探しですか?スティーブ・ジョブズが語るマーケティングの最高峰とは

原題: マーケティング手法を見つけるのに苦労しているとき、スティーブ・ジョブズは最高レベルのマーケテ...

2019 年のトップ 10 DevOps ツール、いくつ使用していますか?

この記事では、必要なツールを選択するための詳細な参考情報を提供するために、ツールのリストをまとめてい...

重慶:今年上半期に合計112の違法ウェブサイトが禁止され、閉鎖された

今年に入ってから、市は30以上の違法出版物生産・販売所を解体し、ポルノ出版物6万部以上、各種の著作権...

psychz-99$/E3-1230v2/16g メモリ/Samsung 840 Pro 256G SSD/100m 無制限

fantongphotonvps の独立サーバーブランド psychz が、特別プロモーション付きの...

ウェブサイト構築におけるキーワードの重要性を理解する

SEO は幅広く奥深いテーマです。本当に理解したければ、短期間でできるものではありません。長いプロセ...

360 製品の脆弱性に関するニュースの真偽を明らかにする

8月29日、360 Searchが16時30分頃に「安全でクリーン、かつ効果的に競争できるインターネ...

2013 年 6 月の SEO 体験

SEOをやっていたものの、以前の仕事とはどんどん違いが出てきており、小さなサイトしかなく、長い間更新...

インターネット広告の顧客獲得チャネルを一覧でご紹介!

サービスであれ、物理的な製品であれ、信頼できる販売チャネルを見つけることによってのみ、商品を販売する...

安全なマルチクラウドアーキテクチャのためのKubernetesの実装

[[395137]]この記事はWeChat公式アカウント「新チタン雲務」から転載され、喬炳成が翻訳し...

Baidu の新しい外部リンク ツールから何がわかりましたか?

21日、百度は新しいウェブサイト外部リンク検出ツールをリリースしました。多くの人がこの件に注目してい...