DreamerDreamのブログ

夢想家の夢です。〜揚げたてのモヤっとしたものをラフレシアと共に〜

MyDNSでHTTPのBASIC認証していたリクエストをHTTPSリクエストに変更する

今までDDNSサービスのMyDNSへのIPアドレス更新にはHTTPへBASIC認証をしていました。

dreamerdream.hateblo.jp

 

 IPV6を無効化する方法もどうぞ↓

dreamerdream.hateblo.jp

 

 

こんな感じ

wget http://[ ID ]:[ パスワード ]@ipv4.mydns.jp/login.html

cronで30分毎にリクエストするよう設定

crontab -e

中身

*/30 * * * * wget -q -O /dev/null http://[ ID ]:[ パスワード ]@ipv4.mydns.jp/login.html

 

簡単で良いのですがHTTPのBASIC認証はIDもパスも平文で送られるのでセキュリティー的にはもっとセキュアなHTTPSSSL)通信させた方が良いようです。(今まで約3年も放置していて今更感が否めませんが・・・)

HTTPS化したらBASIC認証はヘッダリクエストなのでパスは割れにくくなります。

 

ということで同じようにwgetHTTPSリクエストをしてみましたら。

GnuTLS: A TLS fatal alert has been received.
Unable to establish SSL connection.

と怒られました。

うん、まあ予想はしていたけどね。

 

ということでPythonでurllibでも使うかー?と思っていたのですが、もっとHTTPSリクエストを簡単に出来る方法を発見しました。

<参考>

DDNSサービスのMyDNSを使って無料で自宅サーバとVPSのDNS登録してみた - aoishiの備忘録

curl コマンド 使い方メモ - Qiita

 

curlを使うのが簡単そうです。

-uオプションでベーシック認証が出来るそうで、結果は-oで/dev/nullに破棄します。

curl https://ipv4.mydns.jp/login.html -u [ ID ]:[ パスワード ] -o /dev/null -s

(個人利用の自宅サーバーなので繋がらなくなったらその時に調べたら良しとします。)

 

30分ごとにリクエストするようcronで設定しました。

*/30 * * * * curl https://ipv4.mydns.jp/login.html -u [ ID ]:[ パスワード ] -o /dev/null -s

 

curlは古いRaspbianにも入っていたしたぶんインストールしなくても現行Linuxじゃデフォルトで入ってるっぽいですね。便利!

f:id:DreamerDream:20190905122311p:plain

 

 

kampa.me