Nginx での Frp による https への強制リダイレクト設定の詳細な説明

Nginx での Frp による https への強制リダイレクト設定の詳細な説明

自宅のルーターが300Mの帯域幅を80Mに強制的に減らしたため、3205Uソフトルーターを購入しました。期待を裏切らない、速度がとても速かったですO(∩_∩)Oハハハ〜もちろん、ブロードバンドにはパブリックIPがないので、DDNSは使用できず、代わりにfrpを使用しました。その過程でいくつかの落とし穴に遭遇したので、それを記録して、困っている学生の助けになればと思います。

frps.ini (サーバー構成)

[一般]
バインドポート = 5443
kcp_bind_port = 5443

vhost_http_port = 8080
vhost_https_ポート = 4443

# Frp サーバー インジケータ パネル構成 admin_addr = frp.test.com
ダッシュボードポート = 6443
ダッシュボードユーザー = テスト
dashboard_pwd = テスト

ログファイル = ./frps.log

# トレース、デバッグ、情報、警告、エラー
ログレベル = 情報

ログ最大日数 = 3

# 認証トークンはいくつかの文字列を独立して生成できます token = sfsfgsdgsdgsgddgsg

tcp_mux = 真

最大プール数 = 50

# ユーザー定義ドメイン名 subdomain_host = frp.test.com

frpc.ini (クライアント設定)

[一般]
# リモートサーバーのIPアドレス server_addr = 8.8.8.8
サーバーポート = 5443
トークン = sfsfgsdgsdgsgddgsg
tls_enable = 有効

[リード]
タイプ = http
ローカルIP = 10.10.10.1
ローカルポート = 80
# ここでの値は最終的に lede.frp.test.com に解決されます (ドメイン名サーバーで独自のパブリック サーバーを指す *.frp.test.com のドメイン名のパン解決を行う必要があります)
サブドメイン = リード
暗号化の使用 = false         
圧縮を使用する = true

# HTTP 基本認証は空白のままにできます http_user = test
http_pwd = テスト

vhosts.conf (Nginx 設定)

サーバー{
 聞く 80;
 443 ssl http2 をリッスンします。
 ssl_certificate /usr/local/nginx/conf/ssl/lede.frp.test.com.crt;
 ssl_certificate_key /usr/local/nginx/conf/ssl/lede.frp.test.com.key;
 ssl_プロトコル TLSv1 TLSv1.1 TLSv1.2;
 ssl_ciphers EECDH+CHACHA20:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5;
 ssl_prefer_server_ciphers をオン;
 ssl_session_timeout 10分;
 ssl_session_cache 組み込み:1000 共有:SSL:10m;
 SSLバッファサイズ1400;
 add_header 厳格なトランスポートセキュリティ max-age=15768000;
 ssl_stapling オン;
 ssl_stapling_verify オン;
 サーバー名 lede.frp.okuka.com;
 access_log /data/wwwlogs/lede.frp.test.com_nginx.log を結合しました。

 $ssl_protocol = "" の場合、301 https://$host$request_uri を返します。

 位置 / {
      proxy_pass http://127.0.0.1:8080;#ポート番号は、frps.ini の vhost_http_port と一致している必要があります proxy_set_header Host $host;
      proxy_set_header X-Real-IP 8.8.8.8;#ここにパブリックサーバーのIPを入力してください 
      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}

知らせ! ! ! ! !上記の操作は、サービスを再起動した後でのみ使用できます。

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • https暗号化アクセス用にnginxを設定するための詳細なチュートリアル
  • Alibaba Cloud Nginx はドメイン名アクセス プロジェクトを実装するために https を設定します (グラフィック チュートリアル)
  • Nginx設定の原理と実装プロセスの詳細な説明https
  • Nginx で HTTPS 証明書を構成する詳細なプロセス
  • Nginxはhttpとhttpsの両方のアクセスをサポートするために同じドメイン名を設定します
  • HttpとHttpsの両方をサポートするNginxの詳細な設定
  • Nginx http ヘルスチェック構成プロセス分析
  • nginx で SSL 証明書を設定して https サービスを実装する方法
  • Docker に nginx をインストールし、https 経由でアクセスを構成する方法
  • Nginx の構成と HTTP 実装コード分析との互換性

<<:  Mysql5.6.36 スクリプトのコンパイル、インストール、初期化のチュートリアル

>>:  JavaScriptにおける評価戦略の詳細な説明

推薦する

TypeScript における列挙型の理解と応用シナリオ

目次1. 何ですか2. 使用数値列挙文字列列挙異種列挙自然3. 応用シナリオ要約する1. 何ですか列...

Apache Bench ストレステストツールの実装原理と使用状況分析

1: スループット(1秒あたりのリクエスト数)サーバーの同時処理能力を定量的に表したもので、reqs...

CSS3で線形グラデーションを実装するためのコードの詳細な説明

序文デモでは古いバージョンのブラウザのグラデーションが実装されています[IE9-]。 IE9 より前...

JavaScript イベント キャプチャ バブリングとキャプチャの詳細

目次1. イベントの流れ1. コンセプト2. DOMイベントフロー2. イベントの委任1. イベント...

Dockerコンテナを外部IPとポートにバインドする方法

Docker を使用すると、外部からコンテナにアクセスしたり、コンテナを相互接続したりすることで、ネ...

JS配列の次元削減のいくつかの方法の詳細な説明

2次元配列の次元削減配列インスタンスメソッド concat と ES6 スプレッド演算子を使用した次...

Tomcat が IDEA のコンソールで文字化けを起こし、IDEA エンコーディングを UTF-8 に設定する方法

1. まず、TomcatログのエンコーディングとIdeaログ表示コンソールのエンコーディングを区別す...

LinuxにMySQLデータベース5.6のソースコードをインストールし、ログインユーザーのパスワードを変更する

この記事では、主に Linux で MYSQL データベースをインストールする方法について説明し、M...

react-color を使用してフロントエンドのカラーピッカーを実装する方法

背景次の図に示すように、 react-color を使用してフロントエンド インターフェースのカラー...

Linux の EXT シリーズファイルシステムフォーマットの詳細な説明

Linux ファイルシステム一般的なハードディスクは上図のとおりです。各ディスクは複数のトラックに分...

clearfixとclearの例

この記事では、CSS を理解し始めたばかりの人を対象に、主に HTML で clearfix と c...

uniapp プロジェクトの最適化方法と提案

目次1. 複雑なページデータ領域をコンポーネントにカプセル化する2. 大きな画像の使用を避ける3. ...

CSS で美しい時計アニメーション効果を実装するためのサンプルコード

仕事を探しています!!!事前準備:まず、このアニメーションは、以前のローディングアニメーションとクー...

システム外のフォント参照とトランジション効果

コードをコピーコードは次のとおりです。 <span style="font-fami...

docker を使用して Spring Boot をデプロイし、Skywalking に接続する方法

目次1. 概要1. スカイウォーキング入門2. スカイウォーキング建築3. スカイウォーキングはどの...