« IBM R31にOpenBSDインスコ | メイン | スピーカー置き場構造変更 【ささやかな趣味】 »
2005年01月28日
OpenBSD に Postfix + Sasl で aPOP
OpenBSD に SASL + Postfix 中にちょっとハマッタ(笑
インストールログは追記します^^;;
--------------------------------------------------------------------------------
(ぉ ローカルだからまっいいか
--------------------------------------------------------------------------------
/etc/hosts.allow
ALL: *
=== APOPD ======================================================================
--------------------------------------------------------------------------------
ソフトをインストールする... solid-pop3d
--------------------------------------------------------------------------------
# cd /work
# tar xvzf solid-pop3d-0.xx.tar.gz
# cd solid-pop3d-0.xx
# ./configure --enable-maildir --enable-apop --enable-connect
# make
# make install
--------------------------------------------------------------------------------
inetd.conf の設定は以下のとおり
--------------------------------------------------------------------------------
#pop3 stream tcp nowait root /usr/sbin/popa3d popa3d
#pop3 stream tcp6 nowait root /usr/sbin/popa3d popa3d
pop3 stream tcp nowait root /usr/local/sbin/spop3d spop3d
pop3 stream tcp6 nowait root /usr/local/sbin/spop3d spop3d
--------------------------------------------------------------------------------
以下のようにしてAPOPパスワード設定できる
--------------------------------------------------------------------------------
echo /usr/local/bin/pop_auth | su -f username
=== SMTP_AUTH ==================================================================
--------------------------------------------------------------------------------
ソフトをインストールする... cyrus-sasl2 + postfix
--------------------------------------------------------------------------------
# cd /usr/ports/security/cyrus-sasl2
# make install
# cd /usr/ports/mail/postfix/
# make install
install_root: [/]
tempdir: [/root/postfix-2.0.20]
config_directory: [/etc/postfix]
daemon_directory: [/usr/local/libexec/postfix]
command_directory: [/usr/local/sbin]
queue_directory: [/var/spool/postfix]
sendmail_path: [/usr/local/sbin/sendmail]
newaliases_path: [/usr/bin/newaliases]
mailq_path: [/usr/local/sbin/mailq]
mail_owner: [_postfix]
setgid_group: [_postdrop]
manpage_directory: [/usr/local/man]
sample_directory: [/etc/postfix]
readme_directory: [/usr/local/share/doc/postfix/readme]
( 超適当 に答える )
--------------------------------------------------------------------------------
設定する...
--------------------------------------------------------------------------------
( /etc/postfix/main.cf を設定する 超適当で、どっかから拾ってきた )
# cat > /etc/postfix/main.cf
myhostname = openbsd.foo.hoge
mydomain = foo.hoge
myorigin = $myhostname
inet_interfaces = all
mydestination = $myhostname, localhost.$mydomain, localhost
mynetworks_style = subnet
mynetworks = 192.168.xx.0/24
alias_maps = hash:/etc/aliases
^D
( /etc/postfix/main.cf のSASL設定する これも超適当で、どっかから拾ってきた )
# cat >> /etc/postfix/main.cf
smtpd_sasl_auth_enable = yes
smtpd_sasl_local_domain = $myhostname
broken_sasl_auth_clients = yes
smtpd_recipient_restrictions = permit_mynetworks
permit_sasl_authenticated
reject_unauth_destination
^D
# cat >> /usr/local/lib/sasl2/smtpd.conf
pwcheck_method: auxprop
auxprop_plugin: sasldb
mech_list: cram-md5 digest-md5 plain login
^D
--------------------------------------------------------------------------------
設定ファイルがおかしいことが多々あるのでチェックする...
*** could not find a dlname line in .la file
--------------------------------------------------------------------------------
( dlname が '' でないことをを確認 )
# cd /usr/local/lib/sasl2/
# grep dlname *.la
libanonymous.la:dlname='libanonymous.so.2.19'
libcrammd5.la:dlname='libcrammd5.so.2.19'
libdigestmd5.la:dlname='libdigestmd5.so.2.19'
libgssapiv2.la:dlname='libgssapiv2.so.2.19'
liblogin.la:dlname='liblogin.so.2.19'
libotp.la:dlname='libotp.so.2.19'
libplain.la:dlname='libplain.so.2.19'
libsasldb.la:dlname='libsasldb.so.2.19'
( library_names が '' でないことをを確認 )
# grep library_names *.la
libanonymous.la:library_names='libanonymous.so.2.19 libanonymous.so.2.19
'
libcrammd5.la:library_names='libcrammd5.so.2.19 libcrammd5.so.2.19'
libdigestmd5.la:library_names='libdigestmd5.so.2.19 libdigestmd5.so.2.19
'
libgssapiv2.la:library_names='libgssapiv2.so.2.19 libgssapiv2.so.2.19'
liblogin.la:library_names='liblogin.so.2.19 liblogin.so.2.19'
libotp.la:library_names='libotp.so.2.19 libotp.so.2.19'
libplain.la:library_names='libplain.so.2.19 libplain.so.2.19'
libsasldb.la:library_names='libsasldb.so.2.19 libsasldb.so.2.19'
( 問題があれば次のようにして書き込みする: .la)
( 適当に修正するスクリプト :edit.sh )
#!/bin/sh
FILENAME=$1
BASEFRMT=`echo $FILENAME | sed -e 's/\.la$//'`
LIBSONAME=`ls $BASEFRMT.so.*`
cat $FILENAME | sed -e "s/dlname=\'\'/dlname=\'$LIBSONAME\'/" \
| sed -e "s/library_names=\'\'/library_names=\'$LI
BSONAME\ $LIBSONAME'/" \
(修正~)
# mv libanonymous.la libanonymous.la.bak
# sh edit.sh libanonymous.la.bak libanonymous.la
--------------------------------------------------------------------------------
postfix/smtpd は chroot して動くため /etc/sasldb2.db が見えない
--------------------------------------------------------------------------------
# ln -s /var/spool/postfix/etc/sasldb2.db /etc/sasldb2.db
( 逆向き? にリンクする /etc/sasldb2.db -> /var/spool/postfix/etc/sasldb2.db )
--------------------------------------------------------------------------------
# 作動させるには以下のようにする
--------------------------------------------------------------------------------
/usr/local/sbin/postfix start
--------------------------------------------------------------------------------
以下のようにしてSASLパスワード設定できる
--------------------------------------------------------------------------------
/usr/local/sbin/saslpasswd2 -c -u `/usr/local/sbin/postconf -h mydomain` usernam
e
================================================================================
--------------------------------------------------------------------------------
パスワード設定がいろいろ面倒なのでスクリプトを作ってみた : ~/mailpass.sh
--------------------------------------------------------------------------------
#!/bin/sh
# usage: > sh mailpass.sh username
USERNAME=$1
MYHOSTNAME=`/usr/local/sbin/postconf -h myhostname`
/usr/local/sbin/saslpasswd2 -c -u $MYHOSTNAME $USERNAME
echo /usr/local/bin/pop_auth | su -f $USERNAME
投稿者 kata : 2005年01月28日 00:21
Trackback Pings
このエントリーのトラックバックURL:
http://katakuri.sakura.ne.jp/~kata/mt-tb.cgi/64