Synology製NASでWebサーバーを開設した
Synology製NASが便利なので、いろいろやっているとWebサーバーにもできることを知った。昔からホームページを作りたいと思っていたけど、サーバー管理料がかかるのが少しネックになっていたので、やってみよう。
Web Stationのインストール
パッケージセンターを開いて、Web Stationと検索し、出てきたアプリをインストールする。
アプリを起動する。
ブラウザのURL記入欄に「http://[NASのIPアドレス]」と打って検索すると↓のような画面が出てくる。
これでとりあえず使えるようになったので、次に設定をしていく。
共有フォルダ「web」ができている。ここに任意のフォルダを作ってHTMLファイルを置いていけばサイトを作っていける。例えば「web/mm.mar/index.html」を作ると、「http://[IPアドレス]/mm.mar/」でアクセスができるようになる。
新しいドメインを取得する
最低限の設定はできたが、このままではローカルネットワークでしかアクセスできない。Web StationからDDNSドメイン名を仮想ホストとして設定すれば、外部からでもアクセスできるようになるが、個人的に利用しているその他の便利機能と同じドメイン名をWebサーバーとして公開することになるのは少し抵抗がある。
Synologyが提供するDDNSは1つしか作れないので、別のDDNSサービスを利用する必要があるが、ここではMyDNS.JPを利用したのでそれについて記載する。
MyDNSへの登録
下記のサイトで、会員登録を済ませる必要がある。
https://www.mydns.jp/にアクセスして、「詳しく見る」を押す。
利用規約を読んで理解したら、右上にある「JOIN UP」を押す。
必要事項を記入して、確認を押す。
内容に誤りがなければ、「送信」を押す。
新規登録完了画面が表示されて、MyDNS.JPからメールが届く。
届かない場合は迷惑メールフォルダもチェックする。
再度https://www.mydns.jp/にアクセスして、「ログイン」を押す。
登録した「MasterID」と「Password」を入力し「ログイン」を押す。
「Log Info」画面が表示されるので、「DOMAIN INFO」を押す。
DOMAIN INFOが表示されるので下の方にスクロールすると、下図のような画面がある。
「Domain」のところに、「[任意のドメイン名].mydns.jp」と入力し、
「HostName」のところに、「[任意のドメイン名]」を入力する。
さらにスクロールすると「確認」ボタンがあるので押す。
DSMでDDNS設定をする
DSMに管理ユーザでログインする。
コントロールパネル → 外部アクセス と進む。
DDNS → プロバイダのカスタマイズ と進む。
「サービスプロバイダー」に「mydns.jp」
「Query URL」に「http://www.mydns.jp/directip.html?MID=USERNAME&PWD=PASSWORD&IPV4ADDR=MYIP」と入力して、「保存」を押す。
「追加」を押す。
「サービスプロバイダ」は先ほど設定したプロバイダ「*mydns.jp」を選択する
「ホスト名」はMyDNS.jpで取得したドメイン名を入力する。
「ユーザー名」と「パスワード」はMyDNS.jpのログイン用のものを入力する。
「テスト接続」を押して「正常」と出たら、「OK」を押す。
証明書をインストールする
セキュリティ → 証明書 → 追加 と進む
新しく取得したドメイン名とメールアドレスを入力して「完了」を押す。
作成した証明書をダブルクリックする。
作ったドメイン名の証明書を、作った証明書にする。
外部からアクセスできるようにする
DSMにログインし、Web Stationを開く。
下記のアドインをインストールする。他のは任意。
Apache HTTP Server 2.4
PHP 7.4
phpMyAdmin
「Web サービス ポータル」→「作成」→「サービスポータルの作成」と進む。
「仮想ホスト」を選択する。
「名前ベース」を選択し、
「ホスト名」にMyDNS.jpから取得したドメイン名
「ポート」は「80/443」、「HTTPS」にチェックを入れ「81」とする。
「ドキュメントルート」は「web/wordpress」(任意)とする。
「HTTPバックエンドサーバ」は先ほどインストールした「Apache HTTP Server2.4」を選択する。
「PHP」は「PHP7.4」を選択する。
ここまで終わったら、「保存」を押す。
ここまで完了すれば、「https://(新ドメイン名)」でindex.htmlにアクセスすることができる。
DNSサーバーを設定する
ややこしい話だが、上記の設定のみだと、サーバーが設置されているローカルネットワークに接続した状態で、「https://(新ドメイン名)」でアクセスすることができない。
つまり、自宅のWi-Fiに接続した状態で、スマホからホームページにアクセスできない状態である。これを回避するためにSynologyNASでローカルネットワーク向けにDNSサーバーを立ち上げるということをする。他に方法もあるらしいが、これしかわからなかった。
DNS Serverをインストールする
DSMにログインし、パッケージセンターから、DNS Serverを探しインストールする。
インストール出来たら、DNS Serverを開いて、「解決」を押す。
「解決機能を有効にする」にチェックを入れる。
「フォワーダーを有効にする」にチェックを入れる。
「フォワーダー1」に「8.8.8.8」と入力し、
「フォワーダー2」に「8.8.4.4」を入力する。
これはキャッシュサーバーとして、グーグルのパブリックDNSを指定した状態である。契約しているプロバイダにキャッシュサーバーがあるのであればそれを指定してやるのが良い。
正引きゾーン(Aレコード)の設定
DNS Server → 「ゾーン」 → 「作成」 → 「Master ゾーン」と進みます。
「ドメインタイプ」 → 正引きゾーン
「ドメイン名」 → 新ドメイン名
「マスターDNSサーバー」 → ローカルのIPアドレス
「ゾーン転送を制限」 → チェックを外す
「ゾーンアップデートの制限」 → チェックを外す
下記の状態になればOK。
作成したゾーンを選択 → 「編集」 → 「リソースレコード」 と進む。
「作成」 → 「A type」 と進む。
「TTL」 → 「60」 ※できるだけ早くキャッシュがクリアされるようにするため
「IPアドレス」 → ローカルのIPアドレス
と入力して、「OK」を押す。
下図の「86400」についても「60」に変更する。終わったら「終了」を押す。
逆引きゾーン(PTRレコード)の設定
もう一度DNS Serverに戻り、「作成」 → 「Masterゾーン」と進む。
「ドメインタイプ」 → 逆引きゾーン
「ドメイン名」 → IPアドレスの逆引き記述 ※「192.168.100.12」なら「12.100.168.192」と記入
「ネームサーバー」 → ns.新ドメイン を指定(先ほど作ったやつなので、リストにある)
「ゾーン転送を制限」 → チェックを外す
「ゾーンアップデートの制限」 → チェックを外す
先ほどと同様に、作ったゾーンを選択 → 「編集」 → 「リソースレコードと進む。
「作成」 → 「PTRタイプ」と進む。
先ほどと同様に
「TTL」 → 「60」
「ホスト/ドメイン」 → ns.[新ドメイン]
と入力し、「保存」を押す。
既に作られている方のTTLも60とする。「終了」を押す。
以上でLAN内のDNSキャッシュサーバの設定が完了した。
DNSキャッシュ動作確認
Windowsボタン → cmd+Enter → nslookup+Enter と進む。
「nslookup [ドメイン名] [IPアドレス]」+Enter
何か出てきたら、
「nslookup google-public-dns-a.google.com [IPアドレス]」 +Enter
1個目は下記のように表示されていればOK
サーバー:ns.[新ドメイン名]
Address:[IPアドレス]
名前:[新ドメイン名]
Address:[IPアドレス]
2個目は下記のように表示されていればOK
サーバー:ns.[新ドメイン名]
Address:[IPアドレス]
権限のない回答:
名前:google-public-dns-a.google.com
Address:2001:4860:4860::8888
8.8.8.8
参照DNSサーバーを変更する
ここまでの設定で、ローカルネットワーク内のすべての端末の名前解決を、NASが担ってくれるようになった。次にすべての端末が、参照するDNSサーバーをNASのDNSサーバーに変更する。ローカルネットワーク内でドメイン名を指定してアクセスすれば、自動的にNASに接続できる状態にするということである。
代替のルーターは、ルータが持つIPアドレスに指定されるようだ。
NASの設定
DSMにログイン → コントロールパネル → ネットワーク → ネットワークインターフェース → LAN1 → 編集 と進む。
「DNSサーバー」を「NASのIPアドレス」に変更して、「OK」を押す。
ルータの設定
私の環境は、eo光のeo-RT100という多機能ルータを利用していた。しかし、調べたところDNSやDHCPのアドレスを変更する項目がないことがわかった。無線ルータとして利用しているTP-Link製のAX20であれば設定できることがわかったので、こちらをルータとして利用することにする。
取説を確認すると、eo-RT100のルーターモードを無効にして、AX20のルーターモードをONにすればよい。ただ、この構成にする場合は、AX20側でeo光に接続するための設定が必要になる。
先にAX20のルーターモードをONにする。TP-Linkの場合は、URLに「http://tplinkwifi.net/」と入力すれば設定画面に入れる。
システム → 動作モード で「WiFiルータモード」をONにする。この状態で2重ルータ状態になる。
次に、eo-RT100をAPモードにする。URLにルータのIPアドレスを入力すると設定画面に入れる。
トップページあるルーターモードのチェックを外して、保存する。
もう一度、TP-Linkルータの設定画面「http://tplinkwifi.net/」に入ると、インターネットに接続する設定画面が現れる。eo光の場合は、PPPOEで接続するが、その時に求められるID,PASSは、eo光登録証にある認証ID,認証PASSである。契約した時に送られてくる書類にあるはず。
インターネットにつながったら、「詳細設定」 → 「ネットワーク」 → 「DHCPサーバー」と進み、プライマリDNSの欄に、NASのIPアドレスを入力して保存する。
eo-RT100で設定していた、ポートマッピングの設定は、「NAT転送」 → 「ポート転送」という項目として存在するので、ここに設定しておく。
以上で設定完了!!!
スマホから、新ドメインでアクセスできるかどうか確認する。
めちゃくちゃ大変な作業だった。
ディスカッション
コメント一覧
まだ、コメントがありません