動的に割り当てられたパブリックネットワークIPを取得し、指定されたメールボックスに送信します.
1251 ワード
インターネットブックでLinuxサーバーを作りました.IPは動的に割り当てられていますので、常に変化しています.外部ネットワークはサーバに接続できなくなります.IPが変化した時に指定されたメールを送ることができると思っています.これで大丈夫です.
メールサービスの申し込み
メールアドレス: http://www.mailgun.com/
メール送信サービスを申請して、アメリカを取得します.key
ネットワークIPスクリプトを取得
vim/home/user/bin/get_public_ip.sh
IPが変化しているかどうかを確認します.例えば、指定アドレスにメールを送ります.(実際の状況に応じて、下記のスクリプトの中国語部分を修正します.)
5分ごとにIPが変化するかどうかを調べて、例えば変化、メールを指定の住所まで送ります.
出力コマンド crontab-e、内容を追加します.
メールサービスの申し込み
メールアドレス: http://www.mailgun.com/
メール送信サービスを申請して、アメリカを取得します.key
ネットワークIPスクリプトを取得
vim/home/user/bin/get_public_ip.sh
IPが変化しているかどうかを確認します.例えば、指定アドレスにメールを送ります.(実際の状況に応じて、下記のスクリプトの中国語部分を修正します.)
#!/bin/bash
if [ -f .getip ]
then
rm -fr .oldip
mv .getip .oldip
fi
touch .oldip
wget http://members.3322.org/dyndns/getip
mv getip .getip
RESULT=`diff .oldip .getip`
if [ "$RESULT" != "" ]
then
curl -s --user 'mailgun user_key ' \
https://api.mailgun.net/v2/sandboxed7e005db69346568602b4ee9e3a42ef.mailgun.org/messages \
-F from='Mailgun Sandbox <[email protected]>' \
-F to=' < >'\
-F subject='Server IP changed!' \
-F text=`cat .getip`
fi
プロファイル5分ごとにIPが変化するかどうかを調べて、例えば変化、メールを指定の住所まで送ります.
出力コマンド crontab-e、内容を追加します.
*/5 * * * * /bin/sh /home/user/bin/get_public_ip.sh
クロンを再起動sudo service cron restart