約 5,158,478 件
https://w.atwiki.jp/hama170628/pages/43.html
sendmailのコンフィグ sendmailの基本設定 /etc/mail以下の各ファイルは以下のような機能を持ちます。 また、以下の設定では、aliasesをnewaliasesコマンドにて、またaccess、mailertableをmakemapコマンドにてdbm化しました。 ファイル名 機能 /etc/mail/access sendmailアクセスデータベースファイル /etc/mail/aliases メールボックスエイリアス /etc/mail/local-host-names sendmailが受け付ける配送先ホストのリスト /etc/mail/mailer.conf メーラプログラムの設定 /etc/mail/mailertable メーラ配送表 /etc/mail/sendmail.cf sendmail の主設定ファイル /etc/mail/virtusertable 仮想ユーザおよび仮想ドメイン表 内部スプールサーバ 自ドメイン宛のメールをスプールする。 それ以外をsmarthostでリレーサーバへ配送する。 sendmail.mc VERSIONID(`$Id generic-solaris.mc,v 8.14 gshapiro Exp $ ) OSTYPE(solaris2)dnl DOMAIN(generic)dnl Dwrmail Dmsend.test define(`confDOMAIN_NAME ,`$w.$m )dnl define(`DATABASE_MAP_TYPE ,`dbm )dnl define(`MAIL_SETTINGS_DIR ,`/etc/mail/ )dnl define(`confCW_FILE ,`-o /etc/mail/local-host-names )dnl RELAY_DOMAIN_FILE(`/etc/mail/relay-domains )dnl FEATURE(`mailertable )dnl FEATURE(`access_db )dnl define(`ALIAS_FILE , `/etc/mail/aliases )dnl FEATURE(`blacklist_recipients )dnl define(`SMART_HOST , `mgw.send.test )dnl define(`confPRIVACY_FLAGS , `public )dnl define(`LOCAL_MAILER_FLAGS7, LOCAL_MAILER_FLAGS` P)dnl define(`confTO_IDENT , `0s )dnl define(confMAX_HOP , `25 )dnl FEATURE(`no_default_msa )dnl DEAMON_OPTIONS(`Port=25, NAME=MSA, M=E )dnl undefine(`UUCP_RELAY )dnl undefine(`BITNET_RELAY )dnl FEATURE(`nouucp ,`reject )dnl MASQUERADE_AS(`$m )dnl FEATURE(`masquerade_envelope )dnl FEATURE(`masquerade_entire_domain )dnl FEATURE(`limited_masquerade )dnl FEATURE(`always_add_domain )dnl define(`confCOPY_ERRORS_TO , `root )dnl define(`confDONT_PROBE_INTERFACES , `True )dnl FEATURE(`accept_unresolvable_domains )dnl MAILER(local)dnl MAILER(smtp)dnl access デフォルトはOK(ローカルへのリレーは許可)になっている。 外部への許可はRELAY、拒否はREJECTで定義 192.168.1 RELAY local-host-names 自ドメインと自ホスト宛をスプール send.test rmail.send.test mailertable smarthostで定義済みのため空 relay-domains 空 外部-内部間のリレーサーバ 自ドメイン宛はスプールサーバへ配送する。 それ以外はsmarthostで外部メールサーバへ配送する。 sendmail.mc smarthostは2つのホストを定義した。 →負荷分散的に動作し、優先順位はつけられなかった。 OSTYPE(solaris2)dnl DOMAIN(generic)dnl Dwmgw Dmsend.test define(`confDOMAIN_NAME ,`$w.$m )dnl define(`DATABASE_MAP_TYPE ,`dbm )dnl define(`MAIL_SETTINGS_DIR ,`/etc/mail/ )dnl define(`confCW_FILE ,`-o /etc/mail/local-host-names )dnl RELAY_DOMAIN_FILE(`/etc/mail/relay-domains )dnl FEATURE(`mailertable )dnl FEATURE(`access_db )dnl define(`ALIAS_FILE , `/etc/mail/aliases )dnl FEATURE(`blacklist_recipients )dnl define(`SMART_HOST , `smail.send.test,smail2.send.test )dnl define(`confPRIVACY_FLAGS , `public )dnl define(`LOCAL_MAILER_FLAGS7, LOCAL_MAILER_FLAGS` P)dnl define(`confTO_IDENT , `0s )dnl define(confMAX_HOP , `25 )dnl FEATURE(`no_default_msa )dnl DEAMON_OPTIONS(`Port=25, NAME=MSA, M=E )dnl undefine(`UUCP_RELAY )dnl undefine(`BITNET_RELAY )dnl FEATURE(`nouucp ,`reject )dnl MASQUERADE_AS(`$m )dnl FEATURE(`masquerade_envelope )dnl FEATURE(`masquerade_entire_domain )dnl FEATURE(`limited_masquerade )dnl FEATURE(`always_add_domain )dnl define(`confCOPY_ERRORS_TO , `root )dnl define(`confDONT_PROBE_INTERFACES , `True )dnl FEATURE(`accept_unresolvable_domains )dnl MAILER(local)dnl MAILER(smtp)dnl access 192.168.1 RELAY local-host-names mgw.send.test mailertable rmail.send.test esmtp [192.168.1.208] send.test esmtp [192.168.1.208] relay-domains 空 外部メールサーバ 自ドメイン宛は内部サーバへ配送する。 それ以外はMXを参照して配送する。 sendmail.mc VERSIONID(`$Id generic-solaris.mc,v 8.14 gshapiro Exp $ ) OSTYPE(solaris2)dnl DOMAIN(generic)dnl Dwsmail Dmsend.test define(`confDOMAIN_NAME ,`$w.$m )dnl define(`DATABASE_MAP_TYPE ,`dbm )dnl define(`MAIL_SETTINGS_DIR ,`/etc/mail/ )dnl define(`confCW_FILE ,`-o /etc/mail/local-host-names )dnl RELAY_DOMAIN_FILE(`/etc/mail/relay-domains )dnl FEATURE(`mailertable )dnl FEATURE(`access_db )dnl define(`ALIAS_FILE , `/etc/mail/aliases )dnl FEATURE(`blacklist_recipients )dnl define(`confPRIVACY_FLAGS , `public )dnl define(`LOCAL_MAILER_FLAGS7, LOCAL_MAILER_FLAGS` P)dnl define(`confTO_IDENT , `0s )dnl define(confMAX_HOP , `25 )dnl FEATURE(`no_default_msa )dnl DEAMON_OPTIONS(`Port=25, NAME=MSA, M=E )dnl undefine(`UUCP_RELAY )dnl undefine(`BITNET_RELAY )dnl FEATURE(`nouucp ,`reject )dnl MASQUERADE_AS(`$m )dnl FEATURE(`masquerade_envelope )dnl FEATURE(`masquerade_entire_domain )dnl FEATURE(`limited_masquerade )dnl FEATURE(`always_add_domain )dnl define(`confCOPY_ERRORS_TO , `root )dnl define(`confDONT_PROBE_INTERFACES , `True )dnl FEATURE(`accept_unresolvable_domains )dnl MAILER(local)dnl MAILER(smtp)dnl access 192.168.1 RELAY local-host-names smail.send.test mailertable send.test esmtp [192.168.1.118] relay-domains 空 オールインワン(ここでは受信側ドメインのホスト) 自ドメイン宛のメールをスプールする。 外部に対してはMXを参照して配送する。 sendmail.mc VERSIONID(`$Id generic-solaris.mc,v 8.14 gshapiro Exp $ ) OSTYPE(solaris2)dnl DOMAIN(generic)dnl Dwrmail2 Dmrecv2.test define(`confDOMAIN_NAME ,`$w.$m )dnl define(`DATABASE_MAP_TYPE ,`dbm )dnl define(`MAIL_SETTINGS_DIR ,`/etc/mail/ )dnl define(`confCW_FILE ,`-o /etc/mail/local-host-names )dnl RELAY_DOMAIN_FILE(`/etc/mail/relay-domains )dnl FEATURE(`mailertable )dnl FEATURE(`access_db )dnl define(`ALIAS_FILE , `/etc/mail/aliases )dnl FEATURE(`blacklist_recipients )dnl define(`confPRIVACY_FLAGS , `public )dnl define(`LOCAL_MAILER_FLAGS7, LOCAL_MAILER_FLAGS` P)dnl define(`confTO_IDENT , `0s )dnl define(confMAX_HOP , `25 )dnl FEATURE(`no_default_msa )dnl DEAMON_OPTIONS(`Port=25, NAME=MSA, M=E )dnl undefine(`UUCP_RELAY )dnl undefine(`BITNET_RELAY )dnl FEATURE(`nouucp ,`reject )dnl MASQUERADE_AS(`$m )dnl FEATURE(`masquerade_envelope )dnl FEATURE(`masquerade_entire_domain )dnl FEATURE(`limited_masquerade )dnl FEATURE(`always_add_domain )dnl define(`confCOPY_ERRORS_TO , `root )dnl define(`confDONT_PROBE_INTERFACES , `True )dnl FEATURE(`accept_unresolvable_domains )dnl MAILER(local)dnl MAILER(smtp)dnl access 192.168.1 RELAY local-host-names recv2.test rmail2.recv2.test mailertable 空 relay-domains 空
https://w.atwiki.jp/skill2linux/pages/37.html
ネットワークのイメージ こんな感じを想定しませう。 【relay の設定】Sendmail のインストール とりあえず、local で使用可能な Sendmail は既にインストールされているので、 設定用のツールを導入する。 あくまでも、ローカルで実験的に使ってみるテストなので、外部環境ではやらない事。 yum -y install sendmail-cf 【relay の設定】転送の設定 リレーするメールサーバの為、自分自身ではメールを保持しない。 そのため、local-host-names には何も記載せず、あくまでも DNS の MX レコードを参照することになる。 この、転送用の Sendmail が [DNS 設定系] のDNSを参照している場合は、適切に内部の Sendmail に転送を行い、 外部のアドレスの場合は、外に転送を行えるはず。 ただ、リレーの許可は出さないといけないので、 /etc/mail/access の設定を以下の形に変える。 セグメント単位での許可は、そのセグメントの記載でOK。 セグメントを、CIDR とか細かい単位で区切ってる場合は、無理っぽいけど調べてないです。 # Check the /usr/share/doc/sendmail/README.cf file for a description # of the format of this file. (search for access_db in that file) # The /usr/share/doc/sendmail/README.cf is part of the sendmail-doc # package. # # If you want to use AuthInfo with "M PLAIN LOGIN", make sure to have the # cyrus-sasl-plain package installed. # # By default we allow relaying from localhost... Connect localhost.localdomain RELAY Connect localhost RELAY Connect 127.0.0.1 RELAY Connect 192.168.11 RELAY んで、access.db を作るっと。 makemap -v hash access.db access 【relay の設定】配送方法の決定 デフォルトでは、外部からの smtp 接続等を受け付けないように設定されているので、 色々と設定を変えてみよう。 例えば、受け取ったメールアドレスの @ 以降の from 部を変えたりも出来る。 とりあえず、/etc/mail/sendmail.mc を変更する // SMTP 通信をすべて許可 // DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA )dnl DAEMON_OPTIONS(`Port=smtp, Name=MTA )dnl んでんで、m4 マクロで cf を作る。 ※なんか、CentOS 6では、sendmail再起動時に、mc から cf の自動作成をしているみたいなので、m4 使わなくても行けそうな感じ。 m4 /usr/share/sendmail-cf/m4/cf.m4 /etc/mail/sendmail.mc /etc/mail/sendmail.cf これで、メールクライアントから送信出来るはず。
https://w.atwiki.jp/skill2linux/pages/34.html
ネットワークのイメージ こんな感じを想定しませう。 【1,2共通】Sendmail のインストール とりあえず、local で使用可能な Sendmail は既にインストールされているので、 設定用のツールを導入する。 あくまでも、ローカルで実験的に使ってみるテストなので、外部環境ではやらない事。 yum -y install sendmail-cf 【1,2共通】ローカル配送の設定 自分自身に配送するメールを決定する。 /etc/mail 配下の local-host-names を変更する cd /etc/mail/ vi local-host-names 設定内容は以下の感じ # local-host-names - include all aliases for your machine here. example.localdomain Sendmail のデフォルト設定では、ホスト名(具体的には、/etc/sysconfig/network の HOSTNAME の値) 宛のみが、 自分あてのメールと判断されます。 ここで、該当ドメイン宛のメールを自分宛と判断して貰うわけですな。 【1,2共通】配送方法の決定 デフォルトでは、外部からの smtp 接続等を受け付けないように設定されているので、 色々と設定を変えてみよう。 例えば、受け取ったメールアドレスの @ 以降の from 部を変えたりも出来る。 とりあえず、/etc/mail/sendmail.mc を変更する // SMTP 通信をすべて許可 // DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA )dnl DAEMON_OPTIONS(`Port=smtp, Name=MTA )dnl んでんで、m4 マクロで cf を作る。 ※なんか、CentOS 6では、sendmail再起動時に、mc から cf の自動作成をしているみたいなので、m4 使わなくても行けそうな感じ。 m4 /usr/share/sendmail-cf/m4/cf.m4 /etc/mail/sendmail.mc /etc/mail/sendmail.cf /etc/init.d/sendmail restart これで、メールクライアントから送信出来るはず。 【2のみ】配送方法の決定 Sendmail2 は、自分あて以外のメールを relay に転送したいので、 SMART_HOST を利用します。 /etc/mail/sendmail.mc に以下の記述をします。 define(`SMART_HOST , `smtp relay.example.localdomain )dnl これで、再起動を掛けると、いい感じに転送してくれます。 【1のみ】配送方法の決定 Sendmail1 は、メールの受信はしますが、転送はしたくないので、 access に記載して、relay するホストを制限します。 /etc/mail/access に以下の記述をします。 # Check the /usr/share/doc/sendmail/README.cf file for a description # of the format of this file. (search for access_db in that file) # The /usr/share/doc/sendmail/README.cf is part of the sendmail-doc # package. # # If you want to use AuthInfo with "M PLAIN LOGIN", make sure to have the # cyrus-sasl-plain package installed. # # By default we allow relaying from localhost... Connect localhost.localdomain RELAY Connect localhost RELAY Connect 127.0.0.1 RELAY Connect 192.168.11.102 RELAY Connect 192.168.11 REJECT んで、access.db を作ります。 makemap -v hash access.db access これで、192.168.11.102 以外のホストからの送信は拒否。 relay 用の sendmail からのみの転送を許可となります。
https://w.atwiki.jp/hiropknot/pages/17.html
[e-words] 1982年にアメリカのEric Allman氏によって開発された電子メールサーバソフトウェア(MTA)。ユーザが送信したメールを受け取って、他のサーバと連携してバケツリレー式に目的地まで配送したり、届いたメールをユーザが受け取るまで保管したりする。ソースコードの公開されたフリーソフトウェアとして元々UNIX用に開発されたが、現在では様々なプラットフォームに移植されている。インターネット上で運用されているほとんどのメールサーバはsendmailであり、事実上の標準ソフトウェアになっている。 ■■■■■■■■■■ [IT Pro] 最も普及しているSMTP(simple mail transfer protocol)サーバー・ソフト。フリーソフト版と商用化した製品版がある。フリーソフト版は開発者のエリック・オールマンが米カリフォルニア大学バークレイ校時代にリリースした。当時,オールマンがARPANET接続用に開発したdelivermailが原型である。フリーソフト版の最新バージョンは2004年1月時点で8.12。 1998年3月に,オールマンは製品版を開発・販売する会社として「Sendmail」社を設立。「Sendmail Pro」をリリースした。2003年2月に日本法人のセンドメールを設立した。 製品版とフリーウエア版の違いは扱いやすさにある。製品版は,複雑で難解だといわれるフリーソフト版の設定を簡易化するため,GUI(グラフィカル・ユーザー・インタフェース)を活用した設定ツールを付属するなど工夫を施してある。オールマンは,Sendmail社の最高技術責任者として開発を担当する一方で,フリーソフト版のsendmailのメンテナンスを続けている。 ■■■■■■■■■■ [Wikipedia] 設定ファイルの複雑性 設定ファイルが非常に複雑であるため、通常はまず mc ファイルという M4 マクロ言語で記述してから、実際のファイル (cf) を生成する。 設定ファイルの複雑さとセキュリティホールのできやすさを改善するために、いくつか代替のメールサーバも開発されている。 商用版Sendmail Sendmailにはオープンソース版と商用版があり、商用版ではIMAP/POPサーバを構築することのできる Sendmail Advanced Server という製品がある。 商用版では設定方法にGUIを利用でき、GUI上から設定内容を反映することができる。 柔軟性と引き換えに設定方法の複雑さが増しているため、商用サポートや商用版により複雑さを取り除くオプションが用意されているとも言える。 商用版では、メールの送信速度も改善されている。 次世代Sendmail 新たにまったく構造を作り直した次世代の Sendmail として Sendmail X が開発されていたが、こちらは Postfix とほぼ同じ構造であるため、存在意義が疑問視されている。なお、Sendmail XはMeTA1と改名された[2]。 Milter APIのサポート SendmailではMilter APIをサポートしているため、Milter APIで作成されたプラグインを容易に利用することができる。 有名なOpenSource Milterとしてはspamassassinがあり、商用Red Hat系の製品では標準的に用意されている。 スパム対策、ウィルス対策、コンプライアンス対策、メールアーカイブなど、Milterによって実現可能な領域が広がっている。 商用の製品としては Mailstream Managerという製品を導入することで商用のMilter プラグインを利用できる。
https://w.atwiki.jp/honeybe/pages/43.html
sendmail 設定 access 転送可否を記述するBlackList WhiteList。自分で設定可能。 [domain] tab [control] [domain] ドメイン名やIPアドレス、メールアドレス。一部でもかまわない? ドメイン ... example.com IPアドレス ... 127.0.0.1 メールアドレス ... spam@example.com ユーザ名 ... spam@ [control] OK, REJECT, RELAY など。エラーステータスを記述することも可能? OK ... 転送許可 REJECT ... 拒否 RELAY ... RELAY許可 例: example.com REJECT #example.comからのメールをすべて拒否する。 192.168 REJECT #192.168.x.x(プライベートアドレス)からのメールをすべて拒否 spam@example.com REJECT #spam@example.comというメールアドレスからのメールをすべて拒否 spam@ REJECT #spamという(全ドメイン)ユーザのメールをすべて拒否。 whilelist.com RELAY # whitelist.comドメインからのメールをすべてRELAYする。 平文で記述後、以下のコマンドでhash化。(高速アクセスのため?) makemap hash [access.db] [access] [access.db] hash化後のファイル [access] 平文で書いた元ファイル。 ※access.dbを作り直しても下記設定が反映済みならばsendmailの再起動は不要。(ファイル作成時点から反映されるの) 設定 sendmail.cfの元ファイルに以下を追加。詳細は調べてくれ。(僕もよくわかってない) FEATURE(`access_db , `hash -o /etc/mail/access )dnl sendmail.cfに反映後、sendmailを再起動。 設定の確認 下記コマンドで設定のテストが可能。sendmail再起動前にテストできるので、設定変えるなら必ずテストするように習慣付けたほうがよいと思う。 /usr/sbin/sendmail -bt -C /etc/mail/sendmail.cf #テストモードにプロンプトが切り替わる 。 /parse test@localhost test@localhost(ローカルユーザ)のチェックを行う。 だらだらとパース結果が表示される。 一番最後の行?に mailer local, user test と表示されたらメールが送信可能。 /parse test@example.com test@example.com(外部ドメイン)のチェックを行う。 だらだらとパース結果が表示される。 一番最後の行?に mailer esmtp, host example.com, user test@example.com と表示されたらメール送信可能。 最後の行付近に Transient parse error -- ... などと表示されたら送信できない。 /quit でプロンプトから抜ける。 参考 http //helppc.jp/security//fy12/contents/crack/soho/soho/chap3/smtp/sendmail.html http //www.fmmc.or.jp/~fm/nwts/rh_linux/ch3/3_2_2_3.html
https://w.atwiki.jp/jobyama/pages/41.html
sendmail (せんどめーる)は、SMTPデーモン 勝手にブックマーク sendmail の smrsh 制限を手軽に取り除く方法 CentOS 5でも同様の手順で可! Majordomoを入れたにも関わらず、wrapperが動作しない場合、smrsh 制限を取り除く事で解決する
https://w.atwiki.jp/freebsd7/pages/15.html
Sendmailとは Sendmailのインストール 設定 コマンドラインでの操作 プログラム http //www.freebsd.org/doc/ja/books/handbook/sendmail.html ↓ ↓ ↓ ↓ ↓ ↓ 以下、広告です。↓ ↓ ↓ ↓ ↓ ↓
https://w.atwiki.jp/postcard/pages/13.html
sendmail MTA(メール転送エージェント) のひとつである sendmail についてまとめ中です。 参考書籍:sendmail (O reilly)
https://w.atwiki.jp/axeeffect/pages/24.html
メールを受け取るのに時間がかかる場合 ホストAからホストBに対してメールを送るが時間がかかる。 DNSで逆引が出来ない。 ホストAのアドレスは逆引きできますか? sendmailの設定編集するにあたって有益な情報 http //www.kuwazou.net/blog/tcpip/mail/sendmail/2006/04/
https://w.atwiki.jp/hama170628/pages/30.html
sendmail.8.13.7.tar.gz # useradd -s /bin/false smmsp→Solaris10は既存で存在 # mkdir /usr/share/man/man1 /usr/share/man/man5 /usr/share/man/man8→man1、man5は既存あり # mkdir /usr/share/man/cat1 /usr/share/man/cat5 /usr/share/man/cat8 # mkdir /var/spool/mqueue→既存 # sh Build # sh Build install ※もしくは、/etc/mail/cf/cfディレクトリで# /usr/ccs/bin/make xxxx.cf(xxxxは.mcファイルの名前) ディレクトリすべてに対して、グループとその他に対する書込み権限を削除した上で、ディレクトリの所有者rootに変更します。 # chmod go-w / /etc /etc/mail /usr /var /var/spool /var/spool/mqueue # chown root / /etc /etc/mail /usr /var /var/spool /var/spool/mqueue # cp generic-solaris.mc sendmail.mc # sh Build sendmail.cf # sh Build install-cf # newaliases # makemap access access # makemap mailertable mailertable sendmailの起動 # /usr/lib/sendmail -Ac -q15m # /usr/lib/sendmail -bd -q15m sendmailのバージョン確認方法 # sendmail -d0.101 動作確認方法 #sendmail -bv hama@send.test hama@send.test... deliverable mailer esmtp, host [192.168.1.118], user hama@send.test 転送設定 ホームディレクトリに.forwardというファイルを作成します。ローカルにコピーするかどうかで設定が異なります。 ローカルに保存せず転送したい場合(以下の例はhama@fwd.testに転送) hama@fwd.test ローカルに保存し転送も行う場合(以下の例はhama@recv.testに保存し転送する場合) hama@fwd.test \hama@recv.test 最近のSolaris sendmailでの追加設定 telnet localhost 25は接続できるが、telnet 192.168.1.xxx 25で接続した場合にConnection refusedが発生する場合、以下の設定変更が必要。 (Oracle以降のSolaris) # svccfg -s svc /network/smtp sendmail setprop config/local_only = false # svcadm refresh svc /network/smtp sendmail 高速化(検証で速くしたい場合のみ) 以下2点によりディスクの読み書きを行わずメモリアクセスのみにします。 ①以下のディレクトリを/tmpに移動しシンボリックリンクをはる /var/mail /var/spool/mqueue ②/etc/syslog.confにてログを生成しないようにする 以下の行をコメントアウト #mail.debug ifdef(`LOGHOST , /var/log/syslog, @loghost)