パブリックIPユーザーとブロードバンド家のために、時には我々は、転送ポートを介して外部ネットワーク(例えばNASリモートアクセス)に暴露されたネットワークサービス内の特定のWebルータである必要がありますが、HTTPを明確に伝達され、監視されているの危険性がある。もし特定の自己NASの使用を、次にポートフォワーディング、自己署名証明書を使用して、Chromeブラウザは、アクセス接続を拒否(私が開始する80.0.3987バージョン、コマンドラインパラメータを使用して、システムは信託法による証明書を追加することはできません)危険と見なされるNASレッツ・暗号化へのアプリケーションの証明書を持つプラグ、および単一のNASはHTTPSを追加するだけの役割を果たすことができます。この記事では、ルータおよびデプロイSSL、ネットワーク内の複数のHTTPリバースプロキシサービスにnginxのインストール方法について説明します。
請求
ファイリングなしのドメイン名、ルータはパブリックIPを持って、ルータPandoraboxファームウェア(理論的に基づいて、OpenWrtのファームウェア缶);ソースのソフトウェアは、より多くの日付にしています。
2020.03のは、利用可能Pandoraboxソフトウェアのソースアドレスhttp://downloads.pangubox.com:6380/pandorabox
例えば、私のルータは、構成情報と比較して、newifiD1です
SRC / GZ 18.10_base http://downloads.pangubox.com:6380/pandorabox/18.10/packages/mipsel_1004kc_dsp/base
のsrc / GZ 18.10_lafite http://downloads.pangubox.com:6380/pandorabox/18.10/packages/mipsel_1004kc_dsp /ラフィット
のsrc / GZ 18.10_luci http://downloads.pangubox.com:6380/pandorabox/18.10/packages/mipsel_1004kc_dsp/luci
のsrc / GZ 18.10_mtkdrv http://downloads.pangubox.com:6380/pandorabox/18.10/packages / mipsel_1004kc_dsp / mtkdrv
のsrc / GZ 18.10_newifi http://downloads.pangubox.com:6380/pandorabox/18.10/packages/mipsel_1004kc_dsp/newifi
のsrc / GZ 18.10_packages http://downloads.pangubox.com:6380/pandorabox/18.10 /パッケージ/ mipsel_1004kc_dsp /パッケージ
インストールとアクメnginxの
pandoraboxでnginxののWeb管理インターフェイスまたはコマンドラインインストールはに従い、アクメをnginxのインストールopkgできる公式の説明書をインストールするには、実行されますが、必要性の前にいくつかのパッケージをインストールするには:カール はwget CA - 証明書のOpenSSL - CA utilのを- バンドルsocatに関するを
パッケージCAのルート証明書の束をCA-バンドル、pandoraboxのデフォルトは任意のルートCA証明書が含まれていません、任意のSSL接続を確立することは不可能です。socatに関するそれはインストールするのが最善である、いくつかの機能のアクメに使用されます。
インストールプロセス注意すべき点がいくつかあります。
あなたはnginxの起動に失敗したと報告されますインストールした後、1、ポートが占有され、これは、ポート80がすでにルータのWeb管理インターフェース(uhttpdサービス)によって占有されているので、我々はnginxの設定ファイルを変更します、正常です。
2.使用して、HTTP認証注意UHTTPのデフォルトのWebルートディレクトリは/ WWW、およびオペレータがポート80をブロックしている場合は、httpルートディレクトリが使用できないことを確認していますが、スタンドアロンモードを使用して別のポートを指定することができ、ファイアウォールで80個のポートを開く必要があります検証。使用ポート88、ファイアウォールで開いているポートに88などして、verifyコマンド:
アクメ。SH --issue -d example.com --standalone --httpport 88
あなたは自動検証nginxのを使用している場合は、正しい動作を保証するために、nginxのであったが、それはuhttpdのnginxのは、ポートと競合しないように構成する必要があり、ファイアウォールが推奨されていません。
3. DNSの確認、ルータ上の任意の設定を行うことなく、自動TXTレコードアクメ追加機能を使用することをお勧めします
証明書の4 Aのコピーがアクメコピーコマンドであるが、以下のように変更することの必要性を行うことができます
アクメ。SH --installcert - D example.com \ --key- ファイル は/ etc / nginxの/ key.pem \ --fullchain- ファイルは/ etc / nginxの/ cert.pemを # --reloadcmd " サービスnginxの強制リロード"フレーズを追加しないでください
nginxの設定
証明書は、nginxの設定の次の、これまでに完了して得られました。私たちのネットワーク内の2つのWebサービスのアドレスを仮定http://192.168.0.100、http://192.168.0.102/testあります
ユーザーの誰もnogroupが、 worker_processes 1 ; #error_logログ / error.logに。 #error_logログ / error.logに予告。 #error_logログ /error.log 情報。 #pidログ / nginx.pid。 イベント{ worker_connections 1024 。 } HTTP { のmime.typesを含みます。 #default_typeアプリケーション / octet- ストリーム。 #log_formatメイン ' REMOTE_ADDR $ - $のREMOTE_USER [$ time_local] "$要求" ' # "$ステータスの$ body_bytes_sent "$ HTTP_REFERER" ' # ' "$ HTTP_USER_AGENT" "$ HTTP_X_FORWARDED_FOR" " ; #access_logログ / access.logをメイン; sendfile; 上#tcp_nopush; #keepalive_timeout 0 ; client_body_timeout 3600 ; client_header_timeout 1800 ; keepalive_timeout 15 ; send_timeout 3600 ; gzip圧縮 上; サーバー{ 聞い 443SSL;#443ポートが他のポートを使用するには、不便なことができ置き換える サーバー名example.com; 文字コードUTF - 8 ; ssl_certificate cert.pemを、二つの文書が書き込み後方ないこと#注 ssl_certificate_key key.pemを、 ssl_session_cache共有:SSL:1M; ssl_session_timeout 5メートル; ON ssl_prefer_server_ciphers; #access_logログ / host.access.log主; #error_page 404 / 404 の.html; proxy_connect_timeout 180 ; proxy_send_timeout 180 ; proxy_read_timeout 180 。 ホストホストの$ proxy_set_header; proxy_set_header X- -Forwarder- のために$ REMOTE_ADDR; LOCATION / servertest { proxy_pass HTTP:// 192.168.0.102/test; proxy_redirectデフォルト; #nginxないキャッシュサーバは、すべての要求を処理するために、ターゲット・サーバーに転送され 、オフproxy_buffering ; } LOCATION / サーバー1 { proxy_pass HTTP:// 192.168.0.100; #はわずかな構成、nginxのコンテンツがキャッシュされる速度を上げるんが、タイムアウトの問題が発生することがあり } LOCATION〜// .htから{ すべて拒否; } #error_page 500 502 503 504 / 50x.html。 #location = / 50x.html { #ルートHTML。 #} } }
再起動nginxのサービス:/etc/init.d/nginx再起動
エラーメッセージが出力、既に開いて対応するファイアウォールポート、アクセスhttps://example.com/server1とhttps://example.com/servertest(ポート番号と非443ポートを指定する必要がある場合)されていない場合は、サービスが発見されましたこれは、SSLの上で実行されます。その他のサービスは、単純に前方に複数のサブディレクトリを設定します。
ご注意ください
長い最後の二つは、手動でルータの/ etc / nginxのディレクトリに生成された証明書ファイルをコピーするようなように1.理論は、nginxの設定前に、Webホスト上で含めることができますが、それは、ポート転送に必要な証明書の検証のリンク、または使用のDNSにあります検証。
2.ルータがnginxののインストールをサポートしていない場合であっても、またこれは、ホストポートのマッピングモードをDMZに設定または暴露され、ネットワークホストのインストールnginxの上に含めることができるが、効果は同じである、特定の手順が繰り返されることはありません。
3. SSLルータのパフォーマンス・オーバーヘッドはnewifiD1の著者速くHTTP大きなファイルのダウンロードをテストするときに半分に削減よりも、小型ではなく、全負荷ルータは、条件がルータで高い使用する必要があります実行します。