質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

90.52%

  • CentOS

    2700questions

    CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

  • Apache

    1813questions

    Apacheは、Apache HTTP Serverの略で、最も人気の高いWebサーバソフトウェアの一つです。安定性が高いオープンソースソフトウェアとして商用サイトから自宅サーバまで、多くのプラットフォーム向けに開発・配布されています。サーバーソフトウェアの不具合(NCSA httpd)を修正するパッチ(a patch)を集積、一つ独立したソフトウェアとして開発されました。

  • nginx

    837questions

    nginixは軽量で高性能なwebサーバーの1つです。BSD-likeライセンスのもとリリースされており、あわせてHTTPサーバ、リバースプロキシ、メールプロキシの機能も備えています。MacOSX、Windows、Linux、上で動作します。

  • proxy

    117questions

    proxy(プロキシー)は、企業などの内部コンピュータとインターネットの中間に位置し、例えば直接インターネットに接続できない内部コンピュータの代理としてインターネットに接続する等をするシステム、もしくは代理として機能を実行するソフトウェアです。内部ネットワークへのアクセスを一元管理し、内部からの特定の種類の接続以外を遮断すること、外部からの不正アクセスを拒否することなどに用いられます。

外部ネットワークに接続できない状態でのWebサーバーインストールについて

解決済

回答 2

投稿 編集

  • 評価
  • クリップ 0
  • VIEW 308

sekkati

score 16

 前提・実現したいこと

前提:

新人のプログラマです。なぜか常駐先で環境構築をすることになりました。私自身WordpressをVPSにデプロイするような本を少し読んだ程度の知識しかありません。お手柔らかにお願いします!

初回の質問:nginxをリバースプロキシサーバとして使いたい
二回目の質問:nginxをリバースプロキシサーバにする設定について

読んだ書籍:

・ゼロからはじめるLinuxサーバー構築・運用ガイド: 動かしながら学ぶWebサーバーの作り方
・Amazon Web Services 基礎からのネットワーク&サーバー構築
・1週間でLPICの基礎が学べる本 第2版

参考にしたサイト:

Qiita:オフライン環境へのnginx導入手順

実現したいこと:

すでにApacheで稼動しているwebシステム(Webサーバ兼DBサーバ)があります。こちらに新たにNginxをリバースプロキシサーバーとして追加することになりました。外部ネットワークに接続できない状態でのWebサーバー(nginx)をインストールする手順書を作れとお願いされています。この環境で、外部ネットワークを踏まないでnginxはインストール可能なのでしょうか?

例えば、WebサーバとDBサーバは別環境で、DBサーバはセキュリティ上外部ネットワークから切り離されていて、外部ネットワークとつながっているWebサーバを踏み台に(またはNATを経由)して、mysqlをインストールする。ということはAWSの本で実践したことがあります。

現場のマネジャーからはCDなどで持っていくなどと聞きましたが、そのような方法であれば可能なのでしょうか?
※実装する本番環境はRHELの6.6だそうです。

 補足情報(FW/ツールのバージョンなど)

テストしている環境のOS:CentOS release 6.10 (Final)
本番の環境のOS:RHEL 6.6

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正、ベストアンサー選択の依頼

  • tanat

    2018/07/23 14:41

    参考にしたサイトに書かれている方法では出来なかったのでしょうか?

    キャンセル

回答 2

+2

DVD等で必要なパッケージファイル(依存するファイルも含めて)をすべて用意できれば、完全にオフラインな環境で、yum でインストールすることも可能です。

例:

参考にされた「オフライン環境へのnginx導入手順」の手順は、ソースコードをコンパイルする手順ですね。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2018/07/23 15:03

    CHERRY様 ご回答ありがとうございます。
    まずマウントという言葉からあいまいだったので調べました。添付記事を参照させていただいたのですが、こちらはnginxのパッケージだけDVDにインストールして、というわけでなく、OSごとDVDを作成しないといけないのでしょうか?すでに作成されている環境に個別に追加(nginxを)することは可能でしょうか?

    キャンセル

  • 2018/07/23 16:11 編集

    添付のURLのやり方はOSイメージの中に必要なパッケージ一式が入っているのでそれを使っているだけですね。
    単純に依存関係含めて全てのRPMファイルをDVD等に焼いて、それをインストールすればいいかと思います。

    yum localinstall RPMファイルパス

    キャンセル

  • 2018/07/23 16:26 編集

    umd0621様 ご回答ありがとうございます。
    つまりOSのイメージの中にnginxが含まれていなければ、マウントしてもyumでインストールできないということでしょうか?

    > 単純に依存関係含めて全てのRPMファイルをDVD等に焼いて、
    > それをインストールすればいいかと思います。

    必要なRPMファイルをどのように纏め、DVDに焼けばよいのでしょうか?
    当方インフラは完全に初心者のため、お手数ですが詳細をご教授ください!

    キャンセル

  • 2018/07/23 16:48

    難しく考えすぎですよ。
    まずは、nginxのRPMファイルのインストールを試します。
    その際に、依存関係でエラーが出ますが必要としているパッケージ名が表示されるのでそのRPMファイルをダウンロードしてきて、インストールを実行します。
    また依存関係のエラーが出たら、そのパッケージをダウンロードしてきて、インストールするという作業の繰り返しで1個づつ潰していけば最終的にはインストールできます。
    手順についてはマニュアルの作成時に、うまくまとめてください。

    キャンセル

  • 2018/07/23 16:59 編集

    >つまりOSのイメージの中にnginxが含まれていなければ、マウントしてもyumでインストールできないということでしょうか?
    そういうことです。無いものはインストールできませんからね。
    ただ、余程OSのバージョンが古くなければ含まれていると思います。
    OSインストール時に、ソフトウェアの追加時に表示されますよね。

    キャンセル

  • 2018/07/23 17:14 編集

    umd0621様 何度も申し訳ないです。

    > 余程OSのバージョンが古くなければ含まれている

    つまり、今回自分が自分がnginxを入れなければいけない環境はRHELの6.6なので、そのRHELのDVDをどうにかして作成し、その中にあるnginxのリポジトリをrpmコマンドで、依存関係でのエラーが出なくなるまで一つ一つ入れるということでしょうか?

    依存関係で必要なパッケージ等もそのDVDにすべて入っているのでしょうか?

    キャンセル

  • 2018/07/23 17:48 編集

    まず、sekkatiさんとしてはどういった方針でいこうとしていますか?
    今は下記2つの方法が提示されています。
    ・CHERRYさんの回答のOSのインストールディスクを使用する方法
    ・私が16:48にコメントした、必要なパッケージだけダウンロードし、インストールする方法

    インストールディスクを使用する方法であれば、必要なパッケージは全て揃っているので1回のコマンドでインストールできるかと。
    私としては、OSのインストールディスクの作成が嫌そうに感じたので必要なRPMファイルだけでもインストールできますよと提案しただけです。

    キャンセル

  • 2018/07/23 23:06

    umd0621様 返信が遅くなってしまいました。
    後者の必要なパッケージだけダウンロードし、インストールする方法を考えています。どちらにせよ当方の環境がオフラインの環境になるのでディスクを作成するものだと考えていました。(認識がずれていたらごめんなさい) つまり後者は、nginxが入ったディスクを作成し、それをマウントして、そこからnginxをインストールするイメージでいます。

    キャンセル

  • 2018/07/24 09:15

    その認識で合っています。
    私の提示したやり方だと、何度かファイルのやり取りをしないといけないのでUSBメモリやDVD-RW等でやったほうが楽ですね。
    それで、ファイルを焼いた媒体をマウントすればOSが認識しますので媒体内のファイルにアクセスできるようになります。
    その状態で、下記コマンドを実行しパッケージのインストールを行ってください。

    yum localinstall RPMファイルパス

    キャンセル

  • 2018/07/24 09:31

    umd0621様 何度もご解答いただきありがとうございます。

    nginxはnginx公式HPより最新版の.tar.gzファイルディスクに入れて、マウントし、その.tar.gzを解凍して、「yum localinstall RPMファイルパス」でインストールするということで大丈夫でしょうか?何度も質問してしまい申し訳ないです。良ければ別枠でご解答お願いしますください、ベストアンサーをumd様にしたいです!

    キャンセル

checkベストアンサー

+1

その.tar.gzファイルはソースファイル一式で、自分でビルドしないといけないので、それを使うのはかなりハードルが高いと思います。
そして、今更で申し訳なのですが、OSにレッドハットを使用するということは、かなり信頼性を重視する環境なのでしょうか?野良パッケージなど絶対に認めないといったような。
そういった場合は、OSのインストールディスクを使用してください。レッドハットであれば、どこかに保管されていると思います。
動作確認して問題が無ければいいというのであれば、「nginx rpm」で検索するとダウンロードできるサイトが見つかります。
参考

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2018/07/24 12:19 編集

    umd0621様 ありがとうございます。

    >OSにレッドハットを使用するということは、かなり信頼性を重視する環境なのでしょうか?

    僕は下請けの下請けの新人で現場に入って3週間ほどで、そのへんよく判らないですが、おそらく元は大きい会社なのでそういうことなのでしょう。

    > 動作確認して問題が無ければいいというのであれば、「nginx rpm」で検索するとダウンロードできるサイトが見つかります。参考

    を参照し検索したのですが1.14だけでも4つあり、Distributionの部分を見て、archコマンドでサーバのアーキテクチャを確認して一致したものをDVDに入れるという認識で大丈夫ですか?またその場合でもインストールコマンドは「yum localinstall RPMファイルパス」で大丈夫ですか?

    キャンセル

  • 2018/07/24 12:32

    その認識で合っています。
    CPUのタイプが合わなければ、インストール時にエラーが出るか、実行時にエラーが出るので分かると思います。

    キャンセル

  • 2018/07/24 12:38 編集

    umd0621様 なんとお礼していいか・・・
    先ほど現場でDVDを借りたので、そちらに先ほどのrpmファイルを落として実際にテスト環境で作業してみようと思います。テスト環境ではarchコマンドを打つとx86_64だったので、それに該当する「nginx-1.14.0-1.mga7.x86_64.rpm」を入れて実行してみたいと思います。本当にありがとうございま

    キャンセル

  • 2018/07/25 14:52 編集

    umd0621様 実際に手順を実行してみました。
    まずnginxのrpmファイルのみを入れて仮想マシン(テスト用)のGUI上でそのファイルを実行したところ、
    ○○を要求します。という文言がたくさん表示されました。これらのファイルをSearch the RPM repository on rpmfind.netで探し依存関係を解決していくということだったのですね!やってみてすこし理解が深まりました。その際にyum localinstall RPMファイルパスでインストールすれば、ローカルにあるRPMパッケージもyumを使って依存性を解決しながらインストールできると言うわけですね。実際にやってみて無理そうならば、RHELのディスクのほうについて聞いてみます。

    キャンセル

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 90.52%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る

  • CentOS

    2700questions

    CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

  • Apache

    1813questions

    Apacheは、Apache HTTP Serverの略で、最も人気の高いWebサーバソフトウェアの一つです。安定性が高いオープンソースソフトウェアとして商用サイトから自宅サーバまで、多くのプラットフォーム向けに開発・配布されています。サーバーソフトウェアの不具合(NCSA httpd)を修正するパッチ(a patch)を集積、一つ独立したソフトウェアとして開発されました。

  • nginx

    837questions

    nginixは軽量で高性能なwebサーバーの1つです。BSD-likeライセンスのもとリリースされており、あわせてHTTPサーバ、リバースプロキシ、メールプロキシの機能も備えています。MacOSX、Windows、Linux、上で動作します。

  • proxy

    117questions

    proxy(プロキシー)は、企業などの内部コンピュータとインターネットの中間に位置し、例えば直接インターネットに接続できない内部コンピュータの代理としてインターネットに接続する等をするシステム、もしくは代理として機能を実行するソフトウェアです。内部ネットワークへのアクセスを一元管理し、内部からの特定の種類の接続以外を遮断すること、外部からの不正アクセスを拒否することなどに用いられます。