自宅のRaspberry PiサーバーでRoute53を自動的に更新する方法は?

自宅のRaspberry PiサーバーでRoute53を自動的に更新する方法は?

Rasbian Jessie 8.0を実行している家のRaspberry PiはApacheを実行しています。 AWS Route 53 では、ホスティングゾーンのレコードセット値を更新するために使用される IPv4 を作成するために使用されますdig TXT +short o-o.myaddr.l.google.com @ns1.google.com(下の画像に赤い丸で表示). Route 53 レコード収集 ドメイン名のテストに成功しました。

今やりたいことは、私の助けなしにRaspberry Piの内部で自宅の動的IPアドレスが変更されるたびにAWS Route53を更新することです。

より多くの情報が必要な場合はお知らせください。

ベストアンサー1

AWS ツールを引き続き使用するには、次の手順に従います。

  1. AWS IAM ユーザーを作成します。DNSアップデータその後、次のAWSマネージドポリシーに割り当てます。AmazonRoute53FullAccess。生産する秘密そして使用する権利ユーザーのキーです。

  2. インストールするAWS-CLI(例えばpip install awscli

  3. 構成AWS-CLI、上記の秘密キーとアクセスキーを入力してください。aws configure

RPiのクローン操作で、次のことを行うスクリプトを実行します。

  1. たとえば、外部パブリックIPを取得します。RPI_EXT_IP=$(curl http://ifconfig.co)

  2. 更新JSONファイルを生成します。

    cat > /tmp/r53-update.json << __EOF__
      {
        "Changes": [
          {
            "Action": "UPSERT",
            "ResourceRecordSet": {
              "Name": "rpi.your-route53-domain.com",
              "Type": "A",
              "TTL": 600,
              "ResourceRecords": [
                {
                  "Value": "${RPI_EXT_IP}"
                }
              ]
            }
          }
        ]
      }
    __EOF__
    
  3. 呼ぶAWS-CLI上記のJSONファイルを使用してRoute53レコードを更新するにはホスティングゾーンIDRoute53エリアの実際のIDを使用してください。

    ~ $ aws route53 change-resource-record-sets \
            --hosted-zone-id ZXCVBNMEXAMPLE \
            --change-batch file:///tmp/r53-update.json
    

説明が必要な場合はお知らせください。

答えが役に立った場合は、忘れずに採用してください:)

おすすめ記事