2021年8月8日日曜日

alfresco メール設定②-2 メール配送設定(postfix+getmail+maildrop)

メール取り込みに特化したgetmailを使用します。内部に取り込みメールの番号(UID)を記録するため、取り込み漏れが発生しにくいと考えています。サーバー上で振り分ける場合、getmailでも可能ですが、複雑な場合分けは記載が難しく、maildropと組み合わせて使用します。 設定順は以下の通りです。
  1. ①MTA設定
  2. ②メール取得
  3. ③MDA設定

1.postfixをインストール・設定

有料版はsmtpの制御ができますが、community版はできません。送信先フォルダにスクリプトが設定された状態でそのまま配送すると、alfresco側で処理しきれず、配送エラーや0byte配送を起こします。そのため、postfixに遅延処理の設定を追加します

centos8 stream では標準でインストールされないため、インストール

main.cfを変更

sudo vi /etc/postfix/main.cf
myhostname = ☆☆☆.xxx.com
mydomain = xxx.com
inet_interfaces = localhost
relayhost = [xxx.com]:1025
#----- 以下 最後尾に記載 --------
# メールの最大サイズを変更
message_size_limit = 40960000

# 配送失敗時に時間をおいて繰り返す処理
queue_run_delay = 300s
minimal_backoff_time = 300s
maximal_backoff_time=1200s
maximal_queue_lifetime=1800s
bounce_queue_lifetime=1800s

# 全てのメールに対して、1通送る事に○秒のsleep
smtp_destination_rate_delay = 5s
sudo systemctl start postfix.service
sudo systemctl enable postfix.service

2.メールサーバからメールを自動受信するためgetmailをインストール

①getmailをダウンロード・インストール

curl -LO http://pyropus.ca/software/getmail/old-versions/getmail-5.15.tar.gz
tar xzf getmail-5.15.tar.gz
cd getmail-5.15
sudo python2 setup.py install
cd ..
mkdir -m 0700 .getmail
cp /usr/share/doc/getmail-5.15/getmailrc-examples .getmail/getmailrc
sudo vi .getmail/getmailrc

②getmailの設定

[options]
# verbose = 0 # 詳細表示なし
# delete = true # POPしたメールはサーバから削除する
# message_log = ~/.getmail/log # ログを保存する場合は以下2行をコメントアウト
# message_log_verbose = true
# サーバーから全てのメールを取得するのを止める
read_all = false
# 一度に取得するメール数を制限(環境により、数を調整)
max_messages_per_session = 10

[retriever]
# POP3で受信する場合(有効)
#type = SimplePOP3Retriever

# POP3 over SSLで受信する場合
type = SimplePOP3SSLRetriever
# メールサーバ
server = xxxx.ne.jp #取得するメールサーバを指定
# ユーザ名
username = xxx@xxxx.ne.jp #ユーザー名を指定
# パスワード
password = xxxxxxxxx    #パスワードを指定

[destination]
type = MDA_external     #MDAと連携する
path = /usr/bin/maildrop  #MDAとしてmaildropを使用

3.MDAとしてmaildropを追加

①maildropをダウンロード・インストール

sudo dnf install -y rpm-build
sudo curl -O https://sourceforge.net/projects/courier/files/maildrop/3.0.3/maildrop-3.0.3.tar.bz2
sudo curl -OL https://sourceforge.net/projects/courier/files/courier-unicode/2.2.3/courier-unicode-2.2.3.tar.bz2
sudo dnf install make gcc-c++ perl
rpmbuild -tb courier-unicode-2.2.3.tar.bz2
cd ..
sudo rpm -ivh RPMS/x86_64/courier-unicode-devel-2.2.3-1.el8.x86_64.rpm
cd ..
sudo curl -LO http://mirror.centos.org/centos/8/PowerTools/x86_64/os/Packages/libidn-devel-1.34-5.el8.x86_64.rpm
sudo rpm -ivh libidn-devel-1.34-5.el8.x86_64.rpm
cd ..
sudo dnf install gdbm-devel pcre-devel
rpmbuild -tb maildrop-3.0.3.tar.bz2
sudo rpm -ivh rpmbuild/RPMS/x86_64/maildrop-3.0.3-2.x86_64.rpm

②maildropの設定

sudo vi .mailfilter
alfresco上で仕分けするフォルダにそれぞれアライアスを設定し、直接送信するには、ここで場合分けを記述
if (/^From:.*@xxx.or.jp/ || /^From:.*@xxx.org/)
{
to "! ****@xxxx.com"
}
elsif (/^From:.*@xxx.ne.jp/)
{
to "! ????@xxxx.com"
}

0 件のコメント:

コメントを投稿