NginxはIPアクセスを禁止し、ドメイン名のみのアクセスを許可します。
2521 ワード
私達は使う時に多くの悪意のあるIP攻撃に出会うことができます。この時はNgixを使ってIPアクセスを禁止します。ここではまずNginxのデフォルトの仮想ホストを見てみましょう。ユーザーがIPを通じてアクセスしたり、未設定のドメイン名でアクセスしたりします。例えば、自分のドメイン名をあなたのipに向けた人がいます。後のdefaultパラメータは、これがデフォルトの仮想ホストであることを表しています。この設定はNginxがIPアクセスを禁止するために非常に有用である。
例えば、他の人がipまたは未知のドメイン名であなたのサイトを訪問する時、有効な内容を表示することを禁止したいです。彼に500に戻ることができます。現在、国内の多くのマシンルームでは、ウェブサイトの主に空のホストヘッドをオフにしてもらいます。このように設定できます。
簡単で直接的な修正方法:
nginx.com nfファイルを修正して作成します。
標準サイトにアクセスするために、直接403に戻ります。
以下のいくつかの比較的詳しい紹介:
第一の場合:A局にアクセスしてB局に向かう。
例えば、他の人がipまたは未知のドメイン名であなたのサイトを訪問する時、有効な内容を表示することを禁止したいです。彼に500に戻ることができます。現在、国内の多くのマシンルームでは、ウェブサイトの主に空のホストヘッドをオフにしてもらいます。このように設定できます。
簡単で直接的な修正方法:
nginx.com nfファイルを修正して作成します。
server {
listen 80;
server_name www.jb51.net; #
...
}
前のserverにもう一つ追加してください。標準サイトにアクセスするために、直接403に戻ります。
server {
listen 80 default_server;
server_name _;
return 403;
}
ここでは、ipアクセスまたは指定されていないドメイン名アクセスを受信すると、403エラーが返されます。以下のいくつかの比較的詳しい紹介:
server {
listen 80 default;
return 500;
}
これらの流量を集めて、自分のサイトに導入してもいいです。以下のジャンプ設定をすればいいです。
server {
listen 80 default;
rewrite ^(.*) //www.jb51.net permanent;
}
上のように設定したら、確かにIPでサーバーにアクセスできなくなりましたが、使うべきところにserver_が現れます。nameの後に複数のドメイン名がある場合、その中の一つのドメイン名はどうしてもアクセスできません。以下のように設定します。
server {
listen 80;
server_name www.jb51.net jb51.net
}
変更されていない前に、server_を通過します。nameの中のwww.jb 51.net jb 51.netはいずれもサーバーにアクセスできます。NgixのIPアクセス禁止の設定に加入した後、jb 51.netを通じてサーバーにアクセスできなくなりました。www.jb 51.netはアクセスできます。gnored the configration file/usr/local/Nginnx/conf/Nginnx.com nf syntax is ok confile/usr/local/Nginnx/conf/Ngix.conf test is success fulは最後にlisten 80 defaultで通します。後にserver_を追加しますname_;解決、形式は以下の通りです。
# IP
server
{
listen 80 default;
server_name _;
return 500;
}
または
server {
listen 80 dufault;
server_name _;
rewrite ^(.*) //www.jb51.net permanent;
}
# IP
server {
listen 80 default;
server_name _;
server_name www.jb51.net jb51.net
return 500;
}
これで、jb 51.netを通じてサーバーにアクセスできます。第一の場合:A局にアクセスしてB局に向かう。
server {
server_name www.jb51.net ;
rewrite ^(.*) http://www.jbzj.com$1 permanent;
}
第二の場合:A局にアクセスしたすべてのリダイレクトを指定ページに転送するのではない。
server {
server_name www.jb51.net;
if ($host != 'jb51.net') {
rewrite ^/(.*)$ http://www.jbzj.com/$1 permanent;
}
}
最初のserverセグメントにIPアクセスを使用した場合もリダイレクトされます。