WANに繋がっていない、LAN内のサーバのミドルウェア導入やバージョンアップを行うのに、
yumコマンドでリポジトリの参照ができなくて不便なことが多々あります。
必要なRPMだけもっていってインストールしようとしたら、依存関係でつまづいたり…
DBサーバなんかはフロントにWEBサーバがあって、
完全にWEBサーバ経由のLAN接続しかできなかったりするパターンが多いです。
最近、そのパターンでフロントのWEBサーバにNginxをインストールしていて、
「Nginxでプロキシ通せば直接ダウンロードできるんじゃない?」と思って設定してみました。
RedHat5系ならおそらく同じ設定でいけると思います。
まずは、プロキシとするサーバ上のNginxの設定から。
# vi /etc/nginx/conf.d/forward_proxy.conf
以下の内容の設定ファイルを作成します。
server { listen 8081; #8080はアプリで使用していたのでなんとなく server_name プライベートIP; resolver DNSのIP; #特に使えるものがなければ、Google Public DNS(8.8.8.8 8.8.4.4)という手もあります。 location / { proxy_pass $scheme://$http_host$request_uri; } }
設定反映のため再起動します。
# /etc/init.d/nginx restart
次に、LAN内のサーバのyumのプロキシを指定します。
# vi /etc/yum.conf
以下を追記します。
proxy=http://プロキシサーバのIP:8081
以上でyumの設定は完了です。
ついでに、wgetもproxy通せないかな~と思ってググったらやはりありました。
コチラのサイトを参考に、
ホームディレクトリ直下に「.wgetrc」を置くのではなく、全体に効く設定ファイルを変更しました。
# vi /etc/wgetrc
以下の2項目を変更します。
http_proxy = http://プロキシサーバのIP:8081 ftp_proxy = http://プロキシサーバのIP:8081
以上で、WANに繋がっていないLAN内のサーバからでも、
フロントにNginxが立っていれば、別途プロキシを立てなくても必要なファイルのダウンロードやyumコマンドによるリポジトリ参照ができるようになります。