QNAP に Nginx リバースプロキシをインストールする手順
(特別感謝:天地極限の大佬による全程指導)
一、準備作業
-
一次ドメインを登録する(アリババ、テンセント、またはhttps://www.namesilo.com、https://www.dynadot.com/ などの海外サイト)
-
CloudFlare アカウントを登録する(https://www.cloudflare.com/)、登録後はメールのリンクをクリックして確認することを忘れないでください。さもないと後でエラーが発生する可能性があります。
二、SSHでNginxをインストール
- インストール
docker run -d
--restart=always \
--name=NginxProxyManager \
-e TZ="Asia/Shanghai" \
-p 3081:81 \
-p 3080:80 \
-p 30443:443 \
-v /share/Container/NginxProxyManager/data:/data \
-v /share/Container/NginxProxyManager/cert:/etc/letsencrypt \
chishin/nginx-proxy-manager-zh
- 設定
nas の ip:3081 にアクセスして管理ページに入る
デフォルトのアカウント情報:Email@example.com Password: changeme
入ったらログインメール、パスワード、その他を自由に変更する
三、CloudFlareの設定
- ホームページにログインし、サイトを追加します。あなたのドメイン名を入力し、Free を選択して続行します。
- 一連の操作を行い、以下の画像のような結果が得られます。2 つのネームサーバー(dns)をコピーしてメモ帳などに保存しておきます。
- 登録したドメイン管理のところに行き(テンセントを例に、他は大同小異)、登録ドメインを変更し、カスタム DNS に先ほどコピーした 2 つの dns を入力します。
- Cloudflare のホームページに戻り、効果があるかどうかを確認します。以下の画像のようになっていれば大丈夫です。
- このページの右下にある「API トークンを取得」をクリックし、次のページで「トークンを作成」をクリックします。次のページで DNS セクションの編集エリアで「テンプレートを使用」をクリックします。
- トークンを取得したら、コピーして保存しておきます。その後、上のページ(トークンを作成したページ)に戻り、一般的なものも確認して、2 つの秘密鍵もコピーして保存しておきます。
- CloudFlare のホームページに戻り、左側の DNS をクリックします(もしなければ、ウェブページの中央にあるあなたのドメインをクリックします)、レコードを追加をクリックし、下の赤い枠に従って記入または選択し、他はデフォルトのままにします。
四、ドメイン解析
- SSH に入り、以下のコマンドを実行して DDNS-GO をインストールします。
docker run -d
--name ddns-go --restart=always --net=host -v /share/Container/ddns-go:/root
jeessy/ddns-go
- インストールが完了したら、nas の IP:9876 にアクセスして管理画面に入ります。以下の画像のように記入します:Token は先ほど取得した API トークン、または一般的なキー(私のは成功しなかったので API トークンを使用)で、IP 取得方法はこれを記入します:https://ddns.oray.com/checkip, https://ip.3322.net、Domain には自分のドメインを記入します。例:*.xxx.cn、左上の save をクリックします。
- 右上にこの画像のようなメッセージが表示されれば、DDNS 解析が成功したことを示します。
- Cloudflare のページを開いて、左側の DNS をクリックします。以下の画像のように、以前の 1.1.1.1 があなたのパブリック IP アドレスに変わっていれば、OK です。
- この DDNS-GO はデフォルトで外部アクセスが無効になっています。外部アクセスが必要な場合は、このページの下部で外部アクセス禁止のオプションのチェックを外し、ユーザー名とパスワードを設定して安全を確保し、ルーターでポート 9876 を転送します。
五、SSL証明書の取得
- Nginx をインストールした nas の ip:3081 にアクセスして管理ページに入り、SSL 証明書を選択し、SSL 証明書を追加します。
- 関連情報を記入します。ドメインは登録したドメインで、* を付けることに注意してください。下は登録した Cloudflare のメール、DNS プロバイダーは Cloudflare を選択し、証明書内容 = の後をあなたの API トークンまたは一般トークンに変更します(私の一般は成功しなかったので API トークンを使用)、同意を選択し、保存します。(この時、プロキシをかける必要があります。そうしないとタイムアウトエラーが発生します。)
- 以下の画像が表示されれば、証明書の取得が成功したことを示します。
- フォルダ「custome」(リンク:https://pan.baidu.com/s/1Xkk1oe7ERoaNA_FvEfW33w 提取码:q8zf)をコンテナディレクトリにコピーし、最終的なディレクトリは Container\NginxProxyManager\data\nginx\custom になります。
-
ContainerStation コンテナ内で Nginx を再起動します。
-
ルーターに入り、ポート転送を行い、888 を QNAP の ip の 30443 にマッピングします。
六、リバースプロキシ
- ip:3081 にアクセスして nginx 管理画面に入り、プロキシサービスを追加し、詳細を記入します。
- SSL 設定で、申請した証明書を選択し、下の 2 つのオプションを選択して保存します。
最後の結果
- 外部アクセスアドレス qb1.xxxxx.cn:888(注意::888を追加すること)、888 を変更する必要がある場合は、custom の下の CONF ファイルを変更します。
**4.**特に注意:
(1) qb 使用時の注意事項
(2) 为知笔记の注意事項
コード内の IP アドレスを自分のローカルネットワークのアドレス + ポートに変更します。
(3) heimdall の注意事項
Heimdall をデプロイした後、nginx リバースプロキシを通じてアクセスすると、ページが正常に表示されない場合があります。以下の画像のように:
解決策:
プロキシサービスを編集し —— カスタム設定で、位置 location に "/"(スラッシュ 1 つ)を入力し、転送ホスト IP、転送ホストポートを自分の関連設定に記入し、隣のギアをクリックして、下のボックスに以下を追加します:
proxy_set_header X-Forwarded-Host $http_host; (セミコロンを忘れずに)
コピー作業:
location / {
proxy_pass http://192.xxx.xx.:1234; (ここは自分の内網IP:ポートに変更すること)
proxy_set_header Host $http_host;
proxy_redirect http:// https://;
proxy_set_header X-Forwarded-Host $http_host;
proxy_set_header X-Forwarded-Port $server_port;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Forwarded-Scheme $scheme;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $http_connection;
proxy_http_version 1.1;
}
保存をクリックすれば完了です。