最近、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 でも導入されました。
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 を恐れる必要はありません。これはサンドボックス内でのみ機能し、メイン システムに影響を与えて経済的損失を引き起こすことはないからです。
ご存知のとおり、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検索ランキングアルゴリズムの更新を追跡および予測するための無料プラットフォームがいくつかある
>>: ペットウェブサイトの運営は、ユーザーを結びつける重要なポイントを合理的に把握する必要があります
PTC (NASDAQ: PTC) は、ボストン グローブ紙の第 11 回年次従業員調査で、マサチュ...
vpsmsは2周年を迎え、来たるダブル11に合わせて、vpsmsチームは米国ロサンゼルスのAncha...
ここでは、エッジツークラウド戦略のメリットと、HPE GreenLake などのプラットフォームがそ...
• 現在のクラウドバックログは24%増加しました(為替レート一定では22%増加) • 現在のS/4H...
PBAが「インターネット時代のNo.1化粧品ブランド」になるためにどこまで進まなければならないのか?...
ウェブサイトで良い記事を見つけたら、通常どうしますか?そうです、多くの人がWeibo、WeChat ...
Extravm の以前の VPS は、OVH データ センターか米国中部のダラスにあり、特別な注目を...
今日は4月26日です。昨日の午後(4月25日)のBaiduの「騒動」は、誰もが体験し、深く感じたはず...
自社製品の正確なユーザーを見つけ、彼らに広告を配信し、より高いコンバージョン率を達成するにはどうすれ...
業界関係者は、北京の微博実名制試験がモデルになる可能性があると考えており、それは微博実名制がますます...
有能な SEO 担当者は、検索エンジンの気質をどう理解すればよいのでしょうか。私たちにとってはわかり...
ネットショップの運営はますます難しくなり、投資も増えていると多くの人が言っています。ネットショップの...
Interserver.net は、1999 年以来 IDC 業界で豊富な経験を持っていると主張して...
[51CTO.com からのオリジナル記事] コンテナ テクノロジーは現在、幅広い注目を集めており、...
「女の子はみんな買って!」 2019年10月20日、人魚姫の李佳琦が生放送室で今年の双十一の最初のシ...