0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【サクッと設定】Windows11でIISをセットアップする手順

Posted at

ロードバランサの評価作業するために、手元のWindows11 PCでWebサーバをサクッと建てる必要があったので、備忘録のつもりでまとめてみました

目的・目標

  • Windows11でHTTP/HTTPSのレスポンスを返せるWebサーバをIISでセットアップする
  • PC1台でWebサーバ複数台分のIPアドレスを持ち、アクセスできるようにしたい
  • HTTP/HTTPSそれぞれ、アクセスできるようにしたい
  • HTTPのポートが80番以外の他ポートでも、アクセスできるようにしたい
検証環境

Qiita用に画面取得した環境は「 Windows 11 Enterprise Evaluation(24H2)」ですが、
実機作業時はごく一般的なノートPCの「Windowss 11 Pro(24H2)」でした

目次

1.IPv4アドレスの設定

PCのIPv4アドレスを設定する手順なので、ご存じの方はスキップください

  • 「Win + R」で ncpa.cpl でネットワークデバイスのコントロールパネルを開く
    (スペルをよく忘れるので、自分のためにメモです)
  • 使用するNWデバイスのプロパティを開く
  • インターネット プロトコル バージョン 4 (TCP/IPv4)を選択して、プロパティを開く
  • 要件に合わせて、IPアドレスやサブネットマスク、デフォルトゲートウェイを設定します
  • もし、複数IPアドレスを持たせる必要があるときは、右下の「詳細設定」を開く
  • 追加ボタンを押す
  • 要件に合わせてIPアドレスを入力して、追加を押す
  • すると、1つのNWデバイスに複数IPアドレスを持たせることができる
  • ipconfigでも確認することができる

2.IISインストール

機能表示とインストールに、管理者権限が必要です。

  • 「Win + I」で設定アプリを立ち上げて、「オプション機能」で検索して、オプション機能を押す
  • 「Windows のその他の機能」を押す
  • インターネット インフォメーション サービス」がIISのことを指しています
  • 上位階層のチェックボックスを押すと、[-] になり、下位階層の機能はデフォルト指定されているものが有効化されます

OSバージョンや機種によってデフォルト指定されているものが異なるようです

  • とりあえず IIS管理コンソールHTTP 共通機能あたりが有効化されていれば良いかなと思います
  • OKを押したら、機能の有効化されますので、これでインストール作業は完了です

3.IISでの初期設定(http://:80)

  • IISで検索して、「インターネット インフォメーション サービス(IIS) マネージャー」 を開きます(以降、IISマネージャと呼称)
IIS マネージャー ホーム画面
  • 画面左の 「Default Web Site」 を選択し、デフォルトのサイトのホーム画面を開きます
  • 画面右の 「バインド」 を選択し、サイトバインド画面を開きます
  • デフォルトで設定されている行を選択した状態で、「編集」を選択します
  • デフォルトの状態だと、IPアドレス欄が「未使用のIPアドレスすべて」となっているため、PCに設定したIPv4アドレスを設定します

IPアドレス欄はプルダウン選択できるため、PCに設定されているアドレスを簡単に選択できます

  • 先ほど設定したIPアドレスが反映されているのを確認してポップアップを閉じます
  • サイトのホーム画面右側に、「Web サイトの参照」 に、先ほどバインド設定したIPアドレスのURLが表示されているので選択します

指定したIPアドレスでサイトの参照確認ができたら、設定完了です

ファイアウォール設定は、IIS機能の有効化時に自動的に追加されているようですが、ポート変更等した際は別途設定が必要です。
別端末からアクセスできない場合は、ファイアウォールを疑ってみてください。

4.複数IPアドレスで待ち受ける設定

「1.IPv4アドレスの設定」で、PCに複数IPアドレス設定済みの前提です

  • サイトのホーム画面右側の「バインド」を選択して、サイトバインドを開き、「追加」を選択する
  • 追加するIPアドレスを指定して、追加する
  • これで複数のIPアドレスでサイトをバインドしているため、異なるIPアドレスでもアクセスできるようになる
  • 指定したIPアドレスそれぞれで、アクセスできることもちゃんと確認できる

5.ポート番号変更の設定

  • サイトのホーム画面右側の「バインド」を選択して、サイトバインドを開く
  • ポート番号を変更したいバインドを選択した状態で、「編集」を選択する
  • ポート欄を変更して、OKで適用する
  • 指定したバインドのポート番号が変更できたことを確認できる
  • またバインドごとに、異なるポート番号も指定できるが確認できる
  • 指定したIPアドレス/ポート番号で、アクセスできることもちゃんと確認できる

ファイアウォール設定は、IIS機能の有効化時に自動的に追加されているようですが、ポート変更等した際は別途設定が必要です。
別端末からアクセスできない場合は、ファイアウォールを疑ってみてください。

6.htmlファイルの変更・配置

今更ですが、サイトアクセスした際に表示できるhtmlファイルを変更する方法です

ファイルの変更には、管理者権限が必要です。

  • サイトのホーム画面右側の 「エクスプローラー」 を選択する
  • サイトで指定している階層が開くので、ここのファイルを変更します
  • 例えば 「index.html」 を作成したい場合、デフォルトで生成されている 「iisstart.htm」 を複製してリネームするのが一番手っ取り早いです

設定とファイルの開き方によると思いますが、htmlを直編集するためには管理者権限が必要なようなので、他階層で作成したファイルをコピー&ペーストするのが面倒でないと思いました

  • ファイルを配置するだけで、対象のファイルにアクセスできるようになります

7.HTTPSの設定(https://:443)

  • IISマネージャのホーム画面中央の、「サーバー証明書」 を選択する
  • 画面右側の 「自己署名入り証明書作成」 を選択する
  • 証明書の作成画面が開きます

フレンドリ名は任意で付けて、証明書ストアは必ず「Web ホスティング」を選択してください

証明書作成後、サーバー証明書一覧に作成した証明書が表示されたら、証明書の作成は完了です

  • 次はサイトのホーム画面に移動し、右側の 「バインド」 を選択する
  • サイトバインド画面で「追加」を選択する
  • 種類欄を 「https」 に変更し、IPアドレスも指定します
  • SSL証明書欄で、先ほど作成した証明書を選択します
  • これでhttpsのバインドは完了しましたが、このままだとhttpのバインドと共存できないため、httpのバインドを削除します
  • サイトのホーム画面、中央の 「SSL設定」 をダブルクリックする
  • 「SSL設定」 はデフォルトでは下記の画像のようになっているので
  • 「SSLが必要」にチェックを入れて、画面右側の「適用」を選択する
  • これで、httpsの設定が完了しました
  • バインドしたIPアドレスにアクセスすると、自己証明書の警告画面が出てくるので、進むを選択して、ちゃんとhttps通信にてサイトにアクセスできることを確認できます

8.HTTPとHTTPSの共存設定

もしHTTPとHTTTPSのどちらも通信できるようにしたいのであれば、それぞれ別のサイトを設定すれば共存できます

  • 画面左の 「サイト」 を選択して、画面右の 「Web サイトの追加」 を選択します
  • デフォルトでは下記のポップアップが表示されます
  • それぞれの要件に合わせて、必要な箇所を変更・指定してください

ちなみに物理パスをどちらも同じ階層にすることで、http/httpsどちらでも同じファイルを参照できます

  • これで2つのサイトが作成された状態となるので、それぞれのサイトでhttp/httpsのバインド設定を行います
  • サイトを分けたことにより、SSL設定が干渉しなくなり、http/httpsどちらでも同時にアクセスすることができます
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?