動的に割り当てられたパブリックネットワークIPを取得し、指定されたメールボックスに送信します.

1251 ワード

インターネットブックでLinuxサーバーを作りました.IPは動的に割り当てられていますので、常に変化しています.外部ネットワークはサーバに接続できなくなります.IPが変化した時に指定されたメールを送ることができると思っています.これで大丈夫です.
  メールサービスの申し込み
   メールアドレス: 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