it-swarm-ja.com

php用のnginxを安全に構成する

Symfony2サイトとphpMyAdminなどの他のソフトウェアの両方にnginxを使用したいと思います。

Symfony2のセットアップに関するnginxのドキュメントを読み、この問題に遭遇しました: http://www.webhostingtalk.com/showthread.php?p=6807475#post6807475

security.limit_extensions=phpを使用して、このようなものを安全に使用できますか?

location \.php$ {
  ...
}

このブログは、これがファイルアップロードのセキュリティ問題の回避策であることを示しているようです: http://kaiwangchen.com/blog/2012/10/understand-the-cgi-fix_pathinfo-security-issue/

しかし、nginxを設定するためのチュートリアルがあるほとんどの場所では、phpを特定のファイルに制限するという古いソリューションを推奨しています。したがって、これが実際に任意のコードインジェクションを回避するかどうかはわかりませんでした。

または、try_filesを使用する必要がありますか?

1
Matt

try_filessecurity.limit_extensions=phpの組み合わせを使用し、作成したアップロードフォルダーにコードを実行する機会がまったくないことを確認してください。最後のことは最も重要なことであり、時間の終わりまでこの問題を安全に保つ唯一のことです。

例:

/var/www/src      ->  execute PHP files
/var/www/uploads  ->  only accessible for static delivery
0
Fleshgrinder