nginxリバースプロキシのyum設定の詳細な手順

nginxリバースプロキシのyum設定の詳細な手順

パート0 背景

社内のイントラネットサーバーは直接インターネットにアクセスすることはできませんが、外部ネットワークとの通信や時刻同期などを行うために、インターネットにアクセスするサーバーを複数指定します。ここでは、インターネットにアクセスできるマシンをプロキシとして使用し、イントラネットで使用するための yum リポジトリを作成します。

パート1 環境

イントラネット DNS (推奨されますが、IP を代わりに使用できるため必須ではありません)

インターネットにアクセスできるサーバーA

インターネットにアクセスできないサーバーはサーバーAと通信できる

パート2 nginxのインストール

外部ネットワークに接続できるAにnginxをインストールする

yum で nginx をインストール

パート3 nginxの設定

ホストAにnginx設定を追加する

$ cd /etc/nginx/conf.d
$ vim プロキシ.conf
サーバー{
  聞く 80;
  #聞く [::]:80;
  server_name mirrors.yourdomain.com;
  インデックス index.html index.htm index.php default.html default.hm default.php;
  ルート /home/wwwroot/html;

  場所 /ubuntu/ {
   proxy_pass http://mirrors.aliyun.com/ubuntu/ ;
  }

  場所 /centos/ {
   proxy_pass http://mirrors.aliyun.com/centos/ ;
  }

  場所 /epel/ {
   proxy_pass http://mirrors.aliyun.com/epel/ ;
  }
 }

part.4 yumリポジトリソースの設定

外部ネットワークに接続できないホスト B のリポジトリ ファイルを変更します。

$ cat /etc/yum.repos.d/CentOS-7.repo
[ベース]
name=CentOS-$releasever - ベース - mirrors.yourdomain.com
フェイルオーバー方法=優先度
ベースURL=http://mirrors.yourdomain.com/centos/$releasever/os/$basearch/
  http://mirrors.yourdomain.com/centos/$releasever/os/$basearch/
#ミラーリスト=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os
gpgcheck=1
gpgkey=http://mirrors.yourdomain.com/centos/RPM-GPG-KEY-CentOS-7

#リリースされたアップデート 
[更新]
name=CentOS-$releasever - アップデート - mirrors.yourdomain.com
フェイルオーバー方法=優先度
ベースURL=http://mirrors.yourdomain.com/centos/$releasever/updates/$basearch/
  http://mirrors.yourdomain.com/centos/$releasever/updates/$basearch/
#ミラーリスト=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates
gpgcheck=1
gpgkey=http://mirrors.yourdomain.com/centos/RPM-GPG-KEY-CentOS-7

#役に立つかもしれない追加パッケージ
[特典]
name=CentOS-$releasever - 追加情報 - mirrors.yourdomain.com
フェイルオーバー方法=優先度
ベースURL=http://mirrors.yourdomain.com/centos/$releasever/extras/$basearch/
  http://mirrors.yourdomain.com/centos/$releasever/extras/$basearch/
#ミラーリスト=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras
gpgcheck=1
gpgkey=http://mirrors.yourdomain.com/centos/RPM-GPG-KEY-CentOS-7

#既存のパッケージの機能を拡張する追加パッケージ
[セントオスプラス]
name=CentOS-$releasever - プラス - mirrors.yourdomain.com
フェイルオーバー方法=優先度
ベースURL=http://mirrors.yourdomain.com/centos/$releasever/centosplus/$basearch/
  http://mirrors.yourdomain.com/centos/$releasever/centosplus/$basearch/
#ミラーリスト=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=centosplus
gpgcheck=1
有効=0
gpgkey=http://mirrors.yourdomain.com/centos/RPM-GPG-KEY-CentOS-7

#contrib - Centos ユーザーによるパッケージ
[投稿]
name=CentOS-$releasever - 貢献 - mirrors.yourdomain.com
フェイルオーバー方法=優先度
ベースURL=http://mirrors.yourdomain.com/centos/$releasever/contrib/$basearch/
  http://mirrors.yourdomain.com/centos/$releasever/contrib/$basearch/
#ミラーリスト=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=contrib
gpgcheck=1
有効=0
gpgkey=http://mirrors.yourdomain.com/centos/RPM-GPG-KEY-CentOS-7

パート5 ホストの設定

$ cat /etc/hosts

127.0.0.1 ローカルホスト ローカルホスト.ローカルドメイン ローカルホスト4 ローカルホスト4.ローカルドメイン4
::1 ローカルホスト ローカルホスト.ローカルドメイン ローカルホスト6 ローカルホスト6.ローカルドメイン6
192.168.1.193 ミラー.yourdomain.com
# AホストのIPと背後のリバースプロキシアドレスを確認します

パート6 iptablesの設定

mirrors.yourdomain.com にpingします
#エラー: ホストへのルートがありません

このとき、ホスト B の iptables 情報を確認すると、ポート 80 にアクセスできないことがわかります。先頭にルールを追加できます。

$ iptables -nvL

 8155 28M すべてを受け入れる -- * * 0.0.0.0/0 0.0.0.0/0 ctstate RELATED、ESTABLISHED
 0 0 すべてを受け入れる -- lo * 0.0.0.0/0 0.0.0.0/0   
11761 985K INPUT_direct すべて -- * * 0.0.0.0/0 0.0.0.0/0   
11761 985K INPUT_ZONES_SOURCE すべて -- * * 0.0.0.0/0 0.0.0.0/0   
11761 985K INPUT_ZONES すべて -- * * 0.0.0.0/0 0.0.0.0/0   
 0 0 すべて削除 -- * * 0.0.0.0/0 0.0.0.0/0 ctstate 無効
11756 985K すべてを拒否 -- * * 0.0.0.0/0 0.0.0.0/0 icmp-host-prohibited による拒否
$ iptables -I 入力 -p tcp --dport 80 -j 受け入れる

パート7 テスト成功

ホスト B で yum makecache 操作を実行します。 yum 操作を実行できるかどうかを判断します。

$ yum すべてをクリーン
$ yum メイクキャッシュ

要約する

上記はこの記事の全内容です。この記事の内容が皆さんの勉強や仕事に一定の参考学習価値を持つことを願っています。ご質問があれば、メッセージを残してコミュニケーションしてください。123WORDPRESS.COM を応援していただきありがとうございます。

以下もご興味があるかもしれません:
  • Nginx リバース プロキシ構成の完全なプロセス記録
  • 中国語でのNginx設定パラメータの詳細な説明(負荷分散とリバースプロキシ)
  • Nginx フォワード プロキシとリバース プロキシ、および負荷分散機能の構成コード例
  • SSL で Nginx リバース プロキシを構成する簡単な手順
  • Nginxリバースプロキシ設定でプレフィックスが削除される
  • nginxリバースプロキシwebSocket設定の詳細な説明
  • リバースプロキシ設定を実装するためのユニバーサルnginxインターフェース
  • プレフィックスケースを削除する Nginx リバース プロキシ構成のチュートリアル

<<:  MySQLのINサブクエリによってインデックスが使用できなくなる問題を解決する

>>:  Javascript における分割代入構文の詳細な説明

推薦する

MySQLにおけるrow_numberの実装プロセス

1. 背景一般的に、データ ウェアハウス環境では、row_number 関数を使用して特定のディメン...

ブラウザ(IEシリーズ)を判別するための条件付きコメント

<!--[if IE 6]> IE6 のみが認識可能 <![endif]-->...

mysql binlog ログを正しくクリーンアップする 2 つの方法

mysqlはbinlogログを正しくクリーンアップします序文: MySQL の binlog はデー...

nginx で仮想ホストを構成するための詳細な手順

仮想ホストは、インターネット上で実行されているサーバー ホストを複数の「仮想」ホストに分割する特殊な...

Vue3 (パート 2) Ant Design Vue の統合

目次1. Ant Design Vueを統合する2. コンポーネントの使用1. 完全な引用2. コン...

Centos に PHP7.4 と Nginx をインストールする方法

準備する1. 必要なインストールパッケージをダウンロードするhttps://www.php.net/...

MySQL 作成ルーチン権限に関する注意事項

1. ユーザーにルーチン作成権限がある場合は、プロシージャ | 関数を作成できます。 2. ユーザー...

mysql8.0.11 winx64 インストールと設定のチュートリアル

mysql 8.0.11 winx64のインストールチュートリアルは以下のように記録され、みんなと共...

<td></td> タグの境界線スタイルがブラウザに表示されない問題の解決方法

質問: 360ブラウザの互換モードなど、一部のブラウザでは、 <td style="...

ボタントリガーイベントを使用して背景色の点滅効果を実現します

背景色の点滅効果を実現するには、次のコードを <body> 領域に追加するだけです。コー...

HTML 代替カラーコードを実現する n 通りの方法 サンプルコード

この記事では、主に HTML のサンプル コードを紹介し、次のように交互に色を変更する方法を共有しま...

Win7 の VMware 仮想マシンに Linux7.2 をインストールするインターネット アクセス構成チュートリアル

参考までに、win7システム上のVMware仮想マシンにlinux7.2インターネットアクセス構成を...

MySQL Workbenchのダウンロードと使用方法のチュートリアルの詳細な説明

1. MySQL WorkbenchをダウンロードするWorkbench は、MySQL のグラフィ...

MySQL 5.7 MGR シングルマスター決定マスターノード方式の詳細説明

当銀行のMGRは年末に開始されます。公式文書を読んだり、毎日テストを受けたりしなければなりません。毎...

MySQL の日付関数と日付変換およびフォーマット関数

MySQL は、膨大なユーザーベースを持つ無料のリレーショナル データベースです。この記事では、My...