
最近、HTTP 用に独自の Ubuntu サーバーと Nginx の管理を開始しましたが、どの部分がどのサーバー、ポート、権限などに属しているかがよくわかりません。
Ubuntu が実際のサーバーであり、Nginx が単なる HTTP サーバーであることは理解していますが、どのサーバーが何を管理するのかはわかりません。たとえば、ファイアウォールを追加して一部のポートへのアクセスを制限したり、一部のファイルのファイル権限を変更したりする場合、これは Nginx なのか Ubuntu なのかと常に自問します (ここでの私の例では、両方とも Ubuntu が所有者であることはわかっています)。
この質問は非常に広範囲であることは承知していますが、どこかでダミーの質問をして始める必要があります。
両方の環境を理解するために必ず知っておく必要がある機能/トピックを定義するとしたら、それらの機能は何でしょうか?
各サーバーをどのように説明しますか?
最初に Ubuntu を学び、次に Nginx を学びますか、それとも両方を同時に学びますか?
どこから学習を始めればよいでしょうか。良いチュートリアルはありますか?
ありがとう
答え1
Ubuntu Server は、多くのソフトウェアを管理するオペレーティング システムです。各ソフトウェアには独自の機能があり、nginx は Ubuntu サーバーにインストールできる別のソフトウェアで、要求されたファイルを返送する機能を追加します。Ubuntu には、nginx に関連付けられるポート (および nginx がリッスンするように構成されるポート) があるため、Ubuntu がそのポートに宛てられた要求を受信するたびに、nginx に「あの IP があなたにこう言いました」と伝え、nginx は「わかりました。それに答えてください」と応答します。構成されたポート経由での要求に対する nginx の応答に関係しないすべてのものは、別のソフトウェア (DNS の場合は bind9、ファイアウォール制限の場合は iptables など) によって管理されます。
SSH の使い方と、コマンドを使用してソフトウェアをインストール/構成する方法を知っておく必要があります。また、HTTP サーバーを設定するには、ポートについて知っておくことが非常に重要だと思います。
Ubuntu Server は、オペレーティングシステムと似ていますが、ユーザーの利便性のためだけに必要となる「無駄な」ものは一切ありません。nginx は、nginx に関連付けられたポート (HTTP(S) は通常 80(443)) で Ubuntu サーバーに宛てられたリクエストを受け取り、リクエストで要求されたファイルを返すサーバーです。リクエストを他のソフトウェアにリダイレクトして、ファイルを処理し、応答を nginx に送り返し、nginx がそれをユーザーに返します。
Ubuntuを最初にインストールし、その後にnginxをインストールすることをお勧めします。Ubuntuをインストール/設定し、その後Ubuntuからnginxを構成/インストールする必要があります。
世の中には優れたチュートリアルが数多く存在します。これですは良いもののようです。サーバーを最初からインストールし、メールサーバー (postfix/dovecot)、http サーバー (nginx/apache)、DNS サーバー (bind) などのサービスをインストールする方法を教えてくれます。これは、ニーズに応じて完全なチュートリアルすぎるかもしれませんが、両方の環境を理解するのに良い方法かもしれません。また、ソフトウェアのドキュメントは、問題が発生した場合の最良の味方になります。こちらはnginxのものです