前回の
古いMacを使って自宅サーバーを構築/その7 ドメインと紐付け
の続きなので、既に
Ubuntu 16.04 LTS (Desktop)でweb上に公開できているという前提で話を進めます。
-
グローバルIPを監視し変化を通知
-
通知には、Gmail経由でメールを送る方法にします。
なので、まだ持っていない場合は予め
以下よりGmailのメールアドレスを取得して下さい。
-
「postfix」からGmail経由でメールを送れるようにします。
-
「postfix」をインストールします。
「端末」アプリでコマンドを実行します。$ sudo apt install postfix -
「/etc/postfix/main.cf」を作成します。
$ sudo gedit /etc/postfix/main.cf -
値を書き込みます。(文字列検索で探すと早い)
relayhost =
relayhost = [smtp.gmail.com]:587
-
以下のように書き加えます。
smtp_use_tls = yes smtp_sasl_auth_enable = yes smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd smtp_sasl_tls_security_options = noanonymous smtp_sasl_mechanism_filter = plain smtp_tls_CApath = /usr/share/ca-certificates/thawte.com/Thawte SSLWeb Server Roots/thawte Premium Server CA/Thawte Premium Server CA.pem
-
値を書き込みます。(文字列検索で探すと早い)
-
「/etc/postfix/sasl_passwd」を作成します。
$ sudo gedit /etc/postfix/sasl_passwd
内容を以下のように書き込みます。
「user_name@gmail.com」はGmailのアドレスです。
「pass_word」はそのパスワードです。[smtp.gmail.com]:587 user_name@gmail.com:pass_word
-
「/etc/postfix/sasl_passwd」の所有者とアクセス権を変更します。
$ sudo chown root:root /etc/postfix/sasl_passwd $ sudo chmod 600 /etc/postfix/sasl_passwd -
「/etc/postfix/sasl_passwd.db」を作成します。
$ sudo postmap /etc/postfix/sasl_passwd -
「postfix」を再起動します。
$ /etc/init.d/postfix restart
-
「postfix」をインストールします。
-
「curl」コマンドをインストールします。
$ sudo apt install curl -
「mail」コマンドをインストールします。
$ sudo apt install mailutils -
IPアドレスの変化を検出・通知するシェルスクリプトを作成します。
$ sudo gedit /usr/local/bin/ipcheck.sh
「user_name@domein」は宛先(受け取る方)のメールアドレスです。#!/bin/sh newip=`curl -sS inet-ip.info` oldip=`cat /usr/local/bin/old_ip.txt` if [ "$oldip" != "$newip" ] then echo "$newip" > /usr/local/bin/old_ip.txt mail -s "Current IP Address" user_name@domein < /usr/local/bin/old_ip.txt fi
-
今作成した「ipcheck.sh」のパーミッションを設定します。
$ sudo chmod 755 /usr/local/bin/ipcheck.sh -
「/usr/local/bin/old_ip.txt」ファイルを作成しておきます。
$ sudo gedit /usr/local/bin/old_ip.txt
今現在のグローバルIPアドレスを記載しなければ、
試験的にメールが一度送信されます。
ファイルを保存して閉じます。 -
定期的に実行する設定にします。
$ sudo gedit /etc/crontab
「*/15」の部分が「分」を指定していて、この場合「15分間隔」になります。
「/usr/local/bin/ipcheck.sh」は、先ほど作成したシェルスクリプトです。*/15 * * * * root /usr/local/bin/ipcheck.sh
-
通知には、Gmail経由でメールを送る方法にします。
次回予告「その9 外部から実際に攻撃を受けてみる」
お気に召しましたら、一票(ワンクリック)下さい。ランキングに参加しておりますゆえ。
人気ブログランキング |
Macランキング |
ウェブデザインランキング |
|
Views: 0
4件のコメント