メールの添付ファイルを自動的にパスワード保護したZIP形式に暗号化する。ここでは、SaMMAを導入して、設定した宛先に添付ファイル付メールを送る場合、添付ファイルを自動でパスワード保護したZIP形式に暗号化するようにする。パスワード通知メールは送信者のみに送られてくるので、送信者は内容を確認後、パスワード通知メールを宛先へ転送する。これにより、万が一宛先を誤った場合でも、パスワード通知メールを転送しなければ、宛先では添付ファイルを参照することはできない。
EPELリポジトリ導入(EPEL)を参照してEPELリポジトリを導入する |
[root@localhost ~]# rpm -Uvh http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-5.el7.nux.noarch.rpm ← nux-dextopリポジトリインストール |
[root@localhost ~]# yum -y install sendmail-devel openldap-devel glib2-devel gmime-devel libspf2-devel ← SaMMAインストールに必要なパッケージをインストール |
[root@localhost ~]# alternatives --config mta ← sendmailコマンド設定 |
2 プログラムがあり 'mta' を提供します。 選択 コマンド ----------------------------------------------- 1 /usr/sbin/sendmail.postfix *+ 2 /usr/sbin/sendmail.sendmail Enter を押して現在の選択 [+] を保持するか、選択番号を入力します:1 ← 1を応答してpostfixのsendmailコマンドを使用するように設定 |
[root@localhost ~]# wget https://ja.osdn.net/dl/samma/SaMMA-4.1.11.tar.gz ← SaMMAダウンロード |
※最新版のURLはダウンロードページで確認すること |
[root@localhost ~]# tar zxvf SaMMA-4.1.11.tar.gz ← SaMMA展開 |
[root@localhost ~]# cd SaMMA-4.1.11/ ← SaMMA展開先へ移動 |
[root@localhost SaMMA-4.1.11]# ./configure && make && make install ← SaMMAインストール |
[root@localhost SaMMA-4.1.11]# cd ← ホームディレクトリへ戻る |
[root@localhost ~]# rm -rf SaMMA-4.1.11 ← 展開先ディレクトリを削除 |
[root@localhost ~]# rm -f SaMMA-4.1.11.tar.gz ← ダウンロードしたファイルを削除 |
[root@localhost ~]# echo /usr/local/lib > /etc/ld.so.conf.d/libdg.conf ← libdgライブラリパス設定 |
[root@localhost ~]# ldconfig ← libdgライブラリパス設定反映 |
[root@localhost ~]# cp /usr/local/etc/samma/samma.conf.enc.default /usr/local/etc/samma/samma.conf ← サンプルよりSaMMA設定ファイルをコピー |
[root@localhost ~]# cp /usr/local/etc/samma/samma.tmpl.default /usr/local/etc/samma/samma.tmpl ← サンプルよりパスワード通知書式ファイルをコピー |
[root@localhost ~]# cp /usr/local/etc/samma/errmsg.tmpl.default /usr/local/etc/samma/errmsg.tmpl ← サンプルより文字コード変換失敗用パスワード通知書式ファイルをコピー |
[root@localhost ~]# cp /usr/local/etc/samma/sender.default /usr/local/etc/samma/sender ← サンプルより送信元設定ファイルをコピー |
[root@localhost ~]# cp /usr/local/etc/samma/rcpt.default /usr/local/etc/samma/rcpt ← サンプルより宛先設定ファイルをコピー |
[root@localhost samma]# cd /usr/local/etc/samma/ ← SaMMA設定ファイル格納先へ移動 |
[root@localhost samma]# echo @`hostname -d` >> sender ← 暗号化対象送信元を設定 ※内部から送信するメールの添付ファイルはすべて暗号化 |
[root@localhost samma]# echo @example.co.jp >> rcpt ← 暗号化対象宛先を設定※@example.co.jp宛に送信するメールの添付ファイルはすべて暗号化 |
[root@localhost samma]# make ← 内部ドメインDB(sender.db)・受信者DB(rcpt.db)作成 |
[root@localhost samma]# cd ← ホームディレクトリへ戻る |
[root@localhost ~]# nkf -w /usr/local/etc/samma/samma.tmpl > samma.tmpl ← パスワード通知メールテンプレートを編集用に文字コード変換してコピー |
[root@localhost ~]# vi samma.tmpl ← パスワード通知メールテンプレート編集 |
To: <@@TOADDR@@> Subject: パスワード通知メール Content-Type: text/plain; charset=ISO-2022-JP ← 追加 Content-Transfer-Encoding: 8bit ← 追加 MIME-Version: 1.0 ← 追加 以下のメールに添付されたファイルの解凍パスワードをお知らせします。 件名: <@@SUBJECT@@> 日付: <@@DATE@@> パスワード: <@@PASSWORD@@> 受信者 <@@RCPTLIST@@> 添付ファイル名 <@@FILENAME@@> |
[root@localhost ~]# nkf --ic=UTF-8 --oc=ISO-2022-JP -x -m0 samma.tmpl > /usr/local/etc/samma/samma.tmpl ; rm -f samma.tmpl ← 編集したパスワード通知メールテンプレートを文字コード変換してコピー(戻し)後に削除 |
[root@localhost ~]# wget https://ja.osdn.net/dl/samma/libiconv-1.12-1.src.rpm ← libiconvのSRPMをダウンロード |
※最新版のURLはダウンロードページで確認すること |
[root@localhost ~]# rpm -ivh libiconv-1.12-1.src.rpm ← libiconvのSRPMを展開 |
更新中 / インストール中... 1:libiconv-1.12-1 ################################# [100%] 警告: ユーザー yamauchi は存在しません - root を使用します 警告: グループ designet は存在しません - root を使用します 警告: ユーザー yamauchi は存在しません - root を使用します 警告: グループ designet は存在しません - root を使用します 警告: ユーザー yamauchi は存在しません - root を使用します 警告: グループ designet は存在しません - root を使用します |
[root@localhost ~]# vi ~/rpmbuild/SPECS/libiconv.spec ← libiconv.spec編集 |
#make ← 行頭に#を追加してコメントアウト %install ↓ %makeinstall ← makeinstallに変更 |
[root@localhost ~]# rpmbuild -bb --clean ~/rpmbuild/SPECS/libiconv.spec &color(lime){← libiconvのRPMを生成 |
[root@localhost ~]# rpm -ivh --nodeps rpmbuild/RPMS/`uname -p`/libiconv-1.12-1.`uname -p`.rpm ← 生成したlibiconvのRPMをインストール |
[root@localhost ~]# rm -f ~/rpmbuild/RPMS/`uname -p`/libiconv-1.12-1.`uname -p`.rpm ← 生成したlibiconvのRPMを削除 |
[root@localhost ~]# rpmbuild --rmsource --rmspec ~/rpmbuild/SPECS/libiconv.spec ← RPM生成後始末 |
[root@localhost ~]# rm -f libiconv-1.12-1.src.rpm ← ダウンロードしたlibiconvのSRPMを削除 |
[root@localhost ~]# vi /usr/local/bin/sammainit ← SaMMA起動スクリプト作成 |
#!/bin/sh export LD_LIBRARY_PATH=/usr/local/samma/lib export LD_PRELOAD=/usr/local/samma/lib/preloadable_libiconv.so export CHARSET_ALIAS="Shift_JIS=CP932:EUC-JP=EUC-JP-MS:ISO-2022-JP=ISO-2022-JP-MS" /usr/local/bin/samma |
[root@localhost ~]# chmod +x /usr/local/bin/sammainit ← SaMMA起動スクリプトに実行権限付加 |
[root@localhost ~]# vi /usr/lib/systemd/system/samma.service ← SaMMA起動スクリプト作成 |
[Unit] Description=SaMMA (SAfety Mail gateway with Milter Api) [Service] ExecStart=/usr/local/bin/sammainit Restart=always [Install] WantedBy=multi-user.target |
[root@localhost ~]# systemctl start samma ← SaMMA起動 |
[root@localhost ~]# systemctl enable samma ← SaMMA自動起動設定 |
[root@localhost ~]# vi /etc/postfix/main.cf ← Postfix設定ファイル編集 |
【Milter設定(smtpd_milters)がない場合】 下記を追加 smtpd_milters = inet:127.0.0.1:20026 milter_default_action = tempfail |
【Milter設定(smtpd_milters)が既にある場合】 smtpd_milters = unix:/var/run/milter-manager/milter-manager.sock,inet:127.0.0.1:20026 ← SaMMA連携設定を追記 |
[root@localhost ~]# systemctl reload postfix ← Postfix設定反映 |