NO IMAGE

外部からIMAP4でのメール接続確認

「IMAPは使う予定がない。」・・・と、この間まで言っていましたが、外出先にてタブレット端末を使い自宅メールサーバに届いているメールを確認できるのか興味がわき、なんとか設定できたので、覚え書きです。

自宅の受信 サーバー「Dovecot」とは、IMAP4プロトコルで接続します。

POP3だと、 出先で、モバイル端末で受信操作した場合、サーバーに届いたメールを端末内に移動してしまいます。これでは、自宅に帰って、デスクトップPCで、受信操作してもサーバー上にメールが残っていない為、モバイルからデスクトップへメールを転送する手間がかかって面倒です。

IMAP4なら、サーバー上にメールを保持したまま、モバイル端末側にメールをコピーしてくれます。(多量のメールがある場合は、発信者や主題を見て、必要なメールのみボディ部を閲覧可能)
他の端末でも同じ内容を確認できるので、複数の端末でひとつのメールボックスを管理したい場合は便利です。もちろんメールをサーバー上に置いておく必要がなくなったら、IMAP4メールソフトで、サーバー上から削除することも可能です。

■受信サーバー「Dovecot」の設定変更

# vi /etc/dovecot/dovecot.conf

protocols = pop3 だったところに imap を追加します。

## Dovecot configuration file

# If you're in a hurry, see http://wiki.dovecot.org/QuickConfiguration

# "doveconf -n" command gives a clean output of the changed settings. Use it
# instead of copy&pasting files when posting to the Dovecot mailing list.

# '#' character and everything after it is treated as comments. Extra spaces
# and tabs are ignored. If you want to use either of these explicitly, put the
# value inside quotes, eg.: key = "# char and trailing whitespace  "

# Default values are shown for each setting, it's not required to uncomment
# those. These are exceptions to this though: No sections (e.g. namespace {})
# or plugin settings are added by default, they're listed only as examples.
# Paths are also just examples with the real defaults being based on configure
# options. The paths listed here are for configure --prefix=/usr
# --sysconfdir=/etc --localstatedir=/var

# Protocols we want to be serving.
#protocols = imap pop3 lmtp
protocols = imap pop3

Dovecotを再起動します。

# service dovecot restart



■ファイアウォール「iptables」の設定変更

# vi /etc/sysconfig/iptables

ポート番号143(IMAP4)と993(IMAP4S)を開放します。

# Firewall configuration written by system-config-firewall
# Manual customization of this file is not recommended.
*filter

# まずは、受信は全て破棄に設定
:INPUT DROP [0:0]

# 同様に、転送は全て破棄に設定
:FORWARD DROP [0:0]

# 送信は全て通過
:OUTPUT ACCEPT [0:0]

# 上記条件下で、プロトコルがICMPなら通過(pingは通す)
-A INPUT -p icmp -j ACCEPT

# 自ホストからのアクセスなら全て許可
-A INPUT -i lo -j ACCEPT

# 内部から行ったアクセスに対する外部からの返答アクセスを許可
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT

# 各ポートをアクセス許可
-A INPUT -m state --state NEW -m tcp -p tcp --dport  22 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport  80 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport  25 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 465 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 110 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 995 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport  53 -j ACCEPT
-A INPUT -m state --state NEW -m udp -p udp --dport  53 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 143 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 993 -j ACCEPT

# FTPでのアクセスを許可
-A INPUT -p tcp -m tcp --dport 21 --tcp-flags FIN,SYN,RST,ACK SYN -m state --state NEW -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 20 -j ACCEPT

# その他の受信は「接続を拒否されました」表示で拒否
-A INPUT -j REJECT --reject-with icmp-host-prohibited

# その他の転送は「接続を拒否されました」表示で拒否
-A FORWARD -j REJECT --reject-with icmp-host-prohibited

COMMIT

iptablesを再起動します。

# service iptables restart
iptables: ファイアウォールルールを消去中: [ OK ] iptables: チェインをポリシー ACCEPT へ設定中filter [ OK ] iptables: モジュールを取り外し中: [ OK ] iptables: ファイアウォールルールを適用中: [ OK ] iptables: 追加のモジュールを読み込み中:ip_conntrack_ftp ip_[ OK ] #



■レンタル中のルーター「PR-S300SE」の設定変更

20130901a外部から、IMAP4、IMAP4Sでアクセスできるように、ルーターのポートを開放します。



20130901b



■CentOSにタブレット用アカウントを追加

# useradd satoh163tablet
# passwd satoh163tablet
ユーザー satoh163tablet のパスワードを変更。
新しいパスワード:
新しいパスワードを再入力してください:
passwd: 全ての認証トークンが正しく更新できました。
# ls -la /home
合計 44
drwxr-xr-x. 8 root root 4096 9月 1 18:33 2013 .
dr-xr-xr-x. 23 root root 4096 9月 1 01:08 2013 ..
drwx—— 3 info info 4096 8月 7 09:59 2013 info
drwx——. 2 root root 16384 7月 19 12:48 2013 lost+found
drwx—— 3 mailadmin mailadmin 4096 8月 9 23:05 2013 mailadmin
drwx——. 5 satoh163 satoh163 4096 8月 7 10:09 2013 satoh163
drwx—— 3 satoh163tablet satoh163tablet 4096 9月 1 18:33 2013 satoh163tablet
drwx—— 3 tv-pc tv-pc 4096 8月 14 09:51 2013 tv-pc
# ls -la /home/satoh163tablet
合計 24
drwx—— 3 satoh163tablet satoh163tablet 4096 9月 1 18:33 2013 .
drwxr-xr-x. 8 root root 4096 9月 1 18:33 2013 ..
-rw-r–r– 1 satoh163tablet satoh163tablet 18 7月 18 22:19 2013 .bash_logout
-rw-r–r– 1 satoh163tablet satoh163tablet 176 7月 18 22:19 2013 .bash_profile
-rw-r–r– 1 satoh163tablet satoh163tablet 124 7月 18 22:19 2013 .bashrc
drwx—— 5 satoh163tablet satoh163tablet 4096 8月 7 09:58 2013 Maildir
#

■メールクライアントの設定と動作確認

20130901cタブレット「ASUS MeMO Pad HD7 ME173-16」(OS:Android4.2.1)に、標準でインストールされているメールクライアントソフト(アイコンに@マークがデザインされている)に、アカウントを追加します。

メールを起動したら、右上の「設定」をクリックし、「アカウントを追加」をクリックします。



20130901dアカウント設定の画面が表示されたら、メールアドレスとパスワードを入力し「次へ」をクリックします。

ちなみに、日本語入力にはATOK(1500円)を入れて使っています。



20130901eアカウントの種類を選ぶ画面になるので「IMAP」をクリックします。



20130901f受信サーバー設定の画面になります。

ユーザ名、IMAPサーバー名、セキュリティの種類を変更します。



20130901gユーザ名はCentOSに登録した名前に変えます。
「satoh163tablet@a21-hp.com」
 ↓
「satoh163tablet」

IMAPサーバー名は、DNSサーバーに登録済みのホスト名に変えます。
「imap.a21-hp.com」
 ↓
「mail.a21-hp.com」

セキュリティの種類は「なし」から「SSL/TLS」に変えます。
「なし」
 ↓
「SSL/TLS(証明書をすべて承認)」

この変更で、ポートは、「143」から「993」に変わります。

「次へ」をクリックします。


20130901hしばらくすると、送信サーバーの設定画面になります。

セキュリティの種類を「なし」から「SSL/TLS(証明書をすべて承認)」に変更します。

この変更で、ポートは、「587」から「465」に変わります。

(変更後の画面は撮り忘れてしまいました。)

「次へ」をクリックします。



20130901iアカウントのオプションになるので、そのまま「次へ」。



20130901jアカウントの設定が完了しました。の画面になります。

「次へ」をクリックします。

初回は、セキュリティ警告画面が表示されるかも知れません。
公開鍵・秘密鍵が第三者機関発行のモノでない為の警告なので、了解しておきます。



20130901kしばらく待つと、メーラーの初期画面になります。



20130901l試しに自分宛にメールを送ってみます。

上部右から四つ目のメール作成アイコンをクリックしてこの画面を表示します。

宛先、主題、本文を記入したら、上部の「送信」をクリックします。

初回は、セキュリティ警告画面が表示されるかも知れません。
公開鍵・秘密鍵が第三者機関発行のモノでない為の警告なので、了解しておきます。



20130901mしばらく待つと送信が完了します。

上部右から2つ目の更新アイコンをクリックすると、メールを受信します。



20130901n内容を確認します。

これで、外出時も、モバイル端末で自分宛のメールを確認できる環境が作れたことになります。(^^)