1. HttpとHttpsの違い HTTP: インターネットで最も広く使用されているネットワーク プロトコルです。クライアントとサーバーの要求と応答 (TCP) の標準です。WWW サーバーからローカル ブラウザーにハイパーテキストを転送するために使用される転送プロトコルです。ブラウザーの効率を高め、ネットワーク転送を削減できます。 HTTPS: セキュリティを目的とした HTTP チャネルです。簡単に言えば、HTTP のセキュア バージョンであり、HTTP の下に SSL レイヤーが追加されています。HTTPS のセキュリティの基礎は SSL であるため、暗号化された詳細には SSL が必要です。 HTTPS プロトコルの主な機能は、情報セキュリティ チャネルを確立してデータ転送のセキュリティを確保することと、Web サイトの信頼性を確認することの 2 つに分けられます。 HTTPS と HTTP の主な違いは次のとおりです。 1. https プロトコルでは、CA に証明書を申請する必要があります。一般的に、無料の証明書は少ないため、一定の料金が必要です。 2. HTTP はハイパーテキスト転送プロトコルであり、情報はプレーンテキストで送信されますが、HTTPS は安全な SSL 暗号化転送プロトコルです。 3. http と https は完全に異なる接続方法と異なるポートを使用します。前者は 80 で、後者は 443 です。 4. http 接続は非常にシンプルでステートレスです。HTTPS プロトコルは、SSL+HTTP プロトコルによって構築されたネットワーク プロトコルで、暗号化された送信と ID 認証を実行できます。http プロトコルよりも安全です。 2. opensslを使用して証明書を生成する OpenSSL は最も人気のある SSL 暗号化ライブラリ ツールであり、SSL/TLS プロトコルの実装をサポートする汎用的で堅牢なフル機能のツール スイートを提供します。 たとえば、/usr/local/ssl に生成されます。 openssl req -x509 -nodes -days 36500 -newkey rsa:2048 -keyout /usr/local/ssl/nginx.key -out /usr/local/ssl/nginx.crt 生成プロセス: # openssl req -x509 -nodes -days 36500 -newkey rsa:2048 -keyout /usr/local/ssl/nginx.key -out /usr/local/ssl/nginx.crt 2048ビットのRSA秘密鍵を生成する ...............................................................................+ ++ ...............+++ 新しい秘密鍵を '/usr/local/ssl/nginx.key' に書き込みます ----- 組み込まれる情報を入力するよう求められます 証明書リクエストに追加します。 これから入力するのは、識別名または DN と呼ばれるものです。 フィールドはたくさんあるが、一部は空白のままにしておくこともできる いくつかのフィールドにはデフォルト値があります。 「.」を入力すると、フィールドは空白のままになります。 ----- 国名(2文字コード)[XX]:CN 州または県名(フルネーム) []:北京 地域名(例:都市)[デフォルトの都市]:北京 組織名(例:会社)[Default Company Ltd]:xxxx 組織単位名(例:セクション)[]:xxxx 共通名(例:あなたの名前またはサーバーのホスト名)[]:xxxx(通常はドメイン名) メールアドレス[]:[email protected] #ll 合計 8 -rw-r--r--。1 ルート ルート 1391 4月 21 13:29 nginx.crt -rw-r--r--。1 ルート ルート 1704 4月 21 13:29 nginx.key 3. Nginxにhttp_ssl_moduleモジュールをインストールする Nginx で SSL モジュールが有効になっていない場合、Https の設定時にエラー メッセージが表示されます。
Nginx には http_ssl_module モジュールがありません。コンパイルおよびインストール時に --with-http_ssl_module 設定を追加するだけです。 このシナリオでは、サーバーに nginx はインストールされていますが、http_ssl_module はインストールされていません。 1. 次のようなソース パッケージを入力します。 cd /app/download/nginx-1.12.2 2. 設定: ./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module #依存パッケージが必要になる場合があります yum -y install pcre-devel openssl openssl-devel 3.作る: 作る 4. make install を実行する必要はありません。そうしないと、インストールが上書きされます。 5. 次のように元の nginx をバックアップします。 cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx_bak 6. 次に、元の nginx を新しくコンパイルした nginx で上書きします (nginx を停止する必要があります) cp ./objs/nginx /usr/local/nginx/sbin/ 7. インストールステータスを確認します。 nginx の sbin ディレクトリに nginx の sbin ディレクトリを作成します。 nginx バージョン: nginx/1.12.2 gcc 4.8.5 20150623 (Red Hat 4.8.5-16) (GCC) で構築 OpenSSL 1.0.2k-fips で構築 2017年1月26日 TLS SNIサポートが有効 設定引数: --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module 4. nginx 設定 https いくつかの設定情報を貼り付けます: サーバー{ 聞く 80; サーバー名 www.yourdomain.com; ^(.*) https://$server_name$1 permanent を書き換えます。#http を https にリダイレクトします } サーバー{ 443 ssl を聴く; サーバー名 www.yourdomain.com; ssl_certificate /usr/local/ssl/nginx.crt; ssl_certificate_key /usr/local/ssl/nginx.key; ssl_session_cache 共有:SSL:1m; ssl_session_timeout 5分; # ハッカーがバージョンの脆弱性を悪用するのを防ぐために、ヘッダー内のサーバーバージョンを無効にします server_tokens off; #サイト全体が HTTPS であり、HTTP が考慮されていない場合は、HSTS を追加して、サイト全体が暗号化されていることをブラウザに通知し、HTTPS アクセスを強制することができます。fastcgi_param HTTPS on; fastcgi_param HTTP_SCHEME https; アクセスログ /usr/local/nginx/logs/httpsaccess.log; } まず、設定が正しいかどうかを確認します。 nginx の sbin ディレクトリに nginx の sbin ディレクトリを作成します。 nginx: 設定ファイル /usr/local/nginx/conf/nginx.conf の構文は正常です nginx: 設定ファイル /usr/local/nginx/conf/nginx.conf のテストが成功しました nginxを再起動します。 /usr/local/nginx/sbin/nginx -s リロード アクセス: Nginx で HTTPS 証明書を構成する詳細なプロセスに関するこの記事はこれで終わりです。Nginx で HTTPS 証明書を構成することに関するより関連性の高いコンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: MySQL インデックスのパフォーマンス最適化の問題に対する解決策
>>: Vue プロジェクトはファイルダウンロードの進行状況バー機能を実装します
W3Cschoolではこのように説明しています<meta> 要素は、検索エンジン向けの説...
序文私は多くのブログを読み、弊社の DBA を含む多くの人々が、MySql では列に null が含...
1. csvファイルをインポートする次のコマンドを使用します。 1.mysql> infile...
MySQL 8.0.18 では、インデックスが作成されていないフィールドに適用でき、等価値の関連付け...
前の記事で説明したフォームの自動入力の問題を解決した後、新しい問題が発生しました。ページの一部のスタ...
Selenium Grid の紹介Selenium Grid のいくつかの新しい機能は、今後リリース...
1. golang:最新のベースイメージ mkdir gotest タッチメイン.go Docker...
参考までに、Vue シングル サインオンのデモをご紹介します。詳細を知りたい方のお役に立てれば幸いで...
MySQL のデフォルトの varchar 型は大文字と小文字を区別しません (insensitiv...
スワップを無効にするサーバーがデータベース サービスまたはメッセージ ミドルウェア サービスを実行し...
シナリオ最近の要件は、モバイル デバイス用の h5 ページです。これには、選択可能なカードの行が必要...
目次概要1. Refsオブジェクトの作成1.1 React.createRef() 1.2React...
イメージが正常にビルドされると、Docker 環境があれば使用できますが、イメージを Docker ...
doctype もその 1 つです。 <!DOCTYPE HTML PUBLIC "...
目次MySQLをインストールする環境変数の設定MySQLをインストールするmysqlをダウンロードし...