Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
Help us understand the problem. What is going on with this article?

ドメインを取得してMyDNSを使ってRaspberryPiを自宅Webサーバとして公開

More than 1 year has passed since last update.

やること

ラズパイに置いてあるhtmlファイルを自宅外のiPhoneから取ってきて、Safariで見れるようにする。

目次

  • Apache2とPHPをインストール -> 同一LAN内からはアクセスできるようになる
  • ドメインをお名前.comで取得
  • MyDNSというサービスを使って、自宅のIPアドレスを定期的に通知(1ヶ月何もしないと消えちゃうので気を付ける)
  • ポートフォーワーディング等、ルータ設定
  • # SSL通信化(httpsによりSecureな通信、SSL証明書発行)

Apache2とPHPをインストール -> 同一LAN内からはアクセスできるようになる

Terminal
sudo apt-get install apache2
sudo apt-get install php

htmlファイルの中に埋め込まれているPHPファイルを使えるようにするには多少ファイルをいじる必要があるみたいだが、aptでインストールすると、その辺も勝手にやってくれるみたい。

ドメインをお名前.comで取得(自宅のIPアドレスが動的IPアドレスなのでグローバルIPアドレスがしょっちゅう変わる)

.me のトップドメインが初年380円と安かったので取得しちゃいました。
自宅のプロバイダ契約が動的IPアドレスだったので、外からグローバルIPアドレスでアクセスしても少し時間が立つとIPアドレスが変わってしまいアクセスできなくなってしまう。
なのでお名前.comでドメイン名を取得しMyDNSも使いました。
お名前.comでMyDNSへたらい回しにする設定をした後、設定が反映されるまで10時間以上かかりました。

流れは
ブラウザ等で

  • URLにドメイン名を入力
  • そのトップドメイン名を管理しているDNS(Domain Name Server)サーバへ問い合わせる
  • DNSサーバがそのドメイン名に割り当てられているIPアドレスを返す
  • そのIPアドレスへブラウザがアクセスし、htmlファイルなりなんなりをもらって表示する。

しかし、お名前.comにこのドメインのグローバルIPアドレスはこれだよと使えても、それがしょっちゅう変わってしまう
そこで、MyDNSというサービスを使います。
MyDNSというのは、DDNS(DynamicDNS)サービスで、DNSが更に違うDNSに問い合わせる時の問い合わせ先です。
流れは

  • URLにドメイン名を入力
  • そのトップドメイン名を管理しているDNS(Domain Name Server)サーバへ問い合わせる
  • DNSサーバが、そのドメイン名の管理はこのDNSがやっているよ、と更に違うDNS(MyDNS)にたらい回し
  • MyDNSは定期的に更新されている(更新するようにしている)ので、その最新のIPアドレスをお名前.comに返す
  • そのドメイン名に割り当てられているIPアドレスを返す
  • そのIPアドレスへブラウザがアクセスし、htmlファイルなりなんなりをもらって表示する

MyDNSというサービスを使って、自宅のIPアドレスを定期的にドメインと紐付ける(1ヶ月アクセス無いと消えちゃうので気を付ける)

ipv4とipv6どちらも更新されるようにする。

mydnsupdate.sh
#!/bin/bash
MID="自分のmydnsID"
PASS="自分のパスワード"
wget -O -  https://$MID:$PASS@ipv4.mydns.jp/login.html
wget -O -  https://$MID:$PASS@ipv6.mydns.jp/login.html

これをcronで定期的に実行するように設定。

ポートフォーワーディング等、ルータ設定

SSL通信化(httpsによりSecureな通信、SSL証明書発行)

https でないWebサイトはChromeの検索エンジンにひっかからなくなるらしい。(もうすぐ?)
https://piguide.dev/2019/03/13/raspberry-pi-ssl-certificates-using-lets-encrypt.html

参考サイト

t13m082h
投稿はほとんど自分用のメモ. コメントいただいたら、わかる範囲でお答えできるかもしれません。 あと、それぞれのモジュールやサービスの使い方を教えてくれる情報はたくさんありますが、そのサービスが全体のどの位置づけでどう使えばいいのか等がわかりにくいこともあるので、その辺りを参考にしていただければと思っておおまかな流れをよく投稿しています。
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away