ubuntuにpostfixを入れたメモ
わざわざsudoするのが面倒なのでrootになっておく。
$ sudo su -
ただ、ubuntuの管理的によろしくないと思うのでお勧めはしない。
で、とりあえずパッケージから入れる。
# aptitude install postfix
途中でホスト名聞かれるので答える。例えばexample.co.jpとか。
インストールされると/etc/postfix/に設定ファイルが出来る。
とりあえずバックアップをコピーして編集。
# cd /etc/postfix/
# cp /etc/postfix/main.cf /etc/postfix/main.cf.bak
# vi /etc/postfix/main.cf
色々追加したり修正したりする。
inet_interfaces = all
mydomain = example.co.jp
myhostname = example.co.jp
myorigin = $mydomain
mydistination = example.co.jp localhost.$mydomain localhost
relay_domains = $mydistination
mynetworks = 192.168.0.0/24 127.0.0.0/8
smtp_authを使う為の設定が以下
smtpd_sasl_auth_enable = yes
smtpd_sasl_local_domain = $myhostname
#認証を通したものだけ許可。それ以外を拒否
smtpd_recipient_restrictions = permit_sasl_authenticated,reject
#匿名での接続を拒否。PLAINでの認証も拒否
smtpd_sasl_security_options = noanonymous, noplaintext
以上main.cf
ubuntuはchrootして上手く動いてくれないらしいのでmaster.cfも修正。
# cp /etc/postfix/master.cf /etc/postfix/master.cf.bak
# vi /etc/postfix/master.cf
# ================================================================
# service type private unpriv chroot wakeup maxproc command + args
# (yes) (yes) (yes) (never) (100)
# ================================================================
#chrootをnに
smtp inet n - - - - smtpd
↓
smtp inet n - n - - smtpd
#submission portでも使えるようにコメントアウトを取る。
#submission inet n - n - - smtpd
↓
submission inet n - n - - smtpd
# -o smtpd_tls_security_level=encrypt
#コメントアウト取る。
# -o smtpd_sasl_auth_enable=yes
↓
-o smtpd_sasl_auth_enable=yes
# -o smtpd_client_restrictions=permit_sasl_authenticated,reject
# -o milter_macro_daemon_name=ORIGINATING
以上 mastter.cf
文法のチェック
# postfix check
/etc/postfix/sasl/smtpd.confを新規作成する。
# vi /etc/postfix/sasl/smtpd.conf
次の設定を書き込む
pwcheck_method: auxprop
んでpostfixを再起動
# /etc/init.d/postfix restart
smtp_authする為にsasl2-binを入れる
# aptitude install sasl2-bin
LINUXのユーザパスワードを使う事も出来るけど多少セキュアにするためにパスワードデータベースを作る。
# saslpasswd2 -c -u example.co.jp smtp_user
同じコマンドをユーザ分実行
次のコマンドで追加したユーザデータが見れる。
# sasldblistusers2
次のコマンドでユーザデータの削除
# saslpasswd2 -d -u example.co.jp smtp_user
出来たデータベースは
/etc/sasldb2
にある。中身は次のコマンドで見えてしまう。
# strings /etc/sasldb2
これをpostfixが使えるようにする。この辺の設定に自信がない。
# chown postfix /etc/sasldb2
# chgrp postfix /etc/sasldb2
# chmod 0600 /etc/sasldb2
saslauthdをLinux起動時に起動するようにする?
# vi /etc/default/saslauthd
START=no
↓
START=yes
とりあえず終了?様々な場所で長時間詰まったせいでよく覚えていない。
saslauthd起動。
# /etc/init.d/saslauthd restart
今回はとりあえず動いてる状態で、あんまり設定に自信がないのでここ以外のサイトを参考にした方がよいかもです。
postfixの挙動がよくわかっていません。
参考文献
Debian でメールサーバ
Postfix で SMTP-AUTH を実現
Postfix 設定パラメータ
メールサーバの設定 - postfix & dovecot
mail.logのエラー情報とか
Ubuntu Sever Edition を使ったサーバ構築のメモ
Ubuntu/postfix@ローカル
$ sudo su -
ただ、ubuntuの管理的によろしくないと思うのでお勧めはしない。
で、とりあえずパッケージから入れる。
# aptitude install postfix
途中でホスト名聞かれるので答える。例えばexample.co.jpとか。
インストールされると/etc/postfix/に設定ファイルが出来る。
とりあえずバックアップをコピーして編集。
# cd /etc/postfix/
# cp /etc/postfix/main.cf /etc/postfix/main.cf.bak
# vi /etc/postfix/main.cf
色々追加したり修正したりする。
inet_interfaces = all
mydomain = example.co.jp
myhostname = example.co.jp
myorigin = $mydomain
mydistination = example.co.jp localhost.$mydomain localhost
relay_domains = $mydistination
mynetworks = 192.168.0.0/24 127.0.0.0/8
smtp_authを使う為の設定が以下
smtpd_sasl_auth_enable = yes
smtpd_sasl_local_domain = $myhostname
#認証を通したものだけ許可。それ以外を拒否
smtpd_recipient_restrictions = permit_sasl_authenticated,reject
#匿名での接続を拒否。PLAINでの認証も拒否
smtpd_sasl_security_options = noanonymous, noplaintext
以上main.cf
ubuntuはchrootして上手く動いてくれないらしいのでmaster.cfも修正。
# cp /etc/postfix/master.cf /etc/postfix/master.cf.bak
# vi /etc/postfix/master.cf
# ================================================================
# service type private unpriv chroot wakeup maxproc command + args
# (yes) (yes) (yes) (never) (100)
# ================================================================
#chrootをnに
smtp inet n - - - - smtpd
↓
smtp inet n - n - - smtpd
#submission portでも使えるようにコメントアウトを取る。
#submission inet n - n - - smtpd
↓
submission inet n - n - - smtpd
# -o smtpd_tls_security_level=encrypt
#コメントアウト取る。
# -o smtpd_sasl_auth_enable=yes
↓
-o smtpd_sasl_auth_enable=yes
# -o smtpd_client_restrictions=permit_sasl_authenticated,reject
# -o milter_macro_daemon_name=ORIGINATING
以上 mastter.cf
文法のチェック
# postfix check
/etc/postfix/sasl/smtpd.confを新規作成する。
# vi /etc/postfix/sasl/smtpd.conf
次の設定を書き込む
pwcheck_method: auxprop
んでpostfixを再起動
# /etc/init.d/postfix restart
smtp_authする為にsasl2-binを入れる
# aptitude install sasl2-bin
LINUXのユーザパスワードを使う事も出来るけど多少セキュアにするためにパスワードデータベースを作る。
# saslpasswd2 -c -u example.co.jp smtp_user
同じコマンドをユーザ分実行
次のコマンドで追加したユーザデータが見れる。
# sasldblistusers2
次のコマンドでユーザデータの削除
# saslpasswd2 -d -u example.co.jp smtp_user
出来たデータベースは
/etc/sasldb2
にある。中身は次のコマンドで見えてしまう。
# strings /etc/sasldb2
これをpostfixが使えるようにする。この辺の設定に自信がない。
# chown postfix /etc/sasldb2
# chgrp postfix /etc/sasldb2
# chmod 0600 /etc/sasldb2
saslauthdをLinux起動時に起動するようにする?
# vi /etc/default/saslauthd
START=no
↓
START=yes
とりあえず終了?様々な場所で長時間詰まったせいでよく覚えていない。
saslauthd起動。
# /etc/init.d/saslauthd restart
今回はとりあえず動いてる状態で、あんまり設定に自信がないのでここ以外のサイトを参考にした方がよいかもです。
postfixの挙動がよくわかっていません。
参考文献
Debian でメールサーバ
Postfix で SMTP-AUTH を実現
Postfix 設定パラメータ
メールサーバの設定 - postfix & dovecot
mail.logのエラー情報とか
Ubuntu Sever Edition を使ったサーバ構築のメモ
Ubuntu/postfix@ローカル
time stamp:2009/04/19 02:02:15
トラックバック(0)|コメント(0)
トラックバック(0)|コメント(0)
この記事のトラックバックURL:
コメントを書く
何かしら